Messages in this thread | ![/](/images/icornerl.gif) | | Date | Sat, 16 Apr 2005 09:05:48 -0400 | From | john cooper <> | Subject | Re: FUSYN and RT |
| |
Sven Dietrich wrote: >>> /** A fuqueue, a prioritized wait queue usable from >> >>kernel space. */ >> >>> struct fuqueue { >>> spinlock_t lock; >>> struct plist wlist; >>> struct fuqueue_ops *ops; >>> }; >>> >> >>Would the above spinlock_t be a raw_spinlock_t? This goes >>back to my first question. I'm not sure how familiar you are >>with Ingo's work, but he has turned all spinlocks into >>mutexes, and when you really need an original spinlock, you >>declare it with raw_spinlock_t. >> > > > This one probably should be a raw_spinlock. > This lock is only held to protect access to the queues. > Since the queues are already priority ordered, there is > little benefit to ordering -the order of insertion- > in case of contention on a queue, compared with the complexity.
The choice of lock type should derive from both the calling context and the length of time the lock is expected to be held.
-john
-- john.cooper@timesys.com - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| ![\](/images/icornerr.gif) |