platform/upstream/xorg-server.git
11 years agohw/xfree86: Only report SetDesiredModes() failed if at least one modeset fails
Chris Wilson [Thu, 10 Jan 2013 03:26:33 +0000 (03:26 +0000)]
hw/xfree86: Only report SetDesiredModes() failed if at least one modeset fails

commit 6703a7c7cf1a349c137e247a0c8eb462ff7b07be
Author: Keith Packard <keithp@keithp.com>
Date:   Tue Jan 8 20:24:32 2013 -0800

    hw/xfree86: Require only one working CRTC to start the server.

changed the logic to try to set the mode on all connected outputs rather
than abort upon the first failure. The return error code was then
tweaked such that it reported success if it set a mode on any crtc.
However, this confuses the headless case where we never enable any crtcs
and also, importantly, never fail to set a crtc.

Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=59190

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Also-written-by: Maarten Lankhorst <maarten.lankhorst@canonical.com>
Reviewed-by: Keith Packard <keithp@keithp.com>
Signed-off-by: Keith Packard <keithp@keithp.com>
11 years agoshadow: Define c2p_unsupported
Keith Packard [Thu, 25 Apr 2013 16:02:31 +0000 (09:02 -0700)]
shadow: Define c2p_unsupported

Just make this call BUG_WARN(1) to indicate that something unexpected
happened

Signed-off-by: Keith Packard <keithp@keithp.com>
11 years agoMerge remote-tracking branch 'geertu/master'
Keith Packard [Wed, 24 Apr 2013 21:14:45 +0000 (14:14 -0700)]
Merge remote-tracking branch 'geertu/master'

11 years agoMerge remote-tracking branch 'whot/for-keith'
Keith Packard [Wed, 24 Apr 2013 17:27:19 +0000 (10:27 -0700)]
Merge remote-tracking branch 'whot/for-keith'

11 years agoMerge remote-tracking branch 'airlied/for-keithp-gpu-vt-owner'
Keith Packard [Wed, 24 Apr 2013 17:23:51 +0000 (10:23 -0700)]
Merge remote-tracking branch 'airlied/for-keithp-gpu-vt-owner'

11 years agoEliminate the use of xf86Rename.h
Jeremy White [Thu, 21 Mar 2013 15:58:42 +0000 (10:58 -0500)]
Eliminate the use of xf86Rename.h

Signed-off-by: Jeremy White <jwhite@codeweavers.com>
Reviewed-by: Keith Packard <keithp@keithp.com>
Signed-off-by: Keith Packard <keithp@keithp.com>
11 years agoBump to 1.14.99.1 xorg-server-1.14.99.1
Keith Packard [Wed, 24 Apr 2013 17:11:03 +0000 (10:11 -0700)]
Bump to 1.14.99.1

Snapshot with fix for CVE-2013-1940.

Signed-off-by: Keith Packard <keithp@keithp.com>
11 years agodixstruct.h: fix segfaults - char is unsigned for ARM and PowerPC architectures
Andreas Müller [Tue, 16 Apr 2013 12:30:43 +0000 (14:30 +0200)]
dixstruct.h: fix segfaults - char is unsigned for ARM and PowerPC architectures

see ARM related bug reports [1-3]

[1] https://github.com/archlinuxarm/PKGBUILDs/issues/446I
[2] http://www.raspberrypi.org/phpBB3/viewtopic.php?t=38568&p=321673
[3] http://lists.linuxtogo.org/pipermail/openembedded-core/2013-April/037805.html

Signed-off-by: Andreas Müller <schnitzeltony@googlemail.com>
Reviewed-by: Mark Kettenis <kettenis@openbsd.org>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
11 years agodix: plug memory leak in freeing TouchClass
Peter Hutterer [Wed, 17 Apr 2013 09:47:42 +0000 (19:47 +1000)]
dix: plug memory leak in freeing TouchClass

==15562== 1,800 bytes in 1 blocks are definitely lost in loss record 298 of 330
==15562==    at 0x4A06B6F: calloc (vg_replace_malloc.c:593)
==15562==    by 0x4312C7: InitTouchClassDeviceStruct (devices.c:1644)

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Alan Coopersmith <alan.coopersmith@oracle.com>
11 years agoXfbdev: Wire up Amiga afb4 and afb8 support
Geert Uytterhoeven [Sun, 10 Mar 2013 20:04:19 +0000 (21:04 +0100)]
Xfbdev: Wire up Amiga afb4 and afb8 support

Add support for Amiga-style bitplanes, with 4 or 8 bits per pixel.

Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Acked-by: Keith Packard <keithp@keithp.com>
11 years agoXfbdev: Wire up Atari iplan2p4 and iplan2p8 support
Geert Uytterhoeven [Sun, 10 Mar 2013 16:17:26 +0000 (17:17 +0100)]
Xfbdev: Wire up Atari iplan2p4 and iplan2p8 support

Add support for Atari-style interleaved bitplanes, with 2 bytes interleave
and 4 or 8 bits per pixel.

Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Reviewed-by: Keith Packard <keithp@keithp.com>
11 years agoXfbdev: Force shadowfb for frame buffers with non-packed pixels
Geert Uytterhoeven [Sun, 10 Mar 2013 16:17:26 +0000 (17:17 +0100)]
Xfbdev: Force shadowfb for frame buffers with non-packed pixels

Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Reviewed-by: Keith Packard <keithp@keithp.com>
11 years agoXfbdev: Reject unsupported frame buffer types
Geert Uytterhoeven [Sun, 10 Mar 2013 16:17:26 +0000 (17:17 +0100)]
Xfbdev: Reject unsupported frame buffer types

Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Reviewed-by: Keith Packard <keithp@keithp.com>
11 years agoShadow: Add support for Amiga afb8
Geert Uytterhoeven [Sun, 10 Mar 2013 20:03:44 +0000 (21:03 +0100)]
Shadow: Add support for Amiga afb8

Add support for Amiga-style bitplanes, with 8 bits per pixel.

Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Acked-by: Keith Packard <keithp@keithp.com>
11 years agoShadow: Add support for Amiga afb4
Geert Uytterhoeven [Wed, 27 Mar 2013 08:37:02 +0000 (09:37 +0100)]
Shadow: Add support for Amiga afb4

Add support for Amiga-style bitplanes, with 4 bits per pixel.

Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Acked-by: Keith Packard <keithp@keithp.com>
11 years agoShadow: Add support for Atari iplan2p8
Geert Uytterhoeven [Sun, 10 Mar 2013 16:16:17 +0000 (17:16 +0100)]
Shadow: Add support for Atari iplan2p8

Add support for Atari-style interleaved bitplanes, with 2 bytes interleave
and 8 bits per pixel.

Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Acked-by: Keith Packard <keithp@keithp.com>
11 years agoShadow: Add support for Atari iplan2p4
Geert Uytterhoeven [Sun, 10 Mar 2013 20:01:02 +0000 (21:01 +0100)]
Shadow: Add support for Atari iplan2p4

