I'm getting ready to do a 2.4.7, but one of the fixes in 2.4.7 is a nasty SMP race that was found and made it clear that using an old trick of having a semaphore on the stack and doing "down()" on it to wait for some event (that would do the "up()") was a really bad idea. This kind of trick was used in the kernel vfork() implementation, and also in block device "wait for request completion". I've fixed both with a new and fairly simple "wait for completion" infrastructure, but I'd like especially SCSI device driver writers to check their own drivers as a result before I make the final 2.4.7. I've changed all generic code, so drivers are all expected to compile and work. However, some SCSI drivers use the semaphore trick in their own code, and I've not mucked with that. It's not worth worrying about too much, as the race is basically impossible to hit (famous last words), but I wanted a heads-up and people to give it a quick look. I also wanted to have people who actually have the hardware in question to verify that my untested (but on the face of it obvious) changes are indeed working. So please give it a quick spin, Linus
July 20, 2001
Author: JT Smith
Linus Torvalds has a few words on 2.4.7-pre9, reprinted from the kernel list. kernel.org and the usual mirrors should have it by now; read on for the message from Torvalds.