[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <1507744197.50316.3.camel@primarydata.com>
Date: Wed, 11 Oct 2017 17:49:59 +0000
From: Trond Myklebust <trondmy@...marydata.com>
To: "tj@...nel.org" <tj@...nel.org>
CC: "bfields@...ldses.org" <bfields@...ldses.org>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
"lorenzo.pieralisi@....com" <lorenzo.pieralisi@....com>,
"jlayton@...chiereds.net" <jlayton@...chiereds.net>,
"linux-nfs@...r.kernel.org" <linux-nfs@...r.kernel.org>,
"jiangshanlai@...il.com" <jiangshanlai@...il.com>,
"anna.schumaker@...app.com" <anna.schumaker@...app.com>
Subject: Re: net/sunrpc: v4.14-rc4 lockdep warning
On Tue, 2017-10-10 at 10:19 -0700, tj@...nel.org wrote:
> Hello,
>
> On Tue, Oct 10, 2017 at 04:48:57PM +0000, Trond Myklebust wrote:
> > Thanks for the explanation. What I'm not really understanding here
> > though, is how the work item could be queued at all. We have a
> > wait_on_bit_lock() in xprt_destroy() that should mean the xprt-
> > > task_cleanup work item has completed running, and that it cannot
> > > be
> >
> > requeued.
> >
> > Is there a possibility that the flush_queue() might be triggered
> > despite the work item not being queued?
>
> Yeah, for sure. The lockdep annotations don't distinguish those
> cases and assume the worst case.
>
OK. Let's just remove that call to cancel_work_sync() then. As I said,
it should be redundant due to the wait_on_bit_lock().
--
Trond Myklebust
Linux NFS client maintainer, PrimaryData
trond.myklebust@...marydata.com
Powered by blists - more mailing lists