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 C5893C83F17 for ; Fri, 18 Jul 2025 14:44:47 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 56F5C6B008C; Fri, 18 Jul 2025 10:44:47 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 547BD6B0092; Fri, 18 Jul 2025 10:44:47 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 45DA06B0093; Fri, 18 Jul 2025 10:44:47 -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 330956B008C for ; Fri, 18 Jul 2025 10:44:47 -0400 (EDT) Received: from smtpin26.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay10.hostedemail.com (Postfix) with ESMTP id 931C1C04CE for ; Fri, 18 Jul 2025 14:44:46 +0000 (UTC) X-FDA: 83677656972.26.DADA73D Received: from mail-qt1-f172.google.com (mail-qt1-f172.google.com [209.85.160.172]) by imf08.hostedemail.com (Postfix) with ESMTP id A0A8716000F for ; Fri, 18 Jul 2025 14:44:44 +0000 (UTC) Authentication-Results: imf08.hostedemail.com; dkim=pass header.d=ziepe.ca header.s=google header.b=aXCWVzcL; dmarc=none; spf=pass (imf08.hostedemail.com: domain of jgg@ziepe.ca designates 209.85.160.172 as permitted sender) smtp.mailfrom=jgg@ziepe.ca ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1752849884; a=rsa-sha256; cv=none; b=uTSNUuew0Sh6GyhbWKUHpRZoNwwnhz7+TVkIhpxtLmNawfSoAZqMr6JIhiXoUq60ITAPEl khyLNiMbFQrvsqYy267iGp0sleBfoo/jWbSH/8yWzgbJgljgywVJe1AB612Zw7Dpt+oMz/ ruJhmasWF5I4qWoedst6u2Z8XGdhp/Y= ARC-Authentication-Results: i=1; imf08.hostedemail.com; dkim=pass header.d=ziepe.ca header.s=google header.b=aXCWVzcL; dmarc=none; spf=pass (imf08.hostedemail.com: domain of jgg@ziepe.ca designates 209.85.160.172 as permitted sender) smtp.mailfrom=jgg@ziepe.ca ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1752849884; 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=/JlY6wrS7xoiZAd1n9VylKL/5klHKuhmeV2q/x+jhjE=; b=sEhTiLHLyVvBqXAd9hqU3uCk96PGnGrrU7TM4R2J7YaHdUXDuI0nV/2rDpPcOrTFvwA6LV pnzHnRhntmi2pAoW/wLg6CXpSqvL4wGghMY+EKZmt2Nc2d+jlpStg9xTudTNhzdAfr4ki0 dbxdQpwRG9Jibar4eWM4SLFiFraX2Tk= Received: by mail-qt1-f172.google.com with SMTP id d75a77b69052e-4aaaf1a63c1so15008711cf.3 for ; Fri, 18 Jul 2025 07:44:44 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ziepe.ca; s=google; t=1752849884; x=1753454684; darn=kvack.org; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:from:to:cc:subject:date:message-id:reply-to; bh=/JlY6wrS7xoiZAd1n9VylKL/5klHKuhmeV2q/x+jhjE=; b=aXCWVzcLrQ+1AIxwLWSelPK2AckwdzGeXvD9Tdp1xmvHoFfzNxAjcgf9XGK0i0G4co SZaeGUPpa6DRUgnH2IdK3UsKHIqOSXw4GMik6rZaNAnz2vHBOI2yOySoRMqRjrWlyFl7 oh5rJ6cRA+UNYfS7OY0RgCypzeTnWPHOmLexpjGY7eh6s/VXdOL5ILPcdhQ/pTkSIc6P WEJ7LFvV1xSGMhwPbUl22TEUNa9cGRaFQhrCI8kTynOaaf65SCsnqgZuv8IWTYiUWX7y VJ8/PJNRmjIPpPR5t6nkS2/9YaR4bNUgIQcr+yEPaOOaYYloK0w+dpylBQ8lAoDZHaqW fZoQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1752849884; x=1753454684; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=/JlY6wrS7xoiZAd1n9VylKL/5klHKuhmeV2q/x+jhjE=; b=P1tk/TICMl7MCd23HrblDVh52Zaor2gUO0lVmRAoYTFGPAJ9eR0K5ti6LRYTczENRe tHzt/YGVpB3cM40CTUUTfFQIaEGvF7s5/Cml60uEieNEoTTu+k8wG9nVQ22/pNxwV5A/ zLD2dTFpknQXQNaDz9l2qu6bcJMacBSGyL3XjIIrpKlSxIqufbt1Qqb+QXU5bLHS6WHP RrWJ67hisleDL6jQV0MaGV/J0Nue8P+GzB7eWtffOszmKNijgwJpvfShfvZBeYjeneC2 4SGmC7feGDisWsQw8uvBGCqRzRpOY+AcshYqmDAg1nTZ6LsZMSGcex2HSveRxFGhlpNS KFQg== X-Forwarded-Encrypted: i=1; AJvYcCVUyem7qNDTW8R+B49Jf7PdPvxNbbeaYrc1SCve+0Z5x0w0anCY7shvHfV40g7QiXpEzMpEIl4jSA==@kvack.org X-Gm-Message-State: AOJu0YxmKojPb2A4az6kmpVHadDti/MIk33Lu1g7GVqQHanoth3Olydi GqFZmf5H8acf1Ab2pP1lzfZpYjVmHDDe2czgO5ITjmu/yVvUuaXMg2YK29niKH7I6pM= X-Gm-Gg: ASbGncuRapYQ6mom5SFnHwtJBgBhcXCH6ynnInsx71dFR9Q7GA+LR71RsY09ng/hki7 6mNnPe4aMAazkpigKF2nEuvXDUxKtJJuPuY1QCZhQ6zPO9sYP4KOR4xJbuwpEQBKwC1/x7MZYrw tg9dhavh1a/L1GHH2WmWJcrHzVvTBOZZ4kxDyrzv0dt2WBhks2V8xnFl87Nfyp5nxt1er4ow8Br iYJn6oGS9foNZ3Y5G2wfv9jhtCDtZt9YiayGqWDdSKRVmy/yVlhAFaHw6dPOFdg4iI9ef3Bo8H8 8e9im6P0FKQ96yYoDh1Fc9TGM/GNWnyb46OoS/ZugG6CGRsQ1rszs9SZvaa2ufZPR9VK3UNYS1n EjkYwrka83pCMpgKj7Jsy5kQYwDUdbBRixanss9VIwyXq0LJljU0bRJxWLFnFpw2uw+A2Nq9aqc ItT56nGXE2 X-Google-Smtp-Source: AGHT+IEYd5qGIZ9KDhfEstxE616f9xXLY8QoZsrjUpURE5IRjE2GiKRGVckhayOKGta9pjoTuDB7PQ== X-Received: by 2002:a05:622a:1448:b0:4a9:cff3:68a2 with SMTP id d75a77b69052e-4ab93d88915mr157868681cf.37.1752849883674; Fri, 18 Jul 2025 07:44:43 -0700 (PDT) Received: from ziepe.ca (hlfxns017vw-142-167-56-70.dhcp-dynamic.fibreop.ns.bellaliant.net. [142.167.56.70]) by smtp.gmail.com with ESMTPSA id 6a1803df08f44-7051b8c04fdsm8211446d6.15.2025.07.18.07.44.43 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 18 Jul 2025 07:44:43 -0700 (PDT) Received: from jgg by wakko with local (Exim 4.97) (envelope-from ) id 1ucmKI-00000009zcK-2UVK; Fri, 18 Jul 2025 11:44:42 -0300 Date: Fri, 18 Jul 2025 11:44:42 -0300 From: Jason Gunthorpe To: Matthew Wilcox Cc: Yonatan Maman , =?utf-8?B?SsOpcsO0bWU=?= Glisse , Andrew Morton , Leon Romanovsky , Lyude Paul , Danilo Krummrich , David Airlie , Simona Vetter , Alistair Popple , Ben Skeggs , Michael Guralnik , Or Har-Toov , Daisuke Matsuda , Shay Drory , linux-mm@kvack.org, linux-rdma@vger.kernel.org, dri-devel@lists.freedesktop.org, nouveau@lists.freedesktop.org, linux-kernel@vger.kernel.org, Gal Shalom Subject: Re: [PATCH v2 1/5] mm/hmm: HMM API to enable P2P DMA for device private pages Message-ID: <20250718144442.GG2206214@ziepe.ca> References: <20250718115112.3881129-1-ymaman@nvidia.com> <20250718115112.3881129-2-ymaman@nvidia.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: X-Rspamd-Server: rspam12 X-Rspamd-Queue-Id: A0A8716000F X-Stat-Signature: wn1bcru87anha4zz4n9p9ztjdgm63k17 X-Rspam-User: X-HE-Tag: 1752849884-65020 X-HE-Meta: U2FsdGVkX1+RUcEd31Sq0D2GmXujJmu6J3CNrGGv3pJc1DJDWdjlR81G+yTrmdzy01lzXUC2O4GSqmKhar0SBJDYo15gcMeN7MpTtCmBPHn/bjXlkj0GGgaQOf1n3iksQdJtJ03/TsAoT0hb/msxIMmTTa0SOVACGsII1UxF0eRxSl3zXCMRM/PBBayQ+a1r9tGFri98TfsLAeQatu06KPOxqQqBosImOq8Tt/0KTTlwCEe9T556qEXCvQyOY9pKFBZ9AMdNKBigkYX+CeIFD3MohVwsiik+SCP5gaYLPJHtJMUqmBgSw3rWmaypMcKt5+CNMtcC9DQaQsZj9oRJ4hlRxcMSlYclT2vARhsC9rjVGOzFOC7VJufe+TXbWw3aIoI+0awDq85vqqRCWvh6S5/mCd1kxBVphYfHCvt4/0IiPT09bB3s/pkVV/flj/TB6D4AtWdMp7FeHFnHbpAhKEmiRCFRRofaKSnbuG7qYcKbyPm+h4SuGKD13iAaDL67TXmgWjTQac4URuJBNH5DJzSRjKJP2OOUlPtZPOQvkW1nqDTBO1R1nw+h0RiU5f+zbb2NTLNVAISVl10qM+eRycLetu43cFe6FhjIH3n3Eax3wZTDZli4RrDa0nNgS60pIJyJm0SJNgy9159Y8NxUZduVMZbSXTeFUoZmmfCGIqC2M4mHQ09E193LuIcHPX9JRVZ0VJH8phjlxxaJM1MQT9dSWVRq2bo/Twb0R08h3BAdFYZ1Wm3Xitl7JaSfBMGvn5T5ICa9tabtrTmLS7bmTvFpJQy1w7+v9PlA3WV2zu0MYr0CvsubS1Tve0UhUQK+8VYy24o+wpm85+0Bvz0k133bUOT2taG/VUdZ8QbJA8Hx8laSDPMf5Vf96YSzM3Gz6OAsXkLnkjPzqImEEdZVKzP+W6KD61Y0lZmkAtjv1vFjFCHjsxWRqHgLwFo6ROr0DkK2KxrVZ2Ardd0UAL4 DF78hPZ0 y4cKV9rrp8UecRpaQFjxLfK2LrUuVdTLLNvrOuNmZrE+7j4kLCFTZV4hWeDlO2d8ShlB+EsvRlUZmeJcOl5VOX51Db5+gyTU1oD4aUh5UaDknUPpdSRPhyWQOcMxnVmZf5Z4qSfyG7wA8mKapU1274YN1A/yeVALdym/3G5FNx6L/UBCQ9fv0Ar0w1zoIyiC2WCL7UNlraMX+T7OIdKlEdzmTzkoz/lseAkkXbz8Iufs+Uisg+S5xn1M7RcK/4ftW5NuNeFZQCXwjDXbQ4TPkY6t3sc2Iwgv8qi+O 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: List-Subscribe: List-Unsubscribe: On Fri, Jul 18, 2025 at 03:17:00PM +0100, Matthew Wilcox wrote: > On Fri, Jul 18, 2025 at 02:51:08PM +0300, Yonatan Maman wrote: > > +++ b/include/linux/memremap.h > > @@ -89,6 +89,14 @@ struct dev_pagemap_ops { > > */ > > vm_fault_t (*migrate_to_ram)(struct vm_fault *vmf); > > > > + /* > > + * Used for private (un-addressable) device memory only. Return a > > + * corresponding PFN for a page that can be mapped to device > > + * (e.g using dma_map_page) > > + */ > > + int (*get_dma_pfn_for_device)(struct page *private_page, > > + unsigned long *dma_pfn); > > This makes no sense. If a page is addressable then it has a PFN. > If a page is not addressable then it doesn't have a PFN. The DEVICE_PRIVATE pages have a PFN, but it is not usable for anything. This is effectively converting from a DEVICE_PRIVATE page to an actual DMA'able address of some kind. The DEVICE_PRIVATE is just a non-usable proxy, like a swap entry, for where the real data is sitting. Jason