summaryrefslogtreecommitdiff
path: root/udevd.c
diff options
context:
space:
mode:
authorkay.sievers@vrfy.org <kay.sievers@vrfy.org>2004-11-05 13:16:32 +0100
committerGreg KH <gregkh@suse.de>2005-04-26 22:09:26 -0700
commit5a73b25fd6673134328443af04afe7bde0060d72 (patch)
treede593704b0c3554195a10f8464b18ec9e731c2e7 /udevd.c
parenta5d00f9d3725c701d5a2d7a14dfcc7864aac27fb (diff)
[PATCH] Don't use any syslog() in signal handler, cause it may deadlock.
Diffstat (limited to 'udevd.c')
-rw-r--r--udevd.c9
1 files changed, 2 insertions, 7 deletions
diff --git a/udevd.c b/udevd.c
index 0150837143..395cdca88b 100644
--- a/udevd.c
+++ b/udevd.c
@@ -327,20 +327,15 @@ static void asmlinkage sig_handler(int signum)
sigchilds_waiting = 1;
goto do_write;
break;
- default:
- dbg("unhandled signal %d", signum);
- return;
}
-
+
do_write:
/* if pipe is empty, write to pipe to force select to return
* immediately when it gets called
*/
if (!sig_flag) {
rc = write(pipefds[1],&signum,sizeof(signum));
- if (rc < 0)
- dbg("unable to write to pipe");
- else
+ if (rc >= 0)
sig_flag = 1;
}
}