diff options
author | Stefan Richter <stefanr@s5r6.in-berlin.de> | 2009-03-10 16:01:08 -0400 |
---|---|---|
committer | Stefan Richter <stefanr@s5r6.in-berlin.de> | 2009-03-24 15:56:50 -0400 |
commit | 207fbefb18de9bc6f871e4008da29879c90cb67e (patch) | |
tree | a1f24a4b814ee43ca3e8dffa290e3db84a68d5b9 | |
parent | de487da8ca5839d057e1f4b57ee3f387e180b800 (diff) |
firewire: cdev: fix race of ioctl_send_request with bus reset
The bus reset handler concurrently frees client->device->node. Use
device->node_id instead. This is equivalent to device->node->node_id
while device->generation is current.
Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
-rw-r--r-- | drivers/firewire/fw-cdev.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/firewire/fw-cdev.c b/drivers/firewire/fw-cdev.c index 160cb27e120c..c54e019c9586 100644 --- a/drivers/firewire/fw-cdev.c +++ b/drivers/firewire/fw-cdev.c | |||
@@ -585,7 +585,7 @@ static int ioctl_send_request(struct client *client, void *buffer) | |||
585 | return -EINVAL; | 585 | return -EINVAL; |
586 | } | 586 | } |
587 | 587 | ||
588 | return init_request(client, request, client->device->node->node_id, | 588 | return init_request(client, request, client->device->node_id, |
589 | client->device->max_speed); | 589 | client->device->max_speed); |
590 | } | 590 | } |
591 | 591 | ||