diff options
author | Kay Sievers <kay.sievers@vrfy.org> | 2007-08-15 15:38:28 +0200 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@suse.de> | 2007-10-12 14:51:01 -0700 |
commit | 6a8d8abb6e4497ae4132a9b1f0a956ea501f1c46 (patch) | |
tree | f1951698261d20dab965e4595d84560f533ab14d | |
parent | 7eff2e7a8b65c25920207324e56611150eb1cd9a (diff) | |
download | blackbird-obmc-linux-6a8d8abb6e4497ae4132a9b1f0a956ea501f1c46.tar.gz blackbird-obmc-linux-6a8d8abb6e4497ae4132a9b1f0a956ea501f1c46.zip |
Driver core: add CONFIG_UEVENT_HELPER_PATH
The kernel creates a process for every event that is send, even when
there is no binary it could execute. We are needlessly creating around
200-300 failing processes during early bootup, until we have the chance
to disable it from userspace.
This change allows us to disable /sbin/hotplug entirely, if you want to,
by setting UEVENT_HELPER_PATH="" in the kernel config.
Signed-off-by: Kay Sievers <kay.sievers@vrfy.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
-rw-r--r-- | drivers/base/Kconfig | 8 | ||||
-rw-r--r-- | lib/kobject_uevent.c | 2 |
2 files changed, 9 insertions, 1 deletions
diff --git a/drivers/base/Kconfig b/drivers/base/Kconfig index 5d6312e33490..d7da109c24fd 100644 --- a/drivers/base/Kconfig +++ b/drivers/base/Kconfig @@ -1,5 +1,13 @@ menu "Generic Driver Options" +config UEVENT_HELPER_PATH + string "path to uevent helper" + depends on HOTPLUG + default "/sbin/hotplug" + help + Path to uevent helper program forked by the kernel for + every uevent. + config STANDALONE bool "Select only drivers that don't need compile-time external firmware" if EXPERIMENTAL default y diff --git a/lib/kobject_uevent.c b/lib/kobject_uevent.c index 7d8aeb301635..5ccda460262c 100644 --- a/lib/kobject_uevent.c +++ b/lib/kobject_uevent.c @@ -35,7 +35,7 @@ const char *kobject_actions[] = { #if defined(CONFIG_HOTPLUG) u64 uevent_seqnum; -char uevent_helper[UEVENT_HELPER_PATH_LEN] = "/sbin/hotplug"; +char uevent_helper[UEVENT_HELPER_PATH_LEN] = CONFIG_UEVENT_HELPER_PATH; static DEFINE_SPINLOCK(sequence_lock); #if defined(CONFIG_NET) static struct sock *uevent_sock; |