Received: by 2002:a25:e7d8:0:0:0:0:0 with SMTP id e207csp2101811ybh; Fri, 13 Mar 2020 12:53:12 -0700 (PDT) X-Google-Smtp-Source: ADFU+vsd12PK5H36ORc4GlghesF5S7G/nDGDFU+52+EQySUlBHQdadQAhY480xC7haUQgisofcqA X-Received: by 2002:a9d:3661:: with SMTP id w88mr11959016otb.223.1584129192683; Fri, 13 Mar 2020 12:53:12 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1584129192; cv=none; d=google.com; s=arc-20160816; b=Y/b8RpuqKWubbmLDpxyvfgHLCmJatLgtejrqhQ9x6hF5o5yFWCesG8mx5o1ueoBEpW gCFbPWyZ9CC0G/SMd/ghdSlU8q5vwOzjaTVGNK8IJEZRTcZPKu3cRwnpqXbBIEAJ5dz3 Hi2bD+nNaerV/tcSAP6FXvUONwjEnB3oBvUnKxCJVbD4YTIxsD5HHfZ4PLrL5xOjexdp EnpnLZtSdq0kOlU9xK6wrDF8qjDKoc2WkQrY9CIcZH3+bn2DLuD90Ma/wjLpFRCEyT+L Imp5gf1NICt5r+AeOt1XWWuplf4hzVWCUe/RpcM9NwI5hYM50JIoXgcN4asQkbQivygT eKYg== 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:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=h9WPpNVWgUFBL/+n4blULIdPA+VB0XbLtNGA7+D/vfY=; b=UfCr6z4PfsVLIGy3TfelqBvVTbDKsG6DWdGNsYTsfSGEmQHZDIU9yCXEIerfqT49i6 FYHX4rzwkEJ0mqXcoheaO5jVyUESU0ThFMqQLl/Q+Uy7JpnUoGrZhpYtKbKcIr1iALjZ YlcstPyjVCxgAr4j6dtZ0nFp1PQViP7GttsmEz1ZyVhgqFOjpbcn9a7J19luZx5ui82q rHI29KPIsXIFvh6NFjJWH+Qn07ZixGfe0aySH3n9g6VreVNnCde1/5F8T/n2eJW2d0mq wX9Kio5d/nz+c7M3IMYNfJ+ewq42n/YdhuhlSAfDDpgiCU0GQDCiSNsMi5nvfucKqvqe KeAQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=SopNcbve; 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; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id t15si5376997oth.176.2020.03.13.12.53.00; Fri, 13 Mar 2020 12:53:12 -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 header.i=@gmail.com header.s=20161025 header.b=SopNcbve; 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; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727470AbgCMTw3 (ORCPT + 99 others); Fri, 13 Mar 2020 15:52:29 -0400 Received: from mail-qk1-f195.google.com ([209.85.222.195]:45569 "EHLO mail-qk1-f195.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727450AbgCMTwZ (ORCPT ); Fri, 13 Mar 2020 15:52:25 -0400 Received: by mail-qk1-f195.google.com with SMTP id c145so14668002qke.12 for ; Fri, 13 Mar 2020 12:52:23 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=h9WPpNVWgUFBL/+n4blULIdPA+VB0XbLtNGA7+D/vfY=; b=SopNcbveCeNcQ8/5kYVCRpJI9XQNL8VFHCRyCZIxFLYaNO3Wp6AWDqSx6uEXAa+qBQ QR6+ktIVe75eUDxyZx356Tt/o9xZJ8vtnzP989nqGuKbfsNBvpM6HgtAXuPI3ZjTBqCI VoVywUjwa21op3LBvWBzp6eQSDIm3XtubcnxEbSQbOrnlP7ALlrQIAeUofCZXu6ScdoG vOezGGpTH9RUnMHIIpk6v/qXU6UkSxDdjkvB10EhgC4ufWDb6ZZpzTjpzOX6S7qo6qgX j8d4N1epwFAyvHfHGr3ZEXC2PaSm49BXZc/oJsp+jybEctqWd995k0wZ+I6qJs6/Vo2F gyeQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=h9WPpNVWgUFBL/+n4blULIdPA+VB0XbLtNGA7+D/vfY=; b=qwHvcDsUGkcdWagfhQGssTTxU+9CE7v9D5kRdIlJEpc/FTDDDvTOtKrQNB3ZhiMHDT 41Mf3Am693H7QMcxGXdqYYeLJja90OfsNcoyZNtCI4riZcQgg0V76ksbph73Tt1Rt9t+ 1TQsE8EO0+MQQWIQ0uJG1PwwpzHUPniBzNGUGwSGKhVP7XSJMzmfQ1qQnS9nuEUCPZIs +wgg0K828ve4JABr6297OKkBVjCyPgge4BwSICdbm0cWVucYzxK0eEKim5CsWAexm5E7 lwrly7kT1h13b+uYIKFX/xIm8NGaxC9RxmhjsJrswRfYL9iwRMWSj8V4rhzjcV545I6K G2Fw== X-Gm-Message-State: ANhLgQ3sYITsI0aGKLFict/G4ODfEguXYurRpnNSVuEZG1HAWhrgtdUM Oih94c/Kp+6eO8JH/veSmaJAVus= X-Received: by 2002:a37:6e42:: with SMTP id j63mr14749941qkc.400.1584129142406; Fri, 13 Mar 2020 12:52:22 -0700 (PDT) Received: from localhost.localdomain (174-084-153-250.res.spectrum.com. [174.84.153.250]) by smtp.gmail.com with ESMTPSA id i28sm31475599qtc.57.2020.03.13.12.52.21 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 13 Mar 2020 12:52:22 -0700 (PDT) From: Brian Gerst To: linux-kernel@vger.kernel.org, x86@kernel.org Cc: Thomas Gleixner , Ingo Molnar , Borislav Petkov , "H . Peter Anvin" , Andy Lutomirski , Dominik Brodowski , Brian Gerst Subject: [PATCH v4 10/18] x86: Remove syscall qualifier support Date: Fri, 13 Mar 2020 15:51:36 -0400 Message-Id: <20200313195144.164260-11-brgerst@gmail.com> X-Mailer: git-send-email 2.24.1 In-Reply-To: <20200313195144.164260-1-brgerst@gmail.com> References: <20200313195144.164260-1-brgerst@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Syscall qualifier support is no longer needed. Signed-off-by: Brian Gerst --- arch/x86/entry/syscall_32.c | 6 +++--- arch/x86/entry/syscall_64.c | 6 +++--- arch/x86/entry/syscall_x32.c | 6 +++--- arch/x86/entry/syscalls/syscalltbl.sh | 10 +--------- arch/x86/um/sys_call_table_32.c | 4 ++-- arch/x86/um/sys_call_table_64.c | 4 ++-- 6 files changed, 14 insertions(+), 22 deletions(-) diff --git a/arch/x86/entry/syscall_32.c b/arch/x86/entry/syscall_32.c index 3207cf685cde..9f4cab4a56d8 100644 --- a/arch/x86/entry/syscall_32.c +++ b/arch/x86/entry/syscall_32.c @@ -9,10 +9,10 @@ #ifdef CONFIG_IA32_EMULATION /* On X86_64, we use struct pt_regs * to pass parameters to syscalls */ -#define __SYSCALL_I386(nr, sym, qual) extern asmlinkage long sym(const struct pt_regs *); +#define __SYSCALL_I386(nr, sym) extern asmlinkage long sym(const struct pt_regs *); #define __sys_ni_syscall __ia32_sys_ni_syscall #else /* CONFIG_IA32_EMULATION */ -#define __SYSCALL_I386(nr, sym, qual) extern asmlinkage long sym(unsigned long, unsigned long, unsigned long, unsigned long, unsigned long, unsigned long); +#define __SYSCALL_I386(nr, sym) extern asmlinkage long sym(unsigned long, unsigned long, unsigned long, unsigned long, unsigned long, unsigned long); extern asmlinkage long sys_ni_syscall(unsigned long, unsigned long, unsigned long, unsigned long, unsigned long, unsigned long); #define __sys_ni_syscall sys_ni_syscall #endif /* CONFIG_IA32_EMULATION */ @@ -20,7 +20,7 @@ extern asmlinkage long sys_ni_syscall(unsigned long, unsigned long, unsigned lon #include #undef __SYSCALL_I386 -#define __SYSCALL_I386(nr, sym, qual) [nr] = sym, +#define __SYSCALL_I386(nr, sym) [nr] = sym, __visible const sys_call_ptr_t ia32_sys_call_table[__NR_ia32_syscall_max+1] = { /* diff --git a/arch/x86/entry/syscall_64.c b/arch/x86/entry/syscall_64.c index 5dc6846979df..bce4821a7e14 100644 --- a/arch/x86/entry/syscall_64.c +++ b/arch/x86/entry/syscall_64.c @@ -8,13 +8,13 @@ #include #include -#define __SYSCALL_X32(nr, sym, qual) +#define __SYSCALL_X32(nr, sym) -#define __SYSCALL_64(nr, sym, qual) extern asmlinkage long sym(const struct pt_regs *); +#define __SYSCALL_64(nr, sym) extern asmlinkage long sym(const struct pt_regs *); #include #undef __SYSCALL_64 -#define __SYSCALL_64(nr, sym, qual) [nr] = sym, +#define __SYSCALL_64(nr, sym) [nr] = sym, asmlinkage const sys_call_ptr_t sys_call_table[__NR_syscall_max+1] = { /* diff --git a/arch/x86/entry/syscall_x32.c b/arch/x86/entry/syscall_x32.c index 95abb6da0ecc..21e306c5a401 100644 --- a/arch/x86/entry/syscall_x32.c +++ b/arch/x86/entry/syscall_x32.c @@ -8,13 +8,13 @@ #include #include -#define __SYSCALL_64(nr, sym, qual) +#define __SYSCALL_64(nr, sym) -#define __SYSCALL_X32(nr, sym, qual) extern asmlinkage long sym(const struct pt_regs *); +#define __SYSCALL_X32(nr, sym) extern asmlinkage long sym(const struct pt_regs *); #include #undef __SYSCALL_X32 -#define __SYSCALL_X32(nr, sym, qual) [nr] = sym, +#define __SYSCALL_X32(nr, sym) [nr] = sym, asmlinkage const sys_call_ptr_t x32_sys_call_table[__NR_x32_syscall_max+1] = { /* diff --git a/arch/x86/entry/syscalls/syscalltbl.sh b/arch/x86/entry/syscalls/syscalltbl.sh index 1af2be39e7d9..b0519ddad8d7 100644 --- a/arch/x86/entry/syscalls/syscalltbl.sh +++ b/arch/x86/entry/syscalls/syscalltbl.sh @@ -9,15 +9,7 @@ syscall_macro() { local nr="$2" local entry="$3" - # Entry can be either just a function name or "function/qualifier" - real_entry="${entry%%/*}" - if [ "$entry" = "$real_entry" ]; then - qualifier= - else - qualifier=${entry#*/} - fi - - echo "__SYSCALL_${abi}($nr, $real_entry, $qualifier)" + echo "__SYSCALL_${abi}($nr, $entry)" } emit() { diff --git a/arch/x86/um/sys_call_table_32.c b/arch/x86/um/sys_call_table_32.c index a0d75c560030..2ed81e581755 100644 --- a/arch/x86/um/sys_call_table_32.c +++ b/arch/x86/um/sys_call_table_32.c @@ -26,11 +26,11 @@ #define old_mmap sys_old_mmap -#define __SYSCALL_I386(nr, sym, qual) extern asmlinkage long sym(unsigned long, unsigned long, unsigned long, unsigned long, unsigned long, unsigned long) ; +#define __SYSCALL_I386(nr, sym) extern asmlinkage long sym(unsigned long, unsigned long, unsigned long, unsigned long, unsigned long, unsigned long) ; #include #undef __SYSCALL_I386 -#define __SYSCALL_I386(nr, sym, qual) [ nr ] = sym, +#define __SYSCALL_I386(nr, sym) [ nr ] = sym, extern asmlinkage long sys_ni_syscall(unsigned long, unsigned long, unsigned long, unsigned long, unsigned long, unsigned long); diff --git a/arch/x86/um/sys_call_table_64.c b/arch/x86/um/sys_call_table_64.c index fa97740badd5..7d057ea53d54 100644 --- a/arch/x86/um/sys_call_table_64.c +++ b/arch/x86/um/sys_call_table_64.c @@ -36,11 +36,11 @@ #define stub_execveat sys_execveat #define stub_rt_sigreturn sys_rt_sigreturn -#define __SYSCALL_64(nr, sym, qual) extern asmlinkage long sym(unsigned long, unsigned long, unsigned long, unsigned long, unsigned long, unsigned long) ; +#define __SYSCALL_64(nr, sym) extern asmlinkage long sym(unsigned long, unsigned long, unsigned long, unsigned long, unsigned long, unsigned long) ; #include #undef __SYSCALL_64 -#define __SYSCALL_64(nr, sym, qual) [ nr ] = sym, +#define __SYSCALL_64(nr, sym) [ nr ] = sym, extern asmlinkage long sys_ni_syscall(unsigned long, unsigned long, unsigned long, unsigned long, unsigned long, unsigned long); -- 2.24.1