summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStanislav Brabec <utx@penguin.cz>2010-01-20 20:54:25 +0000
committerutx@penguin.cz <utx@penguin.cz>2010-01-20 20:54:25 +0000
commita197e5c95cb56d5952dadccb928923721e2a9ea4 (patch)
treedd4db78990da37bb4198534c4f7c804671db6d46
parentc71044be4d589d8207ed9d60e418d36003948c1b (diff)
xserver-xorg: Worked around server termination after chvt on some fbdev devices.
* The patch is just a quick hack that fixes chvt on some fbdev devices. * For more read recipes/xorg-xserver/xserver-xorg/hack-fbdev-ignore-return-mode.patch
-rw-r--r--recipes/xorg-xserver/xserver-xorg/hack-fbdev-ignore-return-mode.patch39
-rw-r--r--recipes/xorg-xserver/xserver-xorg_1.7.3.bb3
2 files changed, 41 insertions, 1 deletions
diff --git a/recipes/xorg-xserver/xserver-xorg/hack-fbdev-ignore-return-mode.patch b/recipes/xorg-xserver/xserver-xorg/hack-fbdev-ignore-return-mode.patch
new file mode 100644
index 0000000000..d3661cbea2
--- /dev/null
+++ b/recipes/xorg-xserver/xserver-xorg/hack-fbdev-ignore-return-mode.patch
@@ -0,0 +1,39 @@
+Ugly hack that prevents server termination with xf86-video-fbdev-0.4.1
+(and probably other) while returning from chvt or resume on some
+hardware (e. g. zaurus).
+
+Correct fix would require debugging of fbdev mode during LeaveVT and
+EnterVT.
+
+This patch may cause staying in incorrect or corrupted display mode
+after EnterVT, but on man affected devices it does not cause any visible
+problems.
+
+Hacked code is never called on properly written drivers.
+
+Devices affected and testers involved for future patch removal:
+Sharp Zaurus (spitz/akita): Stanislav Brabec <utx@penguin.cz>
+
+See also:
+https://bugzilla.redhat.com/show_bug.cgi?id=238451
+
+The bug (first line indicates that your device is affected):
+
+(EE) FBDEV(0): FBIOPUT_VSCREENINFO succeeded but modified mode
+
+Fatal server error:
+EnterVT failed for screen 0
+
+Index: xorg-server-1.7.3/hw/xfree86/fbdevhw/fbdevhw.c
+===================================================================
+--- xorg-server-1.7.3.orig/hw/xfree86/fbdevhw/fbdevhw.c
++++ xorg-server-1.7.3/hw/xfree86/fbdevhw/fbdevhw.c
+@@ -571,7 +571,7 @@ fbdevHWSetMode(ScrnInfoPtr pScrn, Displa
+ #if DEBUG
+ print_fbdev_mode("returned", &set_var);
+ #endif
+- return FALSE;
++ /* return FALSE; UGLY HACK to allow return from chvt */
+ }
+
+ if (!check)
diff --git a/recipes/xorg-xserver/xserver-xorg_1.7.3.bb b/recipes/xorg-xserver/xserver-xorg_1.7.3.bb
index edede8b3ff..2ecb169a84 100644
--- a/recipes/xorg-xserver/xserver-xorg_1.7.3.bb
+++ b/recipes/xorg-xserver/xserver-xorg_1.7.3.bb
@@ -3,11 +3,12 @@ require xorg-xserver-common.inc
DESCRIPTION = "the X.Org X server"
DEPENDS += "pixman libpciaccess openssl dri2proto glproto xorg-minimal-fonts"
PE = "2"
-PR = "r4"
+PR = "r5"
SRC_URI += "file://sysroot_fix.patch;patch=1 \
file://dolt-fix-1.7.0.patch;patch=1 \
file://randr-support-1.7.0.patch;patch=1 \
+ file://hack-fbdev-ignore-return-mode.patch;patch=1 \
"
SRC_URI_append_angstrom = " file://hack-assume-pixman-supports-overlapped-blt.patch;patch=1"