xserver-multidpi/hw/xfree86
Tomáš Trnka 323869f329 Fix drain_console unregistration
Bug introduced by 9dca441670
xfree86: add a hook to replace the new console handler.

console_handler was not being set, making the server eat up CPU spinning
in WaitForSomething selecting consoleFd over and over again, every time
trying to unregister drain_console without success due to
console_handler being NULL.

Let's just fix the unregistration in xf86SetConsoleHandler() and use that.

But wait, there could be a catch: If some driver replaced the handler using
xf86SetConsoleHandler(), the unregistration in xf86CloseConsole will unregister
that one. I don't understand Xorg well enough to know whether this poses a
problem (could mess up driver deinit somehow or something like that). As it is,
xf86SetConsoleHandler() doesn't offer any way to prevent this (i.e. check which
handler is currently registered).

I had been using it for two days on my machine that previously hit 100% CPU
several times a day. That has now gone away without any new problems appearing.

Signed-off-by: Tomas Trnka <tomastrnka@gmx.com>
Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2011-10-18 09:15:54 +10:00
..
common Fix drain_console unregistration 2011-10-18 09:15:54 +10:00
ddc hw/xfree86/ddc: remove duplicated include 2011-04-24 19:46:06 -07:00
dixmods Use correct swap{l,s} (or none at all for CARD8) 2011-09-21 17:14:16 -04:00
doc ddxDesign: drop the url in the coporate authors list 2011-10-03 12:18:37 -07:00
dri Use internal temp variable for swap macros 2011-09-21 17:12:04 -04:00
dri2 Use internal temp variable for swap macros 2011-09-21 17:12:04 -04:00
exa Fix UTF-8 encoding 2011-06-30 16:38:31 +10:00
fbdevhw hw/xfree86/fbdevhw: remove duplicated include 2011-04-24 19:46:06 -07:00
i2c Space & style cleanup of hw/xfree86/i2c/fi1236.c 2011-09-20 07:41:18 -07:00
int10 Merge remote-tracking branch 'mattst88/for-keith' 2011-09-21 14:34:27 -07:00
loader xfree86: Move sdksyms generation to ddx toplevel 2011-06-23 05:28:31 -07:00
man Remove unused vtSysreq 2011-09-29 23:05:35 +06:00
modes Fix a rare memory leak 2011-10-04 20:18:17 -07:00
os-support Fix drain_console unregistration 2011-10-18 09:15:54 +10:00
parser Remove unused vtSysreq 2011-09-29 23:05:35 +06:00
ramdac Eliminate MAXSCREENS-sized CursorScreenKey array. 2011-09-19 22:53:05 -07:00
shadowfb xfree86: Kill pixmapPrivate with a vengeance (v2) 2010-09-28 08:07:21 -07:00
utils Cross-reference cvt(1) & gtf(1) man pages 2011-09-20 07:41:18 -07:00
vbe vbe: Fix malloc size bug 2011-03-04 16:11:03 -05:00
vgahw xfree86: nds32: add nds32 definition for vgaHW support. 2010-09-23 15:36:19 -07:00
x86emu x86emu: There is no NO_INLINE implementation of unaligned access here. 2011-09-15 10:07:11 -05:00
xaa Revert "dix: Remove usage_hint from pixmaps, store it in ->drawable.class" 2011-03-17 23:48:52 -07:00
.gitignore xfree86: Move sdksyms generation to ddx toplevel 2011-06-23 05:28:31 -07:00
Makefile.am sdksyms.sh may not be executable. 2011-10-01 17:35:19 +02:00
sdksyms.sh xfree86: Move sdksyms generation to ddx toplevel 2011-06-23 05:28:31 -07:00
xorgconf.cpp xfree86: use sed rather than cpp to perform string substitutions 2011-01-18 15:11:14 -08:00