[PATCH 00/19] xf86-video-qxl cleanups, switchmode, vt segfaults
Alon Levy
alevy at redhat.com
Thu May 31 03:24:34 PDT 2012
This patchset has multiple fixes and cleanups, including:
* handle DestroyPixmap during [LeaveVT, EnterVT]. When we evacuated
all the surfaces we also destroyed all_surfaces, causing segfaults.
* tracking of mspace allocation (compile time flag, defaults to off),
including trivial accounting and valgrind assisted
* simplify switch mode by not evacuating, not needed since we are still
in control of the pci. Instead do a primary destroy followed by primary
creation.
* The uxa changes are just to remove includes that are not required (font).
* There is a trivial call to xf86CrtcConfigInit to allow later xf86_hide_cursors
in qxl_leave_vt to avoid some pixmap references until qxl_enter_vt.
I have not tested these patches with a Xinerama setup, I'd appreciate any tests
or pointing out something that wouldn't work for that scenario
(xf86CrtcConfigInit ?)
Alon Levy (19):
uxa: remove unnecessary includes, reduces warnings due to duplicate
definitions
uxa-damage: remove unnecessary include (doesn't fix any warnings)
qxl_surface: remove redundant qxl_garbage_collect, qxl_allocnf calls
it
qxl_driver: hide cursors on vt switch
qxl_surface: handle destroyed pixmaps while evacuated
qxl_mem: add debug flags, simple accounting and valgrind enabled
rename qxl_reset to qxl_reset_and_create_mem_slots
qxl_leave_vt: change outb to ioport_write (easier to grep /
breakpoint on a single point)
mspace: add mspace_malloc_stats_return
qxl_driver: abort on mspace error, don't spin (default abort
function)
qxl_pre_init: memset qxl struct
qxl_surface: cosmetics
qxl_surface: logging: add function name to ErrorF
qxl.h: add device_primary tri state UNDEFINED/NONE/CREATED
prefix io with qxl_io, add several
io: add qxl_io_destroy_primary
qxl_surface: add DEBUG_SURFACE_LIFECYCLE helpers
qxl_surface: don't unlink surface 0
qxl_switch_mode: don't evacuate, just recreate primary surface
src/mspace.c | 33 ++++++++--
src/mspace.h | 5 +-
src/qxl.h | 24 +++++++-
src/qxl_driver.c | 166 +++++++++++++++++++++++++++++++++++++++++---------
src/qxl_mem.c | 54 +++++++++++++++-
src/qxl_surface.c | 112 ++++++++++++++++++++++++++++------
src/uxa/uxa-accel.c | 2 -
src/uxa/uxa-damage.c | 1 -
src/uxa/uxa.c | 2 -
9 files changed, 336 insertions(+), 63 deletions(-)
--
1.7.10.1
More information about the xorg-devel
mailing list