summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2010-12-06Replace huge argument list in xf86CrtcSetModeTransform with structKeith Packard3-65/+115
xf86CrtcSetModeTransform was starting to get ridiculous with 6 arguments, this change has it take a single structure that contains all of those values along with a set of flags that says which have changed. Signed-off-by: Keith Packard <keithp@keithp.com> Reviewed-by: Aaron Plattner <aplattner@nvidia.com>
2010-12-06Merge remote branch 'jajones/for-keith'Keith Packard15-247/+1156
2010-12-06Merge remote branch 'whot/for-keith'Keith Packard8-33/+49
2010-12-06config: build Xserver man pages using XORG_MANPAGE_SECTIONSGaetan Nadon5-45/+41
Nothing requires the use of a C preprocessor Using standard file exentions (.man) means no need for .gitignore Use standard directory and makefile Fix man page whitespace issues Reviewed-by: Alan Coopersmith <alan.coopersmith@oracle.com> Reviewed-by: Matt Dew <matt@osource.org> Signed-off-by: Gaetan Nadon <memsize@videotron.ca> Signed-off-by: Keith Packard <keithp@keithp.com>
2010-12-06Merge remote branch 'jeremyhu/master'Keith Packard5-13/+53
2010-12-06Merge remote branch 'alanc/master'Keith Packard13-100/+82
2010-12-06Expose Sync Fence Object protocolJames Jones2-1/+25
Add the new protocol handlers for XSync 3.1 to the dispatch tables and report support for Sync protocol version 3.1. Signed-off-by: James Jones <jajones@nvidia.com> Reviewed-by: Keith Packard <keithp@keithp.com>
2010-12-06Add XSyncAwaitFence() handlerJames Jones2-32/+152
-Add the actual ProcSyncAwaitFence() dispatch func -Add support for fence sync triggers. Signed-off-by: James Jones <jajones@nvidia.com> Reviewed-by: Keith Packard <keithp@keithp.com>
2010-12-06Create/Destroy/Trigger/Reset/Query Fence Sync objsJames Jones4-5/+273
Initial server side implementation of fence sync objects. Allows creation, management, and state queries of binary state objects. Currently they are not very useful as there is no way to wait for them efficiently. The basic trigger operation added here triggers relative to a given X screen's rendering operations. To perform this operation, fence sync objects must be tied to a screen. As Aaron Plattner pointed out, screens are identified but a drawable in X protocol, so a drawable argument is included in XSyncCreateFence(). The screen also could have been specified as part of the trigger operation. However, it is also desireable to associate a screen with fence sync objects at creation time so that the associated screen's driver can allocate any HW- specific resources needed by the fence object up front. Signed-off-by: James Jones <jajones@nvidia.com> Reviewed-by: Keith Packard <keithp@keithp.com>
2010-12-06Require xextproto 7.1.99James Jones1-1/+1
Subsequent changes rely on fence sync protocol in the sync extension. This protocol is only complete in xextproto version 7.1.99 and above. Signed-off-by: James Jones <jajones@nvidia.com> Reviewed-by: Keith Packard <keithp@keithp.com>
2010-12-06Add fence sync driver interfaceJames Jones7-3/+243
-Add fence sync objects -Add fence sync devPrivates -Add a X sync module screen private -Add wrappable functions to create and destroy fence sync objects -Give fence sync objects wrappable functions to trigger, test, and reset their 'triggered' value. -Give fence sync objects wrappable functions to notify driver when adding/removing triggers to/ from the sync object. Signed-off-by: James Jones <jajones@nvidia.com> Reviewed-by: Keith Packard <keithp@keithp.com>
2010-12-06Move some sync code to miextJames Jones9-54/+165
As a precursor to the fence sync object video driver and extension API, move some code from Xext to miext/sync. Most of this is just code to set up the build system to include the new directory. No functional code is added in this change. Signed-off-by: James Jones <jajones@nvidia.com> Reviewed-by: Keith Packard <keithp@keithp.com>
2010-12-06Factor out generic code from ProcSyncAwait()James Jones1-43/+63
In preparation for adding more sync object types that will need Await requests of their own, factor out some setup and finalization code from ProcSyncAwait() into SyncAwaitPrologue() and SyncAwaitEpilogue() Signed-off-by: James Jones <jajones@nvidia.com> Reviewed-by: Keith Packard <keithp@keithp.com>
2010-12-06Make Await SyncTrigger functions genericJames Jones2-114/+200
Update all the functions dealing with Await sync triggers handle generic sync objects instead of just counters. This will facilitate code sharing between the counter sync waits and the fence sync waits. Signed-off-by: James Jones <jajones@nvidia.com> Reviewed-by: Keith Packard <keithp@keithp.com>
2010-12-06Create SyncObject base type.James Jones2-38/+73
SyncObject is now the base type for SyncCounter. Data to be used by all sync types is stored in the base object. SyncCounter can be safely cast to SyncObject, and a SyncObject can be cast to the correct type based on SyncObject::type. Signed-off-by: James Jones <jajones@nvidia.com> Reviewed-by: Keith Packard <keithp@keithp.com>
2010-12-06Add and use SERVER_SYNC_*_VERSIONJames Jones2-2/+7
Most extensions have a version defined in the protocol headers, and also in the server's protocol-versions.h. The latter defines which version the server advertises support for. Sync wasn't included in protocol-versions.h, and was advertising support for whatever was in the protocol headers the server was built against. Signed-off-by: James Jones <jajones@nvidia.com> Reviewed-by: Keith Packard <keithp@keithp.com>
2010-12-07xfree86: use xf86AllocateInput() for xorg.conf devices too.Peter Hutterer3-2/+3
Single allocation point for input devices, most notably a single point to reset default values. Without this patch, the file descriptor default was -1 for hotplugged devices and 0 for config devices. Drivers that don't overwrite the default themselves would thus fail if configured in the xorg.conf. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> Reviewed-by: Daniel Stone <daniel@fooishbar.org> Reviewed-by: Dan Nicholson <dbn.lists@gmail.com>
2010-12-07xfree86: don't overwrite option list (#32115)Peter Hutterer1-1/+2
Options set in the configuration file were unconditionally overwritten by the server. Merge the already existing options and the new options together instead of just overwriting ones. Introduced in commit 2199842ed50b3eb40d54146827fc58cae7e873ec Author: Peter Hutterer <peter.hutterer@who-t.net> Date: Thu Sep 2 10:52:54 2010 +1000 xfree86: remove extraOptions field from IDevRec. X.Org Bug 32115 <http://bugs.freedesktop.org/show_bug.cgi?id=32115> Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> Reviewed-by: Dan Nicholson <dbn.lists@gmail.com> Tested-by: David Ronis <ronis@ronispc.chem.mcgill.ca>
2010-12-07xfree86: add option "Floating", deprecate SendCoreEvents and friends.Peter Hutterer3-19/+33
Some devices should be initialised as floating from the start (e.g. Joysticks and accelerometers benefit from this). Currently users use the "SendCoreEvents" "off" flag for this, which isn't the most appropriate naming. Add an option "Floating", deprecate the others. Still parsed and handled by the server. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> Reviewed-by: Daniel Stone <daniel@fooishbar.org>
2010-12-07Xi: Fix master button update when slave buttons are mapped. #24887Eoghan Sherry1-2/+4
It is currently assumed that an event button delieved to a master device corresponds to the slave button states. However, the event button is a logical (mapped) slave button and slave button states correspond to physical (unmapped) slave buttons. This leads to incorrect update of the master button state and incorrect events devlivered to clients. Fix the situation by taking the slave button map into account when querying a slave button state. Fixes: https://bugs.freedesktop.org/show_bug.cgi?id=24887 Signed-off-by: Eoghan Sherry <ejsherry@gmail.com> Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2010-12-07mi: handle DGA subtypes when determining the master device.Peter Hutterer1-1/+7
The subtype in the DGA event is the core type and all ET_ event types (where applicable) are identical to the core types. Thus the switch statement below will work as required and assign the right master device. Fixes a crasher bug on keyboard devices with valuators. If a device sends a motion event while grabbed and a DGA client is active (but has not selected input through DGA), the valuator event is posted through the VCK and eventually results in a NULL-pointer dereference on dev->valuator. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2010-12-07dix: don't stop processing valuators when the mode changes.Peter Hutterer1-8/+0
XI 1.x events still contain absolute coordinates anyway. By the time we get to the InternalEvent to XI event conversion, the valuators are already absolute. Stopping because of a different mode on a valuator is not necessary. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> Reviewed-by: Adam Jackson <ajax@redhat.com> Reviewed-by: Chase Douglas <chase.douglas@canonical.com>
2010-12-03XQuartz: RandR: Fix mode changing for multi-monitor configurations.Jeremy Huddleston1-10/+13
This just fixes the regression whereby we couldn't switch between the legacy fullscreen mode and rootless on multi-monitor configurations. This was happening because ref wasn't being set in these cases (since we don't ever actually change CG modes), so we failed a CFEqual. Setting the references fixes this regression and places us one step closer to more mode RandR mode switching in multi-monitor configurations. Signed-off-by: Jeremy Huddleston <jeremyhu@apple.com>
2010-12-03XQuartz: Cleanup some compiler warningsJeremy Huddleston2-2/+2
Mark __crashreporter_info__ as __attribute__((__used__)) Signed-off-by: Jeremy Huddleston <jeremyhu@apple.com>
2010-12-03XQuartz: Remove one more backing store leftoverJeremy Huddleston1-1/+1
See: c4c4676e6874b42c2371eee96faa2c2dbb59a704 Signed-off-by: Jeremy Huddleston <jeremyhu@apple.com>
2010-12-03XQuartz: Disable the Mac OS X screensaver when in full screen modeJeremy Huddleston1-0/+37
Signed-off-by: Jeremy Huddleston <jeremyhu@apple.com>
2010-12-02Fix Xdmx and Xephyr build when DTrace support is enabledNicolas Peninguy1-2/+2
This fixes the following build errors when DTrace is enabled (--with-dtrace): CCLD Xdmx /usr/bin/ld: ../../os/os.O: undefined reference to symbol 'dladdr@@GLIBC_2.2.5' /usr/bin/ld: note: 'dladdr@@GLIBC_2.2.5' is defined in DSO /lib64/libdl.so.2 so try adding it to the linker command line CCLD Xephyr ../../../os/os.O: In function `TimerForce': /home/nico/work/xserver/os/WaitFor.c:481: multiple definition of `TimerForce' ../../../os/os.O:/home/nico/work/xserver/os/WaitFor.c:481: first defined here Signed-off-by: Nicolas Peninguy <nico@lostgeeks.org> Reviewed-by: Alan Coopersmith <alan.coopersmith@oracle.com> Signed-off-by: Keith Packard <keithp@keithp.com>
2010-12-02Merge remote branch 'vsyrjala/xv_reput'Keith Packard5-107/+175
2010-12-02render: Fix byteswapping of gradient stopsAndrea Canciani1-2/+2
The function swapStops repeatedly swaps the color components as CARD16, but incorrectly steps over them as if they were CARD32. This causes half of the stops not to be swapped at all and some unrelated data be swapped instead. Signed-off-by: Andrea Canciani <ranma42@gmail.com> Reviewed-by: Soren Sandmann <sandmann@daimi.au.dk> Reviewed-by: Julien Cristau <jcristau@debian.org> Signed-off-by: Keith Packard <keithp@keithp.com>
2010-12-01Fix screen number checks.Cyril Brulebois3-5/+5
screenInfo.numScreens is not a valid screen number, they go from 0 to numScreens - 1. Signed-off-by: Cyril Brulebois <kibi@debian.org> Reviewed-by: Alex Deucher <alexdeucher@gmail.com> Signed-off-by: Keith Packard <keithp@keithp.com>
2010-12-01DGA: fix screen number checkJulien Cristau1-23/+23
screenInfo.numScreens is not a valid screen number, they go from 0 to numScreens - 1. Signed-off-by: Julien Cristau <jcristau@debian.org> Reviewed-by: Keith Packard <keithp@keithp.com> Signed-off-by: Keith Packard <keithp@keithp.com>
2010-11-30Simplify Error() - don't allocate temporary copy of error stringAlan Coopersmith2-14/+7
Doesn't seem to be any reason to just not pass the error string as another argument directly to LogVWrite() Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com> Reviewed-by: Mikhail Gusarov <dottedmag@dottedmag.net> Reviewed-by: Julien Cristau <jcristau@debian.org>
2010-11-30FindModuleInSubdir: Stop allocating one more byte than neededAlan Coopersmith1-3/+3
15ac25627e7239629be59 removed the "/" from the sprintf strings, but failed to remove the extra byte allocated for the '/'. Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com> Reviewed-by: Mikhail Gusarov <dottedmag@dottedmag.net> Reviewed-by: Julien Cristau <jcristau@debian.org>
2010-11-30xf86VIDrvMsgVerb: print args, not format stringAlan Coopersmith1-1/+1
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com> Reviewed-by: Mikhail Gusarov <dottedmag@dottedmag.net> Reviewed-by: Julien Cristau <jcristau@debian.org>
2010-11-30xf86AutoConfig: make copyScreen memory allocation & error handling more saneAlan Coopersmith1-5/+15
No point calling the no-fail-alloc if you check for failure and your only caller checks for failure. No point calling calloc to zero fill memory you're about to memcpy over. In the unlikely event of a loss of memory allocation, drop your previous allocations before returning to others. Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com> Reviewed-by: Julien Cristau <jcristau@debian.org> Reviewed-by: Mikhail Gusarov <dottedmag@dottedmag.net>
2010-11-30xf86ValidateModes: xnfalloc(strlen) + strcpy => xnfstrdupAlan Coopersmith1-4/+2
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com> Reviewed-by: Mikhail Gusarov <dottedmag@dottedmag.net> Reviewed-by: Julien Cristau <jcristau@debian.org>
2010-11-30xf86OutputRename: Replace another strlen/malloc/strcpy set with strdupAlan Coopersmith1-3/+1
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com> Reviewed-by: Matt Turner <mattst88@gmail.com>
2010-11-30Fix compiler warnings in hw/xfree86/os-support/solarisAlan Coopersmith3-8/+6
sun_init.c: In function `xf86OpenConsole': sun_init.c:99: warning: cast does not match function type sun_init.c:74: warning: unused variable `FreeVTslot' sun_init.c: In function `xf86UseMsg': sun_init.c:417: warning: old-style parameter declaration sun_vid.c: In function `solUnMapVidMem': sun_vid.c:162: warning: long unsigned int format, pointer arg (arg 6) sun_vid.c: In function `xf86ReadBIOS': sun_vid.c:217: warning: long unsigned int format, pointer arg (arg 5) sun_vid.c:217: warning: long unsigned int format, int arg (arg 6) sun_agp.c: In function `xf86EnableAGP': sun_agp.c:321: warning: unsigned int format, CARD32 arg (arg 4) Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com> Reviewed-by: Julien Cristau <jcristau@debian.org>
2010-11-30Move xchomp inside #ifdef __linux__Alan Coopersmith1-1/+1
static function only called from the matchDriverFromFiles function that's inside #ifdef __linux__ section Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com> Reviewed-by: Matt Turner <mattst88@gmail.com>
2010-11-30config: Remove AC_PROG_CC, SED & INSTALL that XORG_DEFAULT_OPTIONS provideAlan Coopersmith1-3/+0
Most importantly removes AC_PROG_CC call that resets compiler flags back to C89 mode, breaking use of C99 isfinite() on Solaris in dix/devices.c. Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com> Reviewed-by: Gaetan Nadon <memsize@videotron.ca>
2010-11-30Xserver-spec: Update discussion of font libraryAlan Coopersmith1-4/+6
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com> Reviewed-by: Julien Cristau <jcristau@debian.org> Reviewed-by: Jeremy Huddleston <jeremyhu@apple.com>
2010-11-30Xserver-spec: Update location of log functionsAlan Coopersmith1-1/+1
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com> Reviewed-by: Julien Cristau <jcristau@debian.org> Reviewed-by: Jeremy Huddleston <jeremyhu@apple.com>
2010-11-30Xserver-spec: Fix assorted typosAlan Coopersmith1-11/+11
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com> Reviewed-by: Julien Cristau <jcristau@debian.org> Reviewed-by: Jeremy Huddleston <jeremyhu@apple.com>
2010-11-30Xserver-spec: Update lists of macrosAlan Coopersmith1-1/+2
LOOKUP_DRAWABLE & VERIFY_GC are no longer in dix.h, but WriteReplyToClient & WriteSwappedDataToClient are. Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com> Reviewed-by: Julien Cristau <jcristau@debian.org> Reviewed-by: Jeremy Huddleston <jeremyhu@apple.com>
2010-11-30Xserver-spec: Remove CreateCallbackListAlan Coopersmith1-18/+0
The function is defined as a static, so can't be called by anyone but AddCallback. Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com> Reviewed-by: Julien Cristau <jcristau@debian.org> Reviewed-by: Jeremy Huddleston <jeremyhu@apple.com>
2010-11-30Xserver-spec: Replace deprecated resource id lookup functionsAlan Coopersmith1-12/+23
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com> Reviewed-by: Julien Cristau <jcristau@debian.org> Reviewed-by: Jeremy Huddleston <jeremyhu@apple.com>
2010-11-30Xserver-spec: Update Memory Management functionsAlan Coopersmith1-11/+3
Xalloc, Xrealloc, & Xfree are deprecated now ALLOCATE_LOCAL is removed due to stack overflow issues Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com> Reviewed-by: Julien Cristau <jcristau@debian.org> Reviewed-by: Jeremy Huddleston <jeremyhu@apple.com>
2010-11-30Merge remote branch 'ajax/for-keithp'Keith Packard64-1551/+570
2010-11-30Merge remote branch 'aplattner/for/keith'Keith Packard1-19/+43
2010-11-30dix: do not use bit-wise operators on the boolean result of BitIsOnFerry Huberts1-6/+6
Performing bit-wise operations on a boolean amounts to mixing types, is confusing and basically incorrect; one should only perform logical operations on booleans. Performing such operations relies on the implementation detail that a boolean is in fact an integer and that its value FALSE is implemented as zero. Signed-off-by: Ferry Huberts <ferry.huberts@pelagic.nl> Reviewed-by: Matt Turner <mattst88@gmail.com> Reviewed-by: Keith Packard <keithp@keithp.com> Signed-off-by: Keith Packard <keithp@keithp.com>