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 CFB14EB64D9 for ; Tue, 27 Jun 2023 16:06:02 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 4F4698E0001; Tue, 27 Jun 2023 12:06:02 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 4A4CD8D0001; Tue, 27 Jun 2023 12:06:02 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 346508E0001; Tue, 27 Jun 2023 12:06:02 -0400 (EDT) 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 258478D0001 for ; Tue, 27 Jun 2023 12:06:02 -0400 (EDT) Received: from smtpin15.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay10.hostedemail.com (Postfix) with ESMTP id C80E6C019E for ; Tue, 27 Jun 2023 16:06:01 +0000 (UTC) X-FDA: 80949004122.15.8B5C11F Received: from NAM10-DM6-obe.outbound.protection.outlook.com (mail-dm6nam10on2085.outbound.protection.outlook.com [40.107.93.85]) by imf14.hostedemail.com (Postfix) with ESMTP id 531FE10011D for ; Tue, 27 Jun 2023 16:04:25 +0000 (UTC) Authentication-Results: imf14.hostedemail.com; dkim=pass header.d=Nvidia.com header.s=selector2 header.b=q6edWPwc; dmarc=pass (policy=reject) header.from=nvidia.com; spf=pass (imf14.hostedemail.com: domain of jgg@nvidia.com designates 40.107.93.85 as permitted sender) smtp.mailfrom=jgg@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=1687881866; 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=fA4EVws/w67mhjZzwV53QVFowIyoyW3JyDwuw4vd8Sc=; b=mMLucuJszgoygfJzGcukWsv1m+zMNbdf8UFmmFDjfr5b0H4K8Nt6uBXgI0Om/Bmpi3e5zJ FbzaG1lp2EjK8uGx2POfibxPtFVgeBGZu9lUjtqg4w50K2OsIRClv1P3tTHbo2RoEifIN/ DIdFQ1h1U40VBwaQIw07DmbxE0yifAM= ARC-Authentication-Results: i=2; imf14.hostedemail.com; dkim=pass header.d=Nvidia.com header.s=selector2 header.b=q6edWPwc; dmarc=pass (policy=reject) header.from=nvidia.com; spf=pass (imf14.hostedemail.com: domain of jgg@nvidia.com designates 40.107.93.85 as permitted sender) smtp.mailfrom=jgg@nvidia.com; arc=pass ("microsoft.com:s=arcselector9901:i=1") ARC-Seal: i=2; s=arc-20220608; d=hostedemail.com; t=1687881866; a=rsa-sha256; cv=pass; b=d7hOy17hXNpkAx6cVbFkISKPdh0o70f5uovnrTu+BQCXY0sE3T6ckVhTkZNl3kFgVQNKPV XjrXHt9nKcICRvEgYn4DyIQq5NsUMf44jLbdp7YWGJCCslyQRLZdgvwVn79irEGDY/a2gM T/y8VAbp/AsuLVAMNWNPSRbvFE3DR5k= ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=bFfTiY07gDcPOF1a3UPv6UEw53keQzsa2vUICLDJcP+E55x7Tah6P6fc/SPxj3qQXyJHSPs6NJcego6xmJqYaKN1RAV6X1YvO/eXpNEPEgeNPYvLsBpW3Qm3hU0/MppDYbbd1aiiZ0ds5rqX8MZwRnjtwYetTrKQtxkn4PAuZLYdveklJ4tI0xyS1FOvCaUzb/DS9InlGoobc6yB5kNrvCaDqkJk+uoz+qsQdXLAqhBAqbxC2ey84B+tFWMbtaUmJ7UDTJpbKfIYie8JbWlSyhbPN6rBX3iOhNqS24d2hoXTbnUiEtvtqrhB3Q4Jq/kWDHqcBcTcm0yV0Xog2xxjnQ== 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=fA4EVws/w67mhjZzwV53QVFowIyoyW3JyDwuw4vd8Sc=; b=LuZjyJ8InVr6RR9JDeAJFyEJd7/6r26u6gofMcNcSNeaGXc250AHMHM4dRtYZlSH9CdZt0OvQQi8TqdUli/4Faz40Bxkz6SIkuFeZPljWVwnrvQC04Ri+hPxZ2jOfW9BFFvnRXqSfCGk5p8cXuWuu2M7jPO12h9ghAI6vgRFM9iW3OotSurPZ3GjcQbUZL5oGFZ08J6e477tdqoBzmT9lawkXZAeh99Qragu/rGE/wHxlWtsGDJB4ZES0fRSRHQ/XmAP/ErWZod05ymZyRlqgN0vOzFwPi00BjSfmajOEGzAqdty5/A+FunyKvlMFB8QJrNwq7kHZ0oY+hMrtnJJyw== 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=fA4EVws/w67mhjZzwV53QVFowIyoyW3JyDwuw4vd8Sc=; b=q6edWPwcMve8fxJVmjYUJqFButbKl74/MS/DaunlEYubrepyIInbAcG4AQhARHXK4CFSaCzY3Bc8Pxo5mz87Tt5fnTiRO+pIxgS+KTwXfADcXTduJiN+b9/fHKHkRmMkitI0IZo3egdELQcr05fpC2wpzRqpdby9nIsT9euMmyqPa14ElLb230ZCc34imSdnrqem3OXyMbNfGTJusN1+kq62Pn74+T9n9CQNmssA6oOWTEYN6fKlimYBSdoyzDtl9nWaglcXbqE4X8OKzAEfFgBGjj3BnUw/+OZHltsXlnr6IMIOgVoChyn8QnRLmpDAbhhtutep5Lml6Iek6SXc/g== Received: from LV2PR12MB5869.namprd12.prod.outlook.com (2603:10b6:408:176::16) by DM4PR12MB5937.namprd12.prod.outlook.com (2603:10b6:8:68::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6521.24; Tue, 27 Jun 2023 16:04:23 +0000 Received: from LV2PR12MB5869.namprd12.prod.outlook.com ([fe80::f7a7:a561:87e9:5fab]) by LV2PR12MB5869.namprd12.prod.outlook.com ([fe80::f7a7:a561:87e9:5fab%7]) with mapi id 15.20.6521.024; Tue, 27 Jun 2023 16:04:23 +0000 Date: Tue, 27 Jun 2023 13:04:22 -0300 From: Jason Gunthorpe To: Peter Xu Cc: David Hildenbrand , "Kasireddy, Vivek" , "dri-devel@lists.freedesktop.org" , "linux-mm@kvack.org" , Mike Kravetz , Gerd Hoffmann , "Kim, Dongwon" , Andrew Morton , James Houghton , Jerome Marchand , "Chang, Junxiao" , "Kirill A . Shutemov" , "Hocko, Michal" , Muchun Song , John Hubbard Subject: Re: [PATCH v1 0/2] udmabuf: Add back support for mapping hugetlb pages Message-ID: References: <6e429fbc-e0e6-53c0-c545-2e2cbbe757de@redhat.com> Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: X-ClientProxiedBy: MN2PR01CA0034.prod.exchangelabs.com (2603:10b6:208:10c::47) To LV2PR12MB5869.namprd12.prod.outlook.com (2603:10b6:408:176::16) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: LV2PR12MB5869:EE_|DM4PR12MB5937:EE_ X-MS-Office365-Filtering-Correlation-Id: 90b5e2a6-8609-427c-85e2-08db77282c92 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: +FRSfZmQXom0VFGbYLtf1B04tLkT12CPogf2uz/FIYcB0oWeVEHWQ0kJaPTPpLWY/UPKaXx3u5r8yT8LX10DmjM9jzy4PwIcFfkniH71pTQfZlkSYocW6jM39CDh6R0VJKHvcJcRRomPBm0+sW/aJizfNgyeT8qqgpl9j97hGNrcJ2e+kvir7+e7jR5A/gTwbsj+GsKR3auWWP4GKmkBfmO8tDqT6dNb+D5HSGYp2wbxfvjwUR13BGTv6EN+Ggb/dkK9jxM/2V8ij61tmRJNGjO4o/g6wrdRiMJkv94pyaQIAIWERVLvg42EP4PIYi3f7GW653BfxvDTUZfXkXzIPr3R6CwrnVYe8mB8vXhRweaeb/EMtdiz+jpsxxQGyKB4qKpnmwe0MsfR6Q4Yfzjg6fD6B5jK8DCE40cXjtmW5Vs2EKPzfpKMuvFvqFoEGCNs3yasxp/+fGf7HsWLpfx8FVuXA0x/Ejikx9p7Jhz+wmTXOZt2hCgYebJEev8QTE/du4jggQXcTDPKVhE3HNnCwNIhD/gz+9bUQN3T+13sqxPHbHYi1JE+4peK0HeLW9NX X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:LV2PR12MB5869.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(39860400002)(346002)(396003)(376002)(366004)(136003)(451199021)(36756003)(38100700002)(5660300002)(7416002)(41300700001)(66476007)(6916009)(8936002)(8676002)(316002)(66556008)(66946007)(4326008)(86362001)(478600001)(107886003)(6486002)(186003)(6506007)(6512007)(26005)(2906002)(54906003)(2616005);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?UgZpdgR7iyZPciPdFLkT3+M7B2TGTPsuNR7WM7HC5xE1TJtGGzK1bmUM7obw?= =?us-ascii?Q?vIqbsjtlU+GSvAG8BnI2VLMEvG70lU2Nb6/tsy1p6jb+cEigBBwPF/4vJbB5?= =?us-ascii?Q?eMrCsqXrxXP2dq820HvTGKdoKJuuZP94nvLKx6o1ZfXLouYhfxHJAskVRpmm?= =?us-ascii?Q?S7iQ5wmJkvXuGxKFztxNCrZ4RunQbzKKw2EkYq3BJg+SrHt6rOf1nC6ezAxs?= =?us-ascii?Q?svDul70KGTCn3so9eb8WRPIBNN3eVRLKzgvgp+A1zIT6PCEVgSrGHE7vvpHN?= =?us-ascii?Q?caJ12N/2ZSjvEXrxNmGAgUrfnbKCeezupWIin2wltGIpYP67xTUETqd/qo2T?= =?us-ascii?Q?w0nrqQTUXttltl3TTaCG1f8jG9GB3WJol3PoeLJII19Xwy3gtJD17DWaJ3g6?= =?us-ascii?Q?ojOGXyzz8uxok6NkICqeIq9oBsNPfd55kjPXpQxYisNfC+mA7qLFdfqVWr7C?= =?us-ascii?Q?2fNA1AfsBhcaEl2GKKoDqRBY9aE3BNd6hDeYom4DoFrDjYV000tnJPeWZAEh?= =?us-ascii?Q?CBXKFgyBly2GlQGp7VJs5dj92LLWQ9rG4T/Xar7STGbQyAXe8sW2MZSVAZVI?= =?us-ascii?Q?dxCy6gVnSK32iMc3BMyp+8zFCM/ypeVkhDhbaVcX67Y85Dyj/uZ9ZhdAdzH2?= =?us-ascii?Q?gEzZQrDn2tEXmmCacyivlU7GyN26dwVU4rSlWsAh2yW+Av7Ow++cdJrKiuis?= =?us-ascii?Q?h2kd5mAou/k5mJFxxVSKbIFXFQcithKIwharMKHaHhI2BTLkXmLqNRPQuDPO?= =?us-ascii?Q?Nw1673SvSuexVKat3KBlvc5+d3msNW9gbncsja7phkZsD402qYFkTSjl/jO1?= =?us-ascii?Q?3cRcRL4CYg9l0m7JGt28EUBT7IKczjkSGgzvCbhWkWEEGYwIwGJCNMDf2hVk?= =?us-ascii?Q?5rMrPWxhGh91WUTZdx7746C/s1EAUrXHAlk+jGEw62CWU/bAZFykrFLd95hc?= =?us-ascii?Q?iZSIErSLJlb0f/n3FlZyc73DQfyE39xV7hnVyKR3xGXX0tV9P/EICjW/2RFo?= =?us-ascii?Q?tlz+GHCCrIoXs921cSQ8Z979BbzXR4aIDRWnh0/++5w64j1xRjRIZjuY2Chd?= =?us-ascii?Q?Ex+5okqz5veV1rpnKbyolbk1gTKQdnie95m0wBPhPG87jJDo5qbvZPls6ccK?= =?us-ascii?Q?+6fKDPmk0xxAblgqGdQnFTQc6JifY3K2LY2AaCpd+LWk9KSc4XkD1GHE4+3U?= =?us-ascii?Q?vCSfUre/+ULCb59M+BfGiCKGF37XaruiftEh0Gya/wyJIEhVNuiOwU1QJQWj?= =?us-ascii?Q?cbLYfDkZ9Xy/QL8v11mzZBEj92TWR+CaTRmzybIQf/+ZAocMIrj3Od+pHlKs?= =?us-ascii?Q?IYTcxbznTk6TdshuZojYisNqWlDMEBNfZu9Cjhd6iwcVNGAglPoQdcOR7s2Q?= =?us-ascii?Q?HRFAKhrj9BvsYBqwQQpM8gxm88rVcTLzggCAAxwpkcl0wdlUoJEBIPohfqrM?= =?us-ascii?Q?dHYZ5B6i4k8WjhVEk/L+V8aNoqBCL1AbQRi6vySiVcZE7yJ5s2cMXSORdE48?= =?us-ascii?Q?5/2eFh6A7YTNScvKQ7amiFTDShsG0JtOW15vKOV7ERLw1MRsFmOw3/SpCZUx?= =?us-ascii?Q?3KDcOUI6ujO8NWm8gvAG+YA5voNweHyEh6lTO46j?= X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-Network-Message-Id: 90b5e2a6-8609-427c-85e2-08db77282c92 X-MS-Exchange-CrossTenant-AuthSource: LV2PR12MB5869.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 27 Jun 2023 16:04:23.6369 (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: CjMA1WuleUFhJ8vst4zdXHwaxR5OUCQ4NEvQxUvzpucUoOwP3A7EiWbpPa83997g X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM4PR12MB5937 X-Rspamd-Queue-Id: 531FE10011D X-Rspam-User: X-Rspamd-Server: rspam04 X-Stat-Signature: pst537ugc1d3sosf7pxq5adx4m61pshn X-HE-Tag: 1687881865-58200 X-HE-Meta: U2FsdGVkX1/UiGr4TqV1LXnILT1jWKiSCiVaKlLEfayMitnmjzWpbqvlDKBw5RwYmGXnRlCXjeXY9C5CUK4SMy1sQnT2vYXKQSZQDzM9D2xRgfcDNDSyY+78iY8ZEEiB0YprZT6bp2PaTppk0vQNDhnLMrSK7IN/LGect/0fUfOl9bf5KMm8iuPMj06ZM10dhaia7ZDwK12fEAJroHJfJcTJGBxcTFf5jNBQ6mVEQK6grbYxfQvmC5cdwupdzxtNsT4FSb/DlItm5EVIaXDOu/Sq+aCogrcBVS0U7ZqX8RlaV2ebxrmLAY7SVl8Jd7VRR1xhzh+T0QXLlXNZNKgzOgFeUxj8OKQpu8R+UiHpUrJr0DCt6M+e1g5gsO283q8HcZxm/cSFWISLSmS6BRSmBuWMZ2w6CL9DrutQkJcaVAZWWXnrc3OA/KE8W9Iyihs0Wwpi0FZuJV8oPOU+NU8yjGD+NCbwaHTD9QzjfdNq9PHYJ9NHr4jOWhuHTIzfPHC5TM+wLy4L3GgsVx+KE0Wuwp14VHVayCm2KzwkQhkhKqnWm6LJa1Fjt4gxK3J3gqREKuDiSRnPtFn6cOjKxBhB2wcSGmbFJJOEbRpTL8xoGNzd55x6uIqFeyj68coj/FwX7CrO9LfgdSM9VL25VwgDDclK/85QquM1qleRpAuS1Lx2L5lG8swEFp27asSxV/EuLa7CqyrHSG2N6eKfawL1xUIzg0/ZxvQDCyN43u7qWKBFwfMUgrNkzo8J2YdZOc5KM3cp6tsh9L+X98U44DBEE1FRUTupUhRAcSYlvOQinOjeWXXdfDVG9YeqdUq68p6O/LgiAjTNZ8mhZz9c+NJxAUwyL1+8lSHaR1pd1Y7HyPtB4c+gsac6DHyEbHRRpiZAJ0gM/5ENPeE8Cx0kJPfDIrpkvbwO5fHVfS44JZ1/k8QoO9wUB7Xr9Shl6eN7hnHxAyc1qnGbUFFJSw0oRsb s5C/oL5v juxK0YixowgDYNw9NSxgLCEkYz8yEhjHA8dyw0voibxd3RcrdHflI5ZIZ/eZrMDU9qdoumnoBa6YzRc0XI8HMUt51QCng5Y96uAe5WhTJ+c4JMo32k13MwsvOFkp2uWFmhsCQu4MBq4mAQ2x+RHpzuB2N+Asr7+7aSV+w2ZpaarIB7pFxFSqpEo8iA2VWtbPZFQ9RTukWcOxegP3fDW98YVGucy5udXahJ761Nh+BUDg7nSiebmudaDlnGhrEqQMsp/sO 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, Jun 27, 2023 at 12:00:38PM -0400, Peter Xu wrote: > On Tue, Jun 27, 2023 at 12:52:34PM -0300, Jason Gunthorpe wrote: > > On Mon, Jun 26, 2023 at 03:04:21PM -0400, Peter Xu wrote: > > > On Mon, Jun 26, 2023 at 03:18:48PM -0300, Jason Gunthorpe wrote: > > > > On Mon, Jun 26, 2023 at 08:14:27PM +0200, David Hildenbrand wrote: > > > > > > > > > So we might have to implement the same page migration as gup does on > > > > > FOLL_LONGTERM here ... maybe there are more such cases/drivers that actually > > > > > require that handling when simply taking pages out of the memfd, believing > > > > > they can hold on to them forever. > > > > > > > > In general I would like to see an interface to FOLL_LONGTERM pin pages > > > > from a memfd. I would quite happily use that in iommufd as well. > > > > > > > > It solves some problems we have there with fork/exec/etc if the pages > > > > are not linked to a mm_struct. > > > > > > Afaiu any fd based approach should mean it'll never work with private > > > memories, while mm-based should be able to work on any kind. > > > > Is there a significant use case to open a memfd and then use > > MAP_PRIVATE? Why would anyone want to do that instead of just using > > normal mmap anonymous memory? > > I remember David Hildenbrand somewhere mentioned the use case where one > wants to snapshot a VM RAM into a file, then start multiple instances by > loading that VM RAM with MAP_PRIVATE, so it clones a bunch of snapshoted VM > running with a single RAM file shared as a template. Not a generic use > case, I guess. A file I can see, but a file is not a memfd, we are talking specifically about memfd, aren't we? > My question applies not only memfd but also in general - qemu by default > doesn't use memfd afaict, so it boils down to e.g. whether you'll target > the iommufd project to work in that case, where qemu uses anonymous > memory. I think this may change, as I understand it, the approach for confidential compute is to put the guest memory in a memfd... > Privately mapped file memory is only one of those kinds. I think memfd and related shmem-like objects are a reasonable target. We already know we should not FOLL_LONGTERM pin file backed pages. Jason