diff options
author | Kay Sievers <kay.sievers@vrfy.org> | 2007-08-15 09:38:28 -0400 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@suse.de> | 2007-10-12 17:51:01 -0400 |
commit | 6a8d8abb6e4497ae4132a9b1f0a956ea501f1c46 (patch) | |
tree | f1951698261d20dab965e4595d84560f533ab14d | |
parent | 7eff2e7a8b65c25920207324e56611150eb1cd9a (diff) |
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 @@ | |||
1 | menu "Generic Driver Options" | 1 | menu "Generic Driver Options" |
2 | 2 | ||
3 | config UEVENT_HELPER_PATH | ||
4 | string "path to uevent helper" | ||
5 | depends on HOTPLUG | ||
6 | default "/sbin/hotplug" | ||
7 | help | ||
8 | Path to uevent helper program forked by the kernel for | ||
9 | every uevent. | ||
10 | |||
3 | config STANDALONE | 11 | config STANDALONE |
4 | bool "Select only drivers that don't need compile-time external firmware" if EXPERIMENTAL | 12 | bool "Select only drivers that don't need compile-time external firmware" if EXPERIMENTAL |
5 | default y | 13 | 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[] = { | |||
35 | 35 | ||
36 | #if defined(CONFIG_HOTPLUG) | 36 | #if defined(CONFIG_HOTPLUG) |
37 | u64 uevent_seqnum; | 37 | u64 uevent_seqnum; |
38 | char uevent_helper[UEVENT_HELPER_PATH_LEN] = "/sbin/hotplug"; | 38 | char uevent_helper[UEVENT_HELPER_PATH_LEN] = CONFIG_UEVENT_HELPER_PATH; |
39 | static DEFINE_SPINLOCK(sequence_lock); | 39 | static DEFINE_SPINLOCK(sequence_lock); |
40 | #if defined(CONFIG_NET) | 40 | #if defined(CONFIG_NET) |
41 | static struct sock *uevent_sock; | 41 | static struct sock *uevent_sock; |