[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: lock_kernel()
On Mon, Sep 08, 2003 at 12:54:18AM -0700, Prem Anand Ramanathan wrote:
|Hi,
| I have a question on lock_kernel() macro? it does nothing in case of single processor. But in multi processor it does a spinlock on a kernel global flag. What is the semantic of this macro?
is a recursive locking.
Process "A" holding Big Kernel Lock, can issue another lock_kernel() without
incourring in a deadlock.
|If once called (lock_kernel) then all the subsequent calls to the same macro will be blocked until unlock_kernel is called??
(see above)
|If that is the case many device drivers use this call even while around the calls that sleep.
|If anyone could help me, that would be of great help.
i suggest this paper:
"BKL: One lock to Bind Them All" from
Ottawa Linux Symposium 2002 Conference Proceedings.
grab it from:
http://www.linux.org.uk/~ajh/ols2002_proceedings.pdf.gz
|-Smaillboy.
|
|
|---------------------------------
|Do you Yahoo!?
|Yahoo! SiteBuilder - Free, easy-to-use web site design software
--
Daniele.
--
Kernelnewbies: Help each other learn about the Linux kernel.
Archive: http://mail.nl.linux.org/kernelnewbies/
FAQ: http://kernelnewbies.org/faq/