[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <b099a333-65b1-de9e-742d-d12f4fb58f67@linux.intel.com>
Date: Thu, 3 Aug 2023 11:27:01 +0800
From: Baolu Lu <baolu.lu@...ux.intel.com>
To: "Tian, Kevin" <kevin.tian@...el.com>,
"Liu, Yi L" <yi.l.liu@...el.com>,
"joro@...tes.org" <joro@...tes.org>,
"alex.williamson@...hat.com" <alex.williamson@...hat.com>,
"jgg@...dia.com" <jgg@...dia.com>,
"robin.murphy@....com" <robin.murphy@....com>
Cc: baolu.lu@...ux.intel.com, "cohuck@...hat.com" <cohuck@...hat.com>,
"eric.auger@...hat.com" <eric.auger@...hat.com>,
"nicolinc@...dia.com" <nicolinc@...dia.com>,
"kvm@...r.kernel.org" <kvm@...r.kernel.org>,
"mjrosato@...ux.ibm.com" <mjrosato@...ux.ibm.com>,
"chao.p.peng@...ux.intel.com" <chao.p.peng@...ux.intel.com>,
"yi.y.sun@...ux.intel.com" <yi.y.sun@...ux.intel.com>,
"peterx@...hat.com" <peterx@...hat.com>,
"jasowang@...hat.com" <jasowang@...hat.com>,
"shameerali.kolothum.thodi@...wei.com"
<shameerali.kolothum.thodi@...wei.com>,
"lulu@...hat.com" <lulu@...hat.com>,
"suravee.suthikulpanit@....com" <suravee.suthikulpanit@....com>,
"iommu@...ts.linux.dev" <iommu@...ts.linux.dev>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
"linux-kselftest@...r.kernel.org" <linux-kselftest@...r.kernel.org>,
"Duan, Zhenzhong" <zhenzhong.duan@...el.com>
Subject: Re: [PATCH v4 12/12] iommu/vt-d: Disallow nesting on domains with
read-only mappings
On 2023/8/2 15:59, Tian, Kevin wrote:
>> From: Liu, Yi L <yi.l.liu@...el.com>
>> Sent: Monday, July 24, 2023 7:14 PM
>>
>> @@ -2147,6 +2148,18 @@ __domain_mapping(struct dmar_domain
>> *domain, unsigned long iov_pfn,
>> if ((prot & (DMA_PTE_READ|DMA_PTE_WRITE)) == 0)
>> return -EINVAL;
>>
>> + if (!(prot & DMA_PTE_WRITE) && !domain->read_only_mapped) {
>> + spin_lock_irqsave(&domain->lock, flags);
>> + if (domain->set_nested) {
>> + pr_err_ratelimited("No read-only mapping
>> permitted\n");
>
> "Read-only mapping is disallowed on the domain which serves as the
> parent in a nested configuration, due to HW errata (ERRATA_772415_SPR17)"
Ack.
>
>> + u8 read_only_mapped:1; /* domain has mappings with
>> read-only
>> + * permission.
>> + */
>> + u8 set_nested:1; /* has other domains nested on it */
>
> what about "is_parent"?
"is_parent" is still a bit generic. How about "is_nested_parent"?
>
>>
>> + spin_lock_irqsave(&s2_dmar_domain->lock, flags);
>> + if (s2_dmar_domain->read_only_mapped) {
>> + spin_unlock_irqrestore(&s2_dmar_domain->lock, flags);
>> + pr_err_ratelimited("S2 domain has read-only mappings\n");
>
> "Nested configuration is disallowed when the stage-2 domain already
> has read-only mappings, due to HW errata (ERRATA_772415_SPR17)"
Ack.
Best regards,
baolu
Powered by blists - more mailing lists