On Thu, 24 Mar 2005, Steven Rostedt wrote: > > I've noticed the following situation which is caused by __up_mutex > assigning an owner right away. >
I also see this with non rt tasks causing a burst of schedules. 1. Process A runs and grabs lock L. then finishes its time slice. 2. Process B runs and tries to grab Lock L. 3. Process A runs and releases lock L. 4. __up_mutex gives process B lock L. 5. Process A tries to grab lock L. 6. Process B runs and releases lock L. 7. __up_mutex gives lock L to process A. 8. Process B tries to grab lock L again. 9. Process A runs... Here we have more unnecessary schedules. So the condition to grab a lock should be: 1. not owned. 2. partially owned, and the owner is not RT. 3. partially owned but the owner is RT and so is the grabber, and the grabber's priority is >= the owner's priority. -- Steve - 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/