summaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/rt2x00/rt2x00queue.c
diff options
context:
space:
mode:
authorAdam Baker <linux@baker-net.org.uk>2008-02-10 22:48:19 +0100
committerJohn W. Linville <linville@tuxdriver.com>2008-02-29 21:37:18 +0100
commit231be4e92cc0398781e6acda0e3f8ea54a7fa10f (patch)
treeee5a745fa4bdbe9ac694bdb8815819bb18af986e /drivers/net/wireless/rt2x00/rt2x00queue.c
parentrt2x00: Remove MGMT ring initialization (diff)
downloadlinux-231be4e92cc0398781e6acda0e3f8ea54a7fa10f.tar.xz
linux-231be4e92cc0398781e6acda0e3f8ea54a7fa10f.zip
rt2x00: correct address calc for queue private data
When calculating the offset to add to the queue entry base to get the individual entry's private data area the base address must be treated as a char * not a struct queue_entry so we can do byte oriented pointer arithmetic with it. Signed-off-by: Adam Baker <linux@baker-net.org.uk> Signed-off-by: Ivo van Doorn <IvDoorn@gmail.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless/rt2x00/rt2x00queue.c')
-rw-r--r--drivers/net/wireless/rt2x00/rt2x00queue.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/net/wireless/rt2x00/rt2x00queue.c b/drivers/net/wireless/rt2x00/rt2x00queue.c
index fde64ea3f4ef..943afc9067b1 100644
--- a/drivers/net/wireless/rt2x00/rt2x00queue.c
+++ b/drivers/net/wireless/rt2x00/rt2x00queue.c
@@ -160,7 +160,8 @@ static int rt2x00queue_alloc_entries(struct data_queue *queue,
return -ENOMEM;
#define QUEUE_ENTRY_PRIV_OFFSET(__base, __index, __limit, __esize, __psize) \
- ( (__base) + ((__limit) * (__esize)) + ((__index) * (__psize)) )
+ ( ((char *)(__base)) + ((__limit) * (__esize)) + \
+ ((__index) * (__psize)) )
for (i = 0; i < queue->limit; i++) {
entries[i].flags = 0;