![]() | |||||||||||||
Messages in this thread |
Hi, > > On Thu, Apr 04, 2002 at 03:58:26PM +0200, Stelian Pop wrote: > > In fact, since nbd.c still reference 'queue_lock' I suspect that > > the actual modifications to nbd.c were lost somewhere in etherspace > > between Dave and Linus. > > Correct, there's a missing part, that came from 2.4 > Which I wrote and submitted with Pavel's approval a little while ago. > > Either provide the right fix for nbd.c or apply the attached patch, > > which reverts the patch to nbd.h. > > 2.4 simply does a s/queue_lock/tx_lock/ on drivers/block/nbd.c > I'll push that to Linus later today > Not quite. They cover different things. The queue_lock originally covered the queue and the request sending function. There was an obscure deadlock which could occur in this case hence the split to a spin lock to cover the queue and a semaphore to cover only the request sending function (hence tx_lock rather than queue lock). I've got a 2.5 version of that patch on my patches page at the moment, but due to the block layer changes (if I've understood them correctly) the fix should be done in a slightly different way. The reason that I've not submitted the patch for 2.5 is that it doesn't yet work and I've not had a chance to investigate properly yet (it hangs on writes sometimes). I'm sure its probably something silly that I've done but I just don't see it at the moment. Any hints or clues are welcome :-) Steve. - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/ | ||||||||||||
| Last update: 2005-03-22 12:22 [from the cache] ©2003-2008 | |||||||||||||