qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH v3 2/2] intel_iommu: Make PASID-cache and PIOTLB type invalid


From: Michael S. Tsirkin
Subject: Re: [PATCH v3 2/2] intel_iommu: Make PASID-cache and PIOTLB type invalid in legacy mode
Date: Wed, 14 Aug 2024 03:02:18 -0400

On Wed, Aug 14, 2024 at 03:05:33AM +0000, Duan, Zhenzhong wrote:
> 
> 
> >-----Original Message-----
> >From: Liu, Yi L <yi.l.liu@intel.com>
> >Subject: Re: [PATCH v3 2/2] intel_iommu: Make PASID-cache and PIOTLB
> >type invalid in legacy mode
> >
> >On 2024/8/14 10:26, Zhenzhong Duan wrote:
> >> In vtd_process_inv_desc(), VTD_INV_DESC_PC and VTD_INV_DESC_PIOTLB
> >are
> >> bypassed without scalable mode check. These two types are not valid
> >> in legacy mode and we should report error.
> >>
> >> Fixes: 4a4f219e8a1 ("intel_iommu: add scalable-mode option to make
> >scalable mode work")
> >
> >4a4f219e8a10 would be better. :)
> 
> Ah, OK, Michael, let me know if you want me send a new version.
> 
> Thanks
> Zhenzhong


Yes pls, also pls Cc me on the cover letter.

> >
> >> Suggested-by: Yi Liu <yi.l.liu@intel.com>
> >> Signed-off-by: Zhenzhong Duan <zhenzhong.duan@intel.com>
> >> Reviewed-by: Clément Mathieu--Drif<clement.mathieu--drif@eviden.com>
> >> Reviewed-by: Yi Liu <yi.l.liu@intel.com>
> >> ---
> >>   hw/i386/intel_iommu.c | 22 +++++++++++-----------
> >>   1 file changed, 11 insertions(+), 11 deletions(-)
> >>
> >> diff --git a/hw/i386/intel_iommu.c b/hw/i386/intel_iommu.c
> >> index 68cb72a481..90cd4e5044 100644
> >> --- a/hw/i386/intel_iommu.c
> >> +++ b/hw/i386/intel_iommu.c
> >> @@ -2763,17 +2763,6 @@ static bool
> >vtd_process_inv_desc(IntelIOMMUState *s)
> >>           }
> >>           break;
> >>
> >> -    /*
> >> -     * TODO: the entity of below two cases will be implemented in future
> >series.
> >> -     * To make guest (which integrates scalable mode support patch set in
> >> -     * iommu driver) work, just return true is enough so far.
> >> -     */
> >> -    case VTD_INV_DESC_PC:
> >> -        break;
> >> -
> >> -    case VTD_INV_DESC_PIOTLB:
> >> -        break;
> >> -
> >>       case VTD_INV_DESC_WAIT:
> >>           trace_vtd_inv_desc("wait", inv_desc.hi, inv_desc.lo);
> >>           if (!vtd_process_wait_desc(s, &inv_desc)) {
> >> @@ -2795,6 +2784,17 @@ static bool
> >vtd_process_inv_desc(IntelIOMMUState *s)
> >>           }
> >>           break;
> >>
> >> +    /*
> >> +     * TODO: the entity of below two cases will be implemented in future
> >series.
> >> +     * To make guest (which integrates scalable mode support patch set in
> >> +     * iommu driver) work, just return true is enough so far.
> >> +     */
> >> +    case VTD_INV_DESC_PC:
> >> +    case VTD_INV_DESC_PIOTLB:
> >> +        if (s->scalable_mode) {
> >> +            break;
> >> +        }
> >> +    /* fallthrough */
> >>       default:
> >>           error_report_once("%s: invalid inv desc: hi=%"PRIx64", 
> >> lo=%"PRIx64
> >>                             " (unknown type)", __func__, inv_desc.hi,
> >
> >--
> >Regards,
> >Yi Liu




reply via email to

[Prev in Thread] Current Thread [Next in Thread]