Add support for Atari-style interleaved bitplanes, with 2 bytes interleave
and 4 bits per pixel.

Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Acked-by: Keith Packard <keithp@keithp.com>
11 years agoShadow: Add c2p core
Geert Uytterhoeven [Sun, 10 Mar 2013 16:15:05 +0000 (17:15 +0100)]
Shadow: Add c2p core

Add Chunky-to-Planar core functionality, to be used by the Atari and Amiga
(interleaved) bitplanes code.

Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Acked-by: Keith Packard <keithp@keithp.com>
11 years agoXfbdev: Treat 1 bpp pseudocolor as monochrome
Geert Uytterhoeven [Tue, 12 Mar 2013 17:10:40 +0000 (18:10 +0100)]
Xfbdev: Treat 1 bpp pseudocolor as monochrome

miCreateDefColormap() only preallocates black and white pixels if
depth > 1.
Hence override the visual, so fbdevCreateColormap() takes care of it.

Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Reviewed-by: Keith Packard <keithp@keithp.com>
11 years agoXfbdev: Add support for monochrome visuals
Geert Uytterhoeven [Tue, 12 Mar 2013 13:16:10 +0000 (14:16 +0100)]
Xfbdev: Add support for monochrome visuals

Monochrome supports StaticGray, with hardcoded black and white pixels.

Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Reviewed-by: Keith Packard <keithp@keithp.com>
11 years agoXfbdev: Handle unset fix.line_length
Geert Uytterhoeven [Tue, 12 Mar 2013 13:19:25 +0000 (14:19 +0100)]
Xfbdev: Handle unset fix.line_length

Older frame buffer devices may not fill in fix.line_length, in which
case it must be calculated by the application.

Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
11 years agoXfbdev: Make char *fbdevDevicePath const
Geert Uytterhoeven [Fri, 22 Feb 2013 12:21:28 +0000 (13:21 +0100)]
Xfbdev: Make char *fbdevDevicePath const

This fixes:

hw/kdrive/fbdev/fbdev.c: In function 'fbdevInitialize':
hw/kdrive/fbdev/fbdev.c:41:25: warning: assignment discards 'const' qualifier from pointer target type [enabled by default]

Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Reviewed-by: Keith Packard <keithp@keithp.com>
11 years agoKDrive: Bail out if screen initialization failed
Geert Uytterhoeven [Tue, 12 Mar 2013 14:20:00 +0000 (15:20 +0100)]
KDrive: Bail out if screen initialization failed

Else we may get a segmentation fault later.

Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Reviewed-by: Keith Packard <keithp@keithp.com>
11 years agotest/input: Fix double-aligned test in dix_valuator_alloc() on m68k
Geert Uytterhoeven [Sat, 23 Feb 2013 19:09:22 +0000 (20:09 +0100)]
test/input: Fix double-aligned test in dix_valuator_alloc() on m68k

On m68k, doubles are not 64-bit aligned, just like on i386 and sh.

Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
11 years agomiext/shadow/shpacked.c: Remove unused PickBit() define
Geert Uytterhoeven [Fri, 22 Feb 2013 20:10:07 +0000 (21:10 +0100)]
miext/shadow/shpacked.c: Remove unused PickBit() define

Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Reviewed-by: Keith Packard <keithp@keithp.com>
11 years agoxf86: fix flush input to work with Linux evdev devices.
Dave Airlie [Wed, 10 Apr 2013 06:09:01 +0000 (16:09 +1000)]
xf86: fix flush input to work with Linux evdev devices.

So when we VT switch back and attempt to flush the input devices,
we don't succeed because evdev won't return part of an event,
since we were only asking for 4 bytes, we'd only get -EINVAL back.

This could later cause events to be flushed that we shouldn't have
gotten.

This is a fix for CVE-2013-1940.

Signed-off-by: Dave Airlie <airlied@redhat.com>
Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
11 years agoStop the shouting
Peter Hutterer [Mon, 27 Feb 2012 08:50:46 +0000 (18:50 +1000)]
Stop the shouting

Meanwhile, here in the future lowercase letters have been invented.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Chase Douglas <chase.douglas@canonical.com>
11 years agodix: only allocate unused classes for master devices
Peter Hutterer [Mon, 27 Feb 2012 07:22:16 +0000 (17:22 +1000)]
dix: only allocate unused classes for master devices

Slave devices don't need these and the matching code in CloseDevice() has a
IsMaster() condition on freeing these, causing a leak.

==16111== 384 bytes in 4 blocks are definitely lost in loss record 72 of 105
==16111==    at 0x4C28BB4: calloc (vg_replace_malloc.c:467)
==16111==    by 0x42AEE2: AllocDevicePair (devices.c:2707)
==16111==    by 0x4BAA27: AllocXTestDevice (xtest.c:617)
==16111==    by 0x4BA89A: InitXTestDevices (xtest.c:570)
==16111==    by 0x425F5E: InitCoreDevices (devices.c:690)
==16111==    by 0x5ACB2D: main (main.c:257)

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Chase Douglas <chase.douglas@canonical.com>
11 years agodix: copy event in TouchConvertToPointerEvent correctly
Maarten Lankhorst [Mon, 15 Apr 2013 14:53:48 +0000 (16:53 +0200)]
dix: copy event in TouchConvertToPointerEvent correctly

Fixes reading random memory read beyond the end of original event.

sizeof device_event: 424
sizeof internal_event: 2800

Signed-off-by: Maarten Lankhorst <maarten.lankhorst@canonical.com>
Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
11 years agoNever try to execute BellProcPtr NULL.
Knut Petersen [Tue, 26 Feb 2013 06:52:59 +0000 (07:52 +0100)]
Never try to execute BellProcPtr NULL.

This prevents xts XI/XDeviceBell-2 test
from segfaulting the server.

Signed-off-by: Knut Petersen <Knut_Petersen@t-online.de>
Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
11 years agoXi: fix swapped grab mode args for keyboard devices in XIGrabDevice
Rui Matos [Sat, 13 Apr 2013 02:22:54 +0000 (04:22 +0200)]
Xi: fix swapped grab mode args for keyboard devices in XIGrabDevice

The protocol says that the grab_mode argument applies to the device
being grabbed and paired_device_mode to the paired master
device. GrabDevice() however takes in a pointer mode and a keyboard
mode and so we have to swap the values according the type of device
being grabbed.

Signed-off-by: Rui Matos <tiagomatos@gmail.com>
Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
11 years agoxfree86: Revert workaround for drm race condition.
Bryce Harrington [Thu, 11 Apr 2013 06:05:40 +0000 (23:05 -0700)]
xfree86: Revert workaround for drm race condition.

Revert 70739e817b2d64bc020ea491f23a3574bdb6155e and mostly revert
c31eac647a9ecf0fb20dc98266cadf0ba923ba14.

