summaryrefslogtreecommitdiff
path: root/sys/dev/usb/usb_mem.c
diff options
context:
space:
mode:
authorIan Dowse <iedowse@FreeBSD.org>2004-08-02 13:59:02 +0000
committerIan Dowse <iedowse@FreeBSD.org>2004-08-02 13:59:02 +0000
commit67dab3d6c950340ca0081ea3607bf9ca720723be (patch)
treea0201b2bc9a882e8894d05bd1c9d296f831c0664 /sys/dev/usb/usb_mem.c
parentda37d6ad4163e5314d7f7cd587c9dbfaa9e5f937 (diff)
Notes
Diffstat (limited to 'sys/dev/usb/usb_mem.c')
-rw-r--r--sys/dev/usb/usb_mem.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/sys/dev/usb/usb_mem.c b/sys/dev/usb/usb_mem.c
index 73b309db4b1c..82b678e82b5c 100644
--- a/sys/dev/usb/usb_mem.c
+++ b/sys/dev/usb/usb_mem.c
@@ -142,7 +142,8 @@ usb_block_allocmem(bus_dma_tag_t tag, size_t size, size_t align,
s = splusb();
/* First check the free list. */
for (p = LIST_FIRST(&usb_blk_freelist); p; p = LIST_NEXT(p, next)) {
- if (p->tag == tag && p->size >= size && p->align >= align) {
+ if (p->tag == tag && p->size >= size && p->size < size * 2 &&
+ p->align >= align) {
LIST_REMOVE(p, next);
usb_blk_nfree--;
splx(s);