[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH v2 11/18] AMD/IOMMU: return old PTE from {set,clear}_iommu_pte_present()


  • To: Jan Beulich <jbeulich@xxxxxxxx>
  • From: Roger Pau Monné <roger.pau@xxxxxxxxxx>
  • Date: Fri, 10 Dec 2021 14:53:38 +0100
  • Arc-authentication-results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none
  • Arc-message-signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=cKFk9O7qIhJQjZvK2iwmn2evIFBeA8AxkEvFqmx7VMs=; b=R14PO487Ao8zzGyt+wEBeUZ9PA0F+SM4kWU/sjg2v3UmUj05C4YQjSkgTPSMmJB2twRVWbhu1/LKW5iOAyDoRofE6b1iDaLUnTQgDmGEVSEolIOH73LswqqnRG6s7QaBQL7OGtdF/PNpFhzyBg2mCJWUtJxbrdUA2V9Tb9x0D4S+GwAdDb3mKhDRSivZ3a/7tcEJI+O10DaFV3fL8mvhT14gs8S1woKPlWEkoIWqywaY6LPpqjz54VcDlq1EBV6YguUI5xOqmpp0kdJNfb8uMKXi3OGtPb5/FoH8yRcJUiTtGy0meVmvh0i9IXE9DMqvxWTSv84j9LAGHMqYyKwnJg==
  • Arc-seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=dnwqbyW2+PR2z2y7CTZjQ/Mg6rjCGFmHtnk0h9vkd77GZvdbPpQGQnMY4jj7CccuirUCQhESXu44VfRi2H84+5wHxGs/KYpLjgOTDPVaMtIkMq3kuRu950TnNtGwhwKCECA6P4dJFlCfxtFdgg7zDm+agMzj1lv4C5BMUpV3DgJ9ok9SrrXjiSwhSZyi3DLk2Y/9N7FFh9PXdAyG/nvUAXlE+iP8UuGmExpJ/MxfI1LcJ1hxGG35C+Yt/jAjVB7hCcJZsW2ZHi5b3eiUV/sht7WNdTnzRQJ7VTyMOn6HZrmDdqVIZHuXtfekIq10la2KH/r3jc6RMYNMG785cU7Wbg==
  • Authentication-results: esa5.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
  • Cc: "xen-devel@xxxxxxxxxxxxxxxxxxxx" <xen-devel@xxxxxxxxxxxxxxxxxxxx>, Andrew Cooper <andrew.cooper3@xxxxxxxxxx>, Paul Durrant <paul@xxxxxxx>
  • Delivery-date: Fri, 10 Dec 2021 13:53:58 +0000
  • Ironport-data: A9a23:JwGGoa9mDH51O9aWPsviDrUDXnmTJUtcMsCJ2f8bNWPcYEJGY0x3m zRKWTjQbKreZ2v3KtEnOYzl9kkA6sPWnIVhHQQ9pXw8E34SpcT7XtnIdU2Y0wF+jyHgoOCLy +1EN7Es+ehtFie0Si9AttENlFEkvU2ybuOU5NXsZ2YhFWeIdA970Ug6wrRg2tYx6TSEK1jlV e3a8pW31GCNg1aYAkpMg05UgEoy1BhakGpwUm0WPZinjneH/5UmJMt3yZWKB2n5WuFp8tuSH I4v+l0bElTxpH/BAvv9+lryn9ZjrrT6ZWBigVIOM0Sub4QrSoXfHc/XOdJFAXq7hQllkPhY6 /xn74WJSzwVO6DimPxHCSNBSA9xaPguFL/veRBTsOSWxkzCNXDt3+9vHAc9OohwFuRfWD8Us 6ZCcXZUM07F17neLLGTE4GAguw5K8bmJsUHs2xIxjDFF/c2B5vERs0m4PcFjW1s3JETTZ4yY eJAZzRtcxX7eiZWFW4SMZwRsMeVniPwJmgwRFW9+vNsvjm7IBZK+KDkLd79atGMA8JPkS6wt m/Aumj0HBweHNie0iaetGKhgPfVmiH2U55UE6e3ntZoilCOwm0YCDUNSEC25/K+jyaDt8l3c hJOvHB09O5rqRLtHoKVswCETGCslz01cYBJKu8B1ASA5KrMuVyjHzMqQWsUADA5j/MeSTsv3 16PutrmAz1zrbGYIU6gGqeoQSCaYnZMczJbDcMQZU5cuoS4/tlv5v7aZos7SMaIYsvJ9SYcK txghAw3nP0tgMECzM1XFniX0mv39vAlouPYjzg7v15JDCslNOZJhKTysDA3CMqsyq7DFjFtW 1BexKCjABgmV83lqcB0aLxl8EuVz/iEKibAplVkAoMs8T+gk1b6I9sBuG4jeBkxY5pcEdMMX KM1kVkJjHO0FCH1BZKbnqrrU5h6pUQePYqNug/ogipmPcEqKV7vENBGbk+MxWH9+HXAYolkU ap3hf2EVC5AYYw+lWLeb75EjdcDm3BvrUuOFMuT50n2jtKjiIu9FO5t3K2mNbtisstpYWz9r r5iCid940kFDbClPHCIqdV7wJJjBSFTOK0aYvd/L4arCgFnBHsgG7nWx7YgcJZihKNbiqHD+ XTVZ6OS4AOXaaTvJVrYZ3Z9RqnoWJoj/3s3MTZ1ZQSj2mQ5YJbp56AaLsNlcb4i/e1l7Ph1U /haJJnQXqUREmzKq2YHcJ3wjI1+bxD31wiACDWoPWokdJl6Sg2XptK9Jlnz9DMDBzacvNclp +HyzRvSRJcOHlwwDMvfZP+14Um2uHwRxLB7U0fSe4EBc0Tw6ol6bSf2i6Zvcc0LLBzCwBqc1 hqXXkhE9bWc/ddt/YCQ166eroqvH+9vJWZgHjHWveSsKC3X3mu/2oscAuyGSi/QCTHv86K4a OQLk/ylaK8bnExHupZXGqpwyf5s/MPmorJXw1g2HHjPaFj3WLpsLmPfgJtKv6xJgLRYpRG3S gSE/dwDYeeFP8bsEVgwIgs5b7vciaFIy2eKtfllcl/n4CJX/aacVRQANhaBvyVRMb9pPd532 uwmosMXt1SyhxdC3gxqVcyIG7Bg9kA9bpg=
  • Ironport-hdrordr: A9a23:tCWjiK22TQpZtjZ7H/rTJAqjBShyeYIsimQD101hICG9Lfb2qy n+ppgmPEHP5Qr5OEtApTiBUJPwJk800aQFm7X5Wo3SITUO2VHYV72KiLGN/9SOIVydygcw79 YET0E6MqyNMbEYt7eK3ODbKadY/DDvysnB7o2/vhQdPT2CKZsQlzuRYjzrbHGeLzM2Y6bReq Dsgvau8FGbCAsqh4mAdzM4dtmGg+eOuIPtYBYACRJiwA6SjQmw4Lq/NxSDxB8RXx5G3L9nqA H+4kDEz5Tml8v+5g7X1mfV4ZgTsNz9yuFbDMjJrsQOMD3jhiuheYwkcbyfuzIepv2p9T8R4Z TxiiZlG/42x2Laf2mzrxeo8w780Aw243un8lOciWuLm72xeBsKT+56wa5JeBrQ7EQt+Ptm1r hQ4m6fv51LSTvdgSXU/bHzJlBXv3vxhUBnvf8YjnRZX4dbQqRWt5Yj8ERcF4pFND7m6bogDP JlAKjnlbhrmGuhHjPkV1RUsZ6RtixZJGbCfqFCgL3b79FupgE486NCr/Zv2kvp9/oGOu95Dq r/Q+NVfYp1P70rhJRGdZA8qPuMex/wqC33QRevyHTcZek60iH22tXKCItc3pDfRHVP9up1pK j8
  • Ironport-sdr: lXeu65xEWVYWhBb2Qco1O8YSlS55Hv+TmhIyuepMWtvzXz0Fh+a1QgTxo3IDttJbPBm4TyfUq2 Fy0qzvI+OOq5kKcIWhmcAQvGsCJEo0xNNe03R/nj8L1PE6RWZPD9dPAzKcYUAPJUYxnv3kZo8F FcbrsBkMO1TPKoBu85RV4KCg8sdYvnEWpKT/ISFK6D4XK1LK3c8Ejh4pwY+2HfPpHZANEl3LHp JK3Cdt/gzoy+VWbhaUEOE49AfK397sBP7uatonGVtweTPFWFeM5w6KAHe+9kMjNrsNZLvTDB79 u8090koMyXloTFx8qLezC2KY
  • List-id: Xen developer discussion <xen-devel.lists.xenproject.org>