Further investigation shows the encountered race condition is between
lightdm and plymouth-splash, as implemented in the Ubuntu distribution
within the limitations of upstart's job coordination logic, and can (and
should) be fixed within those limiations.  Not in xserver itself.

This leaves some of the diagnostic improvements from the recent patch
series, in case others run into a similar situation.

Signed-off-by: Bryce Harrington <bryce@canonical.com>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
11 years agoxfree86: change a log message
Peter Hutterer [Thu, 11 Apr 2013 23:14:53 +0000 (09:14 +1000)]
xfree86: change a log message

This path is technically executed through config/udev, but having two
messages in the form "config/udev: Adding drm device" makes it appear as if
the udev filters are wrong and it's trying to add the same device twice. In
fact, it's only one device, only added once, but a duplicate log message.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Dave Airlie <airlied@redhat.com>
11 years agoxf86: don't hotplug output devices while VT switched.
Dave Airlie [Wed, 10 Apr 2013 06:32:15 +0000 (16:32 +1000)]
xf86: don't hotplug output devices while VT switched.

We don't want to hotplug output devices while we are VT switched,
as we get races between multiple X servers on the device open, and
drm device master status. This just queues device opens until we return
from VT switch.

Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
Signed-off-by: Dave Airlie <airlied@redhat.com>
11 years agoxf86: use new xf86VTOwner interface in a few places
Dave Airlie [Wed, 10 Apr 2013 06:32:11 +0000 (16:32 +1000)]
xf86: use new xf86VTOwner interface in a few places

This replaces some previous uses of direct xf86Screens[0] accesses.

Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
Signed-off-by: Dave Airlie <airlied@gmail.com>
11 years agoxfree86: add VT owner interface
Dave Airlie [Wed, 10 Apr 2013 06:32:02 +0000 (16:32 +1000)]
xfree86: add VT owner interface

This is just a simple interface to avoid accessing x86Screens[0]
directly.

Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
Signed-off-by: Dave Airlie <airlied@gmail.com>
11 years agoXi: Do not handle ET_TouchOwnership in ProcessTouchEvent
Maarten Lankhorst [Tue, 9 Apr 2013 09:19:07 +0000 (11:19 +0200)]
Xi: Do not handle ET_TouchOwnership in ProcessTouchEvent

The event struct is different, causing memory corruption on 1.13 and 1.14,

as can be witnessed in https://bugs.freedesktop.org/show_bug.cgi?id=56578

Signed-off-by: Maarten Lankhorst <maarten.lankhorst@canonical.com>
Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
11 years agoXi: Use correct destination when swapping barrier events
Keith Packard [Tue, 9 Apr 2013 23:23:19 +0000 (16:23 -0700)]
Xi: Use correct destination when swapping barrier events

Write the swapped values to the destination rather than the source.

Signed-off-by: Keith Packard <keithp@keithp.com>
Reviewed-by: Jasper St. Pierre <jstpierre@mecheye.net>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
11 years agodix: don't set non-exisiting flags on touch events
Peter Hutterer [Sun, 3 Mar 2013 21:58:41 +0000 (07:58 +1000)]
dix: don't set non-exisiting flags on touch events

Unlike pointer/keyboard events, the flags field for ET_Touch* is a set of
server-internal defines that we need to convert to XI protocol defines.
Currently only two of those defines actually translate to the protocol, so
make sure we don't send internal garbage down the wire.

No effect to current clients since they shouldn't look at undefined bits
anyway.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
11 years agoDefine prototypes for hw/xfree86/modes/xf86Modes.c only in xf86Modes.h.
Jeremy White [Thu, 21 Mar 2013 15:58:57 +0000 (10:58 -0500)]
Define prototypes for hw/xfree86/modes/xf86Modes.c only in xf86Modes.h.

This removes a large number of redundant declaration warnings.

Signed-off-by: Jeremy White <jwhite@codeweavers.com>
Reviewed-by: Robert Morell <rmorell@nvidia.com>
Signed-off-by: Keith Packard <keithp@keithp.com>
11 years agoxfree86: Be verbose if waiting on opening the drm device
Bryce Harrington [Tue, 19 Mar 2013 19:12:46 +0000 (12:12 -0700)]
xfree86: Be verbose if waiting on opening the drm device

Signed-off-by: Bryce Harrington <bryce@canonical.com>
Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
Signed-off-by: Keith Packard <keithp@keithp.com>
11 years agoxfree86: Fix race condition failure opening drm.
Bryce Harrington [Tue, 19 Mar 2013 19:12:45 +0000 (12:12 -0700)]
xfree86: Fix race condition failure opening drm.

If other processes have had drm open previously, xserver may attempt to
open the device too early and fail, with xserver error exit "Cannot
run in framebuffer mode" or Xorg.0.log messages about "setversion 1.4
failed".

In this situation, we're receiving back -EACCES from libdrm.  To address
this we need to re-set ourselves as the drm master, and keep trying to
set the interface until it works (or until we give up).

See https://bugs.launchpad.net/ubuntu/+source/libdrm/+bug/982889

Signed-off-by: Bryce Harrington <bryce@canonical.com>
Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
Signed-off-by: Keith Packard <keithp@keithp.com>
11 years agoxfree86: Keep trying to set interface on drm for 2 seconds.
Bryce Harrington [Tue, 19 Mar 2013 19:12:44 +0000 (12:12 -0700)]
xfree86: Keep trying to set interface on drm for 2 seconds.

And if we've had to delay booting due to not being able to set the
interface, fess up.

Signed-off-by: Bryce Harrington <bryce@canonical.com>
Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
Signed-off-by: Keith Packard <keithp@keithp.com>
11 years agoxfree86: Provide more details on failure
Bryce Harrington [Tue, 19 Mar 2013 19:12:43 +0000 (12:12 -0700)]
xfree86: Provide more details on failure

Signed-off-by: Bryce Harrington <bryce@canonical.com>
Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
Signed-off-by: Keith Packard <keithp@keithp.com>
11 years agoxfree86: Track error code and add label for error handling.
Bryce Harrington [Tue, 19 Mar 2013 19:12:42 +0000 (12:12 -0700)]
xfree86: Track error code and add label for error handling.

Signed-off-by: Bryce Harrington <bryce@canonical.com>
Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
Signed-off-by: Keith Packard <keithp@keithp.com>
11 years agoxfree86: (Cleanup) Close fd if drm interface 1.4 could not be set.
Bryce Harrington [Tue, 19 Mar 2013 19:12:41 +0000 (12:12 -0700)]
xfree86: (Cleanup) Close fd if drm interface 1.4 could not be set.

