[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH 05/18] ide: Turn debug messages into assertions
From: |
Luiz Capitulino |
Subject: |
Re: [Qemu-devel] [PATCH 05/18] ide: Turn debug messages into assertions |
Date: |
Wed, 1 Jun 2011 10:44:56 -0300 |
On Thu, 26 May 2011 18:12:08 -0300
Luiz Capitulino <address@hidden> wrote:
> On Thu, 19 May 2011 14:33:19 +0200
> Kevin Wolf <address@hidden> wrote:
>
> > These printfs aren't really debug messages, but clearly indicate a bug if
> > they
> > ever become effective.
>
> Then we have a bug somewhere, starting a VM with:
>
> # qemu -hda disks/test.img -enable-kvm -m 1G -cdrom /dev/sr0
>
> Where the host's CDROM is empty, triggers one of these asserts:
>
> qmp-unstable/hw/ide/pci.c:299: bmdma_cmd_writeb: Assertion
> `bm->bus->dma->aiocb == ((void *)0)'
I found out why this is happening. I'm passing '-snapshot' to the command-line,
sorry for not mentioning it (I forgot I was using my devel alias).
I also found out that /usr/bin/eject in the guest won't work when
-snapshot is used. Shouldn't qemu ignore this flag when using cdrom
passthrough?
>
> > Noone uses DEBUG_IDE, let's re-enable the check
> > unconditionally and make it an assertion instead of printfs in the device
> > emulation.
> >
> > Signed-off-by: Kevin Wolf <address@hidden>
> > Reviewed-by: Stefan Hajnoczi <address@hidden>
> > ---
> > hw/ide/pci.c | 8 ++------
> > 1 files changed, 2 insertions(+), 6 deletions(-)
> >
> > diff --git a/hw/ide/pci.c b/hw/ide/pci.c
> > index f5ac932..a4726ad 100644
> > --- a/hw/ide/pci.c
> > +++ b/hw/ide/pci.c
> > @@ -296,12 +296,8 @@ void bmdma_cmd_writeb(void *opaque, uint32_t addr,
> > uint32_t val)
> > */
> > if (bm->bus->dma->aiocb) {
> > qemu_aio_flush();
> > -#ifdef DEBUG_IDE
> > - if (bm->bus->dma->aiocb)
> > - printf("ide_dma_cancel: aiocb still pending\n");
> > - if (bm->status & BM_STATUS_DMAING)
> > - printf("ide_dma_cancel: BM_STATUS_DMAING still
> > pending\n");
> > -#endif
> > + assert(bm->bus->dma->aiocb == NULL);
> > + assert((bm->status & BM_STATUS_DMAING) == 0);
> > }
> > } else {
> > bm->cur_addr = bm->addr;
>
- Re: [Qemu-devel] [PATCH 05/18] ide: Turn debug messages into assertions,
Luiz Capitulino <=
Re: [Qemu-devel] [PATCH 05/18] ide: Turn debug messages into assertions, Kevin Wolf, 2011/06/06