On Sun, 5 May 2002, Johnathan Hicks wrote:
Peter Osterlund wrote:
I think you are using an SMP kernel. The packet driver grabs the io_request_lock before calling blk_init_queue, which then tries to grab the lock again, causing a deadlock. It works on UP kernels because spinlocks are NOPs there. It worked before 2.4.19-pre5 because then blk_init_queue didn't grab the io_request_lock.
Correct, I am using an SMP kernel. I think that the 2.5 version has a similar problem as I'm seeing 2 overlapping appearently identical calls and then a freeze.
I don't see this when running an SMP kernel on a UP machine. Can you provide more details please? Turning on spinlock debugging and the NMI watchdog might help. I don't think the SMP races I mentioned previously will trigger unless you actively try to make them happen, for instance by running pktsetup and mount in parallel. -- Peter Osterlund - petero2@telia.com http://w1.894.telia.com/~u89404340