firewire: don't panic on invalid AR request buffer
authorStefan Richter <stefanr@s5r6.in-berlin.de>
Sat, 31 May 2008 17:01:26 +0000 (19:01 +0200)
committerStefan Richter <stefanr@s5r6.in-berlin.de>
Wed, 18 Jun 2008 22:12:34 +0000 (00:12 +0200)
BUG() at this place is wrong.  (Unless if the low level driver would
already do higher-level input validation of incoming request headers.)

Invalid incoming requests or bugs in the controller which corrupt the
AR-req buffer needlessly crashed the box because this is run in tasklet
context.

Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
drivers/firewire/fw-transaction.c

index ccf0e4cf108f4b65298f1cde98041cc08027d7e2..7f92c45349e2da809debc50f14824f762a357e76 100644 (file)
@@ -572,7 +572,8 @@ allocate_request(struct fw_packet *p)
                break;
 
        default:
-               BUG();
+               fw_error("ERROR - corrupt request received - %08x %08x %08x\n",
+                        p->header[0], p->header[1], p->header[2]);
                return NULL;
        }