tech-kern archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Questions of lock usage in NetBSD kernel code
Hi,
I am a freshman in developing NetBSD drivers, and I have a question in
lock usage in NetBSD kernel code.
I find three kinds of locks which are often used in OpenBSD drivers,
namely "adaptive mutex lock", "spin mutex lock" and "rw lock".
I want to know which locks can be held when the current thread can sleep.
I have read NetBSD man pages:
http://netbsd.gw.com/cgi-bin/man-cgi?mutex+9+NetBSD-current
http://netbsd.gw.com/cgi-bin/man-cgi?rwlock+9+NetBSD-current
I find two points:
(1) The "adaptive mutex lock" *can* be used in this situation.
(2) The "spin mutex lock" *can not* be used in this situation.
But I still have three questions:
(1) Are my points right?
(2) What about "rw lock"?
(3) What about other kinds of locks if they exist?
I am looking forward to useful opinions and answers :)
Thanks,
Jia-Ju Bai
Home |
Main Index |
Thread Index |
Old Index