diff options
-rw-r--r-- | drivers/firewire/fw-device-cdev.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/firewire/fw-device-cdev.c b/drivers/firewire/fw-device-cdev.c index ebf0d100805e..b1b7edb0d2ad 100644 --- a/drivers/firewire/fw-device-cdev.c +++ b/drivers/firewire/fw-device-cdev.c | |||
@@ -827,8 +827,10 @@ static int fw_device_op_release(struct inode *inode, struct file *file) | |||
827 | kfree(r); | 827 | kfree(r); |
828 | } | 828 | } |
829 | 829 | ||
830 | list_for_each_entry_safe(t, next_t, &client->transaction_list, link) | 830 | list_for_each_entry_safe(t, next_t, &client->transaction_list, link) { |
831 | fw_cancel_transaction(client->device->card, &t->transaction); | 831 | fw_cancel_transaction(client->device->card, &t->transaction); |
832 | kfree(t); | ||
833 | } | ||
832 | 834 | ||
833 | /* FIXME: We should wait for the async tasklets to stop | 835 | /* FIXME: We should wait for the async tasklets to stop |
834 | * running before freeing the memory. */ | 836 | * running before freeing the memory. */ |