On Fri, Dec 10, 2021 at 01:59:02PM +0100, Jan Beulich wrote:
> On 10.12.2021 13:05, Roger Pau Monné wrote:
> > On Fri, Sep 24, 2021 at 11:51:40AM +0200, Jan Beulich wrote:
> >> In order to free intermediate page tables when replacing smaller
> >> mappings by a single larger one callers will need to know the full PTE.
> >> Flush indicators can be derived from this in the callers (and outside
> >> the locked regions). First split set_iommu_pte_present() from
> >> set_iommu_ptes_present(): Only the former needs to return the old PTE,
> >> while the latter (like also set_iommu_pde_present()) doesn't even need
> >> to return flush indicators. Then change return types/values and callers
> >> accordingly.
> > 
> > Without looking at further patches I would say you only care to know
> > whether the old PTE was present (ie: pr bit set), at which point those
> > functions could also return a boolean instead of a full PTE?
> 
> But looking at further patches will reveal that I then also need the
> next_level field from the old PTE (to tell superpages from page tables).

Oh, OK. I was expecting something like that.

Reviewed-by: Roger Pau Monné <roger.pau@xxxxxxxxxx>

I wouldn't mind if you added a note to the commit message that the
full PTE is returned because new callers will require more data.

Thanks, Roger.



 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.