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 2FE08CD3424 for ; Tue, 19 Sep 2023 00:08:38 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 803FF6B0479; Mon, 18 Sep 2023 20:08:37 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 7B2B86B047A; Mon, 18 Sep 2023 20:08:37 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 6537F6B047B; Mon, 18 Sep 2023 20:08:37 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0017.hostedemail.com [216.40.44.17]) by kanga.kvack.org (Postfix) with ESMTP id 4ED1F6B0479 for ; Mon, 18 Sep 2023 20:08:37 -0400 (EDT) Received: from smtpin02.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay04.hostedemail.com (Postfix) with ESMTP id 167241A0A90 for ; Tue, 19 Sep 2023 00:08:37 +0000 (UTC) X-FDA: 81251410674.02.836D030 Received: from NAM02-BN1-obe.outbound.protection.outlook.com (mail-bn1nam02on2060.outbound.protection.outlook.com [40.107.212.60]) by imf18.hostedemail.com (Postfix) with ESMTP id 420431C0006 for ; Tue, 19 Sep 2023 00:08:34 +0000 (UTC) Authentication-Results: imf18.hostedemail.com; dkim=pass header.d=Nvidia.com header.s=selector2 header.b=U+DYFuYZ; spf=pass (imf18.hostedemail.com: domain of apopple@nvidia.com designates 40.107.212.60 as permitted sender) smtp.mailfrom=apopple@nvidia.com; dmarc=pass (policy=reject) header.from=nvidia.com; arc=pass ("microsoft.com:s=arcselector9901:i=1") ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1695082114; 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: in-reply-to:in-reply-to:references:references:dkim-signature; bh=z76VT7Bwh25VIejD0KpHvyOUCHRHrXH1Kj2hF2ENGc0=; b=EVkkxHcGuLA0w2XtrVRvChluRTnkLC9+ZnYR2bMvia7EnFwgX+ALv2LYLV1tjTIhGFwXYq bfF9fVbMUIui8wJdkCAEWKoeYOTnkadBHRbpBlmn8sfWo/xSJ2q3N/LLW+FxLG5knhYq+y z4dfnCQya7tRSLJXYBtXETxESURtisw= ARC-Seal: i=2; s=arc-20220608; d=hostedemail.com; t=1695082114; a=rsa-sha256; cv=pass; b=Gffk7IdgGX3YcApnwxPNx0NRxYUkeNKRcvzyBnXfPlP2aWM3ful5agkjoumPSKqaAbRs5g 1Dg0mEDt76ROff5Gkqm2pCNp0C2nGQeTm8F9tUKeFutbXc1f29jfMjnI6PJ7Ol+RoNlw7O sYEi0vm3ScGqy2Eoe6MUXSKVPNgvrLM= ARC-Authentication-Results: i=2; imf18.hostedemail.com; dkim=pass header.d=Nvidia.com header.s=selector2 header.b=U+DYFuYZ; spf=pass (imf18.hostedemail.com: domain of apopple@nvidia.com designates 40.107.212.60 as permitted sender) smtp.mailfrom=apopple@nvidia.com; dmarc=pass (policy=reject) header.from=nvidia.com; arc=pass ("microsoft.com:s=arcselector9901:i=1") ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=ALVUcjxOalaQs4kGTOxxDuDDlAF6oH4RkZXTf1CKJ5uWkzoK64IQ4HssKc6NfPYPNIRMu5xyGprXIjES5L5mdMEgeRrFD6W+gcE0GEEv/SaJ+A8huEiv4rEeESjHunla9J3+p1NemhQJkFmasWqX4CQn3CdKa9aIeyFqSDzv3lwH1WhAmn+VJahYGYi4R75WctTSRd8dVimYxwz4VU8byjQQHzAPxgAJNk/25YO12LFsF/MadYCXovUpaApalS7E+3ZXFMSz7hLMIeoi30dpBmqAPHoYfg83MOasUZ79WocPfirZcK1/seMZhUhEjn+6Es2y3XnlYBNlj/Cd3gRG6A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=z76VT7Bwh25VIejD0KpHvyOUCHRHrXH1Kj2hF2ENGc0=; b=AAGoDGsXo4Le/kgVJbtxbzmVDilepEhFr8wWPd+MaIRWIbZThpccWP1G+BeLb+vz+E2ny/dIih0o+mdWWpy+L1Mb0rNG2GRsk8uSLTDIVQ64ymfjGdyZR2XmKO/liBBGcqxfnSLFvaMGXxT48fSN7aaZ9BUqMi+qVlWok1Rgh8Yg5Zz1dzN+eMeboXy4PG/xqiw+FWzb6JCExjRLQ9Ndtay7R+RibartZK2lp2YT7YBZGzjA8z9tyqQE5uzA7FesJzdpMA5ZZghdGLZGsFTuw5mSbEcNKdryLnDpRgQHzMv8w6PNE/hAmQgQtY8i2V6mLy/sVvxwcVdFCmF/VNI8GQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=nvidia.com; dmarc=pass action=none header.from=nvidia.com; dkim=pass header.d=nvidia.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=Nvidia.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=z76VT7Bwh25VIejD0KpHvyOUCHRHrXH1Kj2hF2ENGc0=; b=U+DYFuYZZ+EQQmgN9b3VrNa2qfg3IoufO33lX3+K5fMVUuqujCgZEKGhsOO6M3vD4dcg1qnKMkrJ1btwHeXKrZQ8R84H+eLD4ts8D/83DuLJpbXnchB7fh/4HyZ4U6T58QbmbDpi29da+5b1VPSKrkH6uskpHJ3kUVtGROsw68O9LRpnn6xGd3zPgEldKIrk/AQKxByB5mvQgGCvkoT/gc+o5oHBFM5QRXAs528XHwaUrLGFaXi3Wy2aY0ZotHeB/Rf1bXZO8zqb++bGIPqmshY5YkaxA+6BweKJCbs6p4x2gzQurcNvPGqcbUgg8UjBXE7RnKvhWd9Sq6m0nOJIoA== Received: from BYAPR12MB3176.namprd12.prod.outlook.com (2603:10b6:a03:134::26) by BY5PR12MB4212.namprd12.prod.outlook.com (2603:10b6:a03:202::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.27; Tue, 19 Sep 2023 00:08:31 +0000 Received: from BYAPR12MB3176.namprd12.prod.outlook.com ([fe80::2490:a17e:1d63:7505]) by BYAPR12MB3176.namprd12.prod.outlook.com ([fe80::2490:a17e:1d63:7505%7]) with mapi id 15.20.6792.026; Tue, 19 Sep 2023 00:08:31 +0000 References: <20230918201832.265108-1-jannh@google.com> User-agent: mu4e 1.8.13; emacs 28.2 From: Alistair Popple To: Jann Horn Cc: Andrew Morton , Jason Gunthorpe , linux-kernel@vger.kernel.org, linux-mm@kvack.org Subject: Re: [PATCH] mm: document mmu_notifier_invalidate_range_start_nonblock() Date: Tue, 19 Sep 2023 10:08:06 +1000 In-reply-to: <20230918201832.265108-1-jannh@google.com> Message-ID: <87bkdz58jq.fsf@nvdebian.thelocal> Content-Type: text/plain X-ClientProxiedBy: SYBPR01CA0116.ausprd01.prod.outlook.com (2603:10c6:10:1::32) To BYAPR12MB3176.namprd12.prod.outlook.com (2603:10b6:a03:134::26) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BYAPR12MB3176:EE_|BY5PR12MB4212:EE_ X-MS-Office365-Filtering-Correlation-Id: 8f27ae1e-2e31-4855-d3d4-08dbb8a48eb3 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 6i8/SM7dsZeHH/WMBpd9VV87vWzAEbIrYF21mwKVS1AeVLSqPetnBFQoVJEt73+HIiBa/v/NiC6TFTLh9Nj0n3xsmHP1Kt+sufvAaz/Npa1mA8ivn1zcTDubPujWJMaEEWMI+AtmL9I9vYjxsZV7NDb5+ohdM5bHOVRomu3jg8Lc6WYI9ajxNuAgm4uKoKeORCtHqle/KfJmsF6MCA2J1oiArircKbnl2Gz3Lnc9/R7qr8APt8NV4Z33+yHStzxIGbhufRFDPaXRF14/QoePLvf4eYIO36KDKDpj1s5cxVV65WZkGstSnL5aGuAAYaHRoASqrCmm3DFpPmkFGZYCy28ZaX1EOOGCgESGnSEOxvRFHGKiqayMgUEZ9z3L5sUXa44uQrAG3+5Rb/JYuutGyTd9uFKUN6qelzcGEWK9tu5TpnxFYA1vF3uQNDErN1Tuahf08/Q3sGHttGyXegZlQb2YuNcgQ/JEqEiI2CdvM2QcDOzAm5IDuB0ksGjJq2uDcgi/nf/YNkNSX1+zqZsAE31iGU3hhYg3vu3Aek/W80axRaCM6PzMjWEqzRgsvgEL X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR12MB3176.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(396003)(366004)(346002)(39860400002)(376002)(136003)(186009)(1800799009)(451199024)(8676002)(8936002)(316002)(6916009)(41300700001)(26005)(2906002)(478600001)(66946007)(66556008)(66476007)(54906003)(4326008)(5660300002)(6506007)(6486002)(9686003)(6512007)(83380400001)(6666004)(38100700002)(86362001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?iyktlHHnm/Yq3C9PCCBYd+2lpBYb7NLV2702yPAlwwgGZKGiNRHcbCO974ZK?= =?us-ascii?Q?5tyUiV3WJkdSCsAVQ+6yUujZ+PfBlQSlthajJ4ToFd+pGMCbRuomwCjZ0jKl?= =?us-ascii?Q?+ZU0u4hak20+EzLhXaa5ZWMrDWkU3e7Ifia4YxcM7sEGMmOGR6MQ8OxQlBsK?= =?us-ascii?Q?qiOIlcOYCqKFondwlMqdc4cxb76hje3XrEbZnpG7hxqRWfcBTUHUICI8MyDz?= =?us-ascii?Q?muGYrWx7NiI7tjhrhxJcOh2YBjtLjYmoiJbptqFiRCaow+z4EBlxUBhEZMJg?= =?us-ascii?Q?D6Gt0ZXGTN6HGg8nrRXGSt2njGu1EEhCC4AT4RHBkWAlzWwzfUJBFtHc2KQU?= =?us-ascii?Q?hVBNZTuXpcmjNrLTA/hELNaAjfLBpQidobzbMVS4phByTiQMYYckj0o7MUli?= =?us-ascii?Q?Gg1oAPvW19HK2oyWLlDuwwn+FJ4PrACKrnQFXZ0SM1JsRpTNloupmUG3VYYC?= =?us-ascii?Q?tlnU2XcuTwpq+6ZwI7REskP3TGqfj0TyCKIPJrmMa/nbW44VxQE1AVANaS5D?= =?us-ascii?Q?wmqujJCEHKCencLm3TRAkrzhC+xUfIUGSsaOnIL429KEqOJC8rj5iU7dEm08?= =?us-ascii?Q?0WSgbdxH52+rA17R5VGmWP49AmtVCRECwzDDbYXPh/713UnOG3fkZlvmQIj2?= =?us-ascii?Q?uSAbb3HjYQacpMI/nrpuZPKstQO2jXniDwQlyIz9TnsjSaB3J0Or3+jU/cYy?= =?us-ascii?Q?dVtiM4odalmyYIskI3GrL0sKmh1fM86vkbHxWUJTcCCY7oQlwvJ0v0oJ9lQy?= =?us-ascii?Q?dmPNY9A2hNGlvNVMKT0u3PNBgbMIsjlZnfn5Ji2tvWve61FVoecZAqzDmgmR?= =?us-ascii?Q?ayP8O/fis/pZo+UQu7kdTxs+Ydteky91E4LDpbLj8ZrHET4BdURCH3iVXtXv?= =?us-ascii?Q?Favxwydc0YTIp0gU9W+ryaQAuMScM9d023DqmTDUR5rcdfBRvjmW27dAS+Jo?= =?us-ascii?Q?AivsKmvTZVvBn/p9qQWQ95Qtlb4KfFntDOH+o6ky0D64Cyfg3jcbDYCk+57v?= =?us-ascii?Q?E+FUed19kdyQ7zah1Hy1lsIb238mhRp85JUACR7XvguGghddyZT57tgegP6+?= =?us-ascii?Q?vchlBQNANdhWxewcmmv448zd2WWmsK/GPLhD6xtCAk/VTTZdfH57InNo+L6Q?= =?us-ascii?Q?hKHbPnqrMfv7SHlmgcuc4h9hu276xnr62pq7lgA5mcG6piRpqV5e1xFL0OQe?= =?us-ascii?Q?mmeVni/guDtGVbbct+xlAj+JK30CAZOUgmhbZMK7f2ziXTd4iSbkK7rSJXK3?= =?us-ascii?Q?cZmLeFMfB1Aph0ex/3QQwQHl6PKenCG2jO6eyNhHaO0JRYQH2cM85ByUV4Qw?= =?us-ascii?Q?54c5ZAkZV/pHhGXoSLrtxow378rlwMZ2jYCMWOo6dkGYkbtWfboZ8iOPvxww?= =?us-ascii?Q?Q6sq2UYQPEaB/vvFpPM7MU+vZLBEMy1e6O6JYyOH2n5jj805v6RPzUGKid3h?= =?us-ascii?Q?cqlO5UV2QNI2G+0J/Dd576+khIXd/wgKRF0dAEJJrIK1w/QLY1OzGWO/lgab?= =?us-ascii?Q?dJ+5+dzyydegL2NPZZlFZj+DkUZcdp/XEtR8QyC4UpYLcti8Yil8iHEA2d0o?= =?us-ascii?Q?JUSkmP+U9+XhnYvoY0KK8S8zhA6takOXPRtM/rTu?= X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-Network-Message-Id: 8f27ae1e-2e31-4855-d3d4-08dbb8a48eb3 X-MS-Exchange-CrossTenant-AuthSource: BYAPR12MB3176.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Sep 2023 00:08:31.2770 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 43083d15-7273-40c1-b7db-39efd9ccc17a X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: BO+2xzMLMS4Lvo4k6ErkCC2L3NMXs8SlgVNNoKN0lrge6QWMrAVSIUCqjQe3VNPbx9HWP92YvcdR3g4a9XjcWQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: BY5PR12MB4212 X-Rspamd-Queue-Id: 420431C0006 X-Rspam-User: X-Stat-Signature: 3jegjshgzm1wo3inc4sjztwyynnot1ue X-Rspamd-Server: rspam03 X-HE-Tag: 1695082114-929992 X-HE-Meta: U2FsdGVkX19rgd0+vPWMunxs19CLPcRNbhGVZHWrqUVr7JofcI00b6msBFxpXD1UNB8rH4iwtmOM1tazgp+4YrnxoXRO7pqhUHKIcEEQAyw4zKQI9WgZ3OnLJKs4OBqS/W8ZM5FjIfA4B7+51kd8+zhfJZ7HatyY02nJnrv4lrtSoJFETyzu1nV0jLzhUkwC3kN3IyYh/P0BHcKuwrtvXJkDwHuj6YNeBngwovgFbweIwEmI13YhiF//oHik1T+azcXx5W0WfQ0d8sol48m8+myl0dhu1QwxX+uM8tJGSELUdTLCWhiiWKkH0lLjpwjNFGNtQwMeMT0jsY0crRx8oWCmBL4R6cksYd1vzzFz6yUBHUKsguaVx/GzgTKgVQV+09cys+0iLEdGwWbDlH3vJwARkLh36NQU9ONRkkH1mq9ARGVAD8MJCMhK7Fp9h6Se2C6sVLtSrezPtI2f9X+XNM+SKrzpvwRgBf2dwk1LeFAVek9ayV6QA5PlqV1Q+CLq6PmOP7YmlnYTkJkLGNqYpHePKadi0DJ90SbswQ21IwVtPICy0b9QlMvCZGagk0O/LE059/Vl7+xgy3bxPihXJm+ovROOwEwrmpyVeqsJo3d2mI3wbJ4Ja28hkPO5c7fwBBNAbuMp5w0D3AjhsYnWbPHBmN+qaJHiuaOipSGWl9SD3XBN2scVSvMFFSBQAXns66fZ4n9OFNQJ1WNM5f6NzYYLwXM3pz9TzN+RV3mZkgqoYOWHa+Aag3NHiZKWYAkBYc5U1AxrtheePqsLE6t8VrNHJajMP4e32UFysZvy4i+95wrxOaYpJYTLxED47DqOwxeo7kdQe+H5F97bMEN24rwXMy8k1XLl7s02KXJ7wuqruJeNTUDb/s+7wnae0uKXJtF2vPCi1CncCGS2f1Lz6MOvCiPfXTQeegmIvpoNE12na7A1boC7EkZvJOEZmh4Js6DQOt+2pzbkYHi17py Tde/PsfR IybH4bN4DAY88pUz9nlBIJ7ZLH0q8twOM3hDips9OW6jYCUygikfqYXCjW9rphQJhhz0k/bIN3wrfZGmA542/zZRJagRrMlS7vVGJPA7k3pidxQTh2DFraEfYv58KcToZscjgMFfVpjV7rJPX/ZFP/+CU9bQ9/W7Z3getbSOEGNou/dg9clZ6ppurz+Y2jY7Ma5Io1zaQ03SGKTCI76yzWugdGQ== 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: Looks good, thanks. Reviewed-by: Alistair Popple Jann Horn writes: > Document what mmu_notifier_invalidate_range_start_nonblock() is for. > Also add a __must_check annotation to signal that callers must bail out if > a notifier vetoes the operation. > > Signed-off-by: Jann Horn > --- > include/linux/mmu_notifier.h | 9 ++++++++- > 1 file changed, 8 insertions(+), 1 deletion(-) > > diff --git a/include/linux/mmu_notifier.h b/include/linux/mmu_notifier.h > index 6e3c857606f1..f349e08a9dfe 100644 > --- a/include/linux/mmu_notifier.h > +++ b/include/linux/mmu_notifier.h > @@ -459,7 +459,14 @@ mmu_notifier_invalidate_range_start(struct mmu_notifier_range *range) > lock_map_release(&__mmu_notifier_invalidate_range_start_map); > } > > -static inline int > +/* > + * This version of mmu_notifier_invalidate_range_start() avoids blocking, but it > + * can return an error if a notifier can't proceed without blocking, in which > + * case you're not allowed to modify PTEs in the specified range. > + * > + * This is mainly intended for OOM handling. > + */ > +static inline int __must_check > mmu_notifier_invalidate_range_start_nonblock(struct mmu_notifier_range *range) > { > int ret = 0; > > base-commit: 6704c78e2963a5682b4ac3c0e609d36f2405cf17