[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20170831083453.5tfjofzk7idthsof@hirez.programming.kicks-ass.net>
Date: Thu, 31 Aug 2017 10:34:53 +0200
From: Peter Zijlstra <peterz@...radead.org>
To: Byungchul Park <byungchul.park@....com>
Cc: mingo@...nel.org, tj@...nel.org, boqun.feng@...il.com,
david@...morbit.com, johannes@...solutions.net, oleg@...hat.com,
linux-kernel@...r.kernel.org, kernel-team@....com
Subject: Re: [PATCH 4/4] lockdep: Fix workqueue crossrelease annotation
On Thu, Aug 31, 2017 at 05:15:01PM +0900, Byungchul Park wrote:
> It's not important. Ok, check the following, instead:
>
> context X context Y
> --------- ---------
> wait_for_completion(C)
> acquire(A)
> release(A)
> process_one_work()
> acquire(B)
> release(B)
> work->fn()
> complete(C)
>
> We don't need to lose C->A and C->B dependencies unnecessarily.
I really can't be arsed about them. Its really only the first few works
that will retain that dependency anyway, even if you were to retain
them.
All of that is contained in kernel/kthread and kernel/workqueue and can
be audited if needed. Its a very limited amount of code.
Powered by blists - more mailing lists