From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-pg1-f181.google.com (mail-pg1-f181.google.com [209.85.215.181]) (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 5C3282ECE91 for ; Tue, 14 Apr 2026 02:09:56 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.215.181 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1776132597; cv=none; b=ZF80/HtPkCwH5/nRUEEJWmiQJ8u0aU8ghtY+NQTb+SlP/RSbArc02NswL+baL4p8+RAnEdrGe0lTv7DrD2l0aN7kuOR2oCpbpY8hxgifhdJG3emc2AllSPHOYc6AVglFtwbiNKATsnmoobkahbxU/MUSXug0SN8JZKJIkHUo6uM= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1776132597; c=relaxed/simple; bh=xY4b9wGUIkCrctiEpdGWM1HC1dXk7NDB/lOt+BaRB6Y=; h=From:To:Cc:Subject:Date:Message-ID:MIME-Version; b=dscQ/oGs7IC1m4szxnU7c76Jkhl0L/vk80FVAjiqaubpRZXBYzkeXrevzrgjRStgTjolA2zCh2JVhzjM3/qYbui2vaSnvv/lAvQwZqTLn7T0pTNwIbJpduWHkGB1lpdds+GdNChc7DxzB1FW/FJBLdgtcBdHc34gmf2RNypFIkA= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=Q1nYtCjy; arc=none smtp.client-ip=209.85.215.181 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="Q1nYtCjy" Received: by mail-pg1-f181.google.com with SMTP id 41be03b00d2f7-c76b0cda2aeso2075962a12.2 for ; Mon, 13 Apr 2026 19:09:56 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1776132596; x=1776737396; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to; bh=FUZYksfTG/qLw7MfI55z+3Kvxpv1PSmQo+kMyhRoDJA=; b=Q1nYtCjy5zZ16XBg63+1sgVSNFEcr8EB27ipZXP0/DmTnJSQi1PeLkOhvybuCTszqh csyVgVArrBwTDe3OHSG5S2FH356ikuL7Es/qA0cnvgROCaD1fx4LvrUnprPP3LCB9teo uX3bv0TG4fQ2L9EVLfTCUxBo0ta8G0y80GSFTcmrgQDrqBjF7L9/UxjUCFPl10oG7ztA 4z+Ub9vkcLKtvNtQ7DY06ORxfiHht61xv++73u0yCXsTtEWoniCP8R0kh1WsgDSRLJAM eMSmDpj2TXnyXeNITPjMTI3U7gXLw7QtLu6WAZJlrRcPX5H9RDvzEY+ol/GmaMbs7nia ajew== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1776132596; x=1776737396; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-gg:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=FUZYksfTG/qLw7MfI55z+3Kvxpv1PSmQo+kMyhRoDJA=; b=sAw0GVQZen8ITFwY4fNBiGuswcpHaZN50X4ieLy4H+3bf8tf2GQsnw933UXHLydeDp PgfR5qeyieFQ5rt38Q2BSgxk9FR2CuFYeFjSuX+1GCCi8d2u/4eeqNw2pnfA3c1LZ0Hd lw7KZaYLV4vi6X9scaiRs2/O4uxsVtbjGxKSUOgkXuzY3qi1t+GdusgETenGbsnPGdAd 3SEM6mnuBUWRgl0spBrqK6MyDTkQ3vXuClulcjCnKf5p50ekh4kbn78fdqJ00lA5CJjz SA4UMGh/vuNuLvVfo+M6eYCJ6+ZLAQ3ElIUvZZen/W/X8G4xRBrsBeAjcRye9q14b3fq ri5A== X-Forwarded-Encrypted: i=1; AFNElJ+5k/wiwwLvWr0cC5wY4R3A8BlgnCUL/1/VAJNQmGYj1YFAuHGib66Eo0NrOdlDGNJcFndD+cLW7TFFd7Q=@vger.kernel.org X-Gm-Message-State: AOJu0YwPyMva1HA0YbYY6cwlGLOtvyZ9VhYZFqTUw5k8ZQbKNmcBdKbo duL60qyHg4feRhcdAsRYd/+hfHD4BvAj8h4aFL/jETlyklc3gQH9A6W8 X-Gm-Gg: AeBDietxtjhjzVabV6utsIjqblcDMoGfRJa1tVTf4dhYQMPjKMeKskfFadIMCnfAvU7 VpMiE6LcLzvdnVVkQXaZyvXRbzIZ0dIgK/FyDpYVtMDymH2oPt7uIV0CXb8cTQOLqziri8J1OdV IHh9B8Scp2j3dpWMm/sd2k55j+irrWmCi7rQ0wAF4JHU+jjM6oj79XhLHf7W6koA3ISY6BFD7yl fLIGKcEmbQVLnh8/ZzmY6rDcRceP9pIn+8Ldxh3SeGS7TouqnA8BUES6dT+7k1x3ls91m/bMYD7 +D3UCPIAg8GONSanP/gd9sSiGiwnE/81/Sm0YWf4ADdx4tm4PxhBFUO/H5qczotElQeDPyCG0us htmDtM3ZBRABx8k4d1FTE9OfINnzrqYoyB3lqTniS0SbkFDbBcPTWMaWduZOQ9x5tXJ+LLh3IKH Cjd//ui1SYdYQWPp6iq2j7VATq4nH3r0DxlcOE8RNRl7RXqL0r26uNwsQNL7loUmmDoAftLYo6z kpHPWrD5K+XLDc3Zw== X-Received: by 2002:a05:6a00:3e27:b0:82a:5e9a:922e with SMTP id d2e1a72fcca58-82f0c3a9497mr15921602b3a.42.1776132595740; Mon, 13 Apr 2026 19:09:55 -0700 (PDT) Received: from deepanshu-kernel-hacker.. ([2405:201:682f:383f:445c:f4a3:a803:e3c6]) by smtp.gmail.com with ESMTPSA id d2e1a72fcca58-82f0c4b6d43sm11297750b3a.31.2026.04.13.19.09.51 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 13 Apr 2026 19:09:55 -0700 (PDT) From: Deepanshu Kartikey To: steffen.klassert@secunet.com, herbert@gondor.apana.org.au, davem@davemloft.net, edumazet@google.com, kuba@kernel.org, pabeni@redhat.com, horms@kernel.org, sd@queasysnail.net Cc: netdev@vger.kernel.org, linux-kernel@vger.kernel.org, Deepanshu Kartikey Subject: [PATCH ipsec-next v3] xfrm: cleanup error path in xfrm_add_policy() Date: Tue, 14 Apr 2026 07:39:47 +0530 Message-ID: <20260414020947.65905-1-kartikey406@gmail.com> X-Mailer: git-send-email 2.43.0 Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Replace the open-coded manual cleanup in the error path of xfrm_add_policy() with xfrm_policy_destroy(), which already handles all the necessary cleanup internally. This is consistent with how xfrm_policy_construct() handles its own error paths. The walk.dead flag must be set before calling xfrm_policy_destroy() as required by BUG_ON(!policy->walk.dead). Signed-off-by: Deepanshu Kartikey --- v3: - Changed prefix to ipsec-next as this is a cleanup - Dropped syzbot references as suggested by Sabrina Dubroca v2: - Reworded commit message to reflect cleanup rather than bugfix as suggested by Sabrina Dubroca - Removed incorrect Fixes: and Closes: tags - Corrected subject prefix to PATCH ipsec --- net/xfrm/xfrm_user.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/net/xfrm/xfrm_user.c b/net/xfrm/xfrm_user.c index d56450f61669..ae144d1e4a65 100644 --- a/net/xfrm/xfrm_user.c +++ b/net/xfrm/xfrm_user.c @@ -2267,9 +2267,8 @@ static int xfrm_add_policy(struct sk_buff *skb, struct nlmsghdr *nlh, if (err) { xfrm_dev_policy_delete(xp); - xfrm_dev_policy_free(xp); - security_xfrm_policy_free(xp->security); - kfree(xp); + xp->walk.dead = 1; + xfrm_policy_destroy(xp); return err; } -- 2.43.0