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 4578648A44 for ; Fri, 31 Oct 2025 15:35:32 +0100 (CET) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 3F46640150; Fri, 31 Oct 2025 15:35:32 +0100 (CET) Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.133.124]) by mails.dpdk.org (Postfix) with ESMTP id 99C9D40652 for ; Fri, 31 Oct 2025 15:35:31 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1761921331; 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=pJneonKLiNt4E9/nreVNZjk/pa8apy7JsfrmlzGlXZk=; b=a8od0ZOe+hDpk0eAv+XbEeGLXfw4RpQ3hAjI8kRFej5jaPzq2gH9Q7ZE6gMMNsWDv4tDno NZw4PYGN07bTZQ8FHgdzL79YKM6Qx40flUp6OyPjpgdwm/Vtnoyu3zUzYuEh/Bp9NA/u5h hulToS32LxJ19VGOFklCIY7406uIf2E= Received: from mx-prod-mc-03.mail-002.prod.us-west-2.aws.redhat.com (ec2-54-186-198-63.us-west-2.compute.amazonaws.com [54.186.198.63]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-486-QB0wp0qPMAGf4rPcsfuBSg-1; Fri, 31 Oct 2025 10:35:29 -0400 X-MC-Unique: QB0wp0qPMAGf4rPcsfuBSg-1 X-Mimecast-MFC-AGG-ID: QB0wp0qPMAGf4rPcsfuBSg_1761921328 Received: from mx-prod-int-08.mail-002.prod.us-west-2.aws.redhat.com (mx-prod-int-08.mail-002.prod.us-west-2.aws.redhat.com [10.30.177.111]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by mx-prod-mc-03.mail-002.prod.us-west-2.aws.redhat.com (Postfix) with ESMTPS id 6FF8D1956066; Fri, 31 Oct 2025 14:35:28 +0000 (UTC) Received: from rh.redhat.com (unknown [10.44.32.50]) by mx-prod-int-08.mail-002.prod.us-west-2.aws.redhat.com (Postfix) with ESMTP id C346D18004D4; Fri, 31 Oct 2025 14:35:26 +0000 (UTC) From: Kevin Traynor To: Marat Khalili Cc: Chengwen Feng , dpdk stable Subject: patch 'graph: fix stats query with no node xstats' has been queued to stable release 24.11.4 Date: Fri, 31 Oct 2025 14:32:08 +0000 Message-ID: <20251031143421.324432-6-ktraynor@redhat.com> In-Reply-To: <20251031143421.324432-1-ktraynor@redhat.com> References: <20251031143421.324432-1-ktraynor@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 3.4.1 on 10.30.177.111 X-Mimecast-Spam-Score: 0 X-Mimecast-MFC-PROC-ID: OOz9cm_NnW5S80xqhJrblfoMPsIZDs4_iLpcQic1tk0_1761921328 X-Mimecast-Originator: redhat.com Content-Transfer-Encoding: 8bit content-type: text/plain; charset="US-ASCII"; x-default=true 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 24.11.4 Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet. It will be pushed if I get no objections before 11/05/25. 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/7fd0620e8dc7bf36ab3c8750a9b4a594fc59e621 Thanks. Kevin --- >From 7fd0620e8dc7bf36ab3c8750a9b4a594fc59e621 Mon Sep 17 00:00:00 2001 From: Marat Khalili Date: Wed, 25 Jun 2025 10:27:21 +0100 Subject: [PATCH] graph: fix stats query with no node xstats [ upstream commit 7c6410ed8b1d800562dcf11ebd1784f6022c617d ] This was flagged by undefined behaviour sanitizer: memset should not be called with NULL first argument. (memset requires first argument to be pointer to a memory object, so passing NULL may result in an undefined behaviour including among other things optimizer potentially removing code paths depending on stat->xstat_count being NULL.) Sanitizer message: lib/graph/graph_stats.c:473:2: runtime error: null pointer passed as argument 1, which is declared to never be null Add a check that stat->xstat_cntrs is not zero before the call, since stat->xstat_count can only be NULL when stat->xstat_cntrs is zero. Fixes: 070db97e017b ("graph: support node xstats") Signed-off-by: Marat Khalili Acked-by: Chengwen Feng --- lib/graph/graph_stats.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/lib/graph/graph_stats.c b/lib/graph/graph_stats.c index 0bbbd9fb7c..e955ee5e06 100644 --- a/lib/graph/graph_stats.c +++ b/lib/graph/graph_stats.c @@ -468,5 +468,6 @@ cluster_node_arregate_stats(struct cluster_node *cluster, bool dispatch) uint8_t i; - memset(stat->xstat_count, 0, sizeof(uint64_t) * stat->xstat_cntrs); + if (stat->xstat_cntrs != 0) + memset(stat->xstat_count, 0, sizeof(uint64_t) * stat->xstat_cntrs); for (count = 0; count < cluster->nb_nodes; count++) { node = cluster->nodes[count]; -- 2.51.0 --- Diff of the applied patch vs upstream commit (please double-check if non-empty: --- --- - 2025-10-31 13:53:52.492901098 +0000 +++ 0006-graph-fix-stats-query-with-no-node-xstats.patch 2025-10-31 13:53:52.007523278 +0000 @@ -1 +1 @@ -From 7c6410ed8b1d800562dcf11ebd1784f6022c617d Mon Sep 17 00:00:00 2001 +From 7fd0620e8dc7bf36ab3c8750a9b4a594fc59e621 Mon Sep 17 00:00:00 2001 @@ -5,0 +6,2 @@ +[ upstream commit 7c6410ed8b1d800562dcf11ebd1784f6022c617d ] + @@ -21 +22,0 @@ -Cc: stable@dpdk.org @@ -30 +31 @@ -index eac73cbf71..583ad8dbd5 100644 +index 0bbbd9fb7c..e955ee5e06 100644 @@ -33 +34 @@ -@@ -471,5 +471,6 @@ cluster_node_arregate_stats(struct cluster_node *cluster, bool dispatch) +@@ -468,5 +468,6 @@ cluster_node_arregate_stats(struct cluster_node *cluster, bool dispatch)