From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 77C81A0032 for ; Wed, 16 Mar 2022 16:16:04 +0100 (CET) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 732D541157; Wed, 16 Mar 2022 16:16:04 +0100 (CET) Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.129.124]) by mails.dpdk.org (Postfix) with ESMTP id 3585840395 for ; Wed, 16 Mar 2022 16:16:03 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1647443762; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=j8rndyANOx9/6AXPxL/oBGNueO6z+Gkacmpj64ItF2k=; b=V6t1zGtsyA1WrD9VPczTpMXrt+6W4HX/PSDutT3dbyOvz4mAuWK7EHBUU7Ijzabdj2Pibf 4lrIAIAfy3g/W0HkK9TZmwDJPGU3QUI7UBgGf6jOx75w/zLIFEcoq6BaKDgpC3J+KY3cWn BnTmADMClkE2a9SH4pKAZjz9wjaNJZw= Received: from mimecast-mx02.redhat.com (mx3-rdu2.redhat.com [66.187.233.73]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id us-mta-653-YJiFh6gUOiKR9bQcl9KPBg-1; Wed, 16 Mar 2022 11:15:59 -0400 X-MC-Unique: YJiFh6gUOiKR9bQcl9KPBg-1 Received: from smtp.corp.redhat.com (int-mx10.intmail.prod.int.rdu2.redhat.com [10.11.54.10]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx02.redhat.com (Postfix) with ESMTPS id E1CCB3C0D1B2; Wed, 16 Mar 2022 15:15:57 +0000 (UTC) Received: from rh.redhat.com (unknown [10.39.195.131]) by smtp.corp.redhat.com (Postfix) with ESMTP id BF4FF401E24; Wed, 16 Mar 2022 15:15:56 +0000 (UTC) From: Kevin Traynor To: Rahul Bhansali Cc: Conor Walsh , Konstantin Ananyev , dpdk stable Subject: patch 'examples/l3fwd: fix buffer overflow in Tx' has been queued to stable release 21.11.1 Date: Wed, 16 Mar 2022 15:15:17 +0000 Message-Id: <20220316151524.1242199-16-ktraynor@redhat.com> In-Reply-To: <20220316151524.1242199-1-ktraynor@redhat.com> References: <20220316151524.1242199-1-ktraynor@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.85 on 10.11.54.10 Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=ktraynor@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Transfer-Encoding: 8bit Content-Type: text/plain; charset="US-ASCII" X-BeenThere: stable@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: patches for DPDK stable branches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: stable-bounces@dpdk.org Hi, FYI, your patch has been queued to stable release 21.11.1 Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet. It will be pushed if I get no objections before 03/21/22. So please shout if anyone has objections. Also note that after the patch there's a diff of the upstream commit vs the patch applied to the branch. This will indicate if there was any rebasing needed to apply to the stable branch. If there were code changes for rebasing (ie: not only metadata diffs), please double check that the rebase was correctly done. Queued patches are on a temporary branch at: https://github.com/kevintraynor/dpdk-stable This queued commit can be viewed at: https://github.com/kevintraynor/dpdk-stable/commit/098c1c5d54b547166b8efb3337042bf225783435 Thanks. Kevin --- >From 098c1c5d54b547166b8efb3337042bf225783435 Mon Sep 17 00:00:00 2001 From: Rahul Bhansali Date: Tue, 11 Jan 2022 18:20:05 +0530 Subject: [PATCH] examples/l3fwd: fix buffer overflow in Tx [ upstream commit 0490d69d58d9d75c37e780966c837a062658f528 ] This patch fixes the stack buffer overflow error reported from AddressSanitizer. Function send_packetsx4() tries to access out of bound data from rte_mbuf and fill it into TX buffer even in the case where no pending packets (len = 0). Performance impact:- No ASAN error report:- ==819==ERROR: AddressSanitizer: stack-buffer-overflow on address 0xffffe2c0dcf0 at pc 0x0000005e791c bp 0xffffe2c0d7e0 sp 0xffffe2c0d800 READ of size 8 at 0xffffe2c0dcf0 thread T0 #0 0x5e7918 in send_packetsx4 ../examples/l3fwd/l3fwd_common.h:251 #1 0x5e7918 in send_packets_multi ../examples/l3fwd/l3fwd_neon.h:226 Fixes: 96ff445371e0 ("examples/l3fwd: reorganise and optimize LPM code path") Signed-off-by: Rahul Bhansali Reviewed-by: Conor Walsh Acked-by: Konstantin Ananyev --- examples/l3fwd/l3fwd_common.h | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/examples/l3fwd/l3fwd_common.h b/examples/l3fwd/l3fwd_common.h index cbaab79f5b..8e4c27218f 100644 --- a/examples/l3fwd/l3fwd_common.h +++ b/examples/l3fwd/l3fwd_common.h @@ -237,4 +237,7 @@ send_packetsx4(struct lcore_conf *qconf, uint16_t port, struct rte_mbuf *m[], /* copy rest of the packets into the TX buffer. */ len = num - n; + if (len == 0) + goto exit; + j = 0; switch (len % FWDSTEP) { @@ -259,4 +262,5 @@ send_packetsx4(struct lcore_conf *qconf, uint16_t port, struct rte_mbuf *m[], } +exit: qconf->tx_mbufs[port].len = len; } -- 2.34.1 --- Diff of the applied patch vs upstream commit (please double-check if non-empty: --- --- - 2022-03-16 15:14:12.520474723 +0000 +++ 0016-examples-l3fwd-fix-buffer-overflow-in-Tx.patch 2022-03-16 15:14:12.124847656 +0000 @@ -1 +1 @@ -From 0490d69d58d9d75c37e780966c837a062658f528 Mon Sep 17 00:00:00 2001 +From 098c1c5d54b547166b8efb3337042bf225783435 Mon Sep 17 00:00:00 2001 @@ -5,0 +6,2 @@ +[ upstream commit 0490d69d58d9d75c37e780966c837a062658f528 ] + @@ -21 +22,0 @@ -Cc: stable@dpdk.org