Signed-off-by: Bryce Harrington <bryce@canonical.com>
Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
Signed-off-by: Keith Packard <keithp@keithp.com>
11 years agokdrive/fbdev: revive randr new screen size logic
Geert Uytterhoeven [Mon, 18 Mar 2013 20:38:10 +0000 (21:38 +0100)]
kdrive/fbdev: revive randr new screen size logic

hw/kdrive/fbdev/fbdev.c: In function 'fbdevRandRSetConfig':
hw/kdrive/fbdev/fbdev.c:470:19: warning: variable 'newheight' set but not used [-Wunused-but-set-variable]
hw/kdrive/fbdev/fbdev.c:470:9: warning: variable 'newwidth' set but not used [-Wunused-but-set-variable]

Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
11 years agoRevert "kdrive: fix "set but not used" warnings"
Peter Hutterer [Mon, 25 Mar 2013 04:51:58 +0000 (14:51 +1000)]
Revert "kdrive: fix "set but not used" warnings"

Partial revert of commit 4149ee8ec0193acbf3812c7ee2627b93b9a89997, better
fix coming up.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
11 years agoxserver: add monitor Option "ZoomModes" [v2]
vdb@picaros.org [Thu, 7 Mar 2013 15:07:31 +0000 (16:07 +0100)]
xserver: add monitor Option "ZoomModes" [v2]

Section "Monitor"
  Identifier "a21inch"
  Option "PreferredMode" "1600x1200"
  Option "ZoomModes" "1600x1200 1280x1024 1280x1024 640x480"
EndSection

The option's effect is to search for and mark once each named mode in
the output modes list.  So the specification order is free and the zoom
modes sequence follows the order of the output modes list.  All marked
modes are available via the Ctrl+Alt+Keypad-{Plus,Minus} key
combination.

See also http://bugs.freedesktop.org/show_bug.cgi?id=17954.

This option has its use for combined monitor and television setups.
It allows for easy switching between 60 Hz and 50 Hz modes even when a
monitor refuses to display the input signal.

(Includes a few minor changes suggested by Aaron for v2)

Signed-off-by: Servaas Vandenberghe <vdb@picaros.org>
Reviewed-by: Aaron Plattner <aplattner@nvidia.com>
Signed-off-by: Keith Packard <keithp@keithp.com>
11 years agoXi: add a comment to make a condition a bit clearer
Peter Hutterer [Thu, 28 Feb 2013 00:43:05 +0000 (10:43 +1000)]
Xi: add a comment to make a condition a bit clearer

The commit message to 676447190190d8546165e21be242cf16dd69f5ae explains it,
but that doesn't stop the WTF moment when reading the code.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Keith Packard <keithp@keithp.com>
11 years agodix: update coords for touch events in PlayReleasedEvents
Peter Hutterer [Mon, 25 Feb 2013 05:21:32 +0000 (15:21 +1000)]
dix: update coords for touch events in PlayReleasedEvents

Note: this is only hit for #ifdef PANORAMIX

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Keith Packard <keithp@keithp.com>
11 years agoXi: compress two if statements with the same body
Peter Hutterer [Thu, 28 Feb 2013 00:30:15 +0000 (10:30 +1000)]
Xi: compress two if statements with the same body

We do the same thing here, compress them into one body.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Keith Packard <keithp@keithp.com>
11 years agodix: fix a comment
Peter Hutterer [Mon, 25 Feb 2013 01:13:52 +0000 (11:13 +1000)]
dix: fix a comment

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Keith Packard <keithp@keithp.com>
11 years agoXi: use a temp variable for the new listener
Peter Hutterer [Thu, 28 Feb 2013 22:26:06 +0000 (08:26 +1000)]
Xi: use a temp variable for the new listener

Instead of accessing ti->listener[0] all the time.

No functional changes.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Keith Packard <keithp@keithp.com>
11 years agoXi: return !Success from DeliverTouchEmulatedEvent if we didn't deliver
Peter Hutterer [Thu, 28 Feb 2013 22:43:58 +0000 (08:43 +1000)]
Xi: return !Success from DeliverTouchEmulatedEvent if we didn't deliver

All callers currently ignore the new value, so this patch has no effect.
Inverse call graph:

DeliverTouchEmulatedEvent
        DeliverEmulatedMotionEvent              Ignores value
        DeliverTouchBeginEvent
                DeliverTouchEvent
                        DeliverTouchEvents      Ignores value
        DeliverTouchEndEvent
                DeliverTouchEvent
                        DeliverTouchEvents      Ignores value

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Keith Packard <keithp@keithp.com>
11 years agoglx: fix uninitialized var in __glXDRIscreenProbe
Piotr Dziwinski [Sat, 23 Feb 2013 12:14:45 +0000 (13:14 +0100)]
glx: fix uninitialized var in __glXDRIscreenProbe

Fixes: https://bugs.freedesktop.org/show_bug.cgi?id=59825

Signed-off-by: Piotr Dziwinski <piotrdz@gmail.com>
Reviewed-by: Keith Packard <keithp@keithp.com>
Signed-off-by: Keith Packard <keithp@keithp.com>
11 years agoMerge remote-tracking branch 'whot/for-keith'
Keith Packard [Mon, 18 Mar 2013 18:26:24 +0000 (11:26 -0700)]
Merge remote-tracking branch 'whot/for-keith'

11 years agoGLX/DRI2: Do not expose INTEL_swap_event without swap control
Zack Rusin [Thu, 14 Feb 2013 23:06:57 +0000 (15:06 -0800)]
GLX/DRI2: Do not expose INTEL_swap_event without swap control

Swap events depent on the implementation of ScheduleSwap. By
unconditionally enabling GLX_INTEL_swap_event we're breaking
the system with drivers that don't support it because the apps
are forever stuck waiting for an event that will never be
delivered. So lets enable the extension only if the hooks it
depends on are actually there.

Signed-off-by: Zack Rusin <zackr@vmware.com>
Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
Signed-off-by: Keith Packard <keithp@keithp.com>
11 years agoMerge remote-tracking branch 'whot/next'
Keith Packard [Mon, 18 Mar 2013 18:18:58 +0000 (11:18 -0700)]
Merge remote-tracking branch 'whot/next'

11 years agoFull support of sRGB capable fbconfigs.
Tomasz Lis [Mon, 11 Mar 2013 09:21:28 +0000 (10:21 +0100)]
Full support of sRGB capable fbconfigs.

Changes to correctly initialize the sRGB capability attribute and
transfer it between XServer and the client. Modifications include
extension string, transferring visual config attribs and fbconfig
attribs. Also, attribute is initialized in the modules which do not
really use it (xquartz and xwin).
This version advertises both ARB and EXT strings, and initializes
the capability to default value of FALSE. It has corrected required
GLX version and does not influence swrast. The sRGB capable attribute
is attached only to those configs which do have this capability.
Both ARB and EXT versions share the same GLX extension enabling bit.

