summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDonnie Berkholz <dberkholz@gentoo.org>2007-11-07 08:52:12 +0000
committerDonnie Berkholz <dberkholz@gentoo.org>2007-11-07 08:52:12 +0000
commitbb53be6e60b678503c7ba8509675a3a16a382f43 (patch)
tree8e029516ce98c558f00d9bc88410a7513d7333b9 /x11-base
parentAdd a post-installation notice about the new sloppy locking. (diff)
downloadhistorical-bb53be6e60b678503c7ba8509675a3a16a382f43.tar.gz
historical-bb53be6e60b678503c7ba8509675a3a16a382f43.tar.bz2
historical-bb53be6e60b678503c7ba8509675a3a16a382f43.zip
(#197104) Fix a 100% CPU hang on openoffice. (#196019) Don't create a redundant file with USE=xprint.
Package-Manager: portage-2.1.3.17
Diffstat (limited to 'x11-base')
-rw-r--r--x11-base/xorg-server/ChangeLog8
-rw-r--r--x11-base/xorg-server/Manifest26
-rw-r--r--x11-base/xorg-server/files/1.3.0.0-fix-xkb-openoffice-hangs.patch55
-rw-r--r--x11-base/xorg-server/xorg-server-1.3.0.0-r2.ebuild9
4 files changed, 85 insertions, 13 deletions
diff --git a/x11-base/xorg-server/ChangeLog b/x11-base/xorg-server/ChangeLog
index ea0a4ecc497c..72b2622fd270 100644
--- a/x11-base/xorg-server/ChangeLog
+++ b/x11-base/xorg-server/ChangeLog
@@ -1,6 +1,12 @@
# ChangeLog for x11-base/xorg-server
# Copyright 1999-2007 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/x11-base/xorg-server/ChangeLog,v 1.292 2007/11/05 18:42:34 dberkholz Exp $
+# $Header: /var/cvsroot/gentoo-x86/x11-base/xorg-server/ChangeLog,v 1.293 2007/11/07 08:52:11 dberkholz Exp $
+
+ 07 Nov 2007; Donnie Berkholz <dberkholz@gentoo.org>;
+ +files/1.3.0.0-fix-xkb-openoffice-hangs.patch,
+ xorg-server-1.3.0.0-r2.ebuild:
+ (#197104) Fix a 100% CPU hang on openoffice. (#196019) Don't create a
+ redundant file with USE=xprint.
05 Nov 2007; Donnie Berkholz <dberkholz@gentoo.org>;
xorg-server-1.2.0-r3.ebuild, xorg-server-1.3.0.0.ebuild,
diff --git a/x11-base/xorg-server/Manifest b/x11-base/xorg-server/Manifest
index b7d52bcd2452..bf28e758a51d 100644
--- a/x11-base/xorg-server/Manifest
+++ b/x11-base/xorg-server/Manifest
@@ -45,6 +45,10 @@ AUX 1.3.0.0-fix-xephyr-amd64-segfault.patch 1382 RMD160 03595cb965623383f8429560
MD5 06ac5c6f8300338339c70ee4bd9497eb files/1.3.0.0-fix-xephyr-amd64-segfault.patch 1382
RMD160 03595cb965623383f8429560c551e13f882bf1b9 files/1.3.0.0-fix-xephyr-amd64-segfault.patch 1382
SHA256 32cd35d353ba2568d98125328574a0d2c021637a367dd3de616e02a2f8fdd4b9 files/1.3.0.0-fix-xephyr-amd64-segfault.patch 1382
+AUX 1.3.0.0-fix-xkb-openoffice-hangs.patch 1671 RMD160 6fcee07ea40289b40c43bce5bee88b282ae536f4 SHA1 34535d5dc17cf96a4605a82105ec41e27c97c94c SHA256 e9cbb4c9c58689116d09827a5a50f38a7e24e735277dd595d3ffa981c24e6c7d
+MD5 54f515bbc922a824bb8f6d99114553d9 files/1.3.0.0-fix-xkb-openoffice-hangs.patch 1671
+RMD160 6fcee07ea40289b40c43bce5bee88b282ae536f4 files/1.3.0.0-fix-xkb-openoffice-hangs.patch 1671
+SHA256 e9cbb4c9c58689116d09827a5a50f38a7e24e735277dd595d3ffa981c24e6c7d files/1.3.0.0-fix-xkb-openoffice-hangs.patch 1671
AUX 1.3.0.0-ramdac.patch 2736 RMD160 6a57be8c314989c110f1dd82563fa730512b6a5f SHA1 5da7c2caecd8c47e77d10c3967bcc22c481087fe SHA256 29dd3f3de269b1d9d24628dab293246f2deda4e8bd4018f20adf74584d2ca92f
MD5 0d8947e14ac796ea751de4377249bc99 files/1.3.0.0-ramdac.patch 2736
RMD160 6a57be8c314989c110f1dd82563fa730512b6a5f files/1.3.0.0-ramdac.patch 2736
@@ -126,10 +130,10 @@ EBUILD xorg-server-1.3.0.0-r1.ebuild 16798 RMD160 155e9858788c18d07bcc4135b95e1f
MD5 eba5f806b50e89cd09d76be10a7ee75f xorg-server-1.3.0.0-r1.ebuild 16798
RMD160 155e9858788c18d07bcc4135b95e1f2132fcc6cb xorg-server-1.3.0.0-r1.ebuild 16798
SHA256 5c51b50263cc1debac7d25cc8a88d488f52874015037d9c3ef6af0984bcd3022 xorg-server-1.3.0.0-r1.ebuild 16798
-EBUILD xorg-server-1.3.0.0-r2.ebuild 17020 RMD160 a1c9a669653e73f7e17ea81ad3c3e5f8e25a496b SHA1 cbd7115b217f993362363d04e65f52a1eb6e35d5 SHA256 c3a8699e5d609b6e51a910ec0553c69920f2b2b0d2aee09822c03347f345f5c3
-MD5 97e673ef04f18cc31e93371e184099f6 xorg-server-1.3.0.0-r2.ebuild 17020
-RMD160 a1c9a669653e73f7e17ea81ad3c3e5f8e25a496b xorg-server-1.3.0.0-r2.ebuild 17020
-SHA256 c3a8699e5d609b6e51a910ec0553c69920f2b2b0d2aee09822c03347f345f5c3 xorg-server-1.3.0.0-r2.ebuild 17020
+EBUILD xorg-server-1.3.0.0-r2.ebuild 17335 RMD160 dd57b3a01b2e556982e4a029836b786f9b78ab44 SHA1 2d4e4d4fd58a999906c90d0406e85f616c4d996c SHA256 954bfdeacdbd1fa0d22c3022a0fde07a55d9904dfadc47fa34ddde17dfa6b8b8
+MD5 6e35f3fd1c6cff4bfc5a5666af8f923a xorg-server-1.3.0.0-r2.ebuild 17335
+RMD160 dd57b3a01b2e556982e4a029836b786f9b78ab44 xorg-server-1.3.0.0-r2.ebuild 17335
+SHA256 954bfdeacdbd1fa0d22c3022a0fde07a55d9904dfadc47fa34ddde17dfa6b8b8 xorg-server-1.3.0.0-r2.ebuild 17335
EBUILD xorg-server-1.3.0.0.ebuild 16741 RMD160 d3cb647edd67c7a2311f464d0281e0bee05fc98a SHA1 d2c44e6aa6764e35be3f09ad8e1ff865800d2f15 SHA256 a89d684f5337f7f493fce75297efe188745b6c3bfb99d454d445878583c3088c
MD5 54c624664c04ea0b08473aa2e0eeff60 xorg-server-1.3.0.0.ebuild 16741
RMD160 d3cb647edd67c7a2311f464d0281e0bee05fc98a xorg-server-1.3.0.0.ebuild 16741
@@ -138,10 +142,10 @@ EBUILD xorg-server-1.4-r2.ebuild 18440 RMD160 5e01ca3ca369dac876d3d85ec24aefa6d7
MD5 b408416cadb61a4c78b81f15f80faaf2 xorg-server-1.4-r2.ebuild 18440
RMD160 5e01ca3ca369dac876d3d85ec24aefa6d7618d77 xorg-server-1.4-r2.ebuild 18440
SHA256 34a3153d9b66d2555fdbe0deebf6a301ee700277bb0e1d8c8e487e9680b3133f xorg-server-1.4-r2.ebuild 18440
-MISC ChangeLog 62187 RMD160 a7f0d5282767dfd90368fe912cf2b7d5d0dba633 SHA1 6126b93921e2092d6afe462d09cbf6d7594cbdf0 SHA256 04187a283ead882831c9786861e427c8a85a6a002442a15386748aa6ee3cd4d5
-MD5 c78830a9a3fb8b971b94d9461a4fcc62 ChangeLog 62187
-RMD160 a7f0d5282767dfd90368fe912cf2b7d5d0dba633 ChangeLog 62187
-SHA256 04187a283ead882831c9786861e427c8a85a6a002442a15386748aa6ee3cd4d5 ChangeLog 62187
+MISC ChangeLog 62431 RMD160 c4eb5f9dad1c844f9d6e0b253bf7257d10ed03e2 SHA1 530f123f191d90eb90e8cb7d2339c1f3c161c18c SHA256 d4346ea9d88ecc9fe840321b6c4e095c64f86aa16bef31e2a24f94631c03b1d9
+MD5 c0a012973932717b35f914d951cd7b75 ChangeLog 62431
+RMD160 c4eb5f9dad1c844f9d6e0b253bf7257d10ed03e2 ChangeLog 62431
+SHA256 d4346ea9d88ecc9fe840321b6c4e095c64f86aa16bef31e2a24f94631c03b1d9 ChangeLog 62431
MISC metadata.xml 156 RMD160 c1274bdccf57603d580de0075ba07a35b7509560 SHA1 6f78f604e3d079d39189b40aaaa1ddb06182ad91 SHA256 5101ab0d4cc8c7125eea733c44e86962769bd77acaf53b69223b9cadcdd29055
MD5 a37bab73e2f24b213932c30997d3d360 metadata.xml 156
RMD160 c1274bdccf57603d580de0075ba07a35b7509560 metadata.xml 156
@@ -164,7 +168,7 @@ SHA256 5ab16a882768bd84a26edb98b129ddd5ed9171f22e1fdfcc19ab97402d0cbcbe files/di
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.7 (GNU/Linux)
-iD8DBQFHL2QjXVaO67S1rtsRApG5AJ9DBUW5xJ2sjyRS2d4M5ODzqvPafwCfdS60
-b/rN+Rh8WMgUocp7uI7a3z4=
-=ZADC
+iD8DBQFHMXzDXVaO67S1rtsRAm1zAKCyXjmQ0hhnHWYkE100SQcwZp+TIQCdEhM7
+AU4zdELkqkKR5K37+3/+GRA=
+=r3h9
-----END PGP SIGNATURE-----
diff --git a/x11-base/xorg-server/files/1.3.0.0-fix-xkb-openoffice-hangs.patch b/x11-base/xorg-server/files/1.3.0.0-fix-xkb-openoffice-hangs.patch
new file mode 100644
index 000000000000..88df93b5bc57
--- /dev/null
+++ b/x11-base/xorg-server/files/1.3.0.0-fix-xkb-openoffice-hangs.patch
@@ -0,0 +1,55 @@
+https://bugs.gentoo.org/show_bug.cgi?id=197104
+
+commit a5b8053606d6e786cdcf6734f271acc05f9cc588
+Author: Adam Jackson <ajax@benzedrine.nwnk.net>
+Date: Tue Sep 11 11:37:06 2007 -0400
+
+ Ignore - not just block - SIGALRM around Popen()/Pclose().
+
+ Because our "popen" implementation uses stdio, and because nobody's stdio
+ library is capable of surviving signals, we need to make absolutely sure
+ that we hide the SIGALRM from the smart scheduler. Otherwise, when you
+ open a menu in openoffice, and it recompiles XKB to deal with the
+ accelerators, and you popen xkbcomp because we suck, then the scheduler
+ will tell you you're taking forever doing something stupid, and the
+ wait() code will get confused, and input will hang and your CPU usage
+ slams to 100%. Down, not across.
+
+diff --git a/os/utils.c b/os/utils.c
+index 3bb7dbe..afcaae4 100644
+--- a/os/utils.c
++++ b/os/utils.c
+@@ -1720,6 +1720,8 @@ static struct pid {
+ int pid;
+ } *pidlist;
+
++static sighandler_t old_alarm = NULL; /* XXX horrible awful hack */
++
+ pointer
+ Popen(char *command, char *type)
+ {
+@@ -1741,11 +1743,15 @@ Popen(char *command, char *type)
+ return NULL;
+ }
+
++ /* Ignore the smart scheduler while this is going on */
++ old_alarm = signal(SIGALRM, SIG_IGN);
++
+ switch (pid = fork()) {
+ case -1: /* error */
+ close(pdes[0]);
+ close(pdes[1]);
+ xfree(cur);
++ signal(SIGALRM, old_alarm);
+ return NULL;
+ case 0: /* child */
+ if (setgid(getgid()) == -1)
+@@ -1921,6 +1927,8 @@ Pclose(pointer iop)
+ /* allow EINTR again */
+ OsReleaseSignals ();
+
++ signal(SIGALRM, old_alarm);
++
+ return pid == -1 ? -1 : pstat;
+ }
+
diff --git a/x11-base/xorg-server/xorg-server-1.3.0.0-r2.ebuild b/x11-base/xorg-server/xorg-server-1.3.0.0-r2.ebuild
index edd73716134c..ae35a7484b98 100644
--- a/x11-base/xorg-server/xorg-server-1.3.0.0-r2.ebuild
+++ b/x11-base/xorg-server/xorg-server-1.3.0.0-r2.ebuild
@@ -1,6 +1,6 @@
# Copyright 1999-2007 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/x11-base/xorg-server/xorg-server-1.3.0.0-r2.ebuild,v 1.1 2007/10/13 20:52:35 dberkholz Exp $
+# $Header: /var/cvsroot/gentoo-x86/x11-base/xorg-server/xorg-server-1.3.0.0-r2.ebuild,v 1.2 2007/11/07 08:52:11 dberkholz Exp $
# Must be before x-modular eclass is inherited
SNAPSHOT="yes"
@@ -263,6 +263,7 @@ PDEPEND="
LICENSE="${LICENSE} MIT"
PATCHES="
+ ${FILESDIR}/${PV}-fix-xkb-openoffice-hangs.patch
${FILESDIR}/${PV}-fix-dual-head-screen-resolutions.patch
${FILESDIR}/${PV}-fix-randr-resizing.patch
${FILESDIR}/${PV}-fix-xephyr-amd64-segfault.patch
@@ -354,6 +355,12 @@ src_unpack() {
fi
fi
x-modular_reconf_source
+ #do not install xprint's Xsession.d files, we'll do it later
+ if use xprint; then
+ sed -e "s:install-data-am\: install-dist_xpcDATA:install-data-am\::g" \
+ -i "${S}"/hw/xprint/etc/Xsession.d/Makefile.in \
+ || die "sed of Xsession.d makefile failed"
+ fi
}
src_install() {