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 8336DC369CB for ; Wed, 23 Apr 2025 18:17:11 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 3BA286B0008; Wed, 23 Apr 2025 14:17:10 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 341CF6B000A; Wed, 23 Apr 2025 14:17:10 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 1BBB86B000C; Wed, 23 Apr 2025 14:17:10 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0010.hostedemail.com [216.40.44.10]) by kanga.kvack.org (Postfix) with ESMTP id EBE996B0008 for ; Wed, 23 Apr 2025 14:17:09 -0400 (EDT) Received: from smtpin03.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay04.hostedemail.com (Postfix) with ESMTP id 441F21A1A94 for ; Wed, 23 Apr 2025 18:17:10 +0000 (UTC) X-FDA: 83366115420.03.F11CE03 Received: from mail-qt1-f181.google.com (mail-qt1-f181.google.com [209.85.160.181]) by imf29.hostedemail.com (Postfix) with ESMTP id 58DC412000F for ; Wed, 23 Apr 2025 18:17:08 +0000 (UTC) Authentication-Results: imf29.hostedemail.com; dkim=pass header.d=ziepe.ca header.s=google header.b=EUO3j8wI; dmarc=none; spf=pass (imf29.hostedemail.com: domain of jgg@ziepe.ca designates 209.85.160.181 as permitted sender) smtp.mailfrom=jgg@ziepe.ca ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1745432228; a=rsa-sha256; cv=none; b=YARs6RI7vIq0Bl3FYLfB5s0Kyp7f8cg1dL+XCeh1vvpV6sf9LEW12wtXwEY52/W7SMUN1Y WGy+mH1FELnFYygFM8qaBbj1F1NLT6owXw+egbZ05tROCs/AmyGqlMqr4xdjezEaSCqspB q2wkjuIIm5Kh3I3xH1pmnovIolV4xIw= ARC-Authentication-Results: i=1; imf29.hostedemail.com; dkim=pass header.d=ziepe.ca header.s=google header.b=EUO3j8wI; dmarc=none; spf=pass (imf29.hostedemail.com: domain of jgg@ziepe.ca designates 209.85.160.181 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=1745432228; 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=jJ8s1tHlAlZHZLBcym34Knli5JlhGSSEZ8s9pr2exho=; b=TUlWDrf2h3hpJy6IwxHFEB7gNlde4tnPgaQf5gIW3ogyOKacKnL0uglYtEtxfve+q02x3R g+KYQcwMVd5msJVIPsKi3PylswAsynX6RqBp8T9h4ojdqrx5xiVFKPtiRFqHeqGo+i8WEh dX8AupGzCOe1O9s0n+wD9jmbGWW8F98= Received: by mail-qt1-f181.google.com with SMTP id d75a77b69052e-476a1acf61eso1359731cf.1 for ; Wed, 23 Apr 2025 11:17:08 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ziepe.ca; s=google; t=1745432227; x=1746037027; darn=kvack.org; h=in-reply-to:content-transfer-encoding:content-disposition :mime-version:references:message-id:subject:cc:to:from:date:from:to :cc:subject:date:message-id:reply-to; bh=jJ8s1tHlAlZHZLBcym34Knli5JlhGSSEZ8s9pr2exho=; b=EUO3j8wIcBkDP+4BEIHMBhWzXGaeykhDnyPgpwh/2lMkxu9xU3Ym4Pz5X/V7lRzvH/ brQfDhbAA6s5Lb4Qn8MwgxbEotaNwMEhEfNX/UecXqA5OOMHpQZpsDK17Z7+DaHl1AeH g3TNWNnasI/Y7YiFNxUYnxcZPtYLdmxlJeHElSGNzyNY5ZPUCmh3DSZNrH5Rnqa9Xoh5 LZtANF3TWeMp84P8WDjhhxw+yaxwUs7N+Ynox5gmjUg2cZoozgaoPBq0M/W2m/5L73rb 67lQDp1FS/0CKd8OYt6A+pPMbwrvIK8oO/9W64WphpXIo2ytC9nPYQRduIW+A9iBdWQD 8a4g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1745432227; x=1746037027; h=in-reply-to:content-transfer-encoding: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=jJ8s1tHlAlZHZLBcym34Knli5JlhGSSEZ8s9pr2exho=; b=fxdC9yPp6VsDZ/bAmvCPCH74QKk8kBiyjhWR9FUlJ2hEe8Cbvqt5KjVs2aSqWJCzFT dncbSPa4Nhq7RXmo7Q/nNHcIhKPRTkdLlyPm5KYh7wSg3D3cXPH6NzlJzfSoVp9ub461 Cedx8/giTrAbLPPWakuGf44kvmw8TjcA8lQxfc6xn1C0DFSPOK+YeNboToNlriu80yrW 3ZQYOt1huqEGxBfV3rYqBG0pKDJ+ICZ9R89etJBIkheEMgIKtWF3NdivJ9T/kUKzIyfR 3wJYR3hEiyNjKh0CURZpb3xfJq5ywD/EYhaPvvtiN75bu+mMaQcomY0wzkGSmv3Bepn4 4MRA== X-Forwarded-Encrypted: i=1; AJvYcCXfBBYMlwTtJr1pjQB3a8fa51GLv9hwTKTR+AG1jtHjKBToPIGq6PDVpMfI2nC8iGjq+8keCBCWwA==@kvack.org X-Gm-Message-State: AOJu0YwtY4N9umCZclAHPq/DDmVjOZYvl7sBEczRD7qovWHKwXjBGj2g Ra0yi5IN7LsVsNNs8+3tFO/3I3lTyy99BVnFDbEXwQGo9XhPACyLR2kC5C5bJeU= X-Gm-Gg: ASbGncuCIo2x/CyikPesSZeHM4GX3Z2l/k/jNFfcQgQ+MUyhNPLDtwB9BmNr+FQFXBs eOL+DY4Ab200OFJY8APt7Z93upcloOn1nxyNyCmWVUKxJKlgRbEeopqYjp8ggV4BxEIybhAH51p w6oqxgswEj5qlCdquauesDBRljhQtR/7ji4+EHFQyWD3NW6jsDbGdkYIxocQfIF+cMuH5JySSbx rmTcOQY+trmsnX5rYpIqhwEEfli3yrt9rJlNRxgcWWzBYDAnJzBl2boFEZm7/TWb6tvSnXDSzN5 t2QV3R8fcf4eCG+VvRZGIBE3fifVurXapC+RAflXPPtJzrhcYZe8cfhg44O+FOB+qaxrQIsBUZf o4PE3yS1E2ceiu3Is6+o= X-Google-Smtp-Source: AGHT+IECPlcFTYHnkwAKKk3B5MzEp2J+Q23qmmOis8VDE/Xdu9ZIh9LzQbjBc0+xoVESECxntDW6lg== X-Received: by 2002:a05:622a:d4:b0:476:95a2:64a1 with SMTP id d75a77b69052e-47e76175c16mr4073601cf.17.1745432227237; Wed, 23 Apr 2025 11:17:07 -0700 (PDT) Received: from ziepe.ca (hlfxns017vw-142-167-219-86.dhcp-dynamic.fibreop.ns.bellaliant.net. [142.167.219.86]) by smtp.gmail.com with ESMTPSA id d75a77b69052e-47ae9c16dd2sm70921841cf.14.2025.04.23.11.17.06 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 23 Apr 2025 11:17:06 -0700 (PDT) Received: from jgg by wakko with local (Exim 4.97) (envelope-from ) id 1u7eeg-00000007Lzi-1CSb; Wed, 23 Apr 2025 15:17:06 -0300 Date: Wed, 23 Apr 2025 15:17:06 -0300 From: Jason Gunthorpe To: Mika =?utf-8?B?UGVudHRpbMOk?= Cc: Leon Romanovsky , Marek Szyprowski , Jens Axboe , Christoph Hellwig , Keith Busch , Leon Romanovsky , Jake Edge , Jonathan Corbet , Zhu Yanjun , Robin Murphy , Joerg Roedel , Will Deacon , Sagi Grimberg , Bjorn Helgaas , Logan Gunthorpe , Yishai Hadas , Shameer Kolothum , Kevin Tian , Alex Williamson , =?utf-8?B?SsOpcsO0bWU=?= Glisse , Andrew Morton , linux-doc@vger.kernel.org, linux-kernel@vger.kernel.org, linux-block@vger.kernel.org, linux-rdma@vger.kernel.org, iommu@lists.linux.dev, linux-nvme@lists.infradead.org, linux-pci@vger.kernel.org, kvm@vger.kernel.org, linux-mm@kvack.org, Niklas Schnelle , Chuck Lever , Luis Chamberlain , Matthew Wilcox , Dan Williams , Kanchan Joshi , Chaitanya Kulkarni Subject: Re: [PATCH v9 10/24] mm/hmm: let users to tag specific PFN with DMA mapped bit Message-ID: <20250423181706.GT1213339@ziepe.ca> References: <0a7c1e06269eee12ff8912fe0da4b7692081fcde.1745394536.git.leon@kernel.org> <7185c055-fc9e-4510-a9bf-6245673f2f92@redhat.com> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <7185c055-fc9e-4510-a9bf-6245673f2f92@redhat.com> X-Rspamd-Server: rspam10 X-Rspamd-Queue-Id: 58DC412000F X-Stat-Signature: c8mr9p3135j9tf4jkawzfiurqeg3mwtt X-Rspam-User: X-HE-Tag: 1745432228-437763 X-HE-Meta: U2FsdGVkX18tUGty/FcnnRmTJA+TJHCbBKmorXlk15yMvHHepMEEmaJPV1WnFrO5v4OhIN3u87KTxwXIyv5IvZf7MYFY5klBBF3WDX3ywruo+GSmnKiMA3qvXIsVEI3jAVLTA0XTWihBzDcvSnEtw+r6dKP82YZiBUkQDJ9thMMJaNvAVp9oiFF9zTulWHOysB+/YmntbvZ5NksXdiQv7q7xTWSAY4GZ7GEFbl/j9zeS38/gIDca2VTVdRbSUT30yi56x+MGhlxFvkkRoh8be85ORDS2xP376wmRWjdDALWzNtSI9WlzUjMsB6g0hLATaYf+jXcB9FTgVaSLq/XXnLPlQg7k7fGwjPt4Z3OH4aYHM3TC5aR5mtp6MHcWTpPLMxVTE44ac3zeHuivCxk8u0V4ss3gcNPoGXrt06IUAp2tJQNa9ADCAWgOoTHaZ0drfU7OTzhFtuC874y1LCwVt73LE9ZKCjv0QlXtZlUwyORW4doLosl0EzPjREAVE+8J/L2vFOnckBEJNBCH4Q4hYlLFBREwqAwy9I7ZR7RYqlARESNXRXMfIZhjB+AQOeQ23LXvZtqtaJslCsR+j48EDWrgerk5CsqX43mkYvwGvLBnJxBxtM+8EP89suTSOtcAgWO0NXBJtTZwcqEV5ZOUhF/4rgHhykCTakSU6mbgFrUVlnBv3/cGnRnZR61Em/A0E7MrQo4xDBWEf1UVkI38J3WELkJnkkrjuYgIzg9nvbJq3pT8AJT12BOiD4QPWKWI4vAw8zRO3W7S2/nBmsDmLUCff2fHd4owlo5Zz0LfyJNHkTKy2rB8/IHJC4lEKIH4HZGXG8EdZUABIRZStLDs8BMl2Wt2g3ly6+tEaM5Z+OvmfpLBAjnmZJg8lBuRoqU0WDxwTEn80cyoRWis3jBSH45WCIaC4mgqKyFNWUKgHWhf9Ge1rYvdvkMyl3cEhTWP73ys2My7N2UNZcUz1fq HeMS+kwd R8HkjyzgKZC4AyEtO0JBIPtrg8CkjSJUNQG9bXuj60fuB40+LD6bAgSq4DClKlo+gjFZlm78jKr2AljK8kfcaFgOPUL1CQrbXiRUFO6cxrJH9cFefGyZCNb3+kWl5Ftubjr5WKXU5jWMLCvAuB+u0yD0zGsA14hcaxeeb/RNq5Ly9O5UHX/IJXNeSc5A8nftXmdyY4wQttrnvNY5YIEwVTPL+nYrvHV9ZEgWIcAdAr0WEECOr4I9p3FIn35J1VL4zwUzajoEq0k2W7RZ/MibCoGBXCeWEFNQYVDjRlBAOKJwrPFq2FNVvMvD8Gw== 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 Wed, Apr 23, 2025 at 08:54:05PM +0300, Mika Penttilä wrote: > > @@ -36,6 +38,13 @@ enum hmm_pfn_flags { > > HMM_PFN_VALID = 1UL << (BITS_PER_LONG - 1), > > HMM_PFN_WRITE = 1UL << (BITS_PER_LONG - 2), > > HMM_PFN_ERROR = 1UL << (BITS_PER_LONG - 3), > > + > > + /* > > + * Sticky flags, carried from input to output, > > + * don't forget to update HMM_PFN_INOUT_FLAGS > > + */ > > + HMM_PFN_DMA_MAPPED = 1UL << (BITS_PER_LONG - 7), > > + > > How is this playing together with the mapped order usage? Order shift starts at bit 8, DMA_MAPPED is at bit 7 The pfn array is linear and simply indexed. The order is intended for page table like HW to be able to build larger entries from the hmm data without having to scan for contiguity. Even if order is present the entry is still replicated across all the pfns that are inside the order. At least this series should replicate the dma_mapped flag as well as it doesn't pay attention to order. I suspect a page table implementation may need to make some small changes. Indeed with guarenteed contiguous IOVA there may be a significant optimization available to have the HW page table cover all the contiguous present pages in the iommu, which would be a higher order than the pages themselves. However this would require being able to punch non-present holes into contiguous mappings... Jason