On 2023/12/7 02:56, Jason Gunthorpe wrote:
On Fri, Nov 17, 2023 at 05:18:16AM -0800, Yi Liu wrote:
+static int intel_nested_cache_invalidate_user(struct iommu_domain *domain,
struct iommu_user_data_array *array,
u32 *cerror_idx)
+{
- struct dmar_domain *dmar_domain = to_dmar_domain(domain);
- struct iommu_hwpt_vtd_s1_invalidate inv_info;
- u32 index;
- int ret;
- /* REVISIT:
* VT-d has defined ITE, ICE, IQE for invalidation failure per hardware,
* but no error code yet, so just set the error code to be 0.
*/
- *cerror_idx = 0;
- for (index = 0; index < array->entry_num; index++) {
ret = iommu_copy_struct_from_user_array(&inv_info, array,
IOMMU_HWPT_DATA_VTD_S1,
index, __reserved);
if (ret) {
pr_err_ratelimited("Failed to fetch invalidation request\n");
break;
No error prints on ioctls!
ok, will remove it.
if (inv_info.addr == 0 && inv_info.npages == -1)
intel_flush_iotlb_all(domain);
-1 is clearer written as U64_MAX - same remark for the comment documenting it.
sure.