[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <20170315113019.GA28050@oracle.com>
Date: Wed, 15 Mar 2017 07:30:19 -0400
From: Sowmini Varadhan <sowmini.varadhan@...cle.com>
To: Dmitry Vyukov <dvyukov@...gle.com>
Cc: Herbert Xu <herbert@...dor.apana.org.au>,
David Miller <davem@...emloft.net>,
linux-crypto@...r.kernel.org, LKML <linux-kernel@...r.kernel.org>,
Eric Dumazet <edumazet@...gle.com>,
Cong Wang <xiyou.wangcong@...il.com>,
netdev <netdev@...r.kernel.org>, santosh.shilimkar@...cle.com,
rds-devel@....oracle.com, syzkaller <syzkaller@...glegroups.com>
Subject: Re: crypto: deadlock between crypto_alg_sem/rtnl_mutex/genl_mutex
On (03/15/17 10:08), Dmitry Vyukov wrote:
> After I've applied the patch these reports stopped to happen, and I
> have not seem any other reports that look relevant.
> However, it there was one, but it looks like a different issue and it
> was probably masked by massive amounts of original deadlock reports:
Yes, this looks like a valid deadlock.
I think there may be some ->dumpit callbacks that take the rtnl_lock
and do not unlock it before return, e.g., I see nl80211_dump_interface()
doing this at
2612 rtnl_lock();
2613 if (!cb->args[2]) {
:
2619 ret = nl80211_dump_wiphy_parse(skb, cb, &state);
2620 if (ret)
2621 return ret;
afaict, nl80211_dump_wiphy_parse does not itself do rtnl_unlock on error.
If that's the case then we'd run into the circular locking dependancy
flagged by lockdep.
Disclaimer: I did not check every single ->dumpit, there may be more
than one of these..
Powered by blists - more mailing lists