Received: by 2002:a05:6a10:8c0a:0:0:0:0 with SMTP id go10csp1175176pxb; Thu, 28 Jan 2021 09:40:22 -0800 (PST) X-Google-Smtp-Source: ABdhPJxD1CnI0aoRMgLuPBS0HlF1VEmMqDQSUD8/Jh9IwvEnWmMPh1eFmJHibiGsMxT3l/nq23qr X-Received: by 2002:a17:907:9879:: with SMTP id ko25mr515780ejc.524.1611855622322; Thu, 28 Jan 2021 09:40:22 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1611855622; cv=none; d=google.com; s=arc-20160816; b=cxp4cwa5YufY4osFyVF6CUdcq80xJUhceXLqeyweIz5M0Uoj3PON5mqQJCjLnpXrYJ GVDWF/KOok8wKpGvS56VbSpXspZxRGEnXs+0sNfedYxP2mjpokB4X4YYn5xsKVYa93cm 9DIvS+O2TCEFhn6iyxYuqpSGxSKxT/mQPMUT9e9gwEU+VmqBpSdRy3f+KHGVKwYHkM5Q Ti7v15vlP+XvTmaBUsYAIHkdh+45W8prVMLw7rqEYsX2lAVRZbL1S4pax3gQ/llsYqNL OlPJHIfPVf/irZlieqQHRXRQU7jVHpee1uQyKPHqmsUxDz+dkvW0eXaFX1GD597XUVTg U8Jw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from; bh=eevpovD9p5TWb8GyqCh3swMY/Wi/elbJ0XJzRo7x+2c=; b=uOBba/Vn4sLe66IsoHqwShgA6LCIpU7+B/Gi2Ls9nWrNwyGfMI573G21uiZfE5ixfW tNeX1+j443H6QljGmR/fXQY8KFy3cl6xwUV3xbyKNaftQ4qSgsEMvd89HKGd7lfSt5iy f/noDxgkfx4YzTVgVCaVLyNPI34g23Xcf4ptb2Fd57sk0JbJcAaCdzUTcr1OSB2wW1Ev y0/btYT41Q5NIZ1t7ZPdfE8wy4IEhQ+/c8KtSnBFvnKb0Ps+P0pxMdx9XmWlbW7t8g3U hsYZ7EhVPRHAKNqe+78CypQlftd5friWOdbVZsvgMXEEey3KkpUpz/NlZVXubksFS8Gg Owqw== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-wireless-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-wireless-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id e6si4014146edz.362.2021.01.28.09.39.58; Thu, 28 Jan 2021 09:40:22 -0800 (PST) Received-SPF: pass (google.com: domain of linux-wireless-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-wireless-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-wireless-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S233131AbhA1RhM (ORCPT + 99 others); Thu, 28 Jan 2021 12:37:12 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:54932 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S233163AbhA1RgS (ORCPT ); Thu, 28 Jan 2021 12:36:18 -0500 Received: from sipsolutions.net (s3.sipsolutions.net [IPv6:2a01:4f8:191:4433::2]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id E4EC3C06178B for ; Thu, 28 Jan 2021 09:35:37 -0800 (PST) Received: by sipsolutions.net with esmtpsa (TLS1.3:ECDHE_X25519__RSA_PSS_RSAE_SHA256__AES_256_GCM:256) (Exim 4.94) (envelope-from ) id 1l5BCh-00CwTh-9p; Thu, 28 Jan 2021 18:35:35 +0100 From: Johannes Berg To: linux-wireless@vger.kernel.org Cc: Johannes Berg , syzbot+ed107c5fa3e21cdcd86e@syzkaller.appspotmail.com Subject: [PATCH 1/4] nl80211: call cfg80211_dev_rename() under RTNL Date: Thu, 28 Jan 2021 18:35:25 +0100 Message-Id: <20210128183454.16a4ea036740.I2beeb391dc322d6f1df3ee2612e714e0a7817397@changeid> X-Mailer: git-send-email 2.26.2 In-Reply-To: <20210128173528.76393-1-johannes@sipsolutions.net> References: <20210128173528.76393-1-johannes@sipsolutions.net> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Precedence: bulk List-ID: X-Mailing-List: linux-wireless@vger.kernel.org From: Johannes Berg This is required, and we have an assertion, move the RTNL unlock down to cover cfg80211_dev_rename(). Fixes: a05829a7222e ("cfg80211: avoid holding the RTNL when calling the driver") Reported-by: syzbot+ed107c5fa3e21cdcd86e@syzkaller.appspotmail.com Signed-off-by: Johannes Berg --- net/wireless/nl80211.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/net/wireless/nl80211.c b/net/wireless/nl80211.c index e5e9d889f00f..3b45a9593e71 100644 --- a/net/wireless/nl80211.c +++ b/net/wireless/nl80211.c @@ -3220,7 +3220,6 @@ static int nl80211_set_wiphy(struct sk_buff *skb, struct genl_info *info) wdev = netdev->ieee80211_ptr; wiphy_lock(&rdev->wiphy); - rtnl_unlock(); /* * end workaround code, by now the rdev is available @@ -3230,6 +3229,7 @@ static int nl80211_set_wiphy(struct sk_buff *skb, struct genl_info *info) if (info->attrs[NL80211_ATTR_WIPHY_NAME]) result = cfg80211_dev_rename( rdev, nla_data(info->attrs[NL80211_ATTR_WIPHY_NAME])); + rtnl_unlock(); if (result) goto out; -- 2.26.2