qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] enabling bus-master IDE driver


From: Jens Axboe
Subject: Re: [Qemu-devel] enabling bus-master IDE driver
Date: Thu, 11 Nov 2004 20:16:47 +0100

On Thu, Nov 11 2004, Jason Brittain wrote:
> Jens Axboe wrote:
> >On Thu, Nov 11 2004, Jason Brittain wrote:
> >
> >>I just pulled the latest source from CVS (today's), and tried
> >>looking at DMA again.
> >>
> >>Host: Linux 2.6 (Fedora Core 2)
> >>Guest: XP corp.
> >>It still says the primary IDE channel is in PIO mode, and
> >>doesn't seem any faster.
> >>
> >>Host: Linux 2.6 (Fedora Core 2)
> >>Guest: Linux 2.6
> >>hdparm now reports that DMA is on for /dev/hda, and I can also
> >>turn it on and off.  With it on, it's about twice as fast as
> >>it is with it off.  So, this seems to work.
> >
> >
> >If I could install XP, I could take a look. But it will boot for me
> >after install, just hangs. If I restart qemu, it complains about a bad
> >boot loader.
> >
> >If I get time I'll look into this.
> 
> That's a known problem that aparently still isn't fixed in CVS.
> To fix it, apply this patch to your ide.c:
> 
> --- hw/ide.c-bad    2004-11-11 07:54:34.000000000 -0800
> +++ hw/ide.c   2004-11-11 08:56:23.000000000 -0800
> @@ -1895,7 +1895,7 @@
>                      s->heads = 16;
>                      s->sectors = 63;
>                  }
> -                bdrv_set_geometry_hint(s->bs, s->cylinders, s->heads, 
> s->sectors);
> +                /*bdrv_set_geometry_hint(s->bs, s->cylinders, s->heads, 
> s->sectors);*/
>              }
>              if (bdrv_get_type_hint(s->bs) == BDRV_TYPE_CDROM) {
>                  s->is_cdrom = 1;
> 
> And, then you must reinstall XP in a new hd image.  Old images
> are apparently corrupted, and will not work even with a patched
> qemu binary.  I now keep my qemu patched this way and my XP
> boots fine.

Ah thanks, I'll apply the fix and attempt a new install.

-- 
Jens Axboe





reply via email to

[Prev in Thread] Current Thread [Next in Thread]