Received: by 2002:a05:6a10:8c0a:0:0:0:0 with SMTP id go10csp1151557pxb; Thu, 4 Feb 2021 06:23:12 -0800 (PST) X-Google-Smtp-Source: ABdhPJz9D7FqytMJ81H7a+DL4bboCsCxwQKmxna1LbVBKmJC3WOMI5A6MsathHXnFiaOG3lbg4ek X-Received: by 2002:aa7:c64a:: with SMTP id z10mr8063631edr.61.1612448592016; Thu, 04 Feb 2021 06:23:12 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1612448592; cv=none; d=google.com; s=arc-20160816; b=iGCIxcaRlKxzxyHWl5ksjVNv9eIk2IFmLJtt45WGFUS7BLS/QoD5IZetjOT5SHO1hM S2GfIIyt46dUMQiUpr75WV+2Da4Axfx5boK89BnUidRHK7DQDNMpn1FC4M/pLGUw88qA 7f4G6P41iyvcd4hbl86uBDBAkO+DEWYZp3reP6YMpbnReSR0N1WJhd21r3tfjhKwT84s HH947CEkXQo6PkIeBKfextbGVZHMDHHP95tBZnkrqx7PyUh7HlmhLS+u62YqU+Zy/diB KU+LPGMuRQYkcqc5gtG6Oe5NBfBDa0nD1odfV3N5zVHdke1JLsbfTEe0ygE1h6fEaa5j xt7g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:content-language :in-reply-to:mime-version:user-agent:date:message-id:from:references :cc:to:subject; bh=WMV9KQ9Czas6xc5rebd1RazATCZvbJSsgS8eQWd3b/Y=; b=P5Izr4bSPaiBvDn15DOSx45V9H0Y4EvSNhrk44Chk8bdO6FNVyTTtKvgz5Cr5xuy5A uRClcnUPS7EMdgKM/a376fOup7i9NQhXvomqzSuOPLp9q3ZghqvpMVqN7W4wCOp2NyRo axigW+ik+f/z0fOlLKlmF/iOcYcUja26OKMxGI7Rw/bUiB5zEXMxZsPiJ3ThL/J4TUrG nskeEbBhaGC6KuayBOK6jI3FBYJvlfxAebLFSJU5/AToGo6JZQnr53N6AEbsrV+H4Z6/ TV9eN0Wf3MawSlTex3CO7laepSxbAfOd/BTam3zwohJNegzI8VCl1uTL/vx8I/ce2gaj 0rDA== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id c1si412218edu.143.2021.02.04.06.22.43; Thu, 04 Feb 2021 06:23:12 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S236511AbhBDOSc (ORCPT + 99 others); Thu, 4 Feb 2021 09:18:32 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:51434 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S236632AbhBDORZ (ORCPT ); Thu, 4 Feb 2021 09:17:25 -0500 Received: from smtp-bc08.mail.infomaniak.ch (smtp-bc08.mail.infomaniak.ch [IPv6:2001:1600:4:17::bc08]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id D0442C061788 for ; Thu, 4 Feb 2021 06:16:29 -0800 (PST) Received: from smtp-2-0001.mail.infomaniak.ch (unknown [10.5.36.108]) by smtp-3-3000.mail.infomaniak.ch (Postfix) with ESMTPS id 4DWgZy0krkzMq77N; Thu, 4 Feb 2021 15:16:26 +0100 (CET) Received: from ns3096276.ip-94-23-54.eu (unknown [23.97.221.149]) by smtp-2-0001.mail.infomaniak.ch (Postfix) with ESMTPA id 4DWgZx1Jz4zlh8TH; Thu, 4 Feb 2021 15:16:25 +0100 (CET) Subject: Re: [PATCH 02/27] x86/syscalls: fix -Wmissing-prototypes warnings from COND_SYSCALL() To: Masahiro Yamada , linux-arch@vger.kernel.org, x86@kernel.org, Thomas Gleixner , Ingo Molnar , Borislav Petkov Cc: linux-kbuild@vger.kernel.org, linux-kernel@vger.kernel.org, kernel test robot References: <20210128005110.2613902-1-masahiroy@kernel.org> <20210128005110.2613902-3-masahiroy@kernel.org> From: =?UTF-8?Q?Micka=c3=abl_Sala=c3=bcn?= Message-ID: <41f7ad59-6ee7-db95-0e56-861c61e8318f@digikod.net> Date: Thu, 4 Feb 2021 15:16:29 +0100 User-Agent: MIME-Version: 1.0 In-Reply-To: <20210128005110.2613902-3-masahiroy@kernel.org> Content-Type: text/plain; charset=iso-8859-15 Content-Language: en-US Content-Transfer-Encoding: 8bit Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 28/01/2021 01:50, Masahiro Yamada wrote: > Building kernel/sys_ni.c with W=1 omits tons of -Wmissing-prototypes > warnings. > > $ make W=1 kernel/sys_ni.o > [ snip ] > CC kernel/sys_ni.o > In file included from kernel/sys_ni.c:10: > ./arch/x86/include/asm/syscall_wrapper.h:83:14: warning: no previous prototype for '__x64_sys_io_setup' [-Wmissing-prototypes] > 83 | __weak long __##abi##_##name(const struct pt_regs *__unused) \ > | ^~ > ./arch/x86/include/asm/syscall_wrapper.h:100:2: note: in expansion of macro '__COND_SYSCALL' > 100 | __COND_SYSCALL(x64, sys_##name) > | ^~~~~~~~~~~~~~ > ./arch/x86/include/asm/syscall_wrapper.h:256:2: note: in expansion of macro '__X64_COND_SYSCALL' > 256 | __X64_COND_SYSCALL(name) \ > | ^~~~~~~~~~~~~~~~~~ > kernel/sys_ni.c:39:1: note: in expansion of macro 'COND_SYSCALL' > 39 | COND_SYSCALL(io_setup); > | ^~~~~~~~~~~~ > ./arch/x86/include/asm/syscall_wrapper.h:83:14: warning: no previous prototype for '__ia32_sys_io_setup' [-Wmissing-prototypes] > 83 | __weak long __##abi##_##name(const struct pt_regs *__unused) \ > | ^~ > ./arch/x86/include/asm/syscall_wrapper.h:120:2: note: in expansion of macro '__COND_SYSCALL' > 120 | __COND_SYSCALL(ia32, sys_##name) > | ^~~~~~~~~~~~~~ > ./arch/x86/include/asm/syscall_wrapper.h:257:2: note: in expansion of macro '__IA32_COND_SYSCALL' > 257 | __IA32_COND_SYSCALL(name) > | ^~~~~~~~~~~~~~~~~~~ > kernel/sys_ni.c:39:1: note: in expansion of macro 'COND_SYSCALL' > 39 | COND_SYSCALL(io_setup); > | ^~~~~~~~~~~~ > ... > > __SYS_STUB0() and __SYS_STUBx() defined a few lines above have forward > declarations. Let's do likewise for __COND_SYSCALL() to fix the > warnings. > > Signed-off-by: Masahiro Yamada Tested-by: Micka?l Sala?n Thanks to this patch we avoid multiple emails from Intel's bot when adding new syscalls. :) > --- > > arch/x86/include/asm/syscall_wrapper.h | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/arch/x86/include/asm/syscall_wrapper.h b/arch/x86/include/asm/syscall_wrapper.h > index a84333adeef2..80c08c7d5e72 100644 > --- a/arch/x86/include/asm/syscall_wrapper.h > +++ b/arch/x86/include/asm/syscall_wrapper.h > @@ -80,6 +80,7 @@ extern long __ia32_sys_ni_syscall(const struct pt_regs *regs); > } > > #define __COND_SYSCALL(abi, name) \ > + __weak long __##abi##_##name(const struct pt_regs *__unused); \ > __weak long __##abi##_##name(const struct pt_regs *__unused) \ > { \ > return sys_ni_syscall(); \ >