[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20070806165007.GB4021@tv-sign.ru>
Date: Mon, 6 Aug 2007 20:50:07 +0400
From: Oleg Nesterov <oleg@...sign.ru>
To: Gregory Haskins <ghaskins@...ell.com>
Cc: Daniel Walker <dwalker@...sta.com>,
Peter Zijlstra <peterz@...radead.org>,
Ingo Molnar <mingo@...e.hu>, linux-rt-users@...r.kernel.org,
linux-kernel@...r.kernel.org
Subject: Re: [PATCH] RT: Add priority-queuing and priority-inheritance to workqueue infrastructure
On 08/06, Gregory Haskins wrote:
>
> On Mon, 2007-08-06 at 19:36 +0400, Oleg Nesterov wrote:
>
> > > E.g. whatever work was being flushed was allowed to escape
> > > out from behind the barrier. If you don't care about the flush working,
> > > why do it at all?
> >
> > The caller of flush_workueue() doesn't necessary know we have such a work
> > on list. It just wants to flush its own works.
>
> I was assuming that the work being flushed was submitted by the same
> context, but I think I see what you are saying now. Essentially if that
> queued work was unrelated to the thread that was doing the flush, it
> doesn't care if it gets rescheduled.
Yes.
> Do you agree that if the context was the same there is a bug? Or did I
> miss something else?
Yes sure. We can't expect we can "flush" work_struct with flush_workqueue()
unless we know it doesn't re-schedule itself.
OTOH, it is not the bug to call flush_workqueue() even if that work was
queued by us, it should complete.
Oleg.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists