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 2D9FFC369AB for ; Thu, 24 Apr 2025 12:07:08 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 3FB6C6B00AE; Thu, 24 Apr 2025 08:07:06 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 3A92A6B00B0; Thu, 24 Apr 2025 08:07:06 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 24A6D6B00B1; Thu, 24 Apr 2025 08:07:06 -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 04C746B00AE for ; Thu, 24 Apr 2025 08:07:05 -0400 (EDT) Received: from smtpin17.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay07.hostedemail.com (Postfix) with ESMTP id 08A63161EC7 for ; Thu, 24 Apr 2025 12:07:07 +0000 (UTC) X-FDA: 83368811694.17.92AD395 Received: from mail-qv1-f41.google.com (mail-qv1-f41.google.com [209.85.219.41]) by imf29.hostedemail.com (Postfix) with ESMTP id 2739812000D for ; Thu, 24 Apr 2025 12:07:04 +0000 (UTC) Authentication-Results: imf29.hostedemail.com; dkim=pass header.d=ziepe.ca header.s=google header.b=iXqWdXar; dmarc=none; spf=pass (imf29.hostedemail.com: domain of jgg@ziepe.ca designates 209.85.219.41 as permitted sender) smtp.mailfrom=jgg@ziepe.ca ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1745496425; a=rsa-sha256; cv=none; b=z6lHojsruBov68piM871NLohmfmRGejiH50Paqt8v+kDZr/JXoBY9+XjpgB4CRN2wr6XiS tExOeym1AEP21lRYXpcH7S4z96h6zteP8aFEKe9clIwSO1wfUmv9INaIGShKsFpXUBZC1/ uyR6Sh3xKuXsD4i6SzRKyowNV4USiIk= ARC-Authentication-Results: i=1; imf29.hostedemail.com; dkim=pass header.d=ziepe.ca header.s=google header.b=iXqWdXar; dmarc=none; spf=pass (imf29.hostedemail.com: domain of jgg@ziepe.ca designates 209.85.219.41 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=1745496425; 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=R6hXpeFv17Go1fQZO2l00KUq0djvqX4j0LhOJE1RpTI=; b=BvsVroVikIP8G5KHz3wstdm/udYsYoIZZO3LsjPf2w73hY1sG3q4ISC9DZUCQDUDV2nF9P THBgmQ0Efumk+Q3kBWBGmFkg4jILrU2/T2p3AB2qlVXRr8RPmvy+G3EO3/hJ0SOFgssDqb VgkAymFhy/Cwv6rzGCfawjwmjoaZY/Q= Received: by mail-qv1-f41.google.com with SMTP id 6a1803df08f44-6ecfa716ec1so10081796d6.2 for ; Thu, 24 Apr 2025 05:07:04 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ziepe.ca; s=google; t=1745496424; x=1746101224; 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=R6hXpeFv17Go1fQZO2l00KUq0djvqX4j0LhOJE1RpTI=; b=iXqWdXarS/F2JQTMFJka+xM2/AVlI3qoWSHB4js6g58ibPt+2l945CIC+wPeScct7F bG8AzPYhwFM62DWM8EiENHDyF1YmmX9WCZp9vNGFGxdFK/IC7P4iG02ihnaAomjeCFee xPbufZA1szEThpHcdlwVhdcfVZfXjKHMI6pZFXasxdmAC9NzHxYBZ4lHYLQ2G6e5p/cL xJRetoX0OKe+N32h430inBTy59cOmSz35B7vXSDCXLnNUFpjsK9BwV3sC4qMIlaoHbKS SL/R0H6lAB5K3tA26pjyHSJ6pwXD5u/QFq9N7AD5FxvlbBvDdes5bR67CtgGzaMYZaHD sspg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1745496424; x=1746101224; 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=R6hXpeFv17Go1fQZO2l00KUq0djvqX4j0LhOJE1RpTI=; b=vuaqBILJiyKM1AoPddZ2QlNEiACMAdC/z452pha/tZL2WOw520pjLEHiS5Gztr/F9k DfW7yi74Jkhgt1uKQidBSqhA4slHW8eSQpH7/e/h8jQsDZo9xhWkCTsS6+2kGR1jf+Su D//jcQgfm70AGCuPi40qZH0J/envAo7+yvmcZ37UXfK1Gn6isL2k6NdJt0RqfdC9ZC2Y BOlDZneqSI4LjiB+af6wiQYdt6zWVLazBdbG+lBziQuCInMibLn9QqGh3tYI6VNw86en aP9hCpnPOH3Nivry1Ezb9t/g5sPt/pE+fHps9ektKAMAI2PRUWcqQ2U4jTECHDkE17RU FfAA== X-Forwarded-Encrypted: i=1; AJvYcCVZidK3AGqeHEeGVjxCL3+WfLulo1jv3cxJmZtJ8ArdrPoRvOYBleYqbXDwQUp8iDnXsScM5c4znQ==@kvack.org X-Gm-Message-State: AOJu0Yw1uJWL4fxn8DXRcZHteKVtwHFaRN1Ao4IeEILaW8HPt/1yEryV oBB/VmH+cUjfYruMuHhrzRpXmbWNyaSzuiVSt/ga0hrvtm0Z1dj6xCmCcx+lDS4= X-Gm-Gg: ASbGncsL/ILqNdsvVZsZkGPeTEoTd1XzH9jo6dunzaRXXHJKYyybhYdT994PUl/AY5/ E222+JploKD/nLRhlQaihfpXmSuMp4Rj3rE9nhhLSp7zZ2EoAVk4VrZKeP2xPTHYZwwLcnUWW1M b2r5+nPIVA8rYHIayvMu8n7TJg/SalJnG+/jk+XyeZpYRRNUzOylrQgFxMqSuNtLuPi9leaGeDn yPp8QhIsQbJ3RkqULzspFEpl8s8JaOc/td0smQxZ4eqm5L3uKHkNDeWsEvZ9h1B6nL0YD0NKAn1 YD/kFarskGq5hbGPhBR+9xgvmahYzDCgd0ALB9LD/vqsZCEh1yCy1XB5rj6FSAOhyEsxxo1cPoC aNI2WsshPgcEsj8BDuZQ= X-Google-Smtp-Source: AGHT+IHFhKOxhA0o2WRAa+GJNDxvcX1iIXnEJwZa2QwM9rbiZA2VutZzFm82YY72gKJwza388e3Bog== X-Received: by 2002:a05:6214:518c:b0:6e6:65a6:79a4 with SMTP id 6a1803df08f44-6f4bfc85415mr35084026d6.44.1745496424198; Thu, 24 Apr 2025 05:07:04 -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 6a1803df08f44-6f4c0aae668sm8460536d6.113.2025.04.24.05.07.03 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 24 Apr 2025 05:07:03 -0700 (PDT) Received: from jgg by wakko with local (Exim 4.97) (envelope-from ) id 1u7vM7-00000007TSP-0PWP; Thu, 24 Apr 2025 09:07:03 -0300 Date: Thu, 24 Apr 2025 09:07:03 -0300 From: Jason Gunthorpe To: Leon Romanovsky Cc: Christoph Hellwig , Mika =?utf-8?B?UGVudHRpbMOk?= , Marek Szyprowski , Jens Axboe , Keith Busch , 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: <20250424120703.GY1213339@ziepe.ca> References: <0a7c1e06269eee12ff8912fe0da4b7692081fcde.1745394536.git.leon@kernel.org> <7185c055-fc9e-4510-a9bf-6245673f2f92@redhat.com> <20250423181706.GT1213339@ziepe.ca> <36891b0e-d5fa-4cf8-a181-599a20af1da3@redhat.com> <20250423233335.GW1213339@ziepe.ca> <20250424080744.GP48485@unreal> <20250424081101.GA22989@lst.de> <20250424084626.GQ48485@unreal> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20250424084626.GQ48485@unreal> X-Rspam-User: X-Rspamd-Queue-Id: 2739812000D X-Rspamd-Server: rspam04 X-Stat-Signature: basno8t9iwtwf9qudrqsrrqz15bk7ak4 X-HE-Tag: 1745496424-930283 X-HE-Meta: U2FsdGVkX19z0MTx0jOk/yvC4hzvXIJ08vNy3/k1mC4XyGlqOhf/VRnw2ZQq6H84gk42Ke2eOIhL//L8jSk66N3/7S0y+hbIU3sxyAEXvgUmcS06IIbkoxXDB5uPNosguLB9RE8QnOSD27TIKewEaXq1g3knM6T60dTWQraRPgMLfPEACY1Ap1Kvu/1fp4PVDMTWy476DO+1UBWfzVtIeezIWlVduDHH1l0weic+sQjQNQD+y1YrGCdK4iEa+23JSpID6XLL92Hhyqy6iPNP8DEYdIus1PDso7BZ7I5HpqQ8aZY0kVJCVGn6wMwuZjdwYIWOrCgpqQFhzEHW7Uj4Ne0NGpaLm8IaOIQzpVfdyMx1DSUokRsjViZeqUhBd5YhaZzjyS00iCEnd6PIrZA0gT22nrZ/HsKmv0iWUQzDrsMYSBzLktkCieHCZZez7P9AZhssbE+PpUM/NwjEQb2La5ZXBC4MDrvpnj6okuPA5avr8FaUdksHqBiDgNpBS0fCHJzXlc5yteWOgA4vkXyxYSvVur2ixKA9JGBIAQfh4/L5XDBANFHer/Rc5xdXbIn4F5Qrc4AggcUoxjtbXT2rLBRocJShErJHJVSBIkAAPg8yjY2W9o9ch7cs0Ytyjjqgix7hjn5YEB45ZiOdle8saVR3Ns9II0W098hkzRsxkePq+fOOp8ffOFjoJ8/p9asxwXY3jAlh+gB7UeruoRnUB6Jy0xIVeMA74memijc90qeK1O5op+G6WwCQ6N5/TDS3P7xpRvsjIBae/ycqcMkfYSOZ2jw6gjtZD/zrd5jikfSxflGShqaO08/6SD/oNIN6YX9K54NeucZnKVaQ4TOP9ehUqhHYC7Pt4n64yMo0+J1tUux/rAxwWS6Xq2FNXZoKeaUmzYxcfKhVDbunzeiUbqKDGU4AbvLjZXkS2oP4XQlzrHia8LATRVkUewAV2jVd7alBizhNt5K3LMsduI4 W3JnPPOo rIDmfSdvknYd7BwsWxSI6Vn/gZ1DFvYETw3DGUgNHSpZPrqxrbchg3e/FHrBeRQFVA47fukD4u5nsQ61WbwtVYGwPJ70x1epZmT2dmIm4RfcfEbUWsmsHCDBjqRHppYMzfTGPxm09Xyy5bfzQGofdKUcFRIwE8O9dLBC3xeOYriyCgf9bae/Y0Xf4ewR3tXoIfjA8N69Hw803gwnnzyYmrLHhtdmP27crFPC98ovyLnSvOSx+S+NW0KsKGpKlktLVguoSE87z2S9b6wadFeEYQYMLaXEbcoydQFjr 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 Thu, Apr 24, 2025 at 11:46:26AM +0300, Leon Romanovsky wrote: > On Thu, Apr 24, 2025 at 10:11:01AM +0200, Christoph Hellwig wrote: > > On Thu, Apr 24, 2025 at 11:07:44AM +0300, Leon Romanovsky wrote: > > > > I see, so yes order occupies 5 bits [-4,-5,-6,-7,-8] and the > > > > DMA_MAPPED overlaps, it should be 9 not 7 because of the backwardness. > > > > > > Thanks for the fix. > > > > Maybe we can use the chance to make the scheme less fragile? i.e. > > put flags in the high bits and derive the first valid bit from the > > pfn order? > > It can be done too. This is what I got: Use genmask: enum hmm_pfn_flags { HMM_FLAGS_START = BITS_PER_LONG - PAGE_SHIFT, HMM_PFN_FLAGS = GENMASK(BITS_PER_LONG - 1, HMM_FLAGS_START), /* Output fields and flags */ HMM_PFN_VALID = 1UL << HMM_FLAGS_START + 0, HMM_PFN_WRITE = 1UL << HMM_FLAGS_START + 1, HMM_PFN_ERROR = 1UL << HMM_FLAGS_START + 2, HMM_PFN_ORDER_MASK = GENMASK(HMM_FLAGS_START + 7, HMM_FLAGS_START + 3), /* Input flags */ HMM_PFN_REQ_FAULT = HMM_PFN_VALID, HMM_PFN_REQ_WRITE = HMM_PFN_WRITE, }; Jason