XLibre Xserver
Go to file
Michel Dänzer 1818cbd70f EXA: Extend mixed pixmaps scheme to allow driver PrepareAccess hook to fail.
If the PrepareAccess hook fails, use the DownloadFromScreen hook to retrieve
driver pixmap contents to a system RAM copy, perform software rendering on that
and copy the results back using the UploadToScreen hook. Use the classic
migration logic to minimize transfers (which as a bonus allows slightly
cleaning up some of the existing mixed pixmap code).

This enables things that weren't possible before with driver-allocated pixmap
storage: If some (or all) GPU pixmap storage can't be mapped directly by the
CPU, this can be handled between the PrepareAccess and
DownloadFrom/UploadToScreen hooks, e.g.:

* Radeon KMS on big endian machines can fail PrepareAccess if the pixmap
  requires byte-swapping and swap bytes in DownloadFrom/UploadToScreen.
* Environments where GPU and CPU don't have a shared address space at all.
  Here the driver PrepareAccess hook will always fail and leave all transfers
  between GPU / CPU storage to the Download/From/UploadToScreen hooks.

Drivers which can handle all pixmaps in the PrepareAccess hook should notice
little if any difference.
2009-09-26 01:59:39 +02:00
Xext Xext: switch mbuf.c to dixLookupResourceByType 2009-09-22 11:14:00 +10:00
Xi Xi: fix length calculation for ValuatorState in QueryDeviceState reply. 2009-09-25 08:16:37 +10:00
composite input: define server-supported protocol versions in one single file. 2009-09-21 21:47:35 +10:00
config config: don't shutdown the libhal ctx if it failed to initialize (#23213) 2009-08-14 11:01:20 +10:00
damageext input: define server-supported protocol versions in one single file. 2009-09-21 21:47:35 +10:00
dbe dbe: Fix indentation 2009-07-17 14:57:50 -04:00
dix Fix build of unit tests when dtrace probes are enabled 2009-09-24 16:36:25 -07:00
doc Xephyr & Xserver man page fixes 2009-07-07 17:36:24 -07:00
exa EXA: Extend mixed pixmaps scheme to allow driver PrepareAccess hook to fail. 2009-09-26 01:59:39 +02:00
fb Add xoff and yoff to drawable->x and drawable->y in create_bits_picture(). 2009-09-14 16:09:37 +10:00
glx input: define server-supported protocol versions in one single file. 2009-09-21 21:47:35 +10:00
hw kdrive: plug two memory leaks when freeing the KdKeyboard/Pointer. 2009-09-25 08:17:03 +10:00
include input: don't use typecasts to access members of InternalEvent. 2009-09-22 11:15:32 +10:00
m4 Add shave so that we can see the steaming piles of warnings generated. 2009-04-14 10:35:44 -04:00
mi input: don't use typecasts to access members of InternalEvent. 2009-09-22 11:15:32 +10:00
miext Cygwin/X: Only try to build rootless extension if multiwindow extwm mode is being built 2009-07-29 17:05:19 +01:00
os os: silence bigreqsproto compiler warning 2009-09-04 12:51:02 +10:00
randr input: define server-supported protocol versions in one single file. 2009-09-21 21:47:35 +10:00
record input: define server-supported protocol versions in one single file. 2009-09-21 21:47:35 +10:00
render render: Don't add b8g8r8x8 format for depth 24. 2009-09-23 13:10:05 +02:00
test Fix build of unit tests when dtrace probes are enabled 2009-09-24 16:36:25 -07:00
xfixes input: define server-supported protocol versions in one single file. 2009-09-21 21:47:35 +10:00
xkb input: don't use typecasts to access members of InternalEvent. 2009-09-22 11:15:32 +10:00
.gitignore Add shave so that we can see the steaming piles of warnings generated. 2009-04-14 10:35:44 -04:00
COPYING Correct some Sun license notices to Sun's standard X11 license format 2009-05-15 11:24:15 -07:00
Makefile.am Fix dist. 2009-07-23 15:32:20 -07:00
autogen.sh autogen.sh: Pass --force to autoreconf 2008-07-22 16:55:26 +03:00
configure.ac Fix build of unit tests when dtrace probes are enabled 2009-09-24 16:36:25 -07:00
cpprules.in Update xorg.conf man page & sample for changes in Xorg 1.7 2009-09-14 16:03:18 +10:00
shave-libtool.in shave: use CC tag variable on libtool 2009-09-13 16:43:42 +10:00
shave.in shave: hack around the configure ld check for make distcheck. 2009-09-04 16:41:47 +10:00
xorg-server.m4 Add xorg-server.m4 for driver dependency checking. 2005-11-01 15:01:51 +00:00
xorg-server.pc.in Since font modules are dead, don't mention them in xorg-server.pc 2009-07-09 17:21:07 -04:00