> -----Original Message----- > From: Peter Zijlstra [mailto:pet...@infradead.org] > Sent: Wednesday, August 30, 2017 6:14 PM > To: Byungchul Park > Cc: mi...@kernel.org; t...@kernel.org; boqun.f...@gmail.com; > da...@fromorbit.com; johan...@sipsolutions.net; o...@redhat.com; linux- > ker...@vger.kernel.org; kernel-t...@lge.com > Subject: Re: [PATCH 4/4] lockdep: Fix workqueue crossrelease annotation > > On Wed, Aug 30, 2017 at 11:12:23AM +0200, Peter Zijlstra wrote: > > On Wed, Aug 30, 2017 at 06:01:59PM +0900, Byungchul Park wrote: > > > My point is that we inevitably lose valuable dependencies by yours. > That's > > > why I've endlessly asked you 'do you have any reason you try those > patches?' > > > a ton of times. And you have never answered it. > > > > The only dependencies that are lost are those between the first work and > > the setup of the workqueue thread. > > > > And there obviously _should_ not be any dependencies between those. A > > work should not depend on the setup of the thread. > > Furthermore, the save/restore can't preserve those dependencies. The > moment a work exhausts xhlocks[] they are gone. So by assuming the first
They are gone _one time_ only once it has been overwritten, and Recovered at next turn, with original code. But you made it un-recoverable even at the next time and lose all valuable dependencies unconditionally. > work _will_ exhaust the history there is effectively nothing lost.