Hi Joerg,

> -----Original Message-----
> From: Prakhya, Sai Praneeth <sai.praneeth.prak...@intel.com>
> Sent: Thursday, June 4, 2020 6:32 PM
> To: iommu@lists.linux-foundation.org
> Cc: Prakhya, Sai Praneeth <sai.praneeth.prak...@intel.com>; Christoph Hellwig
> <h...@lst.de>; Joerg Roedel <j...@8bytes.org>; Raj, Ashok
> <ashok....@intel.com>; Will Deacon <will.dea...@arm.com>; Lu Baolu
> <baolu...@linux.intel.com>; Mehta, Sohil <sohil.me...@intel.com>; Robin
> Murphy <robin.mur...@arm.com>; Jacob Pan <jacob.jun....@linux.intel.com>
> Subject: [PATCH V4 0/3] iommu: Add support to change default domain of an
> iommu group
> Presently, the default domain of an iommu group is allocated during boot time
> and it cannot be changed later. So, the device would typically be either in
> identity (pass_through) mode or the device would be in DMA mode as long as
> the system is up and running. There is no way to change the default domain 
> type
> dynamically i.e. after booting, a device cannot switch between identity mode
> and DMA mode.
> Assume a use case wherein the privileged user would want to use the device in
> pass-through mode when the device is used for host so that it would be high
> performing. Presently, this is not supported. Hence add support to change the
> default domain of an iommu group dynamically.
> Support this by writing to a sysfs file, namely
> "/sys/kernel/iommu_groups/<grp_id>/type".
> Testing:
> --------
> Tested by dynamically changing storage device (nvme) from 1. identity mode to
> DMA and making sure file transfer works 2. DMA mode to identity mode and
> making sure file transfer works Tested only for intel_iommu/vt-d. Would
> appreciate if someone could test on AMD and ARM based machines.
> Based on iommu maintainer's 'next' branch.
> Changes from V3:
> ----------------
> 1. Made changes to commit message as suggested by Baolu.
> 2. Don't pass "prev_dom" and "dev" as parameters to
>    iommu_change_dev_def_domain(). Instead get them from group.
> 3. Sanitize the logic to validate user default domain type request. The logic
>    remains same but is implmented differently.
> 4. Push lot of error checking into iommu_change_dev_def_domain() from
>    iommu_group_store_type().
> 5. iommu_change_dev_def_domain() takes/releases group mutex as needed.
> So, it
>    shouldn't be called holding a group mutex.
> 6. Use pr_err_ratelimited() instead of pr_err() to avoid DOS attack.

Could you please review this patch set and let me know if you have any comments?

iommu mailing list

Reply via email to