Received: by 2002:ac0:a582:0:0:0:0:0 with SMTP id m2-v6csp3376997imm; Mon, 8 Oct 2018 03:02:23 -0700 (PDT) X-Google-Smtp-Source: ACcGV63s4SrPWcYiZ2WSTpO1md1MtvHa/z1bc24TgD7QSM1BIjtTvDDtC+z95aAUz432XVGqz0Q5 X-Received: by 2002:a63:c044:: with SMTP id z4-v6mr20251271pgi.274.1538992943571; Mon, 08 Oct 2018 03:02:23 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1538992943; cv=none; d=google.com; s=arc-20160816; b=Ai2TXXRkFYj3wnPFrY50fXZNXd6A9sfO4Y1TIPrKQv3y1MmjhQYRQyv7h2T1uaXeTT cpggbJH5RJGzOQaoLrgkSI02O0iR+jI2hoVOTlrtuNsME8OtIhlvNg3XrxgFVaW8zG2l cVr3w+YXB3LMOfbRZUz1nweIlIhftHpm0VfrxHOhMihakSGzAC4l7uzygwnTc9962Ynk n85TIFIl/N0JSGZ84lvT4UXC7uEwY1A1Dwgl7lxRKSO18uCOIb+9jeVTtURC2ylfYYA9 1dwSiqG+U/bZ2D4lmlCE7hejG6QNs8awNtPeCBpSfJ2mziZqF8BPdtxipD92/SuTEQzT rLDg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding :content-language:in-reply-to:mime-version:user-agent:date :message-id:organization:from:references:cc:to:subject:reply-to :dkim-signature; bh=ZFMF+4Z3xtd7z74CJ/ElKUQcGI7HoRIud2vfohwuJr8=; b=cRLZKxs96qxhQhyDh5eG64kg73PpWfh3d5ImtRAwmyfMFiq1RaVYpH1VMc3SbTf2zc JY5jW8Oga2LNniV5mXBOH0bYHGV+K2/Luccb33S7lBe7yHr4iyTOdisdtva6t86zC864 7UuUQjbgrAx8WoozpzLcqm8/CCFVLODtxj6U6IljXtdcEV9Y58NE7Rwm/fNfYLhF+w6P cgBp/024M2OPQ+JmRLHiABOAmGn96WyjwmRU2eDar6lXzlMSra0kcy1GXrAooIIRmh8j 89dWfc45u2+r3bqRqedd0BSbRR6MPfCpz9NAnKZ7smN/o9dEKT/Q/LpZJ/YcsP99Rwvm ucJA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass (test mode) header.i=@ideasonboard.com header.s=mail header.b=TJbfaF8m; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id g12-v6si9341655pfi.184.2018.10.08.03.02.08; Mon, 08 Oct 2018 03:02:23 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass (test mode) header.i=@ideasonboard.com header.s=mail header.b=TJbfaF8m; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727715AbeJHRLL (ORCPT + 99 others); Mon, 8 Oct 2018 13:11:11 -0400 Received: from perceval.ideasonboard.com ([213.167.242.64]:35492 "EHLO perceval.ideasonboard.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726612AbeJHRLK (ORCPT ); Mon, 8 Oct 2018 13:11:10 -0400 Received: from [192.168.0.21] (cpc89242-aztw30-2-0-cust488.18-1.cable.virginm.net [86.31.129.233]) by perceval.ideasonboard.com (Postfix) with ESMTPSA id 3B1E71283; Mon, 8 Oct 2018 12:00:13 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com; s=mail; t=1538992813; bh=T7LQ8OYrIWnmpiePuzQLchnHINAkwT9pXI+tTCJ0TIU=; h=Reply-To:Subject:To:Cc:References:From:Date:In-Reply-To:From; b=TJbfaF8mMcPP7LOyQ2Xf+LsFS/7Q5l0p0XSuACooJBte6l3Cz3keFY6j6ZY2TqnlS TzGVeZf2b0U6eigeXjH4tTC6HbVBD8gbsBecbOKw8ilAZYmbiCk/PGzpbopWR/llJe 3928t0/fLZVXpSTlvUjCOAKUu1lAhc4/eRUtH5rM= Reply-To: kieran.bingham+renesas@ideasonboard.com Subject: Re: [PATCH] kbuild: fix kernel/bounds.c 'W=1' warning To: Masahiro Yamada , miguel.ojeda.sandonis@gmail.com Cc: Arnd Bergmann , Andrew Morton , Linux-Renesas , stable , Linux Kernel Mailing List , Linux Kbuild mailing list References: <20180921142234.16882-1-kieran.bingham+renesas@ideasonboard.com> <20181005083313.2088252-1-arnd@arndb.de> From: Kieran Bingham Organization: Ideas on Board Message-ID: <5cbb504c-0506-cec8-d51b-00928cdb27fe@ideasonboard.com> Date: Mon, 8 Oct 2018 11:00:10 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.9.1 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=utf-8 Content-Language: en-GB Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 06/10/18 23:06, Masahiro Yamada wrote: > On Sun, Oct 7, 2018 at 6:58 AM Masahiro Yamada > wrote: >> >> Hi Miguel, >> >> >> On Sun, Oct 7, 2018 at 6:18 AM Miguel Ojeda >> wrote: >>> >>> On Fri, Oct 5, 2018 at 10:35 AM Arnd Bergmann wrote: >>>> >>>> Building any configuration with 'make W=1' produces a warning: >>>> >>>> kernel/bounds.c:16:6: warnign: no previous prototype for 'foo' [-Wmissing-prototypes] >>>> >>>> When also passing -Werror, this prevents us from building any >>>> other files. Nobody ever calls the function, but we can't make >>>> it 'static' either since we want the compiler output. >>>> >>>> Calling it 'main' instead however avoids the warning, because gcc >>>> does not insist on having a declaration for main. >>> >>> I think marking the function as static __used should do the trick and >>> would be less confusing. >> >> >> >> >> I tried __used, but I still see the warning. >> >> >> masahiro@grover:~/ref/linux$ git diff >> diff --git a/kernel/bounds.c b/kernel/bounds.c >> index c373e88..aee0101 100644 >> --- a/kernel/bounds.c >> +++ b/kernel/bounds.c >> @@ -13,7 +13,7 @@ >> #include >> #include >> >> -void foo(void) >> +void __used foo(void) >> { >> /* The enum constants to put into include/generated/bounds.h */ >> DEFINE(NR_PAGEFLAGS, __NR_PAGEFLAGS); >> masahiro@grover:~/ref/linux$ make W=1 prepare >> CC kernel/bounds.s >> kernel/bounds.c:16:13: warning: no previous prototype for ‘foo’ >> [-Wmissing-prototypes] >> void __used foo(void) >> ^ >> CC arch/x86/kernel/asm-offsets.s > > > > Sorry, I forgot to add 'static'. > > Adding both static and __used worked for me, > and I like the idea. > Aha - I'd also tried converting to static in my earlier attempts, but didn't realise we had __used! updating as "static __used" causes the following diff: diff -Nurp bounds.s.foo bounds.s.static-used --- bounds.s.foo 2018-10-05 10:20:53.269941404 +0100 +++ bounds.s.static-used 2018-10-08 10:51:18.079309049 +0100 @@ -110,7 +110,6 @@ #NO_APP .align 2 .p2align 3,,7 - .global foo .type foo, %function foo: stp x29, x30, [sp, -16]! //,,, I'd say this is a pretty good alternative fix - however I see Arnd's version is already on it's way though akpm's tree... https://ozlabs.org/~akpm/mmots/broken-out/kbuild-fix-kernel-boundsc-w%3D1-warning.patch Anyway, as long as one of the variants gets there I'll be happy :) -- Regards Kieran