qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] [PATCH v2 1/2] intel_iommu: Fix incorrect "end" for vtd


From: Jason Wang
Subject: Re: [Qemu-devel] [PATCH v2 1/2] intel_iommu: Fix incorrect "end" for vtd_address_space_unmap
Date: Thu, 4 Jul 2019 13:39:16 +0800
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Thunderbird/60.7.2


On 2019/6/24 下午5:18, Peter Xu wrote:
From: Yan Zhao <address@hidden>

IOMMUNotifier is with inclusive ranges, so we should check
against (VTD_ADDRESS_SIZE(s->aw_bits) - 1).

Signed-off-by: Yan Zhao <address@hidden>
[peterx: split from another bigger patch]
Reviewed-by: Eric Auger <address@hidden>
Signed-off-by: Peter Xu <address@hidden>
---
  hw/i386/intel_iommu.c | 4 ++--
  1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/hw/i386/intel_iommu.c b/hw/i386/intel_iommu.c
index 44b1231157..719ce19ab3 100644
--- a/hw/i386/intel_iommu.c
+++ b/hw/i386/intel_iommu.c
@@ -3379,12 +3379,12 @@ static void vtd_address_space_unmap(VTDAddressSpace 
*as, IOMMUNotifier *n)
       * VT-d spec), otherwise we need to consider overflow of 64 bits.
       */
- if (end > VTD_ADDRESS_SIZE(s->aw_bits)) {
+    if (end > VTD_ADDRESS_SIZE(s->aw_bits) - 1) {
          /*
           * Don't need to unmap regions that is bigger than the whole
           * VT-d supported address space size
           */
-        end = VTD_ADDRESS_SIZE(s->aw_bits);
+        end = VTD_ADDRESS_SIZE(s->aw_bits) - 1;
      }
assert(start <= end);


Acked-by: Jason Wang <address@hidden>





reply via email to

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