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 3E7ABC71157 for ; Tue, 17 Jun 2025 20:01:26 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id D15A56B0088; Tue, 17 Jun 2025 16:01:25 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id CC6CF6B009B; Tue, 17 Jun 2025 16:01:25 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id BDD3E6B009D; Tue, 17 Jun 2025 16:01:25 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0011.hostedemail.com [216.40.44.11]) by kanga.kvack.org (Postfix) with ESMTP id AD61A6B0088 for ; Tue, 17 Jun 2025 16:01:25 -0400 (EDT) Received: from smtpin04.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay01.hostedemail.com (Postfix) with ESMTP id 5D8991D719B for ; Tue, 17 Jun 2025 20:01:25 +0000 (UTC) X-FDA: 83565962130.04.E0F25D2 Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.129.124]) by imf21.hostedemail.com (Postfix) with ESMTP id E339B1C0012 for ; Tue, 17 Jun 2025 20:01:22 +0000 (UTC) Authentication-Results: imf21.hostedemail.com; dkim=pass header.d=redhat.com header.s=mimecast20190719 header.b=Izo9Lf2a; dmarc=pass (policy=quarantine) header.from=redhat.com; spf=pass (imf21.hostedemail.com: domain of peterx@redhat.com designates 170.10.129.124 as permitted sender) smtp.mailfrom=peterx@redhat.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1750190483; a=rsa-sha256; cv=none; b=ddqp5Irnwx40AzGEOHXQKyjU1ivzrtXvKRBL2cnoxUUMtHKDEIHt/WZTzmahuaEUq+zrcT KBpXyTeJ7DDhtkK3lu8WK07eF2Jxks0yfyVoF/R1hSPR04k/seEXHHibT2eiqHBqOfjZOb kxRKWenHD5rvVaVxcgzMsYlzA0l2kuQ= ARC-Authentication-Results: i=1; imf21.hostedemail.com; dkim=pass header.d=redhat.com header.s=mimecast20190719 header.b=Izo9Lf2a; dmarc=pass (policy=quarantine) header.from=redhat.com; spf=pass (imf21.hostedemail.com: domain of peterx@redhat.com designates 170.10.129.124 as permitted sender) smtp.mailfrom=peterx@redhat.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1750190483; 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=0Dm/YTY2gnD+c/gsISARFM2WYB8H4Eho9ZAM8VM6ubM=; b=LTF0NR0II9gzf++K3a1AM/aOemjxHsrchEA0k2zTwPNLM9vY5dKBaYyqu1lJlvVsn1MMKL W8QJtaY13FlScRKP/SBagl/+V7cSa5kh0qZzSqwzm20nGNXFTPMzbW7ahFpcgUQYoBOmv9 c1HpfrrJNM1vkkz4oJ5lECFyGbeQUUE= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1750190482; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=0Dm/YTY2gnD+c/gsISARFM2WYB8H4Eho9ZAM8VM6ubM=; b=Izo9Lf2aRuwAaoeDYJtN9dVUxN+ws7MxI7mGIB72hux1TJ7+S3pOUuSdTVM9SnFcikN298 2A/b3FZdrEs5+17WXK1BmA/3S4sLp/pw3Vagmz5kvn1QL2PiX7PMpT4HUvtKcnKDZx2zaa +c98ThmahiVslaKF/Nf1nVWWp2aWAyA= Received: from mail-pj1-f70.google.com (mail-pj1-f70.google.com [209.85.216.70]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-515-fegqAM3bN2u9v9Nh62xOzw-1; Tue, 17 Jun 2025 16:01:18 -0400 X-MC-Unique: fegqAM3bN2u9v9Nh62xOzw-1 X-Mimecast-MFC-AGG-ID: fegqAM3bN2u9v9Nh62xOzw_1750190478 Received: by mail-pj1-f70.google.com with SMTP id 98e67ed59e1d1-3138f5e8ff5so5912702a91.3 for ; Tue, 17 Jun 2025 13:01:18 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1750190477; x=1750795277; 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=0Dm/YTY2gnD+c/gsISARFM2WYB8H4Eho9ZAM8VM6ubM=; b=ZdLZjimxv1GjWxdqTU3XbCscdnlCdIRVdzVpgC7J/uFqZs3aocRBu2T/9wRnzqw6LR 1LYGQEq7L7G6MPOwduLSVT9oDqMXjIdaLDWRGsykpsHpQuybiYC7oriI9b+ALWYQfGRQ Ry2SnGU/FXFVvFyAsz7Rxqlq7omzopQg8rcfCz8LzincVmsVwpuoyQHqTT47h0a9fLwC 4uyOy+7WGi3z+2nuBaAAIvvSowZxeMZ0fXv2W7+rIuUXRdL3mghEY02lU6uFEj0PlpU0 mppbe2NinP/gslo5V5BmtRdu9Y0O011BVjGKJ8EAANZiv9Vv63Qe5aBeNsAEdw2fhVc8 VlYQ== X-Forwarded-Encrypted: i=1; AJvYcCVzT81Do6gz8K6CWgwWpgPPDiY21/SJOZ2LPIS2uoj4J1Oz5jmpY+DKIpyXdvXbPd36+ijYvcoPYQ==@kvack.org X-Gm-Message-State: AOJu0YySvNDzQ8i1crZxhmCSJd/7YKZk0z5PgeJF7UlfyARI2J3ljbj/ TLpzGSe2SFsZhcHZgqZt4ljyvTfY564G0P2oWMI97DaskMd32WuIx5Gqb61F0bbAVSH/iuWLrq8 PuxadcBlckelaecVSSsrdbB4JnpR30uo9FuVt/6LxqSnNInLgX4ua X-Gm-Gg: ASbGncvXYkPioqk9iaaIi/qB6h9+WFZIQujK1zjtM7KJgpXlO1sOMo+dD8Tl34+rpXF pIcf3Bd5lfzI/JYB9ys5vt5GmAkTm6lTaakoECQc7XqKta6P6fGzN1gG2MoMf7p1bVyLA0InPpd J8CPXCANF2BYkPAZZOaTGwytOlelSpBwtynitTtQSlUC9yEfSZkD+iDqaIbYRqd9yb9GZdsO75L BVZ3RnSol2bjP3R51KJJJeenh2ouIwym997fj9JU3ikfxEKWuyVHA3uy0Ren74uKwTa1it9SbSW VX1PN3R944V8Pg== X-Received: by 2002:a17:90b:39cb:b0:312:ec:412f with SMTP id 98e67ed59e1d1-313f1cc6475mr24162739a91.14.1750190477481; Tue, 17 Jun 2025 13:01:17 -0700 (PDT) X-Google-Smtp-Source: AGHT+IE9mPY0K5+r6ESf4SrogrsmJ9SaqRUqc0sTfpN2AxqMlGxDMB0nD5J8Sn7aF0/Lb+05TfOe/g== X-Received: by 2002:a17:90b:39cb:b0:312:ec:412f with SMTP id 98e67ed59e1d1-313f1cc6475mr24162674a91.14.1750190477030; Tue, 17 Jun 2025 13:01:17 -0700 (PDT) Received: from x1.local ([85.131.185.92]) by smtp.gmail.com with ESMTPSA id 98e67ed59e1d1-3142874a4f3sm2156795a91.22.2025.06.17.13.01.14 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 17 Jun 2025 13:01:16 -0700 (PDT) Date: Tue, 17 Jun 2025 16:01:11 -0400 From: Peter Xu To: Jason Gunthorpe Cc: kernel test robot , linux-kernel@vger.kernel.org, linux-mm@kvack.org, kvm@vger.kernel.org, oe-kbuild-all@lists.linux.dev, Andrew Morton , Alex Williamson , Zi Yan , Alex Mastro , David Hildenbrand , Nico Pache Subject: Re: [PATCH 4/5] vfio: Introduce vfio_device_ops.get_unmapped_area hook Message-ID: References: <20250613134111.469884-5-peterx@redhat.com> <202506142215.koMEU2rT-lkp@intel.com> <20250617154157.GY1174925@nvidia.com> <20250617194621.GA1575786@nvidia.com> MIME-Version: 1.0 In-Reply-To: <20250617194621.GA1575786@nvidia.com> X-Mimecast-Spam-Score: 0 X-Mimecast-MFC-PROC-ID: eAopPRw0PJcr9dKmi3HWzuLFirk3aujuQD9nP0qn10M_1750190478 X-Mimecast-Originator: redhat.com Content-Type: text/plain; charset=utf-8 Content-Disposition: inline X-Rspamd-Server: rspam01 X-Rspamd-Queue-Id: E339B1C0012 X-Stat-Signature: jkdzyos4nuyuy4u9dd31x7c7ans35ea8 X-Rspam-User: X-HE-Tag: 1750190482-75367 X-HE-Meta: U2FsdGVkX1+fUjdIGkB4SNJVM3U5acNkKTCL2lfsXz575sgBHMgDXaZMnEJIdhF3sZdIXdc+1UNzXx9mF/HtSLCTTrg3SdjA+BZKqU7qIvJOyrVvVfQRy2pMPtj2EzJyShc7ESCek5aQM7h31v0IFle0cJQg/m3cGNJn0vnGCWbfKmChCrJzfac/9sE6ieyT5aLlTgyW07vtQf179txBNAAB3QDJzOnzRMozEQUEv+VdPRl5U+59rdoHAh4IMlZa00rMTjWRpgLV1vwpMumJrOpya1fJpXU2dnsPMcRYOSIKjs+u6ETUYLzEqruTdUgNlYBwxYPR7/33CBYrZyhHnyvUTBB1W1ZB1Cm2DnOnkajtTRD0mBhxBlG2so+SDGceRWwN83pIFBxjImXDrp13cpR5vMUl+3D2nQjF3mFgtXqtzlJKGlHSK5l2GtW9OKEbefrIBDCH/hqaEZ4E10NKvmTiGGI12Sct0itE6eJhGuB/oWUcYgRG9J/HpaREbU+pmIFpleV330vvqL5j1p+VZveg9+dn1exDC4nZpvLcKBFZPzs4rxlCOtK57wZMDE5WXY+LcFa4JAsdkTCR9fn5IEcCtcfcueLUIptNeKoVkmQ9GHzR13KtZPftkK0FeQlJU7fMeBlyo/i8MMiAS4JYRbj/fXK4nQwtKmCaUdllFbufzHAb2grs1YZsFnOgk5DqhPAh69wCImar2Rdgt4sJPMQmPa/Uq/zn2kGHYHcVT0l1esb9FsSp6gDRgtAOTKXnsoi4JtV251aY+0XqAR1WlS6j6qNHcB4b9o4v7prx1kJbwx+N89nXoJtk3ar4Eu/i4RtcLh/S2nxofOVv3PGnR/CYlkbIQIIlKaLuneZZk4stFCLmyCrP+QJfWAFzROD4FqKHNNQabUPt68qHD998SNu10R1qJo+Y4kYD4H3eKawra+7/3oFjDb0IO3jZa62IOtdSNWTM/4C00wvLkAN FvSutHgW hI78ZsVI7OSwABN1VFFdxHcDX7ZLI85AzE0e5ASJAyB1ldg4DFi3tzeCdNFtFEgcR9rKrlRq/M3jNh0EtW9OTYnpbhmwSPzqiV3hghzqImZT2/UA54V+5cZFk9TWwVVPEiHa82N140bYOMUbDCraXbv26gc9eUqhT560Ndd7f1N0ZrTRAdvPA2cl2GwsIY0mV/GdT084nfoNkaHwpthtkoVly3CG2X7JtBhJ7jOGzGhHRUchoEzmlbPriavHsHgm4Sts8jWh4rsQEIJkbxIZh4QL7qPwTxH+UMoreIPEr88fxa4ukjmQl5iUcQ8xE53QLsVTC+QdPD5QiSlru8cT8AdC1T9sSCOGaNHmrNBjWmeTAa6AXKwgwqDBg5halmCg8j7AQHYUmTN2ad6U= 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 Tue, Jun 17, 2025 at 04:46:21PM -0300, Jason Gunthorpe wrote: > > I just noticed this is unfortunate and special; I yet don't see a way to > > avoid the fallback here. > > > > Note that this is the vfio_device's fallback, even if the new helper > > (whatever we name it..) could do fallback internally, vfio_device still > > would need to be accessible to mm_get_unmapped_area() to make this config > > build pass. > > I don't understand this remark? > > get_unmapped_area is not conditional on CONFIG_ARCH_SUPPORTS_HUGE_PFNMAP? > > Some new mm_get_unmapped_area_aligned() should not be conditional on > CONFIG_ARCH_SUPPORTS_HUGE_PFNMAP? (This is Lorenzo's and Liam's remark) Yes, this will be addressed. > > So what is VFIO doing that requires CONFIG_ARCH_SUPPORTS_HUGE_PFNMAP? It's the fallback part for vfio device, not vfio_pci device. vfio_pci device doesn't need this special treatment after moving to the new helper because that hides everything. vfio_device still needs it. So, we have two ops that need to be touched to support this: vfio_device_fops vfio_pci_ops For the 1st one's vfio_device_fops.get_unmapped_area(), it'll need its own fallback which must be mm_get_unmapped_area() to keep the old behavior, and that was defined only if CONFIG_MMU. IOW, if one day file_operations.get_unmapped_area() would allow some other retval to be able to fallback to the default (mm_get_unmapped_area()), then we don't need this special ifdef. But now it's not ready for that.. -- Peter Xu