summaryrefslogtreecommitdiffstats
path: root/puppet-0.24.8-read-proc-mounts.patch
diff options
context:
space:
mode:
authorTodd Zullinger <tmz@fedoraproject.org>2009-08-08 15:17:00 +0000
committerTodd Zullinger <tmz@fedoraproject.org>2009-08-08 15:17:00 +0000
commit53644be93211491d2299612e2e6e616a3b67718b (patch)
tree4df32aca8f24dba47f1ec0fa25e877bc550ee4a0 /puppet-0.24.8-read-proc-mounts.patch
parent5e5467ffebc10aa4b8b0506d8fd6ac16ae25809a (diff)
downloadpuppet-package-53644be93211491d2299612e2e6e616a3b67718b.tar.gz
puppet-package-53644be93211491d2299612e2e6e616a3b67718b.tar.xz
puppet-package-53644be93211491d2299612e2e6e616a3b67718b.zip
Fix a number of packaging and source bugspuppet-0_24_8-4_fc12F-12-startF-12-split
Fri Aug 07 2009 Todd Zullinger <tmz@pobox.com> - 0.24.8-4 - Fix status -p handling on older RHEL (#501577) - Fix condrestart when daemon's aren't running (#480600) - Fix timeout reading /proc/mounts (upstream #1963) - Fix permissions on /var/log/puppet (#495096) - Fix rails test for activerecord-2.3 (#515728) Wed Jun 24 2009 Jeroen van Meeuwen <kanarip@kanarip.com> - Fix permissions on /var/run/puppet/ (#495096) - Support initializing supplementary groups (#1806, #475201, Till Maas) - Own the correct vim directory - Move ext/ outside of doc datadir (rpmlint) - Require ruby(selinux) rather then libselinux-ruby (#507848)
Diffstat (limited to 'puppet-0.24.8-read-proc-mounts.patch')
-rw-r--r--puppet-0.24.8-read-proc-mounts.patch36
1 files changed, 36 insertions, 0 deletions
diff --git a/puppet-0.24.8-read-proc-mounts.patch b/puppet-0.24.8-read-proc-mounts.patch
new file mode 100644
index 0000000..4c22b79
--- /dev/null
+++ b/puppet-0.24.8-read-proc-mounts.patch
@@ -0,0 +1,36 @@
+From 0ce5b22a45d675de6969f3f5e5d4565be0a2d2d1 Mon Sep 17 00:00:00 2001
+From: Ricky Zhou <ricky@fedoraproject.org>
+Date: Sat, 11 Jul 2009 01:57:52 -0400
+Subject: [PATCH/puppet] Fix #1963 - Failing to read /proc/mounts for selinux kills file downloads
+
+This works around a linux kernel bug that causes a select() on
+/proc/mounts to hang.
+---
+ lib/puppet/util/selinux.rb | 10 ++++++++--
+ 1 files changed, 8 insertions(+), 2 deletions(-)
+
+diff --git a/lib/puppet/util/selinux.rb b/lib/puppet/util/selinux.rb
+index cd3b2ac..dc5daec 100644
+--- a/lib/puppet/util/selinux.rb
++++ b/lib/puppet/util/selinux.rb
+@@ -152,9 +152,15 @@ module Puppet::Util::SELinux
+
+ # Internal helper function to read and parse /proc/mounts
+ def read_mounts
++ mounts = ""
+ begin
+- mountfh = File.open("/proc/mounts", NONBLOCK)
+- mounts = mountfh.read
++ mountfh = File.open("/proc/mounts")
++ # We use read_nonblock() in a loop rather than read() to work-around
++ # a linux kernel bug. See ticket #1963 for details.
++ while true
++ mounts += mountfh.read_nonblock(1024)
++ end
++ rescue EOFError
+ mountfh.close
+ rescue
+ return nil
+--
+1.6.3.3
+