From patchwork Sat Sep 23 10:54:24 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Christophe JAILLET X-Patchwork-Id: 143973 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:cae8:0:b0:403:3b70:6f57 with SMTP id r8csp307061vqu; Sat, 23 Sep 2023 11:00:54 -0700 (PDT) X-Google-Smtp-Source: AGHT+IEQhZNA1zxygWiC2LW//IeAfIH0FPKPplnJz4pF/4V1md56oESV3NkBTpMbc1smPZrTG5iz X-Received: by 2002:a17:902:9896:b0:1c3:73aa:618b with SMTP id s22-20020a170902989600b001c373aa618bmr2707922plp.9.1695492054046; Sat, 23 Sep 2023 11:00:54 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1695492054; cv=none; d=google.com; s=arc-20160816; b=cDf3e0GO+zBRgMwMH2D4lIDgIfirkbm0WQoRwvywsEUIBgS0Ld+6Zs4HpTmNCjhLCM vdZvx4KOEFG7GmelOTzVF4X+iHfgiSXkxkgY6VtPMJ1X0BvdI58eNRMkT5UwEbJ7e2Gd 4rU6X5x4crJGpnu0ItZr0Mx0vW6fmCNN6u8cDE6uzhc5ketvW8nkGGrdtH8gcFtpzLy9 04UyulgWc8ekRFiYTDwl4480VxWVkDI8nfYKe5KQDqLnRbsu28Wg1gGJ4GNHlvvfRy+l plfqNIElAKMdZuPRUKj9df/v1Wv0hlOKsxfunxhRQ6JTVMABdGYjJ6rp87xvhguCO/7G 51HA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :message-id:date:subject:cc:to:from:dkim-signature; bh=o6dXl6wZ2p8h+DtX0RSVtic+N8fFWJdpYZ/8V5pO/+o=; fh=SMaGDqykhtbtlSr2rTStxwz/61IRFwm4E8FEHavdwds=; b=UtqzpylmexnVi6TLTrOiPxOD18mLXPLTARrxW2t831+zn93pVcrKwlSYkowxi+GMlC HalHJdJjZSeBkAA4l76vsIG9SpB8wQcwCr15O47KfZzZYyfY32KTh9A7C+h67zO1jxqC GbR/UTwVEG7IjZ2DqXKgVg1iDHOW/fY+EF0n3UgZgnGhXn15ketzS61VGct9JjSnG2tZ YUGsZ4JlM3vF+JkO9aaFNHt97wACJVNMqffLn/+9INpqpHDd3mDeaGldnSXPgHMUKcr6 RORldpIdl0Gfd5OlkN9NrxCfdJ3/J8jwylb6R42DgK8EC6Vg3kNoiAUI2TLk0clih/Xd jg3g== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@wanadoo.fr header.s=t20230301 header.b=mcQykgLv; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.35 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=wanadoo.fr Received: from groat.vger.email (groat.vger.email. [23.128.96.35]) by mx.google.com with ESMTPS id t4-20020a17090340c400b001b9ea0f0e8esi6182176pld.650.2023.09.23.11.00.53 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 23 Sep 2023 11:00:54 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.35 as permitted sender) client-ip=23.128.96.35; Authentication-Results: mx.google.com; dkim=pass header.i=@wanadoo.fr header.s=t20230301 header.b=mcQykgLv; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.35 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=wanadoo.fr Received: from out1.vger.email (depot.vger.email [IPv6:2620:137:e000::3:0]) by groat.vger.email (Postfix) with ESMTP id 9E1B68029649; Sat, 23 Sep 2023 03:54:52 -0700 (PDT) X-Virus-Status: Clean X-Virus-Scanned: clamav-milter 0.103.10 at groat.vger.email Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S230479AbjIWKyj (ORCPT + 29 others); Sat, 23 Sep 2023 06:54:39 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:57428 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229848AbjIWKyh (ORCPT ); Sat, 23 Sep 2023 06:54:37 -0400 Received: from smtp.smtpout.orange.fr (smtp-16.smtpout.orange.fr [80.12.242.16]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 0FBDE19C for ; Sat, 23 Sep 2023 03:54:28 -0700 (PDT) Received: from pop-os.home ([86.243.2.178]) by smtp.orange.fr with ESMTPA id k0HKqXroxN7Qtk0HKqgwxU; Sat, 23 Sep 2023 12:54:27 +0200 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=wanadoo.fr; s=t20230301; t=1695466467; bh=o6dXl6wZ2p8h+DtX0RSVtic+N8fFWJdpYZ/8V5pO/+o=; h=From:To:Cc:Subject:Date; b=mcQykgLvv5hKI2mZozZzRXVLylMgYxnioHBSXfRif9ZDjE83Z/OAuwY+RqsnqOzpM Q68eBhNpcMD3XG+M/8YAjS9naOqitumOm5q4mvb78YMGynFQTHdaaExjWFnVBxO9Gj SQr626Hk9TehEbEinQ7CSVJbmBhL6sV93okVDGlKXVcsLRW52qDyde59c5zzkBf79l pXA+8Np6xLdKu+z9sgMh91E25QQ3z0U1PZicqI15p26rDfiqUhPUWBG7HYO3WMj8zw qSF5HPBSe1BCEX3yMey2QOBg8RkJzalbPZvVlI4vWGORh2jOhE/qGwzIFyAH5su7S7 ybkC0BMuGIQJA== X-ME-Helo: pop-os.home X-ME-Auth: Y2hyaXN0b3BoZS5qYWlsbGV0QHdhbmFkb28uZnI= X-ME-Date: Sat, 23 Sep 2023 12:54:27 +0200 X-ME-IP: 86.243.2.178 From: Christophe JAILLET To: Minas Harutyunyan , Greg Kroah-Hartman , Ben Dooks Cc: linux-kernel@vger.kernel.org, kernel-janitors@vger.kernel.org, Christophe JAILLET , Greg Kroah-Hartman , linux-usb@vger.kernel.org Subject: [PATCH] usb: dwc2: gadget: Fix a warning when compiling with W=1 Date: Sat, 23 Sep 2023 12:54:24 +0200 Message-Id: <5cf603809388aa04c9a02bbfe3cf531c20bb043e.1695466447.git.christophe.jaillet@wanadoo.fr> X-Mailer: git-send-email 2.34.1 MIME-Version: 1.0 X-Spam-Status: No, score=2.7 required=5.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI, RCVD_IN_SBL_CSS,SPF_HELO_NONE,SPF_PASS autolearn=no autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on groat.vger.email Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-Greylist: Sender passed SPF test, not delayed by milter-greylist-4.6.4 (groat.vger.email [0.0.0.0]); Sat, 23 Sep 2023 03:54:52 -0700 (PDT) X-Spam-Level: ** X-getmail-retrieved-from-mailbox: INBOX X-GMAIL-THRID: 1777852276137083413 X-GMAIL-MSGID: 1777852276137083413 In order to teach the compiler that 'hs_ep->name' will never be truncated, we need to tell it that 'epnum' is not negative. 'epnum' comes from in a 'for' loop in dwc2_gadget_init(), starting at 0 and ending at 255. (hsotg->num_of_eps is a char) When building with W=1, this fixes the following warnings: drivers/usb/dwc2/gadget.c: In function ‘dwc2_hsotg_initep’: drivers/usb/dwc2/gadget.c:4804:55: error: ‘%d’ directive output may be truncated writing between 1 and 11 bytes into a region of size 8 [-Werror=format-truncation=] 4804 | snprintf(hs_ep->name, sizeof(hs_ep->name), "ep%d%s", epnum, dir); | ^~ drivers/usb/dwc2/gadget.c:4804:52: note: directive argument in the range [-2147483645, 255] 4804 | snprintf(hs_ep->name, sizeof(hs_ep->name), "ep%d%s", epnum, dir); | ^~~~~~~~ drivers/usb/dwc2/gadget.c:4804:9: note: ‘snprintf’ output between 6 and 17 bytes into a destination of size 10 4804 | snprintf(hs_ep->name, sizeof(hs_ep->name), "ep%d%s", epnum, dir); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Fixes: 5b7d70c6dbf2 ("USB: Gadget driver for Samsung HS/OtG block") Signed-off-by: Christophe JAILLET --- Only changing: - int epnum; + unsigned int epnum; is enought to fix the build warning. But changing the prototype of dwc2_hsotg_initep() and the printf() format as well, to make obvious that epnum is >= 0, looks more logical to me. --- drivers/usb/dwc2/gadget.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/drivers/usb/dwc2/gadget.c b/drivers/usb/dwc2/gadget.c index b517a7216de2..102b2dd8113e 100644 --- a/drivers/usb/dwc2/gadget.c +++ b/drivers/usb/dwc2/gadget.c @@ -4786,8 +4786,8 @@ static const struct usb_gadget_ops dwc2_hsotg_gadget_ops = { */ static void dwc2_hsotg_initep(struct dwc2_hsotg *hsotg, struct dwc2_hsotg_ep *hs_ep, - int epnum, - bool dir_in) + unsigned int epnum, + bool dir_in) { char *dir; @@ -4801,7 +4801,7 @@ static void dwc2_hsotg_initep(struct dwc2_hsotg *hsotg, hs_ep->dir_in = dir_in; hs_ep->index = epnum; - snprintf(hs_ep->name, sizeof(hs_ep->name), "ep%d%s", epnum, dir); + snprintf(hs_ep->name, sizeof(hs_ep->name), "ep%u%s", epnum, dir); INIT_LIST_HEAD(&hs_ep->queue); INIT_LIST_HEAD(&hs_ep->ep.ep_list); @@ -4965,7 +4965,7 @@ static void dwc2_hsotg_dump(struct dwc2_hsotg *hsotg) int dwc2_gadget_init(struct dwc2_hsotg *hsotg) { struct device *dev = hsotg->dev; - int epnum; + unsigned int epnum; int ret; /* Dump fifo information */