[PATCH] firewire: fix sourceID read from wrong quadlet

From:
Date: Wed Apr 16 2008 - 08:49:44 EST


>From JiSheng Zhang <jszhang3@xxxxxxxxxxxxxxxx>

In Asynchronous Receive Requests, the sourceID is in the second quadlet(OHCI
specification, section 8.7.1).

--- linux-2.6.24.4/drivers/firewire/fw-transaction.c.orig 2008-04-14
20:57:48.294718721 +0800
+++ linux-2.6.24.4/drivers/firewire/fw-transaction.c 2008-04-14
20:58:07.083525930 +0800
@@ -650,7 +650,7 @@ fw_core_handle_request(struct fw_card *c
HEADER_GET_OFFSET_HIGH(p->header[1]) << 32) | p->header[2];
tcode = HEADER_GET_TCODE(p->header[0]);
destination = HEADER_GET_DESTINATION(p->header[0]);
- source = HEADER_GET_SOURCE(p->header[0]);
+ source = HEADER_GET_SOURCE(p->header[1]);

spin_lock_irqsave(&address_handler_lock, flags);
handler = lookup_enclosing_address_handler(&address_handler_list,


--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/