From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 7B0752652AC; Mon, 1 Dec 2025 11:34:08 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1764588848; cv=none; b=AlqZVfd0mrWZoNO6Tc07GXkqHQ/HilzhxXh1ZV38bi6Y6fkf/wLSH8OGPtKkqbFj9FrLHU4BPc8LkWWkhZx6ftPsmhIXxWBQY7aK8q27U9s5lCocoOyPB7gexz5uPhGPr99dOHDxxtNTEkwAjeJRBzouN8DeMMgcJsT3z/AjrkY= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1764588848; c=relaxed/simple; bh=cv/JR5ZtGNF8z9Qtxab9KYkWMLsPdWpTl5cLdQHwVlI=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version:Content-Type; b=VxUqsFWygBJSKQzFeA75OpWty8sk2ZUsrwiJhf0I+jiC3g10URwuMW1jFdgBGdNTMt/dpCBnfFKP2PCz6M/FFkIQZNi8rzgVvR4N4ClzmG32l9VsQ851bDuyKWWwDeJ6M7mp3Vyw/CGLn17XBYH45AXZicCYjlJoeMpIfEXa7Lc= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=linuxfoundation.org header.i=@linuxfoundation.org header.b=zEy4Dp4v; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=linuxfoundation.org header.i=@linuxfoundation.org header.b="zEy4Dp4v" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 00A6DC113D0; Mon, 1 Dec 2025 11:34:07 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=linuxfoundation.org; s=korg; t=1764588848; bh=cv/JR5ZtGNF8z9Qtxab9KYkWMLsPdWpTl5cLdQHwVlI=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=zEy4Dp4vP8sV3FauHjC02QzKZwju+/R3WWT9LOR8jnxp1t0S5SwlUCODcL8NdJe4H o1NsVtlAgEFttSP4lILe6SOHvH5nlGSl7sc56MKX6PpVVQIFJc6/gIF1z8wsjbA/+U ZMokfKRD9RwswJI85lwwkdyTT678r/4V8FjdNgYU= From: Greg Kroah-Hartman To: stable@vger.kernel.org Cc: Greg Kroah-Hartman , patches@lists.linux.dev, Andrey Vatoropin , Jakub Kicinski Subject: [PATCH 5.4 160/187] be2net: pass wrb_params in case of OS2BMC Date: Mon, 1 Dec 2025 12:24:28 +0100 Message-ID: <20251201112246.995274749@linuxfoundation.org> X-Mailer: git-send-email 2.52.0 In-Reply-To: <20251201112241.242614045@linuxfoundation.org> References: <20251201112241.242614045@linuxfoundation.org> User-Agent: quilt/0.69 X-stable: review X-Patchwork-Hint: ignore Precedence: bulk X-Mailing-List: stable@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 5.4-stable review patch. If anyone has any objections, please let me know. ------------------ From: Andrey Vatoropin commit 7d277a7a58578dd62fd546ddaef459ec24ccae36 upstream. be_insert_vlan_in_pkt() is called with the wrb_params argument being NULL at be_send_pkt_to_bmc() call site.  This may lead to dereferencing a NULL pointer when processing a workaround for specific packet, as commit bc0c3405abbb ("be2net: fix a Tx stall bug caused by a specific ipv6 packet") states. The correct way would be to pass the wrb_params from be_xmit(). Fixes: 760c295e0e8d ("be2net: Support for OS2BMC.") Cc: stable@vger.kernel.org Signed-off-by: Andrey Vatoropin Link: https://patch.msgid.link/20251119105015.194501-1-a.vatoropin@crpt.ru Signed-off-by: Jakub Kicinski Signed-off-by: Greg Kroah-Hartman --- drivers/net/ethernet/emulex/benet/be_main.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) --- a/drivers/net/ethernet/emulex/benet/be_main.c +++ b/drivers/net/ethernet/emulex/benet/be_main.c @@ -1298,7 +1298,8 @@ static void be_xmit_flush(struct be_adap (adapter->bmc_filt_mask & BMC_FILT_MULTICAST) static bool be_send_pkt_to_bmc(struct be_adapter *adapter, - struct sk_buff **skb) + struct sk_buff **skb, + struct be_wrb_params *wrb_params) { struct ethhdr *eh = (struct ethhdr *)(*skb)->data; bool os2bmc = false; @@ -1362,7 +1363,7 @@ done: * to BMC, asic expects the vlan to be inline in the packet. */ if (os2bmc) - *skb = be_insert_vlan_in_pkt(adapter, *skb, NULL); + *skb = be_insert_vlan_in_pkt(adapter, *skb, wrb_params); return os2bmc; } @@ -1389,7 +1390,7 @@ static netdev_tx_t be_xmit(struct sk_buf /* if os2bmc is enabled and if the pkt is destined to bmc, * enqueue the pkt a 2nd time with mgmt bit set. */ - if (be_send_pkt_to_bmc(adapter, &skb)) { + if (be_send_pkt_to_bmc(adapter, &skb, &wrb_params)) { BE_WRB_F_SET(wrb_params.features, OS2BMC, 1); wrb_cnt = be_xmit_enqueue(adapter, txo, skb, &wrb_params); if (unlikely(!wrb_cnt))