From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id 04B63C77B75 for ; Wed, 17 May 2023 04:50:47 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 06B71900004; Wed, 17 May 2023 00:50:47 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 01B72900003; Wed, 17 May 2023 00:50:46 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id E73B4900004; Wed, 17 May 2023 00:50:46 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0016.hostedemail.com [216.40.44.16]) by kanga.kvack.org (Postfix) with ESMTP id D8B52900003 for ; Wed, 17 May 2023 00:50:46 -0400 (EDT) Received: from smtpin19.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay09.hostedemail.com (Postfix) with ESMTP id 9948080467 for ; Wed, 17 May 2023 04:50:46 +0000 (UTC) X-FDA: 80798521692.19.2483763 Received: from mail-oi1-f171.google.com (mail-oi1-f171.google.com [209.85.167.171]) by imf10.hostedemail.com (Postfix) with ESMTP id C5FEDC0011 for ; Wed, 17 May 2023 04:50:44 +0000 (UTC) Authentication-Results: imf10.hostedemail.com; dkim=pass header.d=chromium.org header.s=google header.b=ZohEZyce; spf=pass (imf10.hostedemail.com: domain of jeffxu@chromium.org designates 209.85.167.171 as permitted sender) smtp.mailfrom=jeffxu@chromium.org; dmarc=pass (policy=none) header.from=chromium.org ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1684299044; h=from:from:sender: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:dkim-signature; bh=SdpDNOc9IaRuXWWVjAWL4lPisTwamC4JuamnxWVl6aE=; b=vF3z1RsNdBwj5Md6jTuAOa1C/5tAQd4H1XDi+FkuijpQIeyOLFXuhu6bg3VCTCxCoBW3uF nGrxwdov9P/9d9wOk95JfHEwF0d4ZgRku0jOkFaIOr06IFAv5rjMDokkR0Gg7PDaKxnhqZ 9oZm0iWel8vWg3Sq5ceLYUjpT7s8jmI= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1684299044; a=rsa-sha256; cv=none; b=W8MA0meMe4b4dI5HC5p6ACmPd9t63kpvRbahxKs+5/x7CY+N6HDdHGgqgjrQ9uB+YTP4fD QTUSNdb/GiIHtrPzmA7NHW5HQ6nzakNiIU8CEyn1d3LHRayETAYfrMjMtDR7Swgzv4yAqg YYvnqLTa+FzZPCJL+33pshglbEIi2xA= ARC-Authentication-Results: i=1; imf10.hostedemail.com; dkim=pass header.d=chromium.org header.s=google header.b=ZohEZyce; spf=pass (imf10.hostedemail.com: domain of jeffxu@chromium.org designates 209.85.167.171 as permitted sender) smtp.mailfrom=jeffxu@chromium.org; dmarc=pass (policy=none) header.from=chromium.org Received: by mail-oi1-f171.google.com with SMTP id 5614622812f47-3942c6584f0so148066b6e.3 for ; Tue, 16 May 2023 21:50:44 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=chromium.org; s=google; t=1684299044; x=1686891044; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=SdpDNOc9IaRuXWWVjAWL4lPisTwamC4JuamnxWVl6aE=; b=ZohEZycebbexSIQM0Ql/0E6KK0YPr6BzbEZTe+tngAPEGD/paFD3oAqhjkfLHe9/Sf OrYnlCEwKocjgVyBCijJ1WCKZlFh+hTVcjuK4669s1299beA2zJl6d8pOjCDe9yN7ZNV TaENAEhYCD95ZvD+k6mj3Tvw3gf6BYQ7tEUvc= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1684299044; x=1686891044; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=SdpDNOc9IaRuXWWVjAWL4lPisTwamC4JuamnxWVl6aE=; b=HrPVyYNvA6uSSTKra9dEhJTBd8CxkQaBNF9+Y/dNpd7zGRQlsYMg2Jt6da8QRZ5ExJ bHLRytOZlX9c2uHf9J9w4j/kjbE3SpaFsz0ax1OCWyALmqVt/WT/jmDZ83nJmqGTjuB8 Y6Jl3F8ZgytJYr9Ieb446g/qeap1TseGGOXBVfn+iUB6gdxwZjeE249uNZ4TYZ5hP6f5 dLizmiF3kPGXgHP0MDwDk6yiw13NVKnKto26ZIEDlBPJoxgkPc+acF4SoD5wUjGkXB94 qMNF9hrdpyGtNMCh8YGlB/9TT8alZOa/htDMczGGmHeeO4dWyZDTWlH8MXzxGmA4ljEl 8pqg== X-Gm-Message-State: AC+VfDyuxhnQBebMvi5jZ8f889kGKA40Mk7seu5Jfj2omOKVf8ZdyYJK w4VzdVyVypErRz9vs5DU5ARiS3trgEWP6obn1IbV9A== X-Google-Smtp-Source: ACHHUZ6bP3yE1SLmRxIXkPdAaJJQitOTouGMseQ0lvlM4x1DeANqZcZ97RNjV1Jnv4U8agiHfeX6phHwNYamuOI+eN4= X-Received: by 2002:a05:6808:624e:b0:38c:1266:117e with SMTP id dt14-20020a056808624e00b0038c1266117emr13723618oib.44.1684299043940; Tue, 16 May 2023 21:50:43 -0700 (PDT) MIME-Version: 1.0 References: <20230515130553.2311248-1-jeffxu@chromium.org> <20230515130553.2311248-4-jeffxu@chromium.org> <78bb0097-7dca-254f-45a6-5cea6baec0c4@intel.com> In-Reply-To: From: Jeff Xu Date: Tue, 16 May 2023 21:50:31 -0700 Message-ID: Subject: Re: [PATCH 3/6] PKEY: Apply PKEY_ENFORCE_API to mprotect To: Jeff Xu Cc: Dave Hansen , luto@kernel.org, jorgelo@chromium.org, keescook@chromium.org, groeck@chromium.org, jannh@google.com, sroettger@google.com, akpm@linux-foundation.org, linux-kernel@vger.kernel.org, linux-kselftest@vger.kernel.org, linux-mm@kvack.org, linux-hardening@vger.kernel.org Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Stat-Signature: f7iozcjwda1ou53hwss76b1hzjf6tudt X-Rspamd-Server: rspam03 X-Rspam-User: X-Rspamd-Queue-Id: C5FEDC0011 X-HE-Tag: 1684299044-300286 X-HE-Meta: U2FsdGVkX1+mRt0arrybUcP82Y0xbEEC61DdSVNtP27vB4rTSPSTZYnlVpf5tvE12gR902FHbGw3bcQ4wA2tHHABYrnTMtVZp8aqtGaNxgjse6v4lW6+QyO2TphbcdW8gz4Mro0b23yae7vui2tQQYQmwSA8wCQKCtMckvV7nlc6e/MCdvnrtH8sfZdQdVDXEsNWSAIIz62qlmgOgrbvj0Ar5DwslIbsV/rsFMuprRGhiIe+2cYCPHyHaKV7sNn0xqahxBi9+R+5mrBTh8XQdtjO/OBIZfURLQgCMqOtrel923GboInKuCL2E+XNkArvUyBP8l1O0Vme13md4SvBN+7NOGD6N3RlmEQGRw5pP1zNVA0Ak+3zl5Eqrfzkqt+1Lff+13Op4qOBCi6e/FgOWfWVzt3YUooMZuAyruxODzLtEhVg6dVZiJ0ofWNKDMUcFrb8df7ccrnuR2wCq2V2FmIwRAMu8HJIru61vzIYOB1fCjpmvQ0F5ZaHOL+5fw14UO4gCVvWS6KHHdj6P3cQDl6K8Q+pUh7FsqXph6JkG3IWWHBeZMHsUrovKnXMSe5SfOexn6dfEObm4ZBF7HznQETEWaXS4p6uLXCG3Spzbg8v5FDeFanypIpOWNvjNde+MOtoz2pZRi7/rinQenXkoJPp5Cp7Q9u4SabzVLeA/MmSEK0uWgdHG18FNCtQUxTlffA7q+lQQv5msGDoacrEQYm3S5HqVeqbqjw6sc3m9xEdGdDYmVG2iC/y87YFlg0+HzUiiVQTXFLy2ofyCqtBjmR8QGzlVeCtTAmNfjcMziA9dl9FSoxJphFlreVAHzHrmITFT5Dkl1NIketPPo4cMknG/sRvSlPSZSkmu8v8ozKkfdEW/j94yONQpdXwCr9DalCuXp2U6WIaBaZZ1Jil0gLk4+3O0e9QEsICOogYlWkqnA1hG2aEGdyL6P2EWISOWfJ+2CnOqVLxQ0TpJuE I9lRLqq0 fH2GtWKT0wYYNqb1n6S2k//69GntAta7T67AMtZFwvg9P54C4Y/o4Bbyy6jPxLL/1gK0lfHZSjZ+7f6ND0LG6BXxjYgj043LGPI1hKaUpxHkXtTMPmtXOHtpsZzThyxeoLaPP4BjTIFEDGevDKZb3Sxu34E79zrCZNf6SePfKm3++DUngttS0CntlKDKC56F6DYs0X05NIbSZqhnZQNH9tPMZ23QT2996t7hwmC3ELU/wXarCxpGuYNO9ama27yTEI9HDahZkRq4P1xD5eLsJzAexY011OWGnH1RN2URTHhHw04l5nzPjuJ6nOJz2z7kZYVpXbtFlgaSjni7GZxSuYFJenJQzFoaMkxtobTWJGqMk73zBJS6XiC5JxRalsj/WHXuU X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: On Tue, May 16, 2023 at 4:37=E2=80=AFPM Jeff Xu wrote: > > On Tue, May 16, 2023 at 4:19=E2=80=AFPM Dave Hansen wrote: > > > > On 5/15/23 06:05, jeffxu@chromium.org wrote: > > > /* > > > * pkey=3D=3D-1 when doing a legacy mprotect() > > > + * syscall=3D=3Dtrue if this is called by syscall from userspace. > > > + * Note: this is always true for now, added as a reminder in case th= at > > > + * do_mprotect_pkey is called directly by kernel in the future. > > > + * Also it is consistent with __do_munmap(). > > > */ > > > static int do_mprotect_pkey(unsigned long start, size_t len, > > > - unsigned long prot, int pkey) > > > + unsigned long prot, int pkey, bool syscall) > > > { > > > > The 'syscall' seems kinda silly (and a bit confusing). It's easy to > > check if the caller is a kthread or has a current->mm=3D=3DNULL. If yo= u > > *really* want a warning, I'd check for those rather than plumb a > > apparently unused argument in here. > > > > BTW, this warning is one of those things that will probably cause some > > amount of angst. I'd move it to the end of the series or just axe it > > completely. > Okay, I will move the logging part to the end of the series. > Agreed. syscall is not a good name here. > The intention is to check this at the system call entry point > For example, munmap can get called inside mremap(), but by that time > mremap() should already check that all the memory is writeable. > > I will remove "syscall" from do_mprotect_pkey signature, it seems it caus= ed > more confusion than helpful. I will keep the comments/note in place to r= emind > future developer.