qemu-devel
[Top][All Lists]
Advanced

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

[Qemu-devel] piix_pci.c update_pam() incorrectness


From: Sebastian Herbszt
Subject: [Qemu-devel] piix_pci.c update_pam() incorrectness
Date: Sat, 19 Sep 2009 20:57:36 +0200

update_pam() in hw/piix_pci.c contains the following:

   switch(r) {
...
   case 2:
   case 0:
       /* XXX: should distinguish read/write cases */
       for(addr = start; addr < end; addr += 4096) {
           cpu_register_physical_memory(addr, 4096,
                                        d->isa_page_descs[(addr - 0xa0000) >> 
12]);
       }
       break;

Is anyone working on fixing this?
This emulation incorrectness prevents "in-place" copies between rom and ram. 
Bochs
behaviour is correct in this case, but this issue in qemu requires the use of 
temporary storage
(see bios_shadow_init() in rombios32.c (bochs bios) or shadow.c in seabios).

- Sebastian





reply via email to

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