Commit Graph

552 Commits

Author SHA1 Message Date
Peter Hutterer
d199d800a4 xfree86: warn some more about potential missing input devices.
Put out a warning if xorg.conf has InputDevice sections, but these aren't
referenced in the used ServerLayout. This is only performed if AllowEmptyInput
is enabled.
The reason behind this is that the server used to auto-add the first
mouse/keyboard sections if none where referenced. Now, with HAL and AEI
enabled by default, setups that relied on this auto-adding break and are left
without input devices. The least we can do is warn them.
(cherry picked from commit 47160edec7)
2008-07-29 10:03:07 +09:30
Peter Hutterer
538942cc65 xfree86: if AllowEmptyInput is on, warn the user that we rely on HAL now.
(cherry picked from commit f30b0823db)
2008-07-29 10:03:07 +09:30
Eamon Walsh
ceffece78b Fix "warning: passing argument 1 of `modeIsPresent' from incompatible pointer type".
(cherry picked from commit 95d4ede538)
2008-07-21 17:13:59 -04:00
Peter Hutterer
5cb38a3fca xfree86: don't free the config-file related information in DIDR. #15645
In DeleteInputDeviceRequest, leave the conf_idev (which is shared with
xf86ConfigLayout.input) alone for devices that were specified in the
ServerLayout section of the config file. This way, in the next server
generation we are left with what was the original config and can thus re-init
the devices.

This is an addon to 6d22a9615a, an attempt to
fix Bug 14418.

X.Org Bug 15645 <https://bugs.freedesktop.org/show_bug.cgi?id=15645>
X.Org Bug 14418 <https://bugs.freedesktop.org/show_bug.cgi?id=15645>
(cherry picked from commit 9ab4e2fd8e)
2008-07-16 10:32:46 +09:30
Julien Cristau
2b3faf2a75 Bug #16674: Make sure RANDR reports refresh as 0 if pixel clock is 0.
(cherry picked from commit 9111944b29)
2008-07-15 10:37:31 -04:00
Peter Hutterer
5b546f1c49 xfree86: append, not prepent, new input devices to xf86InputDevs.
If devices are prepended to the list, their wake-up order on resume is not the
same as the original initialisation order. Hot-plugged devices, originally
inited last, are re-enabled before the xorg.conf devices and in some cases may
steal the device files. Result: we have different devices before and after
suspend/resume.

RedHat Bug 439386 <https://bugzilla.redhat.com/show_bug.cgi?id=439386>
(cherry picked from commit 11ee0ae939)
2008-07-14 12:53:28 +09:30
Sascha Hlusiak
c30f36c8c1 xfree86: AllowEmptyInput is now enabled by default if hotplugging is enabled.
Remove AEI check from configImpliedLayout as the setting isn't actually parsed
at this point anyway.

Set AllowEmptyInput to enabled by default if hotplugging is enabled.
2008-07-03 21:42:10 +02:00
Julien Cristau
81e6ab4851 autoconfig: don't call closedir() when opendir() failed
If opendir() fails, return from matchDriverFromFiles() immediately.
Ubuntu bug 217647.
(cherry picked from commit fbad87f2ae)
2008-07-01 13:27:54 -04:00
Aaron Plattner
75b5e999f0 Work around the DIX losing mmWidth/mmHeight for RandR 1.1 DDXen.
RandR 1.1 has a physical size for each mode.  It used to be that the DIX would
remember these modes and pass them back up to the DDX when changing the screen
configuration.  The DDX uses RR_GET_MODE_MM to query the driver for the physical
dimensions of the screen, allowing it to preserve the DPI.

With RandR 1.2, the physical dimensions are stored as part of the output, rather
than per mode.  The DIX only uses the sizes passed in from the DDX to select the
mode pool for the "default" output, and forgets the physical sizes.  Then, when
reconfiguring the screen, it makes up a new RRScreenSizeRec using the dimensions
from the output, screwing up the DPI.

This change works around this problem by ignoring the DIX and querying the real
size from the driver.
(cherry picked from commit 2e8daee053)
2008-07-01 09:08:36 -07:00
Adam Jackson
9ab88bb9b1 Don't try to load DRI2 if built without it.
(cherry picked from commit e2bbf2d248)
2008-07-01 12:02:18 -04:00
Adam Jackson
bee463bd8a XInput ABI is 2.1, not 3.1.
(cherry picked from commit 76576c87b0)
2008-06-30 16:11:04 -04:00
Adam Jackson
6e8ed1398d Bump ABI minor numbers for the devPrivate ABI functions.
(cherry picked from commit 211e2bdcc6)
2008-06-30 10:31:55 -04:00
Adam Jackson
85e598cc62 Remove some default modes that really shouldn't be in the default set.
(cherry picked from commit 59510a7643)
2008-06-24 10:41:27 -04:00
Paulo Cesar Pereira de Andrade
60990c69b4 Correct a NULL pointer deference
The problem happens if Monitor/Card combo doesn't provide EDID info,
and the XFree86-VidModeExtension extension is used.

