Il 06/06/2013 04:36, Alexey Kardashevskiy ha scritto:
>> > diff --git a/hw/misc/vfio.c b/hw/misc/vfio.c
>> > index 693a9ff..c89676b 100644
>> > --- a/hw/misc/vfio.c
>> > +++ b/hw/misc/vfio.c
>> > @@ -1953,7 +1953,7 @@ static void vfio_listener_region_add(MemoryListener 
>> > *listener,
>> >      }
>> >  
>> >      iova = TARGET_PAGE_ALIGN(section->offset_within_address_space);
>> > -    end = (section->offset_within_address_space + section->size) &
>> > +    end = (section->offset_within_address_space + 
>> > int128_get64(section->size)) &
>> >            TARGET_PAGE_MASK;
> 
> 
> Another problem with this patch. Here is some more context (***):

By the time you get here, this should have already crashed at this
code that patch 13 adds:

diff --git a/hw/misc/vfio.c b/hw/misc/vfio.c
index c89676b..52fb036 100644
--- a/hw/misc/vfio.c
+++ b/hw/misc/vfio.c
@@ -1939,6 +1939,8 @@ static void vfio_listener_region_add(MemoryListener 
*listener,
     void *vaddr;
     int ret;
 
+    assert(!memory_region_is_iommu(section->mr));
+

so it seems like a bug in your VFIO patches.

Paolo

Reply via email to