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 3DF10C25B4E for ; Fri, 20 Jan 2023 18:45:16 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id CDC346B0073; Fri, 20 Jan 2023 13:45:15 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id C8B526B0074; Fri, 20 Jan 2023 13:45:15 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id B04FE6B0075; Fri, 20 Jan 2023 13:45:15 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0014.hostedemail.com [216.40.44.14]) by kanga.kvack.org (Postfix) with ESMTP id A23A66B0073 for ; Fri, 20 Jan 2023 13:45:15 -0500 (EST) Received: from smtpin20.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay09.hostedemail.com (Postfix) with ESMTP id 6F9EB80549 for ; Fri, 20 Jan 2023 18:45:15 +0000 (UTC) X-FDA: 80376054990.20.17A3C97 Received: from NAM11-DM6-obe.outbound.protection.outlook.com (mail-dm6nam11on2087.outbound.protection.outlook.com [40.107.223.87]) by imf26.hostedemail.com (Postfix) with ESMTP id A02A6140019 for ; Fri, 20 Jan 2023 18:45:11 +0000 (UTC) Authentication-Results: imf26.hostedemail.com; dkim=pass header.d=Nvidia.com header.s=selector2 header.b=M9DyYhHb; dmarc=pass (policy=reject) header.from=nvidia.com; spf=pass (imf26.hostedemail.com: domain of jhubbard@nvidia.com designates 40.107.223.87 as permitted sender) smtp.mailfrom=jhubbard@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=1674240312; 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=XpxbB2ETq6RVVvvFJL17uqEK5wu2vHBnbia9+XT3Z3U=; b=DNJJGNzMM10uPneyEkYd3qCA1EQ2wHjD9Pf66ZML6dTMPE9rGQUiTQFXAuC+nlmjA4+XMC t7IgEg0Nv3V/d1jyOPNeXPWI+EMpuIrLv/ScKs8aYxm3uji/ui7yvMU32FcTJF7STTkajk BPHbpi+gAsdz352NUJVC/2Ub8lyky/E= ARC-Authentication-Results: i=2; imf26.hostedemail.com; dkim=pass header.d=Nvidia.com header.s=selector2 header.b=M9DyYhHb; dmarc=pass (policy=reject) header.from=nvidia.com; spf=pass (imf26.hostedemail.com: domain of jhubbard@nvidia.com designates 40.107.223.87 as permitted sender) smtp.mailfrom=jhubbard@nvidia.com; arc=pass ("microsoft.com:s=arcselector9901:i=1") ARC-Seal: i=2; s=arc-20220608; d=hostedemail.com; t=1674240312; a=rsa-sha256; cv=pass; b=6hbLvw8S88ClUjwEykeD2qcfw2ddx28gPv31sbC3ljmidC2westsvyE3r6g619omzeHVLN L9fFz7E0ajljWj6XH3hwf9eWVoHQB4PoRvfuLg1rkaSjNBFg0MFp3nFZLdqCYpmIiE88wm spvmMcG/kRhE/QwceSw530JQ18/+mmU= ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=fAUGEJVofMo0tkkhy7ncgNVys/ezAi/hDCenJtR3FkMLiE/+4IGvuRv52kSOE284BbKN62F9zDTBJU+lMxT1RpI5xCqvh19Mn1A1DDmncNlJpEL/ons5Y/NNPmZecvLkv1U6bvQ0if+UcZlsHhp+i/bvQRvSRysp9U8G9uXmTmi26BjXtUkDIEZOR1YFT8wIIuO4p3ztGABDP1B+aCLxiIrfAppJRLFg6xCumLuwwdFNpjcgGrB5VauvOxihHDJIqCJq1xO2kj/EpT9g+pbnxwqrUU5nE3yJunZarY8tN5IDuQi0rS+z+EOkRVRBrZ+TXX1b52kJZX0dr9i3eCRnjw== 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=XpxbB2ETq6RVVvvFJL17uqEK5wu2vHBnbia9+XT3Z3U=; b=nDS8ssUwcU6b4WMIYc9tw1S/ZGrX7HoFafU/CKJ3m1h2uYoZkUB8pN12zjWavFYeoHMUWtmf1F2VxNhP3TFn4fE7Bzw5AvAnUCQoO05ViaGkwl4r6t5biA7PLIEu6pYvsbn8KiK2hISJ1L9R2GaYKN4dUuLtHTL9Von+XwxbvUCQpbisnsYqGVH7IVu2RT/ubXhnb2TTjgeuhGeGH7x2zXgKtFaLLuPR7fitJsyLEDyDvfYID9b2Wkz5F8E9eBhkeprPC//TqgYSwSaid+NMiX8UPtbvN8onS9b81gbuhk8lPTIW+ZINUcGha2BqV7JaCbpav3FN2OKXxK7YJ51Q+A== 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=XpxbB2ETq6RVVvvFJL17uqEK5wu2vHBnbia9+XT3Z3U=; b=M9DyYhHbGLwZl/YzSSjQlGmFBlRbbJcQhNRdNvIJAnMGSuipKr1ij52pMs/DPMor/DgntgmJyeLzbAEhAobSWZ3A8GUzMvj8xKLwrSZ+wxqFgPBoALCWl7rqDVt1RIR0tEt2wlWQS5FpfDHMqZm667hAuPLV6AeowrYWzJN2m6X/XX20gb5J7otx21qqWwZW7DgmyjMtVQMZuTDIKjVKo/CVuTNm12b7GcXobhVqZ52ou8taveQBqnmQqmOGcjqISxi+SOTfE9lYhm/XrRnfWUwfo1BIHD74UOEHM42JTVDkcsv1r8ch21vRHDgGgokCgmBRKLzEtqRFoUQd1c99FQ== Received: from BY5PR12MB4130.namprd12.prod.outlook.com (2603:10b6:a03:20b::16) by DS7PR12MB8229.namprd12.prod.outlook.com (2603:10b6:8:ea::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6002.24; Fri, 20 Jan 2023 18:45:09 +0000 Received: from BY5PR12MB4130.namprd12.prod.outlook.com ([fe80::7895:c4d1:27d2:5b0a]) by BY5PR12MB4130.namprd12.prod.outlook.com ([fe80::7895:c4d1:27d2:5b0a%9]) with mapi id 15.20.6002.024; Fri, 20 Jan 2023 18:45:09 +0000 Message-ID: <7036bc51-ff78-32a6-4368-d997cf0d2e8a@nvidia.com> Date: Fri, 20 Jan 2023 10:45:07 -0800 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.6.1 Subject: Re: [PATCH 3/8] mm/gup: simplify the external interface functions and consolidate invariants Content-Language: en-US To: Jason Gunthorpe Cc: Alistair Popple , linux-mm@kvack.org References: <3-v1-dd94f8f0d5ad+716-gup_tidy_jgg@nvidia.com> <845c3d54-efe5-6e3a-05ca-5f419ac7d145@nvidia.com> From: John Hubbard In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: BYAPR08CA0053.namprd08.prod.outlook.com (2603:10b6:a03:117::30) To BY5PR12MB4130.namprd12.prod.outlook.com (2603:10b6:a03:20b::16) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BY5PR12MB4130:EE_|DS7PR12MB8229:EE_ X-MS-Office365-Filtering-Correlation-Id: 6b286169-3981-42fe-d9eb-08dafb167478 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: QHK5cbI0CREY+dM7+0CiQJ655B1xAuLUT8BS0sPrMt/3whwxexohSI5qCD2K0AKDRwBGJbKnHEEHqSaPYWTdMe4iNtfp+yAiQxOi5azV3Yn53BNQKxzF83Y94MPiB0IqHygCrAbs2bIpSQz5AadYIhqk1fx3+yMGPzO9CyGg7Skc+K5h0X5hECDxu8LPPhLuHaTkUsuX/xXd2hhLgGlo8hJLwsZIntUCR7H22WHVoh8l+Vmt43kbrnePhReo0MsioyDRBVkXpYXptDODHxjDMNp0KxolVwv0x9dsTNUL0pTKawDAdxP56iaI+oRM+WxwH+Fk3g4tkInUU01xZMe7PfxBvuOiRDOwOENou1s7DS7S8PNZ5joMwRw4x4LhkNoIxbjSzuOT1rlriJIwQKe0wEQIVAbEuoMLf+UFP7rdSx+tfF000AszeWmI0tFsgmHqYVtVjRuFsAmu4XZpte3ZE7jj66WBvbvq/zXSQCbqp5h0KST95L0nbMEla+aa4l0HOYR5537Rzhe1fRi1QKAEeDTLH9OXFyDRspMT2lZEgh+AkCqZapkYbaeof137jywFH/jLxY+N6AyOgNTYLX3JUvNRgLnc/KCQDthXTvcfmvZ4Qcj5p9PMT22EDVISe8RFVAuBl1amS29LjQ9sB1E6CrT7uW0eITCa7JTGJ/gqCoDboB8QnDVAAk76zwgbh+9JqAYZjjTDLMkOvAjMDG7bERXFCA5w04rx+nobE4P9UzU= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BY5PR12MB4130.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230022)(4636009)(396003)(346002)(39860400002)(366004)(136003)(376002)(451199015)(66556008)(316002)(31696002)(38100700002)(8936002)(2906002)(66946007)(6862004)(4744005)(66476007)(5660300002)(26005)(6512007)(8676002)(41300700001)(83380400001)(2616005)(186003)(37006003)(53546011)(6636002)(6486002)(4326008)(36756003)(478600001)(6506007)(31686004)(86362001)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?SnBoVGdnTHNQQTgxemRjc3VBZlhieUVpdEVnTUdRSmI2Ni83bVBHTzlNTVNV?= =?utf-8?B?bURnbURIT1FCZFRnWWJ0dkdGNndKM2JIRmo0QXhQS0RQanRPZVY2cm85dENR?= =?utf-8?B?T01QWUVPN1I4ejlKMVF6SERST1NqZE9nYWZZZGRVUFZqK0k5d1V5MXFIRlFq?= =?utf-8?B?bU5IaGVST3J3K1pmaFlHZWM4anI1czN2dVZvRFZPVVlFUEIrbXVxVFB0a2Rw?= =?utf-8?B?RlI5dm8zNVpCS2lXcEVudXp1cHJrRzl3NDBNelhsT3ovSjhSZndpd2drcFlW?= =?utf-8?B?NHVJajA2VzAwMkNDMnoxYTluN3ZtUUhudUFpTFo5VHdWNmN5T2pFOEdwdklV?= =?utf-8?B?U25XYmdtcDVWYk5Hc2FEVTEzSllmWUVZNmhDNHgzL1hRblFYSktFZGpJZGhI?= =?utf-8?B?bzVuaDNXZm9DdXJPa2UzUnVBTjY0SkdIUjIwZHB3YnlGRWJHWStOOHhWb25Z?= =?utf-8?B?RUlxeVV1djhRM05FMzJqY3hwblg1MzFIZHVBa1hrYjVCVWVEd1pNb0s5WGRp?= =?utf-8?B?d0huWnRTNFFQZ0R3YW5PakNJemt2eHNCTyt2L1RsWUdheW9qZkcxWlprNm43?= =?utf-8?B?UllXNTVlV0VjSnRDejF6OTJzdE9hZVJ6RDJReTZLbWJub0pHRkt4VGtjME1T?= =?utf-8?B?VkxFTEVMNTZTUWJaUGFDQjJ4VmxFWU1TaDFjNmZYL25FaFVGbEY0VmhvczI5?= =?utf-8?B?cWN0SG1tRG5ibE13ZEViZktEMDJXNFdPWTdVbm55NlZtUjM3MnphOGpMNzVl?= =?utf-8?B?aWdkZ3ZWR3g3b2N4NDZTTHV0S1FOVDNLL2xZamxxSXRXcXlTeitDZnhobnlK?= =?utf-8?B?SFd0QzJxc0lOMW5TWWhwbkVjYmVtWDJwMi82REhwNkdlUGlaNlNTbjhneExC?= =?utf-8?B?MzRTYlJPV1BSZkNXSkUrVzY2MlovZ1padE41emc2ZTdPckJCVFBEQnduUVVa?= =?utf-8?B?c3IyVzRpUUl3aG5wRDBTM1BpOEc4dFRlOGRidDRiVUR6S1dmYXp6T0c2UXNV?= =?utf-8?B?TVRQd3ZFSU95OUVqRlQxMkphZDBYbVdwQlZFV1Rnc2U2dEtHRDZ4QXRxL1VY?= =?utf-8?B?Qnl1WFNSQll1SVgxNmtkYk90YVZTYWNzdEREeHJvSjErZE5wdVJacUViRWVI?= =?utf-8?B?WEphcHd5TXh0VngwTERqMDFVUDdyN0oxRW16ZkZiTTl3UkxKeHdLdDNJK3hJ?= =?utf-8?B?QkxxU2ZjQUY0SHplTUVIZUE0d0N3dGVYa2NRZW5QWXpkV3VNK3lZTUtRcllI?= =?utf-8?B?bDl0KzVDQVBvWHRjdXRickc4NTA2bFBvMU5sMy91R2E1c0g2ZXhuOGhnbVBu?= =?utf-8?B?aEJRZ0YvTlgyb0wzeldWN1RhQytCUnFlNmlSSDdlZEJBRXo5aERMdFVjd1VQ?= =?utf-8?B?M1ZMSlNaU0xzbTA1TzhuNXM2MVBoUUhqTStyUGVQMHYyVUNVclZ5eERYSWR2?= =?utf-8?B?T2VJek4va1l3V1dwNEtvU0JpeFg1R2pvZUk4UHlkejM4YTYvelJXT3Q4ejgy?= =?utf-8?B?T05oWW0wNnRaMUtxNEZsQldtWWZJbHVsR3EwYThEVUpkUkpUQVhhbmVrc25B?= =?utf-8?B?UTFQbng5eFBndnVaTzZwZWJ0MWl5TVV6eFh2MFVQZGxlMEtWZ1lNSStNc2xO?= =?utf-8?B?a0RqNEQ3TXhZYTgvbU92QWNNd1lKaE9RenlkMGYxejBuNG5LcERWemY2am9t?= =?utf-8?B?ejRHa1lxZWwzUDRLeTllWUp0QmdOcGQ0TCtkZ2J0YU1VQ3RhMkRLNkcvN0Ja?= =?utf-8?B?OVVxRVI5OGJUV0tCM2E2Y1RFMG5zS2NIYjdhS3RxeVZtMUNwWDl2SkVZRWlS?= =?utf-8?B?MUJLdTExdHVQOXp4eWtwNHQwRW00SGdJM05CNkVhaHlHWFdDdWVIVmJubE14?= =?utf-8?B?WnFEaTQ1YnRTbDRVRjd1eWFLR1FLcldTRmpIYUkvZURMVGhIN0o4SGt0MG1M?= =?utf-8?B?THQ0eDd4TjhVd25rTmlEaE1xdVlNN3VaNU92QlJ3WGtlWnF2KzFDejFYa0Z0?= =?utf-8?B?Z0ZBRXJZTjRpb2FMaSt1aWlMdWUxbUVjQzcxSHlGd2tzdnJ6M0FrZDlJcWEz?= =?utf-8?B?a2dNNHhJcDBONEdKZ0xia3NzN0phWlJUVkhWK1o2Z1dDS3RkKzlFbXlVR3pF?= =?utf-8?Q?weSX6gHPThVFaV55QYOrMVVNG?= X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-Network-Message-Id: 6b286169-3981-42fe-d9eb-08dafb167478 X-MS-Exchange-CrossTenant-AuthSource: BY5PR12MB4130.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Jan 2023 18:45:08.9838 (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: J6JsuxyrpUhN3VHoXtXmmLL7wUpKAlPEJkkXOL96bt4sM3rX1efDVTP9FuRnuRS9qJa0cpywyu+0QDsPgK0cSw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS7PR12MB8229 X-Rspamd-Queue-Id: A02A6140019 X-Rspamd-Server: rspam09 X-Rspam-User: X-Stat-Signature: bkp3pso8h9kw5ts7ab9rtum7rqxy6594 X-HE-Tag: 1674240311-364777 X-HE-Meta: U2FsdGVkX1/ZXNF6hFmbNKVduTQ2DPcYAcKmiTqz9XmzUgVgoSWkd00vjGaYVvU2P9ErxUgrQFv83SCboA2j+LLEyrKhbLE5etCvhjaIB+Iu4Uaes52etOeAMsvugUlen+ssD/fahLG+486m7e4bYiAOY/PJ2heBsiRPs/Oc0u0FOVWfwMHElMuAfN/fkFS7+RZv7Jl2Lt1FFKKdGcBC94Yv6F3ShMaxa0Rsj+3QsKIXOatHo6BkBa2JacdOocUUWfqDBsDEYXCPx+mLyuqiHrIdcn3/dmhhQBTN7YtMqcY8Mlf6qKe7nheH38DWdOi0JUAb8iLnXgTM8nIwJ4RqgZV0kDuGxZUEK9aXMjEk0J1B2rXeXeaiP/k4bsS7iakDYkrgyzGKpeb47ea6WSZ/VQhPwC0tDCoyYtbS7gt1R0q5Fzjziq0NrRCQvtj9FiXxCCTNG25RNFkwLfqWiGm4Juzl+l/60Lu4rmoc3DFVguHkrnJMs5/+LIMrUlNTzuqmNFiTOuu2Zs/f/IPyfMLmz+nqKN1F3Kx16/ys9QbkSoubjtBu6yuRHGPMFRNRRWMySjcpDhEjVMBzCBFLq/q947BsRcY/X3mMofMH8hZf3PaJbT4H/BPbgldOHXxfhnV2LHfQ3AjkkTXpnwXiSuVXnAa3PQxIC0hvyp13mqTAAqx4ct8FcLCH3t3adpJxaNZ0Usiy5vTBRtBDGHuuRw97W4UJqhdfhBCf32P2nd7fjfhSeIVaAd+4z5gw0d/M30Wa0IgDUnxFg8sktCurb1olxzJkFN84Yk9htBZcr7si8fTXbXA3qb042+PW6CkZDiXCX3OauW4h7AKZaaw5xWq8r7je07xeE2bIzikaEY0b0vIJXn5iZEMJTstQCsQnYPtyb/zPBYWHAqw+CxKW58x+H30D+Qi+QDZ0WETLxhItTBd/FNfUF7PNUfS3rhHvTndGCxwj4rCYfqPx0+IdlaT fC8rK2qH uEHXZ7AB2MeE2T/zrAsaYPipbIjY7fq0HL10qv+i4EqrsVpv952VLSIhw6w/bNqZBqhMEwJAMnD4qDHo057kiNugQ7x4TgaEHyjEA9pHvHEMb880NvbfUX6cA70OZpKmKP0Em17XICFB+trwY7m7lHtuv1Wkr0A30iUzhAU04xxpeCltYC/D2hLQXrKUND5sS48YrPLTWtQaYeRTnjnYiE8cPXK0Yw+/vU0MF 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 1/20/23 06:58, Jason Gunthorpe wrote: >> OK, so we're slightly fortifying follow_page() checking, but >> not at the level of is_valid_gup_args(). Should this be mentioned >> in the commit description? And should the checks be more extensive? > > I'd leave it, there is no reason to be too nannyish - follow_page() > isn't an exported symbol. OK, agreed. ... >> do_mlock() >> __mm_populate() >> populate_vma_page_range() > > This is in gup.c and sets the flags directly, so it is not part of the > "external interface" we should just leave it. > > IMHO, the point of the checks is primarily prevent bad gup_flags from > entering gup.c, primarily from creative driver authors, not to prevent > bugs in gup.c. Yes, also sounds like the right dividing line for how far to go with these checks. OK. thanks, -- John Hubbard NVIDIA