Messages in this thread | | | Date | Sun, 04 Mar 2001 22:19:46 +1100 | From | Andrew Morton <> | Subject | Re: [prepatches] removal of console_lock |
| |
Manfred Spraul wrote: > > > - Major revamp of printk(). The approach taken in printk() is to try > > to acquire the (new) console_sem. If we succeed, the output is > > placed into the log buffer and is printed to the consoles. If we fail > > to acquire the semaphore we just buffer the output in the log buffer > > and the current holder of the console_sem will do the printing for us > > prior to releasing console_sem. > > Is down_trylock reliable under load?
I'm not aware of any problems. It's only really used in one place at present - when networking interrupt context wants to acquire a socket's semaphore. Oh. That seems to have disappeared.
I've tested it pretty hard on SMP with zillions of printk()s from interrupt context in parallel with `cat lots_of_stuff'.
> I remember 2 or 3 bug reports than disappeared after down_trylock was > removed. > The last one was this week. > > http://www.mail-archive.com/linux-kernel@vger.kernel.org/msg31919.html
That was different. The parport code was leaving the semaphore in a downed state when it shouldn't have.
But you're right - it's not well-proven code. I'll go stare angrily at it for a while. Of course, there are about ten different implementations...
- - 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/
| |