Signed-off-by: Tomasz Lis <tomasz.lis@intel.com>
Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
Signed-off-by: Keith Packard <keithp@keithp.com>
11 years agoBump release to 1.14.99.0
Keith Packard [Mon, 18 Mar 2013 17:01:20 +0000 (10:01 -0700)]
Bump release to 1.14.99.0

Get us off the release number so that we don't conflict with the
stable branch.

Signed-off-by: Keith Packard <keithp@keithp.com>
11 years agolist.h: Make xorg_list_init inline
Robert Morell [Tue, 12 Mar 2013 16:40:16 +0000 (09:40 -0700)]
list.h: Make xorg_list_init inline

Otherwise this file is emitted in every unit that includes it.

Signed-off-by: Robert Morell <rmorell@nvidia.com>
Reviewed-by: Jamey Sharp <jamey@minilop.net>
Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
11 years agoconfigure.ac: Require inputproto 2.3
Robert Morell [Tue, 12 Mar 2013 16:37:43 +0000 (09:37 -0700)]
configure.ac: Require inputproto 2.3

This picks up support for Xi pointer barriers in the protocol.

Signed-off-by: Robert Morell <rmorell@nvidia.com>
Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
11 years agoxfixes: ifdef PanoramiXFixes* (#62015)
Peter Hutterer [Sat, 9 Mar 2013 07:12:53 +0000 (17:12 +1000)]
xfixes: ifdef PanoramiXFixes* (#62015)

Fixes build failure with --disable-xinerama introduced by
482e0cb cursor: Move pointer barrier code over to XI

Reason is new include order: sdksyms.sh includes xfixes.h, which previously
did not include xfixesint.h.

As of 482e0cb xfixes.h includes xibarriers.h which includes xfixesint.h

X.Org Bug 62015 <http://bugs.freedesktop.org/show_bug.cgi?id=62015>

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Tested-by: Daniel Martin <consume.noise@gmail.com>
11 years agofb: Rename wfbDestroyGlyphCache
Aaron Plattner [Wed, 6 Mar 2013 17:40:28 +0000 (09:40 -0800)]
fb: Rename wfbDestroyGlyphCache

Renaming this function was missed in commit
9cbcb5bd6a5360a128d15b77a02d8d3351f74366, so both libfb.so and libwfb.so define
functions named fbDestroyGlyphCache.

Signed-off-by: Aaron Plattner <aplattner@nvidia.com>
Reviewed-by: Søren Sandmann <ssp@redhat.com>
Signed-off-by: Keith Packard <keithp@keithp.com>
11 years agoVersion bumped to 1.14 xorg-server-1.14.0
Keith Packard [Wed, 6 Mar 2013 06:31:17 +0000 (22:31 -0800)]
Version bumped to 1.14

Signed-off-by: Keith Packard <keithp@keithp.com>
11 years agoxkb: Fixes to LatchMods/LatchGroup
Andreas Wettstein [Sun, 3 Mar 2013 19:25:44 +0000 (20:25 +0100)]
xkb: Fixes to LatchMods/LatchGroup

The main problem this patch addresses is that if a latch is put on
multi-level key with a Latch/Lock/Set, it is possible that after all
keys are released, still base modifiers are set, which typically will
make the keyboard unusable.  To see how it happens (without the patch),
assume that key AltGr sets Mod5 when pressed by itself, and latches Mod3
when pressed together with Shift.  Now press Shift, then AltGr and
release both keys in reverse order.  Mod3 is now latched, and the
LatchMods filter remains active as the second filter.  Now press AltGr;
Mod5 base modifier gets set, and the SetMods filter will become active
as the first filter.  Release AltGr: First, the SetMods filter will set
clearMods to Mod5, then the LatchMods filter will overwrite clearMods
with Mod3.  Result: the Mod5 base modifier will remain set.  This
example becomes practically relevant for the revised German standard
layout (DIN 2137-1:2012-06).

Other changes implement the latch behaviour more accurately according to
the specification.  For example, releasing a modifier latching key can
at the same time clear a locked modifier, promote another modifier that
is latched to locked, and latch a third modifier.  Overall, what the
code does should be straightforward to compare what the XKB protocol
specification demands, see the table in section 6.3.

Finally, releasing a key no longer cancels a latch that has not become
pending yet.  In my opinion, the specification is not clear; it speaks
of "operating" a key, which the patch effectivly interprets as "press"
rather than "press or release".  From my experience, using the latter
interpretation makes latches on higher levels practically unusable.  In
the example given above, one would have to release AltGr always before
Shift to get the Mod3-Latch.  The practical relevance of latches on
higher levels is once more given by the revised German standard layout.

Signed-off-by: Andreas Wettstein <wettstein509@solnet.ch>
Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
11 years agoxephyr: fix "set but not used warnings"
Peter Hutterer [Fri, 15 Feb 2013 01:19:09 +0000 (11:19 +1000)]
xephyr: fix "set but not used warnings"

ephyrvideo.c: In function 'ephyrPutVideo':
ephyrvideo.c:1009:42: warning: variable 'drw_h' set but not used
ephyrvideo.c:1009:31: warning: variable 'drw_w' set but not used
ephyrvideo.c:1009:20: warning: variable 'drw_y' set but not used
ephyrvideo.c:1009:9: warning: variable 'drw_x' set but not used
ephyrvideo.c: In function 'ephyrGetVideo':
ephyrvideo.c:1058:42: warning: variable 'drw_h' set but not used
ephyrvideo.c:1058:31: warning: variable 'drw_w' set but not used
ephyrvideo.c:1058:20: warning: variable 'drw_y' set but not used
ephyrvideo.c:1058:9: warning: variable 'drw_x' set but not used
ephyrvideo.c: In function 'ephyrPutStill':
ephyrvideo.c:1107:42: warning: variable 'drw_h' set but not used
ephyrvideo.c:1107:31: warning: variable 'drw_w' set but not used
ephyrvideo.c:1107:20: warning: variable 'drw_y' set but not used
ephyrvideo.c:1107:9: warning: variable 'drw_x' set but not used
ephyrvideo.c: In function 'ephyrGetStill':
ephyrvideo.c:1156:42: warning: variable 'drw_h' set but not used
ephyrvideo.c:1156:31: warning: variable 'drw_w' set but not used
ephyrvideo.c:1156:20: warning: variable 'drw_y' set but not used
ephyrvideo.c:1156:9: warning: variable 'drw_x' set but not used

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Robert Morell <rmorell@nvidia.com>
11 years agokdrive: fix "set but not used" warnings
Peter Hutterer [Fri, 15 Feb 2013 01:19:08 +0000 (11:19 +1000)]
kdrive: fix "set but not used" warnings

kinput.c: In function 'KdEnqueueKeyboardEvent':
kinput.c:1845:16: warning: variable 'ctrl' set but not used
kinput.c:1844:17: warning: variable 'keyc' set but not used

kinput.c: In function 'KdEnqueuePointerEvent':
kinput.c:1887:12: warning: variable 'ms' set but not used

kxv.c: In function 'KdXVDisable':
kxv.c:1181:19: warning: variable 'ScreenPriv' set but not used

mouse.c: In function 'ps2SkipInit':
mouse.c:444:9: warning: variable 'skipping' set but not used
mouse.c: In function 'ps2Init':
mouse.c:473:10: warning: variable 'waiting' set but not used
mouse.c:472:9: warning: variable 'skipping' set but not used

fbdev.c: In function 'fbdevRandRSetConfig':
fbdev.c:468:19: warning: variable 'newheight' set but not used
fbdev.c:468:9: warning: variable 'newwidth' set but not used

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Robert Morell <rmorell@nvidia.com>
11 years agoos: document pnprintf as sigsafe snprintf
Peter Hutterer [Mon, 18 Feb 2013 04:57:58 +0000 (14:57 +1000)]
os: document pnprintf as sigsafe snprintf

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
11 years agodix: only show the cursor if a window defines one (#58398)
Peter Hutterer [Tue, 18 Dec 2012 04:12:40 +0000 (14:12 +1000)]
dix: only show the cursor if a window defines one (#58398)

e02f864fdf "Suppress cursor display until the first XDefineCursor() request"
disabled cursor display a priori unless -retro is given.

On a plain server, caling XFixesHideCursor() and XFixesShowCursor() would
show the default root cursor, despite no client actually defining a cursor.

Change the logic, disable CursorVisible by default and only enable it from
the window's CWCursor logic. If no window ever defines a cursor, said cursor
stays invisible.

X.Org Bug 58398 <http://bugs.freedesktop.org/show_bug.cgi?id=58398>

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Tested-by: Bastien Nocera <hadess@hadess.net>
Reviewed-by: Daniel Martin <consume.noise@gmail.com>
11 years agoDPMS: include GPU screens in DPMS code
Aaron Plattner [Tue, 5 Mar 2013 21:04:46 +0000 (13:04 -0800)]
DPMS: include GPU screens in DPMS code

Otherwise, displays driven by GPU screens remain on all the time.

Signed-off-by: Aaron Plattner <aplattner@nvidia.com>
Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
Signed-off-by: Keith Packard <keithp@keithp.com>
11 years agoXi: force dtime to 0 on the first BarrierHit
Peter Hutterer [Tue, 5 Mar 2013 00:14:29 +0000 (10:14 +1000)]
Xi: force dtime to 0 on the first BarrierHit

dtime to the previous event is 0 on the first BarrierHit event.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Jasper St. Pierre <jstpierre@mecheye.net>
Signed-off-by: Keith Packard <keithp@keithp.com>
11 years agoMerge commit '6ea59dc2d8887102bfd8d7c838d2e7ab17645aec'
Keith Packard [Tue, 5 Mar 2013 05:09:59 +0000 (21:09 -0800)]
Merge commit '6ea59dc2d8887102bfd8d7c838d2e7ab17645aec'

11 years agoxibarriers: Remove accidental use of the comma operator
Jasper St. Pierre [Sun, 3 Mar 2013 09:50:55 +0000 (04:50 -0500)]
xibarriers: Remove accidental use of the comma operator

Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
11 years agoephyr: Fix crash on 24bpp host framebuffer
Daniel Martin [Thu, 20 Dec 2012 12:50:17 +0000 (13:50 +0100)]
ephyr: Fix crash on 24bpp host framebuffer

Use bytes_per_line and bits_per_pixel from the created XImage to fix
    https://bugzilla.redhat.com/show_bug.cgi?id=518960

Signed-off-by: Daniel Martin <consume.noise@gmail.com>
Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
11 years agorandr: cleanup provider properly
Dave Airlie [Wed, 9 Jan 2013 02:58:28 +0000 (12:58 +1000)]
randr: cleanup provider properly

So in the cold plug server shutdown case, we reap the resources
before we call CloseScreen handlers, so the config->randr_provider
is a dangling pointer when the xf86CrtcCloseScreen handler is called,

however in the hot screen unplug case, we can't rely on automatically
reaped resources, so we need to clean up the provider in the xf86CrtcCloseScreen
case.

This patch provides a cleanup callback from the randr provider removal
into the DDX so it can cleanup properly, this then gets called by the automatic
code for cold plug, or if hot unplug it gets called explicitly.

Fixes a number of random server crashes on shutdown
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=58174
Bugzilla: https://bugzilla.redhat.com/show_bug.cgi?id=891140

Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
Signed-off-by: Dave Airlie <airlied@redhat.com>
11 years agoxf86: actually set the compat output in the failure case
Dave Airlie [Wed, 9 Jan 2013 02:53:14 +0000 (12:53 +1000)]
xf86: actually set the compat output in the failure case

The previous fix for the previous fix, didn't fully work,

If we don't set compat_output we end up doing derferences
of arrays with -1, leading to valgrind warnings.

Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
Signed-off-by: Dave Airlie <airlied@redhat.com>
11 years agoxfree86/hotplug: cleanup properly if the screen fails to initialise
Dave Airlie [Wed, 9 Jan 2013 02:51:45 +0000 (12:51 +1000)]
xfree86/hotplug: cleanup properly if the screen fails to initialise

Due to another bug, the modesetting/udl driver would fail to init properly
on hotplug, when it did the code didn't clean up properly, and on removing
the device the server could crash.

Found in F18 testing.

Signed-off-by: Dave Airlie <airlied@redhat.com>
Reviewed-by: Aaron Plattner <aplattner@nvidia.com>
11 years agoos: use libunwind to generate backtraces
Marcin Slusarz [Wed, 20 Feb 2013 23:02:44 +0000 (09:02 +1000)]
os: use libunwind to generate backtraces

Libunwind generates backtraces much more reliably than glibc's "backtrace".

Before:
0: /opt/xserver/bin/X (0x400000+0x18ce36) [0x58ce36]
1: /opt/xserver/bin/X (xorg_backtrace+0x9) [0x58d119]
2: /opt/xserver/bin/X (0x400000+0x190d69) [0x590d69]
3: /lib64/libpthread.so.0 (0x7fb904268000+0x10a90) [0x7fb904278a90]
4: /lib64/libc.so.6 (ioctl+0x7) [0x7fb902fbf987]
5: /usr/lib64/libdrm.so.2 (drmIoctl+0x28) [0x7fb90405ffa8]
6: /usr/lib64/libdrm.so.2 (drmCommandWrite+0x1b) [0x7fb90406235b]
7: /usr/lib64/libdrm_nouveau.so.2 (nouveau_bo_wait+0x89) [0x7fb902009719]
8: /opt/xserver/lib/xorg/modules/drivers/nouveau_drv.so (0x7fb90220e000+0x76f3) [0x7fb9022156f3]
9: /opt/xserver/lib/xorg/modules/libexa.so (0x7fb9019c7000+0xbae0) [0x7fb9019d2ae0]
10: /opt/xserver/bin/X (0x400000+0x17d2b3) [0x57d2b3]
11: /opt/xserver/bin/X (0x400000+0xc9930) [0x4c9930]
12: /opt/xserver/bin/X (0x400000+0x3a81a) [0x43a81a]
13: /opt/xserver/bin/X (0x400000+0x3d6a1) [0x43d6a1]
14: /opt/xserver/bin/X (0x400000+0x2c2ca) [0x42c2ca]
15: /lib64/libc.so.6 (__libc_start_main+0xf5) [0x7fb902f019b5]
16: /opt/xserver/bin/X (0x400000+0x2c60d) [0x42c60d]
17: ?? [0x0]

After:
0: /opt/xserver/bin/X (OsSigHandler+0x39) [0x590d69]
1: /lib64/libpthread.so.0 (__restore_rt+0x0) [0x7fb904278a8f]
2: /lib64/libc.so.6 (ioctl+0x7) [0x7fb902fbf987]
3: /usr/lib64/libdrm.so.2 (drmIoctl+0x28) [0x7fb90405ffa8]
4: /usr/lib64/libdrm.so.2 (drmCommandWrite+0x1b) [0x7fb90406235b]
5: /usr/lib64/libdrm_nouveau.so.2 (nouveau_bo_wait+0x89) [0x7fb902009719]
6: /opt/xserver/lib/xorg/modules/drivers/nouveau_drv.so (nouveau_exa_download_from_screen+0x1a3) [0x7fb9022156f3]
7: /opt/xserver/lib/xorg/modules/libexa.so (exaGetImage+0x1f0) [0x7fb9019d2ae0]
8: /opt/xserver/bin/X (miSpriteGetImage+0x173) [0x57d2b3]
9: /opt/xserver/bin/X (compGetImage+0xb0) [0x4c9930]
10: /opt/xserver/bin/X (ProcGetImage+0x55a) [0x43a81a]
11: /opt/xserver/bin/X (Dispatch+0x341) [0x43d6a1]
12: /opt/xserver/bin/X (main+0x3ba) [0x42c2ca]
13: /lib64/libc.so.6 (__libc_start_main+0xf5) [0x7fb902f019b5]
14: /opt/xserver/bin/X (_start+0x29) [0x42c60d]
15: ? (?+0x29) [0x29]

Signed-off-by: Marcin Slusarz <marcin.slusarz@gmail.com>
Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
Tested-by: Knut Petersen <knut.petersen@t-online.de>
11 years agoxkb: Set nIndicators in XkbGetIndicatorMap
Peter Harris [Tue, 19 Feb 2013 21:08:52 +0000 (16:08 -0500)]
xkb: Set nIndicators in XkbGetIndicatorMap

Xlib doesn't use this value (it computes it from the reply length
instead) which is why nobody has noticed yet. But the spec
http://www.x.org/releases/X11R7.7/doc/kbproto/xkbproto.html
says that it should be set.

Signed-off-by: Peter Harris <pharris@opentext.com>
Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
11 years agoephyr: Add -resizeable option
Daniel Martin [Tue, 11 Dec 2012 16:23:55 +0000 (17:23 +0100)]
ephyr: Add -resizeable option

With this option passed, ephyr windows can be resized like normal
windows on the fly, without the need of an explicit parent window.

Signed-off-by: Daniel Martin <daniel.martin@secunet.com>
Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
11 years agodix: FreeAllAtoms() on reset
Peter Hutterer [Mon, 27 Feb 2012 06:43:10 +0000 (16:43 +1000)]
dix: FreeAllAtoms() on reset

==5712== 6 bytes in 1 blocks are still reachable in loss record 17 of 585
==5712==    at 0x4A074CD: malloc (vg_replace_malloc.c:236)
==5712==    by 0x3D1DE885B1: strndup (strndup.c:46)
==5712==    by 0x41CB71: MakeAtom (atom.c:121)
==5712==    by 0x55AE3E: XIGetKnownProperty (xiproperty.c:401)
==5712==    by 0x4251C9: AddInputDevice (devices.c:312)
==5712==    by 0x42AC0C: AllocDevicePair (devices.c:2657)
==5712==    by 0x425E6E: InitCoreDevices (devices.c:677)
==5712==    by 0x5ACA05: main (main.c:257)

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Chase Douglas <chase.douglas@canonical.com>
11 years agoMerge branch 'master' of git+ssh://people.freedesktop.org/~alanc/xserver into next
Peter Hutterer [Fri, 15 Feb 2013 01:58:52 +0000 (11:58 +1000)]
Merge branch 'master' of git+ssh://people.freedesktop.org/~alanc/xserver into next

11 years agoxfree86: remove redundant declaration of inputInfo
Peter Hutterer [Thu, 14 Feb 2013 00:21:47 +0000 (10:21 +1000)]
xfree86: remove redundant declaration of inputInfo

xf86Cursor.c:19:18: warning: redundant redeclaration of 'inputInfo'
[-Wredundant-decls]
In file included from xf86Cursor.c:18:0:
../../../include/inputstr.h:614:57: note: previous declaration of
'inputInfo' was here

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Alan Coopersmith <alan.coopersmith@oracle.com>
Reviewed-by: Mark Kettenis <kettenis@openbsd.org>
11 years agoxkb: remove unused variable 'names'
Peter Hutterer [Thu, 14 Feb 2013 00:15:33 +0000 (10:15 +1000)]
xkb: remove unused variable 'names'

xkb.c: In function '_XkbSetNamesCheck':
xkb.c:3987:18: warning: variable 'names' set but not used
[-Wunused-but-set-variable]

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Alan Coopersmith <alan.coopersmith@oracle.com>
Reviewed-by: Mark Kettenis <kettenis@openbsd.org>
11 years agoXext: rename two shadowing variables
Peter Hutterer [Thu, 14 Feb 2013 00:13:53 +0000 (10:13 +1000)]
Xext: rename two shadowing variables

panoramiX.c: In function 'PanoramiXCreateConnectionBlock':
panoramiX.c:599:10: warning: declaration of 'disableBackingStore' shadows a
global declaration [-Wshadow]
In file included from ../include/windowstr.h:60:0,
                 from panoramiX.c:47:
../include/opaque.h:56:52: warning: shadowed declaration is here [-Wshadow]

panoramiX.c: In function 'PanoramiXConsolidate':
panoramiX.c:834:19: warning: declaration of 'pScreen' shadows a previous
local [-Wshadow]
panoramiX.c:813:15: warning: shadowed declaration is here [-Wshadow]

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Alan Coopersmith <alan.coopersmith@oracle.com>
Reviewed-by: Mark Kettenis <kettenis@openbsd.org>
11 years agoXext: renaming shadowing variable
Peter Hutterer [Thu, 14 Feb 2013 00:09:53 +0000 (10:09 +1000)]
Xext: renaming shadowing variable

xvdisp.c: In function 'ProcXvStopVideo':
xvdisp.c:712:11: warning: declaration of 'rc' shadows a previous local
[-Wshadow]
xvdisp.c:705:17: warning: shadowed declaration is here [-Wshadow]

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Alan Coopersmith <alan.coopersmith@oracle.com>
Reviewed-by: Mark Kettenis <kettenis@openbsd.org>
11 years agofb: drop two unneeded shadowing variables
Peter Hutterer [Thu, 14 Feb 2013 00:06:55 +0000 (10:06 +1000)]
fb: drop two unneeded shadowing variables

fbpict.c: In function 'fbGlyphs':
fbpict.c:188:6: warning: declaration of 'x' shadows a previous local
[-Wshadow]
fbpict.c:111:9: warning: shadowed declaration is here [-Wshadow]
fbpict.c:188:9: warning: declaration of 'y' shadows a previous local
[-Wshadow]
fbpict.c:111:12: warning: shadowed declaration is here [-Wshadow]

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Alan Coopersmith <alan.coopersmith@oracle.com>
Reviewed-by: Soren Sandmann <ssp@redhat.com>
Reviewed-by: Mark Kettenis <kettenis@openbsd.org>
11 years agoxfree86: drop unused prevSIGIO
Peter Hutterer [Thu, 14 Feb 2013 00:04:06 +0000 (10:04 +1000)]
xfree86: drop unused prevSIGIO

Unused as of 5d309af2ed93e91c7d72f548a11052051efbb40f

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Alan Coopersmith <alan.coopersmith@oracle.com>
Reviewed-by: Mark Kettenis <kettenis@openbsd.org>
11 years agorandr: fix "set but unused" warnings
Peter Hutterer [Thu, 14 Feb 2013 00:02:02 +0000 (10:02 +1000)]
randr: fix "set but unused" warnings

rrcrtc.c: In function 'RRCrtcDetachScanoutPixmap':
rrcrtc.c:366:9: warning: variable 'ret' set but not used
[-Wunused-but-set-variable]
rrcrtc.c: In function 'rrCheckPixmapBounding':
rrcrtc.c:505:13: warning: variable 'ret' set but not used
[-Wunused-but-set-variable]
rrcrtc.c:445:9: warning: unused variable 'i' [-Wunused-variable]

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Alan Coopersmith <alan.coopersmith@oracle.com>
Reviewed-by: Mark Kettenis <kettenis@openbsd.org>
11 years agoMerge remote-tracking branch 'jeremyhu/master'
Keith Packard [Thu, 14 Feb 2013 19:05:48 +0000 (11:05 -0800)]
Merge remote-tracking branch 'jeremyhu/master'

11 years agoos: fix pnprintf OOB buffer read for unterminated length modifiers
Peter Hutterer [Thu, 14 Feb 2013 06:31:13 +0000 (16:31 +1000)]
os: fix pnprintf OOB buffer read for unterminated length modifiers

Format strings with length modifiers but missing format specifier like "%0"
will read one byte past the array size.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Keith Packard <keithp@keithp.com>
Signed-off-by: Keith Packard <keithp@keithp.com>
11 years agoXORG_TLS: Pick the first option that works (ie: prefer __thread)
Jeremy Huddleston Sequoia [Sun, 10 Feb 2013 04:53:02 +0000 (20:53 -0800)]
XORG_TLS: Pick the first option that works (ie: prefer __thread)

Signed-off-by: Jeremy Huddleston Sequoia <jeremyhu@apple.com>
11 years agoos: Ensure <dix-config.h> is included in strndup.c
Jeremy Huddleston Sequoia [Sun, 10 Feb 2013 04:40:10 +0000 (20:40 -0800)]
os: Ensure <dix-config.h> is included in strndup.c

Signed-off-by: Jeremy Huddleston Sequoia <jeremyhu@apple.com>
Reviewed-by: Alan Coopersmith <alan.coopersmith@oracle.com>
11 years agoXQuartz: Ensure <dix-config.h> is included in capabilities.c
Jeremy Huddleston Sequoia [Sun, 10 Feb 2013 04:34:33 +0000 (20:34 -0800)]
XQuartz: Ensure <dix-config.h> is included in capabilities.c

Signed-off-by: Jeremy Huddleston Sequoia <jeremyhu@apple.com>
Reviewed-by: Alan Coopersmith <alan.coopersmith@oracle.com>
11 years agoUpdate to version 1.3.99.902 (1.14 RC2) xorg-server-1.13.99.902
Keith Packard [Thu, 14 Feb 2013 05:39:37 +0000 (21:39 -0800)]
Update to version 1.3.99.902 (1.14 RC2)

Signed-off-by: Keith Packard <keithp@keithp.com>
11 years agorandr: unref the provider shared pixmap the appropriate number of times
Aaron Plattner [Thu, 24 Jan 2013 00:58:47 +0000 (16:58 -0800)]
randr: unref the provider shared pixmap the appropriate number of times

When an RandR shared pixmap is created in rrCreateSharedPixmap, it has a refcnt
of 1.  Then, PixmapShareToSlave bumps the refcnt to 2.  However, there's no
corresponding PixmapUnshareFromSlave where the refcnt can be decreased again,
and there's no convenient common place where the refcnt can be decremented when
the slave pixmap is destroyed.

Fix this by just unreffing the pixmap twice in RRCrtcDetachScanoutPixmap.

Signed-off-by: Aaron Plattner <aplattner@nvidia.com>
Reviewed-by: Dave Airlie <airlied@redhat.com>
Signed-off-by: Keith Packard <keithp@keithp.com>
11 years agoxf86: use nt_list_for_each_entry_safe to walk InputHandlers in xf86Wakeup
Aaron Plattner [Mon, 11 Feb 2013 22:31:56 +0000 (14:31 -0800)]
xf86: use nt_list_for_each_entry_safe to walk InputHandlers in xf86Wakeup

This is necessary when the input handler deletes itself from the
list. Bug found by Maarten Lankhorst, this patch uses the list macros
instead of open-coding the fix.

Signed-off-by: Keith Packard <keithp@keithp.com>
Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
11 years agoxfree86: Man page shouldn't say Device is mandatory anymore
Bryce Harrington [Fri, 8 Feb 2013 23:56:02 +0000 (15:56 -0800)]
xfree86: Man page shouldn't say Device is mandatory anymore

man xorg.conf states that the 'Device' identifier is required in the
'Screen' section, yet current xserver defaults properly and boots up
fine without it.

Fixes: https://bugs.freedesktop.org/show_bug.cgi?id=20742
Signed-off-by: Bryce Harrington <bryce@canonical.com>
Signed-off-by: Keith Packard <keithp@keithp.com>