Signed-off-by: Peter Hutterer <peter@cs.unisa.edu.au>
(cherry picked from commit c8af7ce35a)
2008-06-09 14:09:39 -04:00
Jordan Crouse
fd0ec73bcb xf86: Change AutoConfig driver for PCI ID 022:2091 to 'geode'
(cherry picked from commit 4fa89fbe18)
2008-04-30 11:51:08 +03:00
Kristian Høgsberg
5a2b538c1b Make DRI2 a serverlayout/serverflags option.
Add xf86DRI2Enabled() to export the value of the setting.
(cherry picked from commit 35982bc109)
2008-04-15 11:48:33 +10:00
Matt Turner
db00d4a4dc Check for __x86_64__ when we check for __amd64__
It seems Intel C Compiler neglects to define __amd64__, __amd64, or
amd64, but *does* define __x86_64__.
(cherry picked from commit 1fa4de80fc)
2008-04-15 11:47:48 +10:00
Peter Hutterer
099d1bef22 dix: Call DeleteInputDeviceRequest from CloseDownDevices (#14418)
The DDX (xfree86 anyway) maintains its own device list in addition to the one
in the DIX. CloseDevice will only remove it from the DIX, not the DDX. If the
server then restarts (last client disconnects), the DDX devices are still
there, will be re-initialised, then the hal devices come in and are added too.
This repeats until we run out of device ids.

This also requires us to strdup() the default pointer/keyboard in
checkCoreInputDevices.

X.Org Bug 14418 <http://bugs.freedesktop.org/show_bug.cgi?id=14418>
(cherry picked from commit 6d22a9615a)
2008-04-15 11:47:04 +10:00
Goneri Le Bouder
8059b57f9b xfree86: don't crash in AutoConfig if the primary device is not pci
Only call matchDriverFromFiles() if we found a pci device.
Debian bug#472823 (http://bugs.debian.org/472823).
(cherry picked from commit 9500033b9e)
2008-04-07 10:30:26 -04:00
Kristian Høgsberg
d1dd774910 Only autoload RECORD if it was enabled.
(cherry picked from commit 16a8ce7558)
2008-04-04 11:47:08 -04:00
Kristian Høgsberg
2156bdf3b7 Implement DRI2 direct rendering and update AIGLX to DRI interface changes.
Get rid of glcontextmodes.[ch] from build, rename __GlcontextModes to
__GLXcontext.  Drop all #includes of glcontextmodes.h and glcore.h.
Drop the DRI context modes extension.

Add protocol code to DRI2 module and load DRI2 extension by default.
(cherry picked from commit c40e0b51f0)
2008-04-01 11:58:27 -04:00
Adam Jackson
921cbc5803 Add the "amd" driver to magic driver selection. 2008-03-10 13:40:23 -04:00
Adam Jackson
e5bd75e11f Bug #14927: Fix the math for xf86NumDefaultModes.
(cherry picked from commit 0f6aaf636b)
2008-03-10 09:14:38 -04:00
Adam Jackson
ef702d5866 Size xf86DefaultModes explicitly.
i.e., don't check for the end of the list by ->name == NULL, since that
won't work now.  Fix the consumers of xf86DefaultModes to use the new
explicit size as well.
2008-03-07 09:25:34 -05:00
Adam Jackson
5afdba241e Remove all mention of the vga driver from the config logic.
(cherry picked from commit 95df04b744)
2008-03-04 13:01:03 -05:00
George Sapountzis
3d64290547 clean some "unused" warnings 2008-03-01 19:49:24 +02:00
Eamon Walsh
ef60632e20 dix: Modify callers of property and selection API to use new interfaces. 2008-02-29 18:01:37 -05:00
Adam Jackson
4cb4817c10 Remove the duplicate copy of xf86cvt.c 2008-02-29 16:01:15 -05:00
Adam Jackson
e65e51a99b Constify the built-in mode tables. 2008-02-29 16:01:14 -05:00
Adam Jackson
6828d8fc2b Clean up DisplayModeRec handling in many places.
Use xf86DuplicateMode() instead of rolling our own, and change
malloc+memset to calloc.
2008-02-29 16:01:14 -05:00
Adam Jackson
85617b56e5 Remove some #if 0 guarding code duplicated in xf86Modes.c 2008-02-29 16:01:14 -05:00
Tiago Vignatti
81272f7ec9 Some doc clean up:
clean up legacy things in os-support/bus/Pci.c.

    Put InitOutput() comment to its right place.
2008-02-25 17:39:33 -03:00
Tiago Vignatti
9727db88d5 No more "-scanpci" given that we already have it in libpciaccess.
(Yeah, lets nuke dead code!)
2008-02-25 17:08:07 -03:00
Tiago Vignatti
f19f7b8e53 Clean some garbage caused when pciaccess was merged:
FindPCIVideoInfo() function isn't need anymore.

    xf86scanpci() is being called only once so we don't need permanent
    (static) variables there.

    restorePciState() is not used for now (until we find why multiple
    cards aren't working).
2008-02-25 17:07:07 -03:00
Adam Jackson
347db49ebe s/via/openchrome/ in the autoconfig logic.
Xorg's via driver is effectively dead anyway.
2008-02-22 16:05:33 -05:00
Peter Hutterer
67a78e84a8 Revert "xfree86: plug a memory leak in xf86LoadModules."
This reverts commit 3abce3ea2b and
6cbaf15e61.

The memory returned to xf86LoadModule was allocated in doLoadModule, which
calls the respective module's PreInit. As it turns out, input and output
drivers store a pointer to the module elswhere, so freeing it in
xf86LoadModule is a bad idea.

For further reference: hw/xfree86/common/xf86Helper.c
    Input drivers: xf86InputDriverList[blah]->module = module;
    Output drivers: xf86DriverList[blah]->module = module;

Unloading the module would not look pretty then.
2008-02-19 21:31:50 +10:30
Peter Hutterer
6cbaf15e61 xfree86: guard against NULL-pointer dereferences in xf86LoadModules.
Should have been part of 3abce3ea2b, but I
forgot to git-update-index before I committed.

Thanks to Bill Crawford for pointing it out.
2008-02-19 12:05:13 +10:30
Arjan van de Ven
3abce3ea2b xfree86: plug a memory leak in xf86LoadModules.
LoadModule() returns the only reference to a fresh piece of memory (a
ModuleDescPtr). Sadly, xf86LoadModules dropped the return value on the floor
leaking memory for each module it loaded.

Signed-off-by: Peter Hutterer <peter@cs.unisa.edu.au>
2008-02-18 18:14:40 +10:30
Arjan van de Ven
1bec6ad897 xfree86: plug memory leak in xf86LogInit()
xf86LogInit allocates a piece of memory, stores it in lf. LogInit() will then
effectively strdup it, but lf is never freed again.

Signed-off-by: Peter Hutterer <peter@cs.unisa.edu.au>
2008-02-18 18:14:20 +10:30
Adam Jackson
f750ce53ac Remove some braindamage from ModuleDesc.
Yay dead code elimination.
2008-02-14 08:22:57 +11:00
Adam Jackson
e91ff09568 Friends don't let friends call xf86AddModuleInfo.
That code only existed to leak memory.  It can go now, thanks.
2008-02-14 08:21:44 +11:00
Adam Jackson
0bdd20a045 Eradicate the VTInit code.
"This option should rarely be used."  Never sounds like a better idea.
2008-02-14 07:52:46 +11:00
Adam Jackson
24089b0624 Don't bother warning people about the keyboard driver rename, just do it. 2008-02-14 07:52:33 +11:00
Adam Jackson
2aaf6ac134 Don't even attempt to parse -bpp in xfree86 DDX option parsing.
This hasn't been valid since 1999.  Get with the times, man.
2008-02-14 07:52:26 +11:00
Peter Hutterer
10617dc0fb xfree86: stick two more checks in for num_valuators < MAX_VALUATORS 2008-02-01 14:24:04 +10:30
Matthieu Herrb
c68f063be6 xfree86: don't call xalloc from signal handlers when posting events.
Reviewed-by: Peter Hutterer <peter@cs.unisa.edu.au>
2008-02-01 14:14:17 +10:30
Peter Hutterer
5b8641a5fd xfree86: fix AlwaysCore handling. (Bug #14256)
Assume AlwaysCore being set by default, just like the other options.

X.Org Bug 14256 <http://bugs.freedesktop.org/show_bug.cgi?id=14256>
2008-01-29 10:01:42 +10:30
Matthieu Herrb
bbde5b62a1 Fix for CVE-2007-5760 - XFree86 Misc extension out of bounds array index 2008-01-17 15:26:41 +01:00
David Nusinow
30375cd6d1 Don't log DPMS enabling as being from xorg.conf if it's not 2008-01-07 20:57:30 -05:00
David Nusinow
260505e3c5 Log enabling of DPMS even when it's not set in xorg.conf 2008-01-06 16:37:13 -05:00