kvm: drop wrong assertion creating problems with pflash
authorDavid Hildenbrand <david@redhat.com>
Wed, 20 Sep 2017 14:50:25 +0000 (16:50 +0200)
committerPaolo Bonzini <pbonzini@redhat.com>
Thu, 21 Sep 2017 10:40:08 +0000 (12:40 +0200)
pflash toggles mr->romd_mode. So this assert does not always hold.

1) a device was added with !mr->romd_mode, therefore effectively not
   creating a kvm slot as we want to trap every access (add = false).
2) mr->romd_mode was toggled on before remove it. There is now
   actually no slot to remove and the assert is wrong.

So let's just drop the assert.

Reported-by: Gerd Hoffmann <kraxel@redhat.com>
Signed-off-by: David Hildenbrand <david@redhat.com>
Message-Id: <20170920145025.19403-1-david@redhat.com>
Tested-by: Gerd Hoffmann <kraxel@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
accel/kvm/kvm-all.c

index b0181d722083d9a3cd345d7d9db0eb6640df5fdf..4f1997deec076a1d5ed3835f28f4bd7ac10346eb 100644 (file)
@@ -722,7 +722,6 @@ static void kvm_set_phys_mem(KVMMemoryListener *kml,
     mem = kvm_lookup_matching_slot(kml, start_addr, size);
     if (!add) {
         if (!mem) {
-            g_assert(!memory_region_is_ram(mr) && !writeable && !mr->romd_mode);
             return;
         }
         if (mem->flags & KVM_MEM_LOG_DIRTY_PAGES) {