Thread (6 messages) 6 messages, 2 authors, 2004-11-27

Re: PATCH (for comment): ide-cd possible race in PIO mode

From: Jens Axboe <hidden>
Date: 2004-11-17 21:03:32
Also in: lkml

On Wed, Nov 17 2004, Alan Cox wrote:
On Mer, 2004-11-17 at 15:37, Jens Axboe wrote:
quoted
quoted
-		HWIF(drive)->OUTB(WIN_PACKETCMD, IDE_COMMAND_REG);
+		spin_lock_irqsave(&ide_lock, flags);
+		HWIF(drive)->OUTBSYNC(WIN_PACKETCMD, IDE_COMMAND_REG);
+		ndelay(400);
+		spin_unlock_irqsave(&ide_lock, flags);
 		return (*handler) (drive);
 	}
 }
What good does the lock do?
The same as in ide_execute_command - make sure we don't take an IDE
interrupt that tries to read the state during the delay. That is the old
2.4 "may drives shared IRQ random fails" fix and why the lock is taken
in ide_execute_command.
Ah I see, makes sense. I didn't think about the shared irq case.

-- 
Jens Axboe
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help