diff options
author | 2005-12-07 21:46:27 -0600 | |
---|---|---|
committer | 2005-12-08 09:13:29 -0500 | |
commit | 85631672e6a8032267058b4ccbe53f1924a5d0be (patch) | |
tree | e1d415d226e3ef0ee44c4282ee96ef006f3a08a9 /drivers/acpi/processor_perflib.c | |
parent | [SCSI] Fix incorrect pointer in megaraid.c MODE_SENSE emulation (diff) | |
download | linux-dev-85631672e6a8032267058b4ccbe53f1924a5d0be.tar.xz linux-dev-85631672e6a8032267058b4ccbe53f1924a5d0be.zip |
[SCSI] fix OOPS due to clearing eh_action prior to aborting eh command
The eh_action semaphore in scsi_eh_send_command is cleared after a
command timeout. The command is subsequently aborted and the abort
will try to call scsi_done() on it. Unfortunately, the scsi_eh_done()
routine unconditinally completes the semaphore (which is now null).
Fix this race by makiong the scsi_eh_done() routine check that the
semaphore is non null before completing it (mirroring the ordinary
command done/timeout logic).
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
Diffstat (limited to 'drivers/acpi/processor_perflib.c')
0 files changed, 0 insertions, 0 deletions