Received: by 2002:a05:6a10:206:0:0:0:0 with SMTP id 6csp292119pxj; Fri, 14 May 2021 03:40:30 -0700 (PDT) X-Google-Smtp-Source: ABdhPJwTpi+JuuK0aYGcMXOLlMo1Ifd5MestHRSGSPfS1Qc7zafm2M6BEB+XAwFZOjPwR36CQUF2 X-Received: by 2002:a17:906:bcd6:: with SMTP id lw22mr3669379ejb.250.1620988829919; Fri, 14 May 2021 03:40:29 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1620988829; cv=none; d=google.com; s=arc-20160816; b=h1pAfKiZmLA831NgO4hlMZqlHFz/ITwGNlNriVWf22OJtBayEyqm2B7lYCT0wfrvrI Rz/gsOPJHlR5Cjtw94jqpiHYqLEqHKLfy/BOJuQsL7XgQ2NHGMyU3TeLCjWsZVQS+eO+ OuxJjvzuw23zmtvykEPanfLQfLiCVaDpZmY4RfM3zEkWhBWYsSBKYUyLjdLK5JZy4XHz taa3OgD21JMzwkpGsCAv0pVVDkfnIcMNjeDHL0a4YtPeAS7Y1pMitAwAFNFkINoDqNBi njg4aITfHkDENG1Qy74zKYHKsmrfRzl2+mC1Cu1Cmv+HeWBwyv77lz2uKF2TtVI7S+Xx XCfw== 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:organization :from:references:cc:to:subject:dkim-signature; bh=lCFOeXXuHqZj/3n5W4PkDf5UJ0V8NO/Y5/poalLCeQU=; b=INdeqTfnJomuTJoPnMabe0y3eoUyQ2W83F5qDYKwAMgDvKta5VyEyFadATuvog9bHP Y6c5HvX1C1QcOPWda8VSpML7Q5Mb/sKruCaRsadCV+JclFw0Ef2FcHDmDiS+WTz7aJWN tAfAY2EjE9nLh15Gr804rzmCj/yYVwwOU2Q37I5ZiZzsBkkxijA0hc0jpryIV87z0dkW yN8PgkUBnacRnUeDat4dKsmZa5mEaGzi0Y28OgVSyBwFoBorlUAQuGSs0yMjFu5B7dBw oxtoXfmSweacP5MRNKnv9X/XzvsEEBk9gOoZ5FhV4ErMDHvYHqpCbRDhawextVO0MQRS uqsg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@redhat.com header.s=mimecast20190719 header.b="doEV/osV"; 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; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=redhat.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id a29si5009638edb.492.2021.05.14.03.40.06; Fri, 14 May 2021 03:40:29 -0700 (PDT) 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; dkim=pass header.i=@redhat.com header.s=mimecast20190719 header.b="doEV/osV"; 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; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=redhat.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S232532AbhENJ3G (ORCPT + 99 others); Fri, 14 May 2021 05:29:06 -0400 Received: from us-smtp-delivery-124.mimecast.com ([216.205.24.124]:52676 "EHLO us-smtp-delivery-124.mimecast.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S232512AbhENJ3E (ORCPT ); Fri, 14 May 2021 05:29:04 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1620984473; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=lCFOeXXuHqZj/3n5W4PkDf5UJ0V8NO/Y5/poalLCeQU=; b=doEV/osVmgQ4E2qonk1MwbTRonAvztAxV0UpO6phcTOAXqfbH1NKOqZfCEHk9x2lVnOk2o csEOklxirAkGqsic5gcu/kDbCb5LToyo6pIxnlri6tuqCqPr/HC7oMpdZUdKA6QS0g9mMF u8gUE53evgj+umwiX02/idBTe9U3534= Received: from mail-ej1-f71.google.com (mail-ej1-f71.google.com [209.85.218.71]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-61-AiKdg7S8P-Sk4xbFgZN3JQ-1; Fri, 14 May 2021 05:27:51 -0400 X-MC-Unique: AiKdg7S8P-Sk4xbFgZN3JQ-1 Received: by mail-ej1-f71.google.com with SMTP id o18-20020a17090637d2b02903bf3465db95so5286665ejc.18 for ; Fri, 14 May 2021 02:27:51 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:subject:to:cc:references:from:organization :message-id:date:user-agent:mime-version:in-reply-to :content-language:content-transfer-encoding; bh=lCFOeXXuHqZj/3n5W4PkDf5UJ0V8NO/Y5/poalLCeQU=; b=PV77zNEQAkYZUAPlxRUQzW3nD9OAd8Nh2VMg+z9yILp9aOybwfAXmA0baA+XQAPTv1 kD/6sfgCRmlxmA6jzPqETsNjpQe+i2BJlBFh+tE2pPYLmGodqHk0mAtY1z2H15RZUcWV N3l0GgPbwSJjdICzg68bn7VNi/ohJQ8X7n3Tr/Bv0vcKO3/m1fLkpCaFrFJU138DBlTX VtSYj0t/a/rCu/IwkMw9C9LWhe7QeCfPUNuKbs2sKQP3v7AZwlbXe+cbtcrhQGB7AqG4 dvUQ1T536VIgHjs9zfdfp5ZFJXn6c6kybooKzWHY9Lv3dQUqwPrO2O4TnqAcdDmwALcC oR0g== X-Gm-Message-State: AOAM530L1XoF5awAPqDisYAmHMj26ajyacK5FMaBqsXA6717kHW9w6L7 uiLEX4q0yBbKI80wxCJu2DX74PwuB8biuOfExApmVQ/ZIm93UbPVDQxeHlW383O7T/sTtFGJRmp Izs3ZiPuiAtyfK1Ext1HhHSpQ X-Received: by 2002:a05:6402:1713:: with SMTP id y19mr11073781edu.286.1620984470700; Fri, 14 May 2021 02:27:50 -0700 (PDT) X-Received: by 2002:a05:6402:1713:: with SMTP id y19mr11073750edu.286.1620984470525; Fri, 14 May 2021 02:27:50 -0700 (PDT) Received: from [192.168.3.132] (p5b0c6501.dip0.t-ipconnect.de. [91.12.101.1]) by smtp.gmail.com with ESMTPSA id t20sm3351530ejc.61.2021.05.14.02.27.48 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Fri, 14 May 2021 02:27:50 -0700 (PDT) Subject: Re: [PATCH v19 7/8] arch, mm: wire up memfd_secret system call where relevant To: Mike Rapoport , Andrew Morton Cc: Alexander Viro , Andy Lutomirski , Arnd Bergmann , Borislav Petkov , Catalin Marinas , Christopher Lameter , Dan Williams , Dave Hansen , Elena Reshetova , "H. Peter Anvin" , Hagen Paul Pfeifer , Ingo Molnar , James Bottomley , Kees Cook , "Kirill A. Shutemov" , Matthew Wilcox , Matthew Garrett , Mark Rutland , Michal Hocko , Mike Rapoport , Michael Kerrisk , Palmer Dabbelt , Palmer Dabbelt , Paul Walmsley , Peter Zijlstra , "Rafael J. Wysocki" , Rick Edgecombe , Roman Gushchin , Shakeel Butt , Shuah Khan , Thomas Gleixner , Tycho Andersen , Will Deacon , Yury Norov , linux-api@vger.kernel.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-fsdevel@vger.kernel.org, linux-mm@kvack.org, linux-kernel@vger.kernel.org, linux-kselftest@vger.kernel.org, linux-nvdimm@lists.01.org, linux-riscv@lists.infradead.org, x86@kernel.org References: <20210513184734.29317-1-rppt@kernel.org> <20210513184734.29317-8-rppt@kernel.org> From: David Hildenbrand Organization: Red Hat Message-ID: <227cabb7-17a4-9b39-5893-df825fd2e29b@redhat.com> Date: Fri, 14 May 2021 11:27:48 +0200 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.8.1 MIME-Version: 1.0 In-Reply-To: <20210513184734.29317-8-rppt@kernel.org> Content-Type: text/plain; charset=utf-8; format=flowed Content-Language: en-US Content-Transfer-Encoding: 7bit Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 13.05.21 20:47, Mike Rapoport wrote: > From: Mike Rapoport > > Wire up memfd_secret system call on architectures that define > ARCH_HAS_SET_DIRECT_MAP, namely arm64, risc-v and x86. > > Signed-off-by: Mike Rapoport > Acked-by: Palmer Dabbelt > Acked-by: Arnd Bergmann > Acked-by: Catalin Marinas > Cc: Alexander Viro > Cc: Andy Lutomirski > Cc: Borislav Petkov > Cc: Christopher Lameter > Cc: Dan Williams > Cc: Dave Hansen > Cc: David Hildenbrand > Cc: Elena Reshetova > Cc: Hagen Paul Pfeifer > Cc: "H. Peter Anvin" > Cc: Ingo Molnar > Cc: James Bottomley > Cc: "Kirill A. Shutemov" > Cc: Mark Rutland > Cc: Matthew Wilcox > Cc: Michael Kerrisk > Cc: Palmer Dabbelt > Cc: Paul Walmsley > Cc: Peter Zijlstra > Cc: Rick Edgecombe > Cc: Roman Gushchin > Cc: Shakeel Butt > Cc: Shuah Khan > Cc: Thomas Gleixner > Cc: Tycho Andersen > Cc: Will Deacon > --- > arch/arm64/include/uapi/asm/unistd.h | 1 + > arch/riscv/include/asm/unistd.h | 1 + > arch/x86/entry/syscalls/syscall_32.tbl | 1 + > arch/x86/entry/syscalls/syscall_64.tbl | 1 + > include/linux/syscalls.h | 1 + > include/uapi/asm-generic/unistd.h | 7 ++++++- > scripts/checksyscalls.sh | 4 ++++ > 7 files changed, 15 insertions(+), 1 deletion(-) > > diff --git a/arch/arm64/include/uapi/asm/unistd.h b/arch/arm64/include/uapi/asm/unistd.h > index f83a70e07df8..ce2ee8f1e361 100644 > --- a/arch/arm64/include/uapi/asm/unistd.h > +++ b/arch/arm64/include/uapi/asm/unistd.h > @@ -20,5 +20,6 @@ > #define __ARCH_WANT_SET_GET_RLIMIT > #define __ARCH_WANT_TIME32_SYSCALLS > #define __ARCH_WANT_SYS_CLONE3 > +#define __ARCH_WANT_MEMFD_SECRET > > #include > diff --git a/arch/riscv/include/asm/unistd.h b/arch/riscv/include/asm/unistd.h > index 977ee6181dab..6c316093a1e5 100644 > --- a/arch/riscv/include/asm/unistd.h > +++ b/arch/riscv/include/asm/unistd.h > @@ -9,6 +9,7 @@ > */ > > #define __ARCH_WANT_SYS_CLONE > +#define __ARCH_WANT_MEMFD_SECRET > > #include > > diff --git a/arch/x86/entry/syscalls/syscall_32.tbl b/arch/x86/entry/syscalls/syscall_32.tbl > index 28a1423ce32e..e44519020a43 100644 > --- a/arch/x86/entry/syscalls/syscall_32.tbl > +++ b/arch/x86/entry/syscalls/syscall_32.tbl > @@ -451,3 +451,4 @@ > 444 i386 landlock_create_ruleset sys_landlock_create_ruleset > 445 i386 landlock_add_rule sys_landlock_add_rule > 446 i386 landlock_restrict_self sys_landlock_restrict_self > +447 i386 memfd_secret sys_memfd_secret > diff --git a/arch/x86/entry/syscalls/syscall_64.tbl b/arch/x86/entry/syscalls/syscall_64.tbl > index ecd551b08d05..a06f16106f24 100644 > --- a/arch/x86/entry/syscalls/syscall_64.tbl > +++ b/arch/x86/entry/syscalls/syscall_64.tbl > @@ -368,6 +368,7 @@ > 444 common landlock_create_ruleset sys_landlock_create_ruleset > 445 common landlock_add_rule sys_landlock_add_rule > 446 common landlock_restrict_self sys_landlock_restrict_self > +447 common memfd_secret sys_memfd_secret > > # > # Due to a historical design error, certain syscalls are numbered differently > diff --git a/include/linux/syscalls.h b/include/linux/syscalls.h > index 050511e8f1f8..1a1b5d724497 100644 > --- a/include/linux/syscalls.h > +++ b/include/linux/syscalls.h > @@ -1050,6 +1050,7 @@ asmlinkage long sys_landlock_create_ruleset(const struct landlock_ruleset_attr _ > asmlinkage long sys_landlock_add_rule(int ruleset_fd, enum landlock_rule_type rule_type, > const void __user *rule_attr, __u32 flags); > asmlinkage long sys_landlock_restrict_self(int ruleset_fd, __u32 flags); > +asmlinkage long sys_memfd_secret(unsigned int flags); > > /* > * Architecture-specific system calls > diff --git a/include/uapi/asm-generic/unistd.h b/include/uapi/asm-generic/unistd.h > index 6de5a7fc066b..28b388368cf6 100644 > --- a/include/uapi/asm-generic/unistd.h > +++ b/include/uapi/asm-generic/unistd.h > @@ -873,8 +873,13 @@ __SYSCALL(__NR_landlock_add_rule, sys_landlock_add_rule) > #define __NR_landlock_restrict_self 446 > __SYSCALL(__NR_landlock_restrict_self, sys_landlock_restrict_self) > > +#ifdef __ARCH_WANT_MEMFD_SECRET > +#define __NR_memfd_secret 447 > +__SYSCALL(__NR_memfd_secret, sys_memfd_secret) > +#endif > + > #undef __NR_syscalls > -#define __NR_syscalls 447 > +#define __NR_syscalls 448 > > /* > * 32 bit systems traditionally used different > diff --git a/scripts/checksyscalls.sh b/scripts/checksyscalls.sh > index a18b47695f55..b7609958ee36 100755 > --- a/scripts/checksyscalls.sh > +++ b/scripts/checksyscalls.sh > @@ -40,6 +40,10 @@ cat << EOF > #define __IGNORE_setrlimit /* setrlimit */ > #endif > > +#ifndef __ARCH_WANT_MEMFD_SECRET > +#define __IGNORE_memfd_secret > +#endif > + > /* Missing flags argument */ > #define __IGNORE_renameat /* renameat2 */ > > Acked-by: David Hildenbrand -- Thanks, David / dhildenb