rpms/autofs/F-11 autofs-5.0.4-allow-automount-daemon-to-dump-core.patch, NONE, 1.1 autofs-5.0.4-fix-pthread-push-order-in-expire_proc_direct.patch, NONE, 1.1 autofs-5.0.4-fix-rpc-fd-leak.patch, NONE, 1.1 autofs.spec, 1.285, 1.286
Ian Kent
iankent at fedoraproject.org
Wed Jul 15 03:03:30 UTC 2009
- Previous message (by thread): rpms/epiphany-extensions/devel .cvsignore, 1.31, 1.32 epiphany-extensions.spec, 1.59, 1.60 sources, 1.31, 1.32
- Next message (by thread): rpms/conakry-fonts/devel conakry-fonts-fontconfig.conf, NONE, 1.1 conakry-fonts.spec, NONE, 1.1 import.log, NONE, 1.1 .cvsignore, 1.1, 1.2 sources, 1.1, 1.2
- Messages sorted by:
[ date ]
[ thread ]
[ subject ]
[ author ]
Author: iankent
Update of /cvs/pkgs/rpms/autofs/F-11
In directory cvs1.fedora.phx.redhat.com:/tmp/cvs-serv26976
Modified Files:
autofs.spec
Added Files:
autofs-5.0.4-allow-automount-daemon-to-dump-core.patch
autofs-5.0.4-fix-pthread-push-order-in-expire_proc_direct.patch
autofs-5.0.4-fix-rpc-fd-leak.patch
Log Message:
* Wed Jul 15 2009 Ian Kent <ikent at redhat.com> - 1:5.0.4-35
- fix an RPC fd leak.
- don't block signals we expect to dump core.
- fix pthread push order in expire_proc_direct().
autofs-5.0.4-allow-automount-daemon-to-dump-core.patch:
--- NEW FILE autofs-5.0.4-allow-automount-daemon-to-dump-core.patch ---
autofs-5.0.4 - allow the automount daemon to dump core
From: Jeff Moyer <jmoyer at redhat.com>
Right now, the automount daemon blocks all signals. We should at least
unblock those that will cause us to dump core. Otherwise, I think the
behaviour could be, umm, interesting.
I tested this by sending SIGBUS and SIGSEGV to the automount daemon.
edit - raven
- I changed this a little so that the change to the signals is
done in one place and added SIGABRT and SIGTRAP to the list
of signals that aren't blocked.
Signed-off-by: Jeff Moyer <jmoyer at redhat.com>
---
CHANGELOG | 1 +
daemon/automount.c | 16 ++++++++++++----
2 files changed, 13 insertions(+), 4 deletions(-)
diff --git a/CHANGELOG b/CHANGELOG
index 7f27f5e..4b85649 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -57,6 +57,7 @@
- mannual umount recovery fixes.
- fix map type info parse error.
- fix an RPC fd leak.
+- don't block signals we expect to dump core.
4/11/2008 autofs-5.0.4
-----------------------
diff --git a/daemon/automount.c b/daemon/automount.c
index 44dcdd6..e7f801b 100644
--- a/daemon/automount.c
+++ b/daemon/automount.c
@@ -64,6 +64,8 @@ static int st_stat = 1;
static int *pst_stat = &st_stat;
static pthread_t state_mach_thid;
+static sigset_t block_sigs;
+
/* Pre-calculated kernel packet length */
static size_t kpkt_len;
@@ -1321,7 +1323,7 @@ static void *statemachine(void *arg)
sigset_t signalset;
int sig;
- sigfillset(&signalset);
+ memcpy(&signalset, &block_sigs, sizeof(sigset));
sigdelset(&signalset, SIGCHLD);
sigdelset(&signalset, SIGCONT);
@@ -1817,7 +1819,6 @@ int main(int argc, char *argv[])
unsigned foreground, have_global_options;
time_t timeout;
time_t age = time(NULL);
- sigset_t allsigs;
struct rlimit rlim;
static const struct option long_options[] = {
{"help", 0, 0, 'h'},
@@ -1837,8 +1838,15 @@ int main(int argc, char *argv[])
{0, 0, 0, 0}
};
- sigfillset(&allsigs);
- sigprocmask(SIG_BLOCK, &allsigs, NULL);
+ sigfillset(&block_sigs);
+ /* allow for the dropping of core files */
+ sigdelset(&block_sigs, SIGABRT);
+ sigdelset(&block_sigs, SIGBUS);
+ sigdelset(&block_sigs, SIGSEGV);
+ sigdelset(&block_sigs, SIGILL);
+ sigdelset(&block_sigs, SIGFPE);
+ sigdelset(&block_sigs, SIGTRAP);
+ sigprocmask(SIG_BLOCK, &block_sigs, NULL);
program = argv[0];
autofs-5.0.4-fix-pthread-push-order-in-expire_proc_direct.patch:
--- NEW FILE autofs-5.0.4-fix-pthread-push-order-in-expire_proc_direct.patch ---
autofs-5.0.4 - fix pthread push order in expire_proc_direct()
From: Ian Kent <raven at themaw.net>
Apparently the pthread_cleanup_push() has the quite stupid semantic
of not working properly if the value of the pointer passed to it
changes after it has been called.
---
CHANGELOG | 1 +
daemon/direct.c | 2 +-
2 files changed, 2 insertions(+), 1 deletion(-)
--- autofs-5.0.4.orig/CHANGELOG
+++ autofs-5.0.4/CHANGELOG
@@ -58,6 +58,7 @@
- fix map type info parse error.
- fix an RPC fd leak.
- don't block signals we expect to dump core.
+- fix pthread push order in expire_proc_direct().
4/11/2008 autofs-5.0.4
-----------------------
--- autofs-5.0.4.orig/daemon/direct.c
+++ autofs-5.0.4/daemon/direct.c
@@ -823,8 +823,8 @@ void *expire_proc_direct(void *arg)
left = 0;
- pthread_cleanup_push(mnts_cleanup, mnts);
mnts = tree_make_mnt_tree(_PROC_MOUNTS, "/");
+ pthread_cleanup_push(mnts_cleanup, mnts);
/* Get a list of mounts select real ones and expire them if possible */
INIT_LIST_HEAD(&list);
autofs-5.0.4-fix-rpc-fd-leak.patch:
--- NEW FILE autofs-5.0.4-fix-rpc-fd-leak.patch ---
autofs-5.0.4 - fix rpc fd leak
From: Ian Kent <raven at themaw.net>
Recent changes which introduced the ability to handle to cope with
IPv6 addresses causes a file descriptor leak in the RPC library.
---
CHANGELOG | 1 +
lib/rpc_subs.c | 11 -----------
2 files changed, 1 insertions(+), 11 deletions(-)
diff --git a/CHANGELOG b/CHANGELOG
index 3fd97d3..9edb113 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -56,6 +56,7 @@
- fix double free in sasl_bind().
- mannual umount recovery fixes.
- fix map type info parse error.
+- fix an RPC fd leak.
4/11/2008 autofs-5.0.4
-----------------------
diff --git a/lib/rpc_subs.c b/lib/rpc_subs.c
index d034b29..cafc775 100644
--- a/lib/rpc_subs.c
+++ b/lib/rpc_subs.c
@@ -253,17 +253,6 @@ static CLIENT *rpc_do_create_client(struct sockaddr *addr, struct conn_info *inf
return NULL;
}
- if (!info->client) {
- *fd = open_sock(addr->sa_family, type, proto);
- if (*fd < 0)
- return NULL;
-
- if (bind(*fd, laddr, slen) < 0) {
- close(*fd);
- return NULL;
- }
- }
-
switch (info->proto->p_proto) {
case IPPROTO_UDP:
if (!info->client) {
Index: autofs.spec
===================================================================
RCS file: /cvs/pkgs/rpms/autofs/F-11/autofs.spec,v
retrieving revision 1.285
retrieving revision 1.286
diff -u -p -r1.285 -r1.286
--- autofs.spec 22 Jun 2009 03:25:52 -0000 1.285
+++ autofs.spec 15 Jul 2009 03:03:30 -0000 1.286
@@ -4,7 +4,7 @@
Summary: A tool for automatically mounting and unmounting filesystems
Name: autofs
Version: 5.0.4
-Release: 33
+Release: 35
Epoch: 1
License: GPLv2+
Group: System Environment/Daemons
@@ -69,6 +69,9 @@ Patch56: autofs-5.0.4-fix-double-free-in
Patch57: autofs-5.0.4-manual-umount-recovery-fixes.patch
Patch58: autofs-5.0.4-fix-map-type-info-parse-error.patch
Patch59: autofs-5.0.4-fix-map-type-info-parse-error-update.patch
+Patch60: autofs-5.0.4-fix-rpc-fd-leak.patch
+Patch61: autofs-5.0.4-allow-automount-daemon-to-dump-core.patch
+Patch62: autofs-5.0.4-fix-pthread-push-order-in-expire_proc_direct.patch
Buildroot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
BuildRequires: autoconf, hesiod-devel, openldap-devel, bison, flex, libxml2-devel, cyrus-sasl-devel, openssl-devel module-init-tools util-linux nfs-utils e2fsprogs libtirpc-devel
Requires: kernel >= 2.6.17
@@ -169,6 +172,9 @@ echo %{version}-%{release} > .version
%patch57 -p1
%patch58 -p1
%patch59 -p1
+%patch60 -p1
+%patch61 -p1
+%patch62 -p1
%build
#CFLAGS="$RPM_OPT_FLAGS" ./configure --prefix=/usr --libdir=%{_libdir}
@@ -221,6 +227,11 @@ fi
%{_libdir}/autofs/
%changelog
+* Wed Jul 15 2009 Ian Kent <ikent at redhat.com> - 1:5.0.4-35
+- fix an RPC fd leak.
+- don't block signals we expect to dump core.
+- fix pthread push order in expire_proc_direct().
+
* Mon Jun 22 2009 Ian Kent <ikent at redhat.com> - 1:5.0.4-33
- update fix map type info parse error.
- Previous message (by thread): rpms/epiphany-extensions/devel .cvsignore, 1.31, 1.32 epiphany-extensions.spec, 1.59, 1.60 sources, 1.31, 1.32
- Next message (by thread): rpms/conakry-fonts/devel conakry-fonts-fontconfig.conf, NONE, 1.1 conakry-fonts.spec, NONE, 1.1 import.log, NONE, 1.1 .cvsignore, 1.1, 1.2 sources, 1.1, 1.2
- Messages sorted by:
[ date ]
[ thread ]
[ subject ]
[ author ]
More information about the fedora-extras-commits
mailing list