[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20170907152107.v4wbvzi2zxlaelms@hirez.programming.kicks-ass.net>
Date: Thu, 7 Sep 2017 17:21:07 +0200
From: Peter Zijlstra <peterz@...radead.org>
To: Byungchul Park <max.byungchul.park@...il.com>
Cc: Byungchul Park <byungchul.park@....com>, Tejun Heo <tj@...nel.org>,
johannes.berg@...el.com, Ingo Molnar <mingo@...nel.org>,
Thomas Gleixner <tglx@...utronix.de>, oleg@...hat.com,
david@...morbit.com,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
kernel-team@....com
Subject: Re: [PATCH] lockdep: Remove unnecessary acquisitions wrt workqueue
flush
On Thu, Sep 07, 2017 at 08:37:08PM +0900, Byungchul Park wrote:
> On Thu, Sep 7, 2017 at 6:41 PM, Peter Zijlstra <peterz@...radead.org> wrote:
> > On Thu, Sep 07, 2017 at 09:33:16AM +0900, Byungchul Park wrote:
> >> Workqueue added manual acquisitions to catch deadlock cases. Now
> >> crossrelease was introduced, some of those are redundant because
> >> crossrelease-enabled wait_for_completeion() also does it. Removed it.
> >
> > This does not explain how it doesn't become the regular timing dependent
> > stuff cross-release normally is.
>
> Yes, I will add more explanation for it at the next spin.
>
> But, let me explain it a bit here to help you get it, since it's very
> simple. This has nothing to do with 'might' thing I introduced
> previously. For 'might' thing, I will start it after getting your response.
>
> Here, I just removed acquire() because wait_for_completion()
> already includes the acquire() by LOCKDEP_COMPLETIONS.
> That's all.
Ah I see, but it does so using some fairly nasty completion init stuff.
The old code was far easier to read.
Powered by blists - more mailing lists