|   | 
      | 
  
  
      | 
      | 
  
 
     | 
    | 
  
  
     | 
    | 
  
  
    |   | 
      | 
  
  
    | 
         
xen-devel
[Xen-devel] [PATCH] adds two missing cirrus_update_memory_access
 
Hi all,
the cirrus emulation code misses two calls to
cirrus_update_memory_access; this fact together with the condition on the
call to cirrus_update_memory_access in cirrus_bitblt_reset can cause
segfaults in qemu.
This fix should be applied to qemu-xen 3.4 too.
Signed-off-by: Stefano Stabellini <stefano.stabellini@xxxxxxxxxxxxx>
---
diff --git a/hw/cirrus_vga.c b/hw/cirrus_vga.c
index 8da0c60..38c829a 100644
--- a/hw/cirrus_vga.c
+++ b/hw/cirrus_vga.c
@@ -1275,6 +1275,7 @@ cirrus_hook_read_sr(CirrusVGAState * s, unsigned 
reg_index, int *reg_value)
        break;
     case 0x05:                 // ???
     case 0x07:                 // Extended Sequencer Mode
+        cirrus_update_memory_access(s);
     case 0x08:                 // EEPROM Control
     case 0x09:                 // Scratch Register 0
     case 0x0a:                 // Scratch Register 1
@@ -1540,6 +1541,7 @@ cirrus_hook_write_gr(CirrusVGAState * s, unsigned 
reg_index, int reg_value)
        s->gr[reg_index] = reg_value;
        cirrus_update_bank_ptr(s, 0);
        cirrus_update_bank_ptr(s, 1);
+        cirrus_update_memory_access(s);
         break;
     case 0x0B:
        s->gr[reg_index] = reg_value;
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel
 |   
 
| <Prev in Thread] | 
Current Thread | 
[Next in Thread> |  
- [Xen-devel] [PATCH] adds two missing cirrus_update_memory_access,
Stefano Stabellini <=
  
 |  
  
 | 
    | 
  
  
    |   | 
    |