Dear experts!Trying to inform myself about the locking possibilities on i386, I read linux/include/asm-i386/spinlock.h. I'm no expert on inline assembly, so I'm asking myself what would happen on a very big system if more than 128 threads are waiting on the same raw_spinlock_t. Would the 129th locker erroneously succeed immediately?
As a side note: I was looking because I have to implement a simple lock between processes in shared memory, and unfortunately I cannot use the NPTL :-( SysV semaphores presumably are much too heavy to protect simple linked list operations (no scanning of the list under the lock, just inserting on one end and removing from the other). Does anybody have a better idea than spinning in user space---with a nanosleep now and then---or does this have problems I'm not aware of?
Thanks for your help, Roland -- TU Muenchen, Physik-Department E18, James-Franck-Str., 85748 Garching Telefon 089/289-12575; Telefax 089/289-12570 -- CERN office: 892-1-D23 phone: +41 22 7676540 mobile: +41 76 487 4482 -- Any society that would give up a little liberty to gain a little security will deserve neither and lose both. - Benjamin Franklin -----BEGIN GEEK CODE BLOCK----- Version: 3.12GS/CS/M/MU d-(++) s:+ a-> C+++ UL++++ P+++ L+++ E(+) W+ !N K- w--- M + !V Y+
PGP++ t+(++) 5 R+ tv-- b+ DI++ e+++>++++ h---- y+++ ------END GEEK CODE BLOCK------
Attachment:
PGP.sig
Description: This is a digitally signed message part
- Follow-Ups:
- Re: question about __raw_spin_lock()
- From: Steven Rostedt <[email protected]>
- Re: question about __raw_spin_lock()
- Prev by Date: RE: lockdep oddity
- Next by Date: GIT.kernel.org down?
- Previous by thread: Re: [patch 2/6] fault-injection capability for kmalloc. [bug fix]
- Next by thread: Re: question about __raw_spin_lock()
- Index(es):