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 D2317C3DA49 for ; Tue, 16 Jul 2024 17:35:01 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 4CF686B0089; Tue, 16 Jul 2024 13:35:01 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 47F916B008A; Tue, 16 Jul 2024 13:35:01 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 346DD6B008C; Tue, 16 Jul 2024 13:35:01 -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 13E8D6B0089 for ; Tue, 16 Jul 2024 13:35:01 -0400 (EDT) Received: from smtpin11.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay08.hostedemail.com (Postfix) with ESMTP id 8BC351405FD for ; Tue, 16 Jul 2024 17:35:00 +0000 (UTC) X-FDA: 82346316360.11.A6DD7BB Received: from mail-pj1-f74.google.com (mail-pj1-f74.google.com [209.85.216.74]) by imf13.hostedemail.com (Postfix) with ESMTP id BFC4820011 for ; Tue, 16 Jul 2024 17:34:58 +0000 (UTC) Authentication-Results: imf13.hostedemail.com; dkim=pass header.d=google.com header.s=20230601 header.b=Y6v34dNu; dmarc=pass (policy=reject) header.from=google.com; spf=pass (imf13.hostedemail.com: domain of 3Qa-WZgYKCDYkWSfbUYggYdW.Ugedafmp-eecnSUc.gjY@flex--seanjc.bounces.google.com designates 209.85.216.74 as permitted sender) smtp.mailfrom=3Qa-WZgYKCDYkWSfbUYggYdW.Ugedafmp-eecnSUc.gjY@flex--seanjc.bounces.google.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1721151267; a=rsa-sha256; cv=none; b=cClCwyjFuzcb6c4VwgUCDYAjOTl4ClLcrplivLfLH6qUMSQT4M7Nilnra7A9r5R4QKUk5i 9qPfW1xqsDMGtqKTErXXIozhPtZweYyeyTJw9cToV2fWNhVnZT6WDAu+FF4pcpkgxaJR8h A9F62YheU+cr/lj/HTupUMKaFC1Exxc= ARC-Authentication-Results: i=1; imf13.hostedemail.com; dkim=pass header.d=google.com header.s=20230601 header.b=Y6v34dNu; dmarc=pass (policy=reject) header.from=google.com; spf=pass (imf13.hostedemail.com: domain of 3Qa-WZgYKCDYkWSfbUYggYdW.Ugedafmp-eecnSUc.gjY@flex--seanjc.bounces.google.com designates 209.85.216.74 as permitted sender) smtp.mailfrom=3Qa-WZgYKCDYkWSfbUYggYdW.Ugedafmp-eecnSUc.gjY@flex--seanjc.bounces.google.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1721151267; 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=Bzncl9L3e27llWjrAt0uSGnBBcBzotmsp09OvMIhHpc=; b=GLsrxh5FjvZXn0K8Uim46BOhrGHboWJx5/+dYGhpHtkz5z/v0lLAQurcozwsXv3ZDD/kr0 OhCXxXkvmgMkfkDcTnCNoZZvN2nbqkgr3kDmpvDP0lpuZxZcRCT26ZdbNWLWQN9owfukbc ZJMk1q+DDSnnh2jQthSkpdfwi7oxuqY= Received: by mail-pj1-f74.google.com with SMTP id 98e67ed59e1d1-2c96f6bed83so5086216a91.3 for ; Tue, 16 Jul 2024 10:34:58 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20230601; t=1721151297; x=1721756097; darn=kvack.org; h=cc:to:from:subject:message-id:references:mime-version:in-reply-to :date:from:to:cc:subject:date:message-id:reply-to; bh=Bzncl9L3e27llWjrAt0uSGnBBcBzotmsp09OvMIhHpc=; b=Y6v34dNuph1JhRk3YhJUJJSPTbfU53SRWtcVKnCoqzyVPAxdDFrVaa/I2suSCZHpUe /AYEo9bR98tJdQeH4g4aSTywhGskoNH20RjIVumWo3YPQRMjMWQ5FmR3v2yEQGoiMAg5 8J+bKr125K4CwlzbEVNQTCZdaGl0vgcFCaQWEzJZdzoEckT+6Mnle5cuBFQdTWtSL1pk dFfSQHOPyc5lK4wsO1+2vklLwtVpUHdxQqb0dWk7qfJD0QgTUzQxMZGLuhAWYDRVZNGE LX1YgjMlGKRRyjsV76Vt6tmU7/gpLtwOaAFgBRijjWyYqFq6+wnapd4M8o0EnD+PkVEY vWlA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1721151297; x=1721756097; h=cc:to:from:subject:message-id:references:mime-version:in-reply-to :date:x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=Bzncl9L3e27llWjrAt0uSGnBBcBzotmsp09OvMIhHpc=; b=cVSwrlezPXLr3sRPqfAJi3trjJybMvQQEliJ16HdjrxDXUipx8ccVbuVgk2i4VNRYC F7/ioQlCuS2w+uQUoSKcno/gBwjpVsS2TsFTzUcFKZjIz+LQzeWgtnE3VQILvUFbB7P4 RJ+IB/Y7VLmAm8z76wgQi1w8mdzea/jsZ/5kSsF2rnd6Fe5gvDJX0IYGEUlBMVG83lTI //o3ljiY4/TCYAcQg5Ifm6TegrHILf16Jtns7jv6B0aLdkh97CmGQDwQcK2DG2r443Fi OWZJItrfb1zx2tlHk8I6dn1C8wp7j4IS2SffRlCaqgKuuCWiRyIXzMLS1z4eDbtwKrP0 3kZw== X-Forwarded-Encrypted: i=1; AJvYcCVLia7GOzBZqMxlL6E0V2EjbTTdhbHfqyPAC5R3VZnrqQv4jep92o7L7S+qGYsTAwnd/JQgsNBCpCUhFOhwWsTQTic= X-Gm-Message-State: AOJu0YymXy9tyTvwCDTa4XWoO/3rah4lR0G434Be6wwoqKjkRg9uvYs1 C0Soq3cQbq5Xr/UWCeDAR0CA0sfRoJZ8q1CKr3ghE+MNjCfhU/EkRR2d2LlQRYo6ZJQT07/v5m2 8Uw== X-Google-Smtp-Source: AGHT+IG32VHtdxdaUsDDPJunrvckiTWNO91gPhz+tHm9yc4gkYSQ85JHqlVjFo5Nvdj8OgpwD3v6pjKH7w4= X-Received: from zagreus.c.googlers.com ([fda3:e722:ac3:cc00:7f:e700:c0a8:5c37]) (user=seanjc job=sendgmr) by 2002:a17:90a:b96:b0:2c9:ba2b:42ac with SMTP id 98e67ed59e1d1-2cb36d483c4mr6722a91.4.1721151297229; Tue, 16 Jul 2024 10:34:57 -0700 (PDT) Date: Tue, 16 Jul 2024 10:34:55 -0700 In-Reply-To: <20240716160842.GD1482543@nvidia.com> Mime-Version: 1.0 References: <20240618-exclusive-gup-v1-0-30472a19c5d1@quicinc.com> <20240712232937.2861788-1-ackerleytng@google.com> <20240716160842.GD1482543@nvidia.com> Message-ID: Subject: Re: [PATCH RFC 0/5] mm/gup: Introduce exclusive GUP pinning From: Sean Christopherson To: Jason Gunthorpe Cc: Ackerley Tng , quic_eberman@quicinc.com, akpm@linux-foundation.org, david@redhat.com, kvm@vger.kernel.org, linux-arm-msm@vger.kernel.org, linux-kernel@vger.kernel.org, linux-kselftest@vger.kernel.org, linux-mm@kvack.org, maz@kernel.org, pbonzini@redhat.com, shuah@kernel.org, tabba@google.com, willy@infradead.org, vannapurve@google.com, hch@infradead.org, rientjes@google.com, jhubbard@nvidia.com, qperret@google.com, smostafa@google.com, fvdl@google.com, hughd@google.com Content-Type: text/plain; charset="us-ascii" X-Rspamd-Server: rspam12 X-Rspamd-Queue-Id: BFC4820011 X-Stat-Signature: 3771xcwz4w7pmz63hcfheq5iwxy6osgb X-Rspam-User: X-HE-Tag: 1721151298-999837 X-HE-Meta: U2FsdGVkX19T6shME+ACyn0fQw54CytmpR2PCgXkz2fLAEEPvmcH+oat+qA28DEYECKbi1D8uRPhvp6OZfTrHdhL9+LOJOJXTUKeObYostwGIGv7M4m5qE/1wQ6R9JtS+a3d3mw8JjAQ08LQjCFsTPjPyK7XfZaZhG4kP+wbRLDcuf5OAnHS4kDRPdoJKKe83FPRgrVAqBIYAAkYpLRYocLcZedTy3fbOxCOisVi+tVoKOmTE89M69F4VT5/fXg5q85V4+Thx/AcxeqWaZDMgIewdbR84GP+pd+UW/QiEw5lxvCce6fCmw95/8xU2BkraWa3K+Elhwtqt7WBQV43Xx811nTDH5QX+FxdeZzGCw/sq24hZ6mgnZWBvfyVem4cJ0ROODPGC8DQWigRxJWryI1Agr1ArF5AelCxHuTuJOKqUOOeG68GuJ6T3xCEEprokRC9pQxUB3KwRWvmw0GNZi/4obUzCc/hO0+5JrewtVjswlNze0rdD022DapFKvq62yYMqy+Hx3Xn0Hs8DXDQ7AvMy4AZP5llNvwM3fzUsCZOBw6DEpTa1YlmhI7iJOXcVfNaQ/2W8qjzETf1CdOs6v1rDGgzDZxxa0AUL+1dwMMdkkhu9zhaXozSdOFAgDC4+xtGdNbCgvxbPwD9nqDe6yjrlKBTn2MgPBQ9euCC2X5OrfOjDbXKAIm7NAhN7zZZol6NT+TX3HvvNCIUGUIoNT7tOmESCE5A42xQjAPeC7wrKvp3FPusb8we62e+svdbbcjh0ZPGsh/1W9DXEfX5rFYlcTLOEG1vZ/9MCjt3Rq6jkJDRLSptL+AfTq7aw/uIeYMB/p9+8GEWlMLnFmRWyoe0qOXzPYVo7ddjbp99igtabhVxBMSvQQOwC0k+wRTNAKPIreQr2fFvEF+D57rz8LQGBN+A94cAdvUP6gMYZ/H82UKEqrAawHEZ+U79YJwxX3ypoIwWWB1mI0hu/JR 7ycHVfVn tN0MVU1eAhgWRZdcvTkzaZ68ATSsDNsmJX+fPKS2n16719FfyQczHYrP3xuOIDssbfYTRQU6PdbdygOmjOTSOt9lvTwWu91Be743v5rqfOo2a7Wam92q0V51nIbQ5g0K2TO6abiByHq3uds1jAeVEcsiVOW3od/EspcyHFSDoEH3HOwN09MDrVt097g73FCaNM35FM6vNWNrrqLqJy12LM9AcOS5xtHrjw51wwVINueFVcRdCv3SDEi3EKFgBZbRBBBazZMR9qp9io+E2elobxMVL7SYgJGu5WukACmmYgGHRr084yJl6SMcAF6VQBZQL6ERsmuKtglrnlVEYvGN5xpKvH3p95NuZELtxWTZEfLS265CwkzortLbQ4Us5DE6kJ3VCUYFZmx3iLxajWLLA/IHgFgGBeNLIiQTAIb1vp+I+q2ELurO3RdG8BDBTEhibLbG7WZDtJZrmSdfwxHi6g9UdLFlm7ZWrFRS+HdEGY2YlQQ7SHG6747qwXoQWOO4FE3m0/xaUWimhMIU= X-Bogosity: Ham, tests=bogofilter, spamicity=0.000873, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: List-Subscribe: List-Unsubscribe: On Tue, Jul 16, 2024, Jason Gunthorpe wrote: > On Tue, Jul 16, 2024 at 09:03:00AM -0700, Sean Christopherson wrote: > > > > + To support huge pages, guest_memfd will take ownership of the hugepages, and > > > provide interested parties (userspace, KVM, iommu) with pages to be used. > > > + guest_memfd will track usage of (sub)pages, for both private and shared > > > memory > > > + Pages will be broken into smaller (probably 4K) chunks at creation time to > > > simplify implementation (as opposed to splitting at runtime when private to > > > shared conversion is requested by the guest) > > > > FWIW, I doubt we'll ever release a version with mmap()+guest_memfd support that > > shatters pages at creation. I can see it being an intermediate step, e.g. to > > prove correctness and provide a bisection point, but shattering hugepages at > > creation would effectively make hugepage support useless. > > Why? If the private memory retains its contiguity seperately but the > struct pages are removed from the vmemmap, what is the downside? Oooh, you're talking about shattering only the host userspace mappings. Now I understand why there was a bit of a disconnect, I was thinking you (hand-wavy everyone) were saying that KVM would immediately shatter its own mappings too. > As I understand it the point is to give a large contiguous range to > the private world and use only 4k pages to give the hypervisor world > access to limited amounts of the memory. > > Is there a reason that not having the shared memory elevated to higher > contiguity a deal breaker? Nope. I'm sure someone will ask for it sooner than later, but definitely not a must have.