From mboxrd@z Thu Jan 1 00:00:00 1970 From: Thomas Monjalon Subject: Re: [PATCH] xstats: fix behavior when a null array is provided Date: Wed, 06 Apr 2016 12:13:38 +0200 Message-ID: <3160973.YKeoJRatud@xps13> References: <1459784718-22856-1-git-send-email-olivier.matz@6wind.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7Bit Cc: dev@dpdk.org, "Van Haaren, Harry" , "Mcnamara, John" To: Olivier Matz Return-path: Received: from mail-wm0-f47.google.com (mail-wm0-f47.google.com [74.125.82.47]) by dpdk.org (Postfix) with ESMTP id 6D3E3B62 for ; Wed, 6 Apr 2016 12:15:17 +0200 (CEST) Received: by mail-wm0-f47.google.com with SMTP id n3so56101115wmn.0 for ; Wed, 06 Apr 2016 03:15:17 -0700 (PDT) In-Reply-To: List-Id: patches and discussions about DPDK List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" 2016-04-05 11:06, Van Haaren, Harry: > > From: dev [mailto:dev-bounces@dpdk.org] On Behalf Of Olivier Matz > > Subject: [dpdk-dev] [PATCH] xstats: fix behavior when a null array is provided > > > > Coverity reports an issue in ethdev: > > > > *** CID 124562: Null pointer dereferences (FORWARD_NULL) > > /lib/librte_ether/rte_ethdev.c: 1518 in rte_eth_xstats_get() > > 1512 > > 1513 /* global stats */ > > 1514 for (i = 0; i < RTE_NB_STATS; i++) { > > 1515 stats_ptr = RTE_PTR_ADD(ð_stats, > > 1516 > > rte_stats_strings[i].offset); > > 1517 val = *stats_ptr; > > >>> CID 124562: Null pointer dereferences (FORWARD_NULL) > > >>> Dereferencing null pointer "xstats". > > 1518 snprintf(xstats[count].name, > > sizeof(xstats[count].name), > > 1519 "%s", rte_stats_strings[i].name); > > 1520 xstats[count++].value = val; > > 1521 } > > 1522 > > 1523 /* per-rxq stats */ > > > > If a user calls rte_eth_xstats_get(portid, NULL, n) with n != 0, > > it may result in a crash. Although the API documentation says that > > n is the size of the table and xstats can be NULL if n == 0, we > > can add an additional check here to make Coverity happy. > > > > In that case, the return value is the same than when n == 0 is > > passed, it returns the number of statistics. > > > > Fixes: ce757f5c9a ("ethdev: new method to retrieve extended statistics") > > Signed-off-by: Olivier Matz > > I'm unsure on how verbose commit messages are ideal, > but there's certainly enough description here :) > > Acked-by: Harry van Haaren Applied, thanks