Message ID | 20170920145025.19403-1-david@redhat.com |
---|---|
State | New |
Headers | show |
Series | [v1] kvm: drop wrong assertion creating problems with pflash | expand |
On Wed, 2017-09-20 at 16:50 +0200, David Hildenbrand wrote: > 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 asser is wrong. > > So let's just drop the assert. Works without any obvious bad side effects. Tested-by: Gerd Hoffmann <kraxel@redhat.com> cheers, Gerd
On 21/09/2017 08:49, Gerd Hoffmann wrote: > On Wed, 2017-09-20 at 16:50 +0200, David Hildenbrand wrote: >> 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 asser is wrong. >> >> So let's just drop the assert. > > Works without any obvious bad side effects. > > Tested-by: Gerd Hoffmann <kraxel@redhat.com> Queued, thanks. Paolo
diff --git a/accel/kvm/kvm-all.c b/accel/kvm/kvm-all.c index b0181d7220..4f1997deec 100644 --- a/accel/kvm/kvm-all.c +++ b/accel/kvm/kvm-all.c @@ -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) {
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 asser is wrong. So let's just drop the assert. Reported-by: Gerd Hoffmann <kraxel@redhat.com> Signed-off-by: David Hildenbrand <david@redhat.com> --- accel/kvm/kvm-all.c | 1 - 1 file changed, 1 deletion(-)