Statistics
| Branch: | Revision:

root / hw / cirrus_vga.c @ 5c16736a

History | View | Annotate | Download (99.7 kB)

# Date Author Comment
b2b183c2 12/05/2008 12:36 am aliguori

do boundary check based on absolute value (Glauber Costa)

For backward operations, dstpitch and srcpitch can
be negative. This leads BLTUNSAFE macro into an
overflow, and as a result, it avoids performing
operations that are perfectly valid.

The visible effect that led to that patch was the gnome-panel...

2bec46dc 11/24/2008 10:21 pm aliguori

vga optimization (Glauber Costa)

Hypervisors like KVM perform badly while doing mmio on
a loop, because it'll generate an exit on each access.
This is the case with VGA, which results in very bad
performance.

In this patch, we map the linear frame buffer as RAM,...

b4fbd879 11/24/2008 09:35 pm aliguori

move vga_io_address to VGA State (Glauber Costa)

It'll be reused later by the vga optimization.

Signed-off-by: Glauber Costa <>
Signed-off-by: Anthony Liguori <>

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5791 c046a42c-6fe2-441c-8c8c-71466251a162

4efe2755 11/24/2008 09:33 pm aliguori

better type checking for vga (Glauber Costa)

unsigned long is too bad of a type. Use ram_addr_t instead.

aligurori: fixed a compile warning in this patch

Signed-off-by: Glauber Costa <>
Signed-off-by: Anthony Liguori <>...

0e1f5a0c 11/24/2008 09:29 pm aliguori

Introduce accessors for DisplayState (Stefano Stabellini)

Introducing some accessors:

ds_get_linesize
ds_get_bits_per_pixel
ds_get_width
ds_get_height
ds_get_data

Signed-off-by: Stefano Stabellini <>
Signed-off-by: Anthony Liguori <>...

65d35a09 11/01/2008 02:53 am aurel32

CVE-2008-4539: fix a heap overflow in Cirrus emulation

The code in hw/cirrus_vga.c has changed a lot between CVE-2007-1320 has
been announced and the patch has been applied. As a consequence it has
wrongly applied and QEMU is still vulnerable to this bug if using VNC....

cb5a7aa8 09/28/2008 03:42 am malc

Optional "precise" VGA retrace support

Selected via: -vga <name>,retrace=precise

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5336 c046a42c-6fe2-441c-8c8c-71466251a162

38334f76 09/24/2008 05:21 am balrog

Don't use ds->dpy_copy directly from hw/ (Jan Niehusmann).

I left a TODO in the code because this still doesn't definitely
fix all issues.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5308 c046a42c-6fe2-441c-8c8c-71466251a162

d5529471 08/19/2008 03:55 pm aurel32

i386: fix isapc machine

- cirrus vga: enable graphic console
- pc: don't use apic for interrupts on ISA machine

Signed-off-by: Aurelien Jarno <>

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5026 c046a42c-6fe2-441c-8c8c-71466251a162

c60e08d9 07/01/2008 07:24 pm pbrook

Implement resolution switching in common console code.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4812 c046a42c-6fe2-441c-8c8c-71466251a162

ca896ef3 05/08/2008 03:21 pm aurel32

cirrusfb: proper "Attribute Controller Toggle Readback" register behaviour

(Marcelo Tosatti)

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4386 c046a42c-6fe2-441c-8c8c-71466251a162

b2eb849d 05/06/2008 12:26 am aurel32

CVE-2007-1320 - Cirrus LGD-54XX "bitblt" heap overflow

I have just noticed that patch for CVE-2007-1320 has never been applied
to the QEMU CVS. Please find it below.

| Multiple heap-based buffer overflows in the cirrus_invalidate_region | function in the Cirrus VGA extension in QEMU 0.8.2, as used in Xen and...

4d3b6f6e 02/10/2008 06:33 pm balrog

Add an ncurses UI.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3976 c046a42c-6fe2-441c-8c8c-71466251a162

bee8d684 12/17/2007 01:41 am ths

qemu_put signedness fixes, by Andre Przywara.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3824 c046a42c-6fe2-441c-8c8c-71466251a162

87ecb68b 11/17/2007 07:14 pm pbrook

Break up vl.h.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3674 c046a42c-6fe2-441c-8c8c-71466251a162

3b46e624 09/17/2007 11:09 am ths

find -type f | xargs sed -i 's/[\t ]*$//g' # Yes, again. Note the star in the regex.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3177 c046a42c-6fe2-441c-8c8c-71466251a162

5fafdf24 09/17/2007 12:08 am ths

find -type f | xargs sed -i 's/[\t ]$//g' # on most files

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3173 c046a42c-6fe2-441c-8c8c-71466251a162

96cf2df8 08/01/2007 02:26 am ths

