Patchwork lsi_soft_reset: Assertion `!s->current' failed with Windows XP setup

login
register
mail settings
Submitter Paolo Bonzini
Date May 2, 2013, 5:20 p.m.
Message ID <5182A07A.30705@redhat.com>
Download mbox | patch
Permalink /patch/241041/
State New
Headers show

Comments

Paolo Bonzini - May 2, 2013, 5:20 p.m.
Il 30/04/2013 14:59, Claudio Bley ha scritto:
> At Mon, 29 Apr 2013 17:54:37 +0200,
> Paolo Bonzini wrote:
>>
>> Il 12/04/2013 16:02, Claudio Bley ha scritto:
>>> Hi.
>>>
>>> I'm using the latest qemu release 1.4.0 and libvirt 1.0.4.
>>>
>>> The host system is a Ubuntu 12.04 LTS system, Intel Xeon processor,
>>> 4GB RAM.
>>>
>>> When trying to install Windows XP I constantly receive this error
>>> (usually right before the graphical Setup is started). Once, I've seen
>>> this error too:
>>>
>>> hw/lsi53c895a.c:351: lsi_soft_reset: Assertion `((&s->queue)->tqh_first == ((void *)0))' failed.
>>>
>>> I found the thread here
>>> http://lists.gnu.org/archive/html/qemu-devel/2012-11/msg00518.html but
>>> it didn't led me nowhere. 
>>>
>>> I recompiled with DEBUG_SCSI and DEBUG_LSI enabled. Here's the command
>>> libvirt put together and the last few lines of output. I can provide
>>> the complete log if you need it.
>>
>> Hi, sorry---I just read this now.
>>
>> Can you please try the patches at
>> http://cache.gmane.org//gmane/comp/emulators/qemu/208057-001.bin?
> 
> I gave it a shot and this fixed the bug for me.
> 
> I've applied the patches to git tag v1.4.1 with minor modifications:
> 
> - skipped patch 1 and 2 since they already had been applied upstream
>   in the meantime, AFAICS
> 
> - s/vists/visits/ in subject line of patch 3
> 
> - updated patch 3 and 4 in order to adjust for moved-around files and
>   some code changes since 1.3.0
> 
> Thanks!
> 
> Here are the updated patches:

Thanks.  These will have to wait for 1.6 though.

This should work for all current releases.

Paolo
Claudio Bley - July 29, 2013, 1:31 p.m.
Hi.

At Thu, 02 May 2013 19:20:58 +0200,
Paolo Bonzini wrote:
> 
> Il 30/04/2013 14:59, Claudio Bley ha scritto:
> > At Mon, 29 Apr 2013 17:54:37 +0200,
> > Paolo Bonzini wrote:
> >>
> >> Can you please try the patches at
> >> http://cache.gmane.org//gmane/comp/emulators/qemu/208057-001.bin?
> > 
> > I gave it a shot and this fixed the bug for me.
> > 
> > I've applied the patches to git tag v1.4.1 with minor modifications:
> > 
> > - skipped patch 1 and 2 since they already had been applied upstream
> >   in the meantime, AFAICS
> > 
> > - s/vists/visits/ in subject line of patch 3
> > 
> > - updated patch 3 and 4 in order to adjust for moved-around files and
> >   some code changes since 1.3.0
> > 
> > Here are the updated patches:
> 
> Thanks.  These will have to wait for 1.6 though.

I just wanted to check in on you whether you still have this on your
radar for 1.6? I cannot seem to find any commits in this regard, yet.

Full discussion:
http://lists.gnu.org/archive/html/qemu-devel/2013-04/threads.html#02521

Claudio
Claudio Bley - Oct. 10, 2013, 1:41 p.m.
At Mon, 29 Jul 2013 16:17:35 +0200,
Paolo Bonzini wrote:
> 
> Il 29/07/2013 15:31, Claudio Bley ha scritto:
> > Hi.
> > 
> > At Thu, 02 May 2013 19:20:58 +0200,
> > Paolo Bonzini wrote:
> >>
> >> Il 30/04/2013 14:59, Claudio Bley ha scritto:
> >>> At Mon, 29 Apr 2013 17:54:37 +0200,
> >>> Paolo Bonzini wrote:
> >>>>
> >>>> Can you please try the patches at
> >>>> http://cache.gmane.org//gmane/comp/emulators/qemu/208057-001.bin?
> >>>
> >>> I gave it a shot and this fixed the bug for me.
> >>>
> >>> I've applied the patches to git tag v1.4.1 with minor modifications:
> >>>
> >>> - skipped patch 1 and 2 since they already had been applied upstream
> >>>   in the meantime, AFAICS
> >>>
> >>> - s/vists/visits/ in subject line of patch 3
> >>>
> >>> - updated patch 3 and 4 in order to adjust for moved-around files and
> >>>   some code changes since 1.3.0
> >>>
> >>> Here are the updated patches:
> >>
> >> Thanks.  These will have to wait for 1.6 though.
> > 
> > I just wanted to check in on you whether you still have this on your
> > radar for 1.6? I cannot seem to find any commits in this regard, yet.
> > 
> > Full discussion:
> > http://lists.gnu.org/archive/html/qemu-devel/2013-04/threads.html#02521
> 
> No, I had other stuff to do, sorry.  Thanks for reminding me though.

Sorry for being a pain in the neck... but, since it's been two months
now and 1.6.0 is released, as well as 1.6.1 and this bug is still out
there (AFAIS, it's not fixed looking through the git history) I just
wanted to check what's going on.

Why is there so little interest in getting this fixed?

BTW, the workaround you proposed here[1] works fine for me. What's
blocking the inclusion into qemu's git?

Kind regards.

[1] http://lists.gnu.org/archive/html/qemu-devel/2013-05/msg00248.html
Paolo Bonzini - Oct. 10, 2013, 1:42 p.m.
Il 10/10/2013 15:41, Claudio Bley ha scritto:
>> > 
>> > No, I had other stuff to do, sorry.  Thanks for reminding me though.
> Sorry for being a pain in the neck... but, since it's been two months
> now and 1.6.0 is released, as well as 1.6.1 and this bug is still out
> there (AFAIS, it's not fixed looking through the git history) I just
> wanted to check what's going on.

The patch is posted, waiting for review.

> BTW, the workaround you proposed here[1] works fine for me. What's
> blocking the inclusion into qemu's git?

I prefer to get the root cause fixed.

Paolo

Patch

diff --git a/hw/scsi/lsi53c895a.c b/hw/scsi/lsi53c895a.c
index c601b29..0648c77 100644
--- a/hw/scsi/lsi53c895a.c
+++ b/hw/scsi/lsi53c895a.c
@@ -348,6 +348,7 @@  static void lsi_soft_reset(LSIState *s)
     s->sbc = 0;
     s->csbc = 0;
     s->sbr = 0;
+    qbus_reset_all(&s->bus.qbus);
     assert(QTAILQ_EMPTY(&s->queue));
     assert(!s->current);
 }