qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] Re: [PATCH 00/23] VGA cleanup


From: Pierre Riteau
Subject: Re: [Qemu-devel] Re: [PATCH 00/23] VGA cleanup
Date: Wed, 16 Sep 2009 16:21:46 +0200

On 16 sept. 2009, at 15:45, Juan Quintela wrote:

Pierre Riteau <address@hidden> wrote:
This patchset introduced a bug. I noticed today that I can't boot an
installation disk of ubuntu-9.04-server-i386.
After entering the install program ("Install Ubuntu Server"), I just
get a black background with gray vertical lines.

More specifically, from oldest to newest commit:
86948bb104f419db9af6b621b85703e8f0d3234c works
f705db9df04c6491f242a5a4585dfe72b708f197 throws a warning about an
uninitialized variable (had to disable werror) but works

could you post the error message?  I didn't have that problem.

/mnt/qemu/hw/cirrus_vga.c: In function 'cirrus_vga_ioport_read':
/mnt/qemu/hw/cirrus_vga.c:2656: warning: 'val' may be used
uninitialized in this function

This is fixed on a later, patch, sorry :(

I'm using ./configure --target-list=i386-softmmu --disable-werror, gcc
is version 4.3.2 (from Debian Lenny).


22286bc6468adac10b2eb7e603f1a8ba524bfb03 throws a warning about an
uninitialized variable (had to disable werror) and doesn't work
b863d51490b7c6e339c9565eda786cadc1218d48 compiles without warning and
doesn't work

Weird, it did worked for me. Could you post what command line did you
use?  I tested with fedora + win XP.

qemu -cdrom ~/ubuntu-9.04-server-i386.iso -boot d


So 22286bc6468adac10b2eb7e603f1a8ba524bfb03 must be the problematic
commit.

Thanks, will take a look.

could you check this patch?
(still not sure why it worked for fedora + xp for me)

From 97869744f37ccd2846e3edcc1ad9f582d9bea1c6 Mon Sep 17 00:00:00 2001
From: Juan Quintela <address@hidden>
Date: Wed, 16 Sep 2009 15:44:49 +0200
Subject: [PATCH] cirrus_vga: also assign gr0/1 when writting shadow_gr0/1


Signed-off-by: Juan Quintela <address@hidden>
---
hw/cirrus_vga.c |    2 ++
1 files changed, 2 insertions(+), 0 deletions(-)

diff --git a/hw/cirrus_vga.c b/hw/cirrus_vga.c
index 004ae7d..9dfe76a 100644
--- a/hw/cirrus_vga.c
+++ b/hw/cirrus_vga.c
@@ -1490,9 +1490,11 @@ cirrus_vga_write_gr(CirrusVGAState * s, unsigned reg_index, int reg_value)
#endif
    switch (reg_index) {
    case 0x00:                  // Standard VGA, BGCOLOR 0x000000ff
+       s->vga.gr[reg_index] = reg_value & gr_mask[reg_index];
        s->cirrus_shadow_gr0 = reg_value;
        break;
    case 0x01:                  // Standard VGA, FGCOLOR 0x000000ff
+       s->vga.gr[reg_index] = reg_value & gr_mask[reg_index];
        s->cirrus_shadow_gr1 = reg_value;
        break;
    case 0x02:                  // Standard VGA
--
1.6.2.5





It works now! Thanks.

--
Pierre Riteau -- http://perso.univ-rennes1.fr/pierre.riteau/





reply via email to

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