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 _______________________________________________ Spice-devel mailing list Spice-devel@xxxxxxxxxxxxxxxxxxxxx http://lists.freedesktop.org/mailman/listinfo/spice-devel