kernel spinlocks; when to use; when appropriate?
Hi,
When is is appropriate to use spinlocks in the kernel,
how are they implemented (e.g. syntax, function names) and can anyone think of a good area of the kernel for me to look at, that uses them?
Thanks again for any help.
Lars.
Thanks double-ly if you give code examples... :-)
Signature · 5 lines
______________________________________________ http://www.linuxmail.org/ Now with e-mail forwarding for only US$5.95/yr Powered by Outblaze
Quoted 4 lines
When is is appropriate to use spinlocks in the kernel,
how are they implemented (e.g. syntax, function names) and can anyone think of a good area of the kernel for me to look at, that uses them?
May I humbly suggest a look at Linux Device Drivers, Second Edition? It goes over locking primitives in a fair amount of detail, and includes examples of their use. Available freely online at:
http://www.xml.com/ldd/chapter/book/index.html
or in your favorite bookstore.
jon
Jonathan Corbet
Executive editor, LWN.net
[email protected]
LKML FAQ updating (was: Re: kernel spinlocks; when to use; when appropriate?)
Okay, that link needs to go in the "basic linux kernel documentation" section at the start of the "http://www.tux.org/lkml/" faq, along with some other resources that have fallen through the cracks. I'd happily generate a patch against the FAQ, but haven't a clue what the source format is. (Is it hand-hacked HTML?)
Documentation resources:
Linux Device Drivers, second edition (whole book online).
http://www.xml.com/ldd/chapter/book/index.html
Porting device drivers to 2.5 (30-article series):
http://lwn.net/Articles/driver-porting/
Linux Kernel Internals (walkthrough of kernel 2.4 source):
http://www.moses.uklinux.net/patches/lki.html
Mel Gorman's Virtual Memory Guides (read "understanding" first, then "coding"):
http://www.csn.ul.ie/~mel/projects/vm/guide/
Also, the "asking smart questions" thing isn't on tuxedo.org anymore, it's on catb.org. (Otherwise same URL.)
And while we're on the subject, could the mention of the Documentation directory in the linux kernel source A) be moved to the start of the list, B) be updated to include a mention of "make htmldocs" and friends?
I'm sure there's more, this is just off the top of my head. I'd be happy to whip up a patch if I had a clue what file it should be against...
Rob
Quoted 23 lines · Jonathan Corbet
Quoted 4 lines
When is is appropriate to use spinlocks in the kernel,
how are they implemented (e.g. syntax, function names) and can anyone think of a good area of the kernel for me to look at, that uses them?May I humbly suggest a look at Linux Device Drivers, Second Edition? It goes over locking primitives in a fair amount of detail, and includes examples of their use. Available freely online at:
http://www.xml.com/ldd/chapter/book/index.html
or in your favorite bookstore.
jon
Jonathan Corbet
Executive editor, LWN.net
[email protected]
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/