diff options
author | Donnie Berkholz <dberkholz@gentoo.org> | 2007-11-07 08:52:12 +0000 |
---|---|---|
committer | Donnie Berkholz <dberkholz@gentoo.org> | 2007-11-07 08:52:12 +0000 |
commit | bb53be6e60b678503c7ba8509675a3a16a382f43 (patch) | |
tree | 8e029516ce98c558f00d9bc88410a7513d7333b9 /x11-base | |
parent | Add a post-installation notice about the new sloppy locking. (diff) | |
download | historical-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/ChangeLog | 8 | ||||
-rw-r--r-- | x11-base/xorg-server/Manifest | 26 | ||||
-rw-r--r-- | x11-base/xorg-server/files/1.3.0.0-fix-xkb-openoffice-hangs.patch | 55 | ||||
-rw-r--r-- | x11-base/xorg-server/xorg-server-1.3.0.0-r2.ebuild | 9 |
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() { |