From ccae2a30931e0e64fdf200d57337450619ba5011 Mon Sep 17 00:00:00 2001 From: Alan Stern Date: Tue, 24 Aug 2004 20:47:42 -0700 Subject: [PATCH] [PATCH] USB: Use 8-byte hub status URB buffer This patch changes the size of the buffer allocated for each hub's status URB from 3 bytes to 8. The purpose is to avoid "babble" errors with certain buggy hubs. Although I only know of one type of device which does this, the patch does solve its problem and it adds no overhead for anyone else since kmalloc doesn't dole out memory in chunks smaller than 8 bytes (32 actually, on a PC). This is a small thing, but it doesn't hurt and it will make life easier for a few people. Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman --- drivers/usb/core/hub.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/drivers/usb/core/hub.h b/drivers/usb/core/hub.h index bb0499f6f418e..75a4f62746aa5 100644 --- a/drivers/usb/core/hub.h +++ b/drivers/usb/core/hub.h @@ -190,8 +190,8 @@ struct usb_hub { struct usb_device *hdev; struct urb *urb; /* for interrupt polling pipe */ - /* buffer for urb ... 1 bit each for hub and children, rounded up */ - char (*buffer)[(USB_MAXCHILDREN + 1 + 7) / 8]; + /* buffer for urb ... with extra space in case of babble */ + char (*buffer)[8]; dma_addr_t buffer_dma; /* DMA address for buffer */ union { struct usb_hub_status hub; -- 2.53.0