From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-wr1-f54.google.com (mail-wr1-f54.google.com [209.85.221.54]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 6A2583093C6 for ; Fri, 12 Jun 2026 08:26:08 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.221.54 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1781252773; cv=none; b=F8RelonA6OXQWk0q5KB3i5awFTuQQyBhxgmNOD8k+OPKP6UzewYXMsvQNnqcM+5U376rhEoSGVGXMjB3r9P+bPK5md/3R67omeYpwIQS+fD1SYhJVMTV3pWv/xEP104vPFyZ/DUAdIASNRMdSd8vf5YD4Vfzx56bJUkvRPT2Q1w= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1781252773; c=relaxed/simple; bh=yunkd6Bn6c/Mt2Vp7v8ZZtH4GNK+T67PIaiWUEUNy+A=; h=Date:From:To:Cc:Subject:Message-ID:References:MIME-Version: Content-Type:Content-Disposition:In-Reply-To; b=rf1RL1ZMZMq8l1kpe4Qs9wxJC1LaCd/tmHdXgzEXBekohGI8X4tVKFCQieXsbmASaIvMdTlLfbvYJ5MT0uIfkHZRgPTvaqY2qGL3UsenWxf1qlZTAdi574l6iGUiRDUR5wi6trXU9anAnM9giefFVSgq7cwkbDpGZxxyFQAzqgk= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=resnulli.us; spf=none smtp.mailfrom=resnulli.us; dkim=pass (2048-bit key) header.d=resnulli-us.20251104.gappssmtp.com header.i=@resnulli-us.20251104.gappssmtp.com header.b=AK/4S+RG; arc=none smtp.client-ip=209.85.221.54 Authentication-Results: smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=resnulli.us Authentication-Results: smtp.subspace.kernel.org; spf=none smtp.mailfrom=resnulli.us Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=resnulli-us.20251104.gappssmtp.com header.i=@resnulli-us.20251104.gappssmtp.com header.b="AK/4S+RG" Received: by mail-wr1-f54.google.com with SMTP id ffacd0b85a97d-46066e640easo374204f8f.1 for ; Fri, 12 Jun 2026 01:26:08 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=resnulli-us.20251104.gappssmtp.com; s=20251104; t=1781252767; x=1781857567; darn=vger.kernel.org; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:from:to:cc:subject:date:message-id:reply-to; bh=kk7PFzycgY3eDC9P54eIgjAqx/pkRN2cuIOJlvdAVik=; b=AK/4S+RGVPvvD6YWyYzAi/N2n90VGDFTltZujqfDN1BvwuTNxeD79Oa0q90j6/nat9 ZrSgiF0Px1r3b5GZTjRx90q84gGsZqHYclluWDW3TPGKY1sIQ2nkiwY8j/Knj0bclHsq UDGGc1DYdghSf59vKZb9NrOWdIcadigcyi6chhGee0zWiJp8mzNDcBdI2s8BqwJuKnYB K6gA/87aFKE+vEepg0o6q+5mCxgXMm0+2uC+TrohSWmFMPaoAcunHt1qQUFS6jbTMj7y 2ffQ91CfNkjUuvQeiaiRm+LN1kDqeTU0VxNnIj0bvLYCVwl3jnW8EomGiNuSJMyT6mmA Bo+A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1781252767; x=1781857567; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:x-gm-gg:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=kk7PFzycgY3eDC9P54eIgjAqx/pkRN2cuIOJlvdAVik=; b=dW5qoHESgupZCH3FxYcArgZcoFNb/py47kndq3Cxe0KpodTSiugMyjG/CqGfb8weYM wtsV7t8ZRYohvBZpH2AglsjY+RgEy7Etf+0kzb1sWNKZE0BDgCCQtT9Cq8uV2usgPytz Vc2q/NtwkddRZgcsmgJAbx1Eq9kP/qFMOGDz49AHcB+P72eEJ0U6L+eTy5k10Rq2A3++ 1H1SG9g21Y1wC4qLAU0xUy1zjAcPOFOJBx9+IFnwd8CEmHpxWb0igTmHP4i87Ib5O84E 2jn7LXtTCKHHkTZaSKk0GrSEgHhsW7FHZq6KrHFhhgf0OInq8PTm8syIiiZpNquTZkWR 5Baw== X-Forwarded-Encrypted: i=1; AFNElJ+fNWihp3ahwD3hvunBI2Or9oz9/W70Wr0C7WzGBn0zecJlCTIIeUGC5SRYX/19h6pAAuZJTrnCpn23rEM=@vger.kernel.org X-Gm-Message-State: AOJu0YxckTCb097Hdj3NS6ah1vqHafj0PKvpxybNzV2c4CIAZP8DsL/B eVfH8ar/itP4QRYTd1h0+FAo/EbWLWqEGGxkPcHIn4yzzxtTPffwfXcGsy+DqK1zOlM= X-Gm-Gg: Acq92OE481z3Q2P89jS1hZUaS/syEM5M49/1S5z5T7UgrHny5ob2oQjkZ8wFRMfsS7l HetfR6wuXq90ehfHuBPJR9mM+RumHAEqvFuktig1IWHzn1YZY+XDtRUMD11VcghyjS/dnV64e09 9TUwr/N4z6SghrJdfm4qTRrGbkY8Jk43NmKv+f+bn7GgbLM6cpTiwRNK3Om4nojng2esrAVaNMG /yLdAbkj7IuAr1xZx2p/MbKbvcLkyKkGsS6ebJe1VfFlrlDY2VGxw9tdytBj7qeibmPV99WBpkb 6LMA1+038uDgEzH/z89AezqifD0920erjGFcfoO9mFaa3uGlv75Vk+nD0qdoWoys7zqGNaXdosi LISQbttof1XN4Txwo/dQZuQ9JTlwUB/IxzllrYWDEWXz5+ZQhpGA16KMPmYAw2140534CP6JqK1 xDmGsGEgXp6NIP30lCodWJk0HIr75zvC0= X-Received: by 2002:a05:6000:2087:b0:45f:f142:d569 with SMTP id ffacd0b85a97d-4606db8dd7fmr2332029f8f.15.1781252766905; Fri, 12 Jun 2026 01:26:06 -0700 (PDT) Received: from localhost ([128.77.52.126]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-4606f2c3fcfsm3525465f8f.26.2026.06.12.01.26.06 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 12 Jun 2026 01:26:06 -0700 (PDT) Date: Fri, 12 Jun 2026 10:26:02 +0200 From: Jiri Pirko To: WenTao Liang Cc: davem@davemloft.net, edumazet@google.com, kuba@kernel.org, pabeni@redhat.com, horms@kernel.org, netdev@vger.kernel.org, linux-kernel@vger.kernel.org, stable@vger.kernel.org Subject: Re: [PATCH] devlink: fix refcount leak in devlink_nl_reload_doit() Message-ID: References: <20260611162557.98150-1-vulab@iscas.ac.cn> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20260611162557.98150-1-vulab@iscas.ac.cn> Thu, Jun 11, 2026 at 06:25:57PM +0200, vulab@iscas.ac.cn wrote: >When devlink_nl_reload_doit() is asked to change network namespace >(via DEVLINK_ATTR_NETNS_*) but the reload action is not >DEVLINK_RELOAD_ACTION_DRIVER_REINIT, it calls devlink_netns_get() >which acquires a reference on the destination net namespace. Then, >after detecting that namespace change is only supported for reinit >action, it returns -EOPNOTSUPP without releasing the reference, thus >leaking the net namespace. > >Fix the leak by releasing the reference with put_net() before >returning the error, for example by adding it directly on that error >path. A cleaner alternative is to introduce a common cleanup label >that performs the put_net() if the pointer is non-NULL. This para is very odd. Your AI is probably providing you 2 alternatives. Please adjust. Fix looks fine to me as is. > >Cc: stable@vger.kernel.org No need to cc that, afaik. >Fixes: 2edd92570441 ("devlink: don't allow to change net namespace for FW_ACTIVATE reload action") >Signed-off-by: WenTao Liang >--- > net/devlink/dev.c | 1 + > 1 file changed, 1 insertion(+) > >diff --git a/net/devlink/dev.c b/net/devlink/dev.c >index 57b2b8f03543..fd5633fa88ec 100644 >--- a/net/devlink/dev.c >+++ b/net/devlink/dev.c >@@ -578,6 +578,7 @@ int devlink_nl_reload_doit(struct sk_buff *skb, struct genl_info *info) > action != DEVLINK_RELOAD_ACTION_DRIVER_REINIT) { > NL_SET_ERR_MSG_MOD(info->extack, > "Changing namespace is only supported for reinit action"); >+ put_net(dest_net); > return -EOPNOTSUPP; > } > } >-- >2.50.1 (Apple Git-155) >