Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753581AbdCOLak (ORCPT ); Wed, 15 Mar 2017 07:30:40 -0400 Received: from userp1040.oracle.com ([156.151.31.81]:35653 "EHLO userp1040.oracle.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751884AbdCOLad (ORCPT ); Wed, 15 Mar 2017 07:30:33 -0400 Date: Wed, 15 Mar 2017 07:30:19 -0400 From: Sowmini Varadhan To: Dmitry Vyukov Cc: Herbert Xu , David Miller , linux-crypto@vger.kernel.org, LKML , Eric Dumazet , Cong Wang , netdev , santosh.shilimkar@oracle.com, rds-devel@oss.oracle.com, syzkaller Subject: Re: crypto: deadlock between crypto_alg_sem/rtnl_mutex/genl_mutex Message-ID: <20170315113019.GA28050@oracle.com> References: <20170314152519.GA21159@oracle.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.5.24 (2015-08-30) X-Source-IP: aserv0022.oracle.com [141.146.126.234] Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 991 Lines: 30 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..