Re: lock_kernel()

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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/



[Index of Archives]     [Newbies FAQ]     [Linux Kernel Mentors]     [Linux Kernel Development]     [IETF Annouce]     [Git]     [Networking]     [Security]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux SCSI]     [Linux ACPI]
  Powered by Linux