mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2025-01-10 07:10:27 +00:00
[SCSI] sd: fix medium-removal bug
Commit 409f3499a2cfcd1e9c2857c53af7fcce069f027f (scsi/sd: remove big kernel lock) introduced a bug in the sd_release routine. Medium removal should be allowed when the number of open file references drops to 0, not when it becomes non-zero. This patch (as1414) adjusts the test to fix the bug. Signed-off-by: Alan Stern <stern@rowland.harvard.edu> Signed-off-by: James Bottomley <James.Bottomley@suse.de>
This commit is contained in:
parent
0fb576d825
commit
7e44331240
@ -870,7 +870,7 @@ static int sd_release(struct gendisk *disk, fmode_t mode)
|
||||
|
||||
SCSI_LOG_HLQUEUE(3, sd_printk(KERN_INFO, sdkp, "sd_release\n"));
|
||||
|
||||
if (atomic_dec_return(&sdkp->openers) && sdev->removable) {
|
||||
if (atomic_dec_return(&sdkp->openers) == 0 && sdev->removable) {
|
||||
if (scsi_block_when_processing_errors(sdev))
|
||||
scsi_set_medium_removal(sdev, SCSI_REMOVAL_ALLOW);
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user