Skip to contentSkip to conversation

Fix regressions found on recent KVM autotest qemu master 'sanity' jobs

1.0 release work Lucas Meneghel Rodrigues 3 participants 6 messages Nov 4, 2011 KVM

lore
Share & tools
lore
#0 lore raw

Hi guys,

As we understand that qemu is approaching 1.0, we think it's a good idea to share the issues we have been seeing on recent qemu.git sanity jobs:

1) Some condition is consistently making a RHEL 6.1 linux guest not able to bring up the network interface, causing login failures for all linux guest tests. This very same guest install works perfectly on qemu-kvm, RHEL 5 and RHEL 6.

2) The floppy regression problem which was reported some days ago on this mailing list still happens, Kevin did post a patch that resolves it

hw/dma.c +9 -0
index 8a7302a..1d3b6f1 100644
@@ -358,6 +358,13 @@ static void DMA_run (void)
     struct dma_cont *d;
     int icont, ichan;
     int rearm = 0;
+    static int running = 0;
+
+    if (running) {
+        goto out;
+    } else {
+        running = 1;
+    }
 
     d = dma_controllers;
 
@@ -374,6 +381,8 @@ static void DMA_run (void)
         }
     }
 
+out:
+    running = 0;
     if (rearm)
         qemu_bh_schedule_idle(dma_bh);
 }

But still wasn't integrated upstream. As I understand, there are doubts whether this is a proper fix. Works with qemu-kvm.git. RHEL 5 and RHEL 6.

3) With Kevin's patch applied, windows install goes on until the first reboot. When it gets there, it gets stuck on the BIOS screen. The bios being used is the bin shipped on qemu.git's repo. So the install does not complete. Works with qemu-kvm.git, RHEL 5 and RHEL 6.

Those were the issues found on our 'sanity' job, which is the closest to a smoke test we have with KVM autotest. It simply installs one stable and recent linux guest, boot, simple migration, reboot, shutdown, rinse and repeat with the latest windows guest available. All guests use virtio disks and virtio network cards. It has 100% PASS rate, or very close to it for the other branches mentioned.

So qemu.git current state is not good, and those bugs need some work before 1.0 is out.

Please feel free to approach myself and Cleber on irc or email, as we can give you the details we have available, in case you need them.

Lucas

#1 lore raw

Am 04.11.2011 17:40, schrieb Lucas Meneghel Rodrigues:

Quoted 7 lines

2) The floppy regression problem which was reported some days ago on this mailing list still happens, Kevin did post a patch that resolves it

[...]

But still wasn't integrated upstream. As I understand, there are doubts whether this is a proper fix. Works with qemu-kvm.git. RHEL 5 and RHEL 6.

The first patch was buggy (even though it seemed to do the trick in most cases), but I do have a new version queued for my next pull request.

In case you like to test it before it gets merged, this is the new version:

hw/dma.c +10 -0
index 8a7302a..0a9322d 100644
@@ -358,6 +358,14 @@ static void DMA_run (void)
     struct dma_cont *d;
     int icont, ichan;
     int rearm = 0;
+    static int running = 0;
+
+    if (running) {
+        rearm = 1;
+        goto out;
+    } else {
+        running = 1;
+    }
 
     d = dma_controllers;
 
@@ -374,6 +382,8 @@ static void DMA_run (void)
         }
     }
 
+    running = 0;
+out:
     if (rearm)
         qemu_bh_schedule_idle(dma_bh);
 }

Kevin

#2 lore raw
Quoted 43 lines · Kevin Wolf

Am 04.11.2011 17:40, schrieb Lucas Meneghel Rodrigues:

Quoted 7 lines

2) The floppy regression problem which was reported some days ago on this mailing list still happens, Kevin did post a patch that resolves it

[...]

But still wasn't integrated upstream. As I understand, there are doubts whether this is a proper fix. Works with qemu-kvm.git. RHEL 5 and RHEL 6.

The first patch was buggy (even though it seemed to do the trick in most cases), but I do have a new version queued for my next pull request.

In case you like to test it before it gets merged, this is the new version:

hw/dma.c +10 -0
index 8a7302a..0a9322d 100644
@@ -358,6 +358,14 @@ static void DMA_run (void)
      struct dma_cont *d;
      int icont, ichan;
      int rearm = 0;
+    static int running = 0;
+
+    if (running) {
+        rearm = 1;
+        goto out;
+    } else {
+        running = 1;
+    }
 
      d = dma_controllers;
 
@@ -374,6 +382,8 @@ static void DMA_run (void)
          }
      }
 
+    running = 0;
+out:
      if (rearm)
          qemu_bh_schedule_idle(dma_bh);
  }
Quoted 1 line

Kevin

Ok, we'll put it on our off tree patch stash for the next upstream jobs [1], thanks. We still have the bios problem to finally get a working windows install, I hope people might look into this.

[1] Well, currently this is the only patch on our 'stash', we only resort to external patches on blockers like this one.

#3 lore raw
In reply to Lucas Meneghel Rodrigues
Quoted 8 lines · Lucas Meneghel Rodrigues

Hi guys,

As we understand that qemu is approaching 1.0, we think it's a good idea to share the issues we have been seeing on recent qemu.git sanity jobs:

1) Some condition is consistently making a RHEL 6.1 linux guest not able to bring up the network interface, causing login failures for all linux guest tests. This very same guest install works perfectly on qemu-kvm, RHEL 5 and RHEL 6.

Can you file a bug report with specific information about how the guest is being launched? Specifically, what NIC are we talking about? Do other types of guests work?

Regards,

Anthony Liguori

#4 lore raw
Quoted 11 lines · Anthony Liguori
Quoted 8 lines · Lucas Meneghel Rodrigues

Hi guys,

As we understand that qemu is approaching 1.0, we think it's a good idea to share the issues we have been seeing on recent qemu.git sanity jobs:

1) Some condition is consistently making a RHEL 6.1 linux guest not able to bring up the network interface, causing login failures for all linux guest tests. This very same guest install works perfectly on qemu-kvm, RHEL 5 and RHEL 6.

Can you file a bug report with specific information about how the guest is being launched? Specifically, what NIC are we talking about? Do other types of guests work?

Ok, I will. Just FYI, it's a virtio nic. As on sanity jobs we only test RHEL 6.1 64 bit and Windows 7 SP1 64 bit, and Windows is blocked due to the other bug mentioned, I still have no idea whether other guests do work.

#5 lore raw
In reply to Anthony Liguori
Quoted 14 lines · Anthony Liguori
Quoted 6 lines · Lucas Meneghel Rodrigues

Hi guys,

As we understand that qemu is approaching 1.0, we think it's a good idea to
share the issues we have been seeing on recent qemu.git sanity jobs:

Quoted 6 lines

1) Some condition is consistently making a RHEL 6.1 linux guest not able to
bring up the network interface, causing login failures for all linux guest
tests. This very same guest install works perfectly on qemu-kvm, RHEL 5 and RHEL 6.

Quoted 3 lines

Can you file a bug report with specific information about how the guest is being launched? Specifically, what NIC are we talking about? Do other types of guests work?

https://bugs.launchpad.net/qemu/+bug/886255

I believe relevant info is there. Command lines, screenshots, kernel versions, qemu commit hashes... If you need something else, let me know.

Quoted 4 lines

Regards,

Anthony Liguori