[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.
|