Cirrus transparent BITBLT (w/o color expand), by Hitoshi Osada.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3101 c046a42c-6fe2-441c-8c8c-71466251a162

e91c8a77 06/03/2007 04:35 pm ths

Spelling fixes, by Stefan Weil.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@2927 c046a42c-6fe2-441c-8c8c-71466251a162

d34cab9f 04/02/2007 04:10 am ths

VMware SVGA II emulation, by Andrzej Zaborowski.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@2579 c046a42c-6fe2-441c-8c8c-71466251a162

83acc96b 08/18/2006 12:32 pm bellard

fixed VGA resolutions with height > 1024

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@2121 c046a42c-6fe2-441c-8c8c-71466251a162

d2269f6f 08/17/2006 01:44 pm bellard

save VGA PCI state

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@2113 c046a42c-6fe2-441c-8c8c-71466251a162

24236869 05/01/2006 12:28 am bellard

VNC server (Anthony Liguori)

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@1869 c046a42c-6fe2-441c-8c8c-71466251a162

ad81218e 04/26/2005 11:49 pm bellard

depth=24 write mask fix (Volker Ruppert)

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@1404 c046a42c-6fe2-441c-8c8c-71466251a162

e3a4e4b6 04/17/2005 08:56 pm bellard

destination write mask support, fixed banked memory access, read-only access for bus type in SR 0x17 (Volker Ruppert)

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@1364 c046a42c-6fe2-441c-8c8c-71466251a162

0b74ed78 01/26/2005 09:50 pm bellard

mode 4 and 5 write fix (Magnus Damn)

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@1241 c046a42c-6fe2-441c-8c8c-71466251a162

c9c0eae8 11/15/2004 11:43 pm bellard

bitblt fix (aka Solaris display fix)

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@1150 c046a42c-6fe2-441c-8c8c-71466251a162

9bb34eac 11/08/2004 12:54 am bellard

CRTC register write protection fix

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@1126 c046a42c-6fe2-441c-8c8c-71466251a162

8926b517 10/10/2004 06:14 pm bellard

faster Cirrus VGA VRAM access

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@1114 c046a42c-6fe2-441c-8c8c-71466251a162

2c6ab832 07/10/2004 04:41 pm bellard

load/save state support

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@992 c046a42c-6fe2-441c-8c8c-71466251a162

b30d4608 07/06/2004 04:50 am bellard

24 bpp fixes

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@984 c046a42c-6fe2-441c-8c8c-71466251a162

ae184e4a 06/26/2004 07:13 pm bellard

dac write index register is r/w - CR1D access fix (Volker Ruppert)

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@978 c046a42c-6fe2-441c-8c8c-71466251a162

46e50e9d 06/21/2004 10:43 pm bellard

added PCI bus

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@961 c046a42c-6fe2-441c-8c8c-71466251a162

e69390ce 06/10/2004 02:12 am bellard

pattern fill fixes and optimization

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@917 c046a42c-6fe2-441c-8c8c-71466251a162

78e127ef 06/08/2004 03:58 am bellard

set memory size to 4MB for 5446 - fixed memory size probe (aka Win2000 bug) - fixed interlace support

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@914 c046a42c-6fe2-441c-8c8c-71466251a162

4c8732d7 06/07/2004 10:46 pm bellard

cirrus blitter fixes

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@907 c046a42c-6fe2-441c-8c8c-71466251a162

a5082316 06/06/2004 06:16 pm bellard

hardware cursor support - fill with rop support - color expand and color expand with transparent support - various optimisations

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@902 c046a42c-6fe2-441c-8c8c-71466251a162

20ba3ae1 06/05/2004 09:50 pm bellard

better to use different ID for ISA and PCI

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@901 c046a42c-6fe2-441c-8c8c-71466251a162

a21ae81d 06/05/2004 08:59 pm bellard

change ID to CLGD5446 - added solidfill support - fixed hidden dac access

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@899 c046a42c-6fe2-441c-8c8c-71466251a162

aeb3c85f 06/05/2004 05:26 pm bellard

Cirrus fixes

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@898 c046a42c-6fe2-441c-8c8c-71466251a162

4e3e9d0b 06/05/2004 04:18 pm bellard

avoid using anonymous struct extension (not supported by all gcc 3.x)

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@896 c046a42c-6fe2-441c-8c8c-71466251a162

e36f36e1 06/05/2004 03:47 pm bellard

mmio support for vga registers - line offset fix - (aka XFree86 4.3.0 fixes)

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@894 c046a42c-6fe2-441c-8c8c-71466251a162

e6e5ad80 06/05/2004 01:31 pm bellard

Cirrus VGA emulation (initial patch by Suzu - heavily modified for easier merge)

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@891 c046a42c-6fe2-441c-8c8c-71466251a162