diff options
Diffstat (limited to 'drivers/firewire')
-rw-r--r-- | drivers/firewire/ohci.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/firewire/ohci.c b/drivers/firewire/ohci.c index 76b321bb73f9..5d524254499e 100644 --- a/drivers/firewire/ohci.c +++ b/drivers/firewire/ohci.c | |||
@@ -1279,8 +1279,8 @@ static void bus_reset_tasklet(unsigned long data) | |||
1279 | * the inverted quadlets and a header quadlet, we shift one | 1279 | * the inverted quadlets and a header quadlet, we shift one |
1280 | * bit extra to get the actual number of self IDs. | 1280 | * bit extra to get the actual number of self IDs. |
1281 | */ | 1281 | */ |
1282 | self_id_count = (reg >> 3) & 0x3ff; | 1282 | self_id_count = (reg >> 3) & 0xff; |
1283 | if (self_id_count == 0) { | 1283 | if (self_id_count == 0 || self_id_count > 252) { |
1284 | fw_notify("inconsistent self IDs\n"); | 1284 | fw_notify("inconsistent self IDs\n"); |
1285 | return; | 1285 | return; |
1286 | } | 1286 | } |