This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
Home Products Support Community News


[Xen-changelog] [qemu-xen-unstable] passthrough: gfx_passthru: warning w

To: xen-changelog@xxxxxxxxxxxxxxxxxxx
Subject: [Xen-changelog] [qemu-xen-unstable] passthrough: gfx_passthru: warning when vgabios rom has invalid checksum
From: Ian Jackson <Ian.Jackson@xxxxxxxxxxxxx>
Date: Mon, 1 Mar 2010 08:35:02 -0800
Delivery-date: Mon, 01 Mar 2010 08:34:58 -0800
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
List-help: <mailto:xen-changelog-request@lists.xensource.com?subject=help>
List-id: BK change log <xen-changelog.lists.xensource.com>
List-post: <mailto:xen-changelog@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/mailman/listinfo/xen-changelog>, <mailto:xen-changelog-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/mailman/listinfo/xen-changelog>, <mailto:xen-changelog-request@lists.xensource.com?subject=unsubscribe>
Reply-to: xen-devel@xxxxxxxxxxxxxxxxxxx
Sender: xen-changelog-bounces@xxxxxxxxxxxxxxxxxxx
commit f3f98c2c705fbb773e88692e016d828a060793c8
Author: Ian Jackson <ian.jackson@xxxxxxxxxxxxx>
Date:   Mon Mar 1 16:14:50 2010 +0000

    passthrough: gfx_passthru: warning when vgabios rom has invalid checksum
    In the native environment, the VGABIOS, the expansion ROM on the
    graphics card, is placed into the 0C0000h address space, and then
    executed. Of course, the checksum of the ROM must be valid.
    After this initialization, the system BIOS, the actual BIOS of the M/B,
    can resize the expansion ROM code to reduce the amount of occupied
    space. If the system BIOS resizes it, a new checksum must be calculated
    and stored in the ROM image that is on the RAM.
    So, normally, shadowed VGABIOS, that is placed in 0C0000h, is already
    modified and its checksum must be recalculated.
    Qemu-dm copies 0C0000h's contents of the dom0 to guest's 0C0000h.
    Guest re-uses dom0's used-up VGABIOS.
    The problem that I mentioned is about this recalculated checksum.
    System BIOS must guarantee the checksum after the resizing, but,
    some M/B does not.
    However, after adjusting the checksum, guest seems to work, and
    current qemu-dm does so. The buggy system BIOS might just forgets
    to recalculate.
    Signed-off-by: Noboru Iwamatsu <n_iwamatsu@xxxxxxxxxxxxxx>
    Acked-by: Weidong Han <weidong.han@xxxxxxxxx>
 hw/pass-through.c |    3 +++
 1 files changed, 3 insertions(+), 0 deletions(-)

diff --git a/hw/pass-through.c b/hw/pass-through.c
index ecb3d6f..fadd358 100644
--- a/hw/pass-through.c
+++ b/hw/pass-through.c
@@ -4262,7 +4262,10 @@ static int setup_vga_pt(void)
     for ( c = (char*)bios; c < ((char*)bios + bios_size); c++ )
         checksum += *c;
     if ( checksum )
+    {
         bios[bios_size - 1] -= checksum;
+        PT_LOG("vga bios checksum is adjusted!\n");
+    }
     cpu_physical_memory_rw(0xc0000, bios, bios_size, 1);
generated by git-patchbot for /home/xen/git/qemu-xen-unstable.git

Xen-changelog mailing list

<Prev in Thread] Current Thread [Next in Thread>
  • [Xen-changelog] [qemu-xen-unstable] passthrough: gfx_passthru: warning when vgabios rom has invalid checksum, Ian Jackson <=