On 08/02, Oleg Nesterov wrote: > > And I don't understand why rt_mutex_setprio() is called just before > calling work->func(). This means that a high-priority work could > be delayed by the low-priority ->current_work. Aha, I missed the rt_mutex_setprio() in insert_work(). This is not good either. Suppose we have void work_handler(struct work_struct *self) { if (!try_lock()) { // try again later... queue_work(wq, self); return; } do_the_work(); } What if that work was queued by the low-priority thread, and then a high-priority thread inserts a new work when work_handler() is running? Oleg. - 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/
- Follow-Ups:
- References:
- [PATCH] RT: Add priority-queuing and priority-inheritance to workqueue infrastructure
- From: Gregory Haskins <[email protected]>
- Re: [PATCH] RT: Add priority-queuing and priority-inheritance to workqueue infrastructure
- From: Daniel Walker <[email protected]>
- Re: [PATCH] RT: Add priority-queuing and priority-inheritance to workqueue infrastructure
- From: Peter Zijlstra <[email protected]>
- Re: [PATCH] RT: Add priority-queuing and priority-inheritance to workqueue infrastructure
- From: Oleg Nesterov <[email protected]>
- Re: [PATCH] RT: Add priority-queuing and priority-inheritance to workqueue infrastructure
- From: Daniel Walker <[email protected]>
- Re: [PATCH] RT: Add priority-queuing and priority-inheritance to workqueue infrastructure
- From: Oleg Nesterov <[email protected]>
- [PATCH] RT: Add priority-queuing and priority-inheritance to workqueue infrastructure
- Prev by Date: Re: 2.6.23-rc1-mm2
- Next by Date: Re: [PATCH] RT: Add priority-queuing and priority-inheritance to workqueue infrastructure
- Previous by thread: Re: [PATCH] RT: Add priority-queuing and priority-inheritance to workqueue infrastructure
- Next by thread: Re: [PATCH] RT: Add priority-queuing and priority-inheritance to workqueue infrastructure
- Index(es):