[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <MWHPR11MB16452D6184F192F6B10784EE8CA50@MWHPR11MB1645.namprd11.prod.outlook.com>
Date: Thu, 7 May 2020 06:38:42 +0000
From: "Tian, Kevin" <kevin.tian@...el.com>
To: Lu Baolu <baolu.lu@...ux.intel.com>, Joerg Roedel <joro@...tes.org>
CC: "Raj, Ashok" <ashok.raj@...el.com>,
"jacob.jun.pan@...ux.intel.com" <jacob.jun.pan@...ux.intel.com>,
"Liu, Yi L" <yi.l.liu@...el.com>,
"iommu@...ts.linux-foundation.org" <iommu@...ts.linux-foundation.org>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>
Subject: RE: [PATCH v4 0/5] iommu/vt-d: Add page request draining support
> From: Lu Baolu <baolu.lu@...ux.intel.com>
> Sent: Thursday, May 7, 2020 8:55 AM
>
> When a PASID is stopped or terminated, there can be pending PRQs
> (requests that haven't received responses) in the software and
> remapping hardware. The pending page requests must be drained
> so that the pasid could be reused. The chapter 7.10 in the VT-d
> specification specifies the software steps to drain pending page
> requests and responses.
>
> This includes two parts:
> - PATCH 1/4 ~ 2/4: refactor the qi_submit_sync() to support multiple
> descriptors per submission which will be used in the following
> patch.
> - PATCH 3/4 ~ 4/4: add page request drain support after a pasid entry
> is torn down.
>
I think you should mention that this series depends on Jacob's nested
SVA series.
> Best regards,
> baolu
>
> Change log:
> v3->v4:
> - Remove prq drain in mm notifier;
> - Set PASID FPD bit when pasid is cleared in mm notifier and clear
> it in unbound().
>
> v2->v3:
> - Address Kevin's review comments
> - Squash the first 2 patches together;
> - The prq thread is serialized, no need to consider reentrance;
> - Ensure no new-coming prq before drain prq in queue;
> - Handle page request overflow case.
>
> v1->v2:
> - Fix race between multiple prq handling threads.
>
> Lu Baolu (5):
> iommu/vt-d: Multiple descriptors per qi_submit_sync()
> iommu/vt-d: debugfs: Add support to show inv queue internals
> iommu/vt-d: Disable non-recoverable fault processing before unbind
> iommu/vt-d: Add page request draining support
> iommu/vt-d: Remove redundant IOTLB flush
>
> drivers/iommu/dmar.c | 63 ++++++++------
> drivers/iommu/intel-iommu-debugfs.c | 62 ++++++++++++++
> drivers/iommu/intel-iommu.c | 4 +-
> drivers/iommu/intel-pasid.c | 30 +++++--
> drivers/iommu/intel-pasid.h | 3 +-
> drivers/iommu/intel-svm.c | 123 ++++++++++++++++++++++++----
> drivers/iommu/intel_irq_remapping.c | 2 +-
> include/linux/intel-iommu.h | 13 ++-
> 8 files changed, 247 insertions(+), 53 deletions(-)
>
> --
> 2.17.1
Powered by blists - more mailing lists