From mboxrd@z Thu Jan 1 00:00:00 1970 From: Bruce Richardson Subject: Re: [PATCH] cmdline: fix warning for unused return value Date: Fri, 8 Sep 2017 10:01:16 +0100 Message-ID: <20170908090116.GD35580@bricha3-MOBL3.ger.corp.intel.com> References: <20170907130923.157924-1-bruce.richardson@intel.com> <20170907105020.62f8eb79@xeon-e3> <20170907194617.igcohinh53imc3mk@neon> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Cc: Stephen Hemminger , dev@dpdk.org To: Olivier MATZ Return-path: Received: from mga09.intel.com (mga09.intel.com [134.134.136.24]) by dpdk.org (Postfix) with ESMTP id E13C62E8B for ; Fri, 8 Sep 2017 11:01:20 +0200 (CEST) Content-Disposition: inline In-Reply-To: <20170907194617.igcohinh53imc3mk@neon> List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" On Thu, Sep 07, 2017 at 09:46:18PM +0200, Olivier MATZ wrote: > On Thu, Sep 07, 2017 at 10:50:20AM -0700, Stephen Hemminger wrote: > > On Thu, 7 Sep 2017 14:09:23 +0100 > > Bruce Richardson wrote: > > > > > When DPDK is compiled on Ubuntu with extra warnings turned on, there is a > > > warning about the return value from write() being unchecked. Rather than > > > having builds disable the warning, which may mask other cases we do care > > > about, we can add a dummy use of the return value in the code to silence it > > > in this instance. > > > > > > Signed-off-by: Bruce Richardson > > > --- > > > lib/librte_cmdline/cmdline.c | 3 ++- > > > 1 file changed, 2 insertions(+), 1 deletion(-) > > > > > > diff --git a/lib/librte_cmdline/cmdline.c b/lib/librte_cmdline/cmdline.c > > > index a9c47be..d749165 100644 > > > --- a/lib/librte_cmdline/cmdline.c > > > +++ b/lib/librte_cmdline/cmdline.c > > > @@ -205,7 +205,8 @@ cmdline_printf(const struct cmdline *cl, const char *fmt, ...) > > > } > > > if (ret >= BUFSIZ) > > > ret = BUFSIZ - 1; > > > - write(cl->s_out, buf, ret); > > > + ret = write(cl->s_out, buf, ret); > > > + (void)ret; > > > > That is an ugly way to fix the warning. > > If write fails, the user has probably logged out. > > Here, we are writing on stdout. > I don't think it's worst than calling printf() without checking the > return value. > > By the way, it looks strange to this code is compiled, because > -D _GNU_SOURCE is passed to the compiler, and the code is: > > #ifdef _GNU_SOURCE > ... > #else > ... > write() > #endif > > It does not mean we shouldn't fix it, but maybe it hides something > else. Bruce, I bet you are testing your new build framework? > > Olivier Yep, and meson has the -Wunused-result flag on by default, and on Ubuntu write is marked as needing the result check. I don't like disabling warnings, so I'd rather fix it this way, for the sake of on extra line of ugliness. Open to better options though (other than not using Ubuntu, which is fine with me, but some others seem to object to that :-) )