[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <BL1PR11MB5271F0D4E91A3F6179216ADA8C079@BL1PR11MB5271.namprd11.prod.outlook.com>
Date: Wed, 16 Nov 2022 05:35:40 +0000
From: "Tian, Kevin" <kevin.tian@...el.com>
To: Baolu Lu <baolu.lu@...ux.intel.com>,
"iommu@...ts.linux.dev" <iommu@...ts.linux.dev>
CC: Joerg Roedel <joro@...tes.org>, Will Deacon <will@...nel.org>,
"Robin Murphy" <robin.murphy@....com>,
"Liu, Yi L" <yi.l.liu@...el.com>,
"Pan, Jacob jun" <jacob.jun.pan@...el.com>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>
Subject: RE: [PATCH v3 4/7] iommu/vt-d: Fold dmar_remove_one_dev_info() into
its caller
> From: Baolu Lu <baolu.lu@...ux.intel.com>
> Sent: Wednesday, November 16, 2022 12:36 PM
>
> On 11/16/22 11:53 AM, Tian, Kevin wrote:
> >> From: Lu Baolu<baolu.lu@...ux.intel.com>
> >> Sent: Monday, November 14, 2022 9:41 AM
> >> @@ -4562,7 +4538,10 @@ static void intel_iommu_release_device(struct
> >> device *dev)
> >> {
> >> struct device_domain_info *info = dev_iommu_priv_get(dev);
> >>
> >> - dmar_remove_one_dev_info(dev);
> >> + iommu_disable_pci_caps(info);
> >> + domain_context_clear(info);
> >> + device_block_translation(dev);
> > clear context after blocking translation.
>
> Unfortunately domain_context_clear() needs reference to info->domain
> (for domain id when flushing cache), which is cleared in
> device_block_translation().
>
this sounds an ordering problem. clearing context should be after
blocking translation in concept.
Powered by blists - more mailing lists