[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <4B03F2BF.4000402@gmail.com>
Date: Wed, 18 Nov 2009 14:12:31 +0100
From: Roel Kluin <roel.kluin@...il.com>
To: Mike Frysinger <vapier@...too.org>, gregkh@...e.de,
linux-usb@...r.kernel.org,
Andrew Morton <akpm@...ux-foundation.org>,
LKML <linux-kernel@...r.kernel.org>
Subject: [PATCH] USB: FIX bitfield istl_flip:1, make it unsigned.
istl_flip is a signed bitfield of one bit so it can be -1 or 0.
However in drivers/usb/host/isp1362-hcd.c:1103:
finish_iso_transfers(isp1362_hcd,
&isp1362_hcd->istl_queue[isp1362_hcd->istl_flip]);
So if isp1362_hcd->istl_flip is set, the 2nd argument becomes
&isp1362_hcd->istl_queue[-1], which is invalid.
Signed-off-by: Roel Kluin <roel.kluin@...il.com>
---
FYI:
drivers/usb/host/isp1362.h:543:
struct isp1362_hcd {
...
struct isp1362_ep_queue istl_queue[2];
};
The change of the other bitfield may not be strictly necessary
but is preferred, I thought.
Roel
diff --git a/drivers/usb/host/isp1362.h b/drivers/usb/host/isp1362.h
index 1a253eb..5151516 100644
--- a/drivers/usb/host/isp1362.h
+++ b/drivers/usb/host/isp1362.h
@@ -534,8 +534,8 @@ struct isp1362_hcd {
/* periodic schedule: isochronous */
struct list_head isoc;
- int istl_flip:1;
- int irq_active:1;
+ unsigned int istl_flip:1;
+ unsigned int irq_active:1;
/* Schedules for the current frame */
struct isp1362_ep_queue atl_queue;
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists