[PATCH] Kobject: fix build error

This fixes a build error for various odd combinations of CONFIG_HOTPLUG
and CONFIG_NET.

Signed-off-by: Kay Sievers <kay.sievers@vrfy.org>
Cc: Nigel Cunningham <ncunningham@cyclades.com>
Cc: Andrew Morton <akpm@osdl.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
This commit is contained in:
Kay Sievers 2006-04-25 15:37:26 +02:00 committed by Greg Kroah-Hartman
parent 913e7ec545
commit 4d17ffda33
2 changed files with 8 additions and 2 deletions

View file

@ -259,7 +259,7 @@ struct subsys_attribute {
extern int subsys_create_file(struct subsystem * , struct subsys_attribute *); extern int subsys_create_file(struct subsystem * , struct subsys_attribute *);
extern void subsys_remove_file(struct subsystem * , struct subsys_attribute *); extern void subsys_remove_file(struct subsystem * , struct subsys_attribute *);
#if defined(CONFIG_HOTPLUG) && defined(CONFIG_NET) #if defined(CONFIG_HOTPLUG)
void kobject_uevent(struct kobject *kobj, enum kobject_action action); void kobject_uevent(struct kobject *kobj, enum kobject_action action);
int add_uevent_var(char **envp, int num_envp, int *cur_index, int add_uevent_var(char **envp, int num_envp, int *cur_index,

View file

@ -25,11 +25,13 @@
#define BUFFER_SIZE 2048 /* buffer for the variables */ #define BUFFER_SIZE 2048 /* buffer for the variables */
#define NUM_ENVP 32 /* number of env pointers */ #define NUM_ENVP 32 /* number of env pointers */
#if defined(CONFIG_HOTPLUG) && defined(CONFIG_NET) #if defined(CONFIG_HOTPLUG)
u64 uevent_seqnum; u64 uevent_seqnum;
char uevent_helper[UEVENT_HELPER_PATH_LEN] = "/sbin/hotplug"; char uevent_helper[UEVENT_HELPER_PATH_LEN] = "/sbin/hotplug";
static DEFINE_SPINLOCK(sequence_lock); static DEFINE_SPINLOCK(sequence_lock);
#if defined(CONFIG_NET)
static struct sock *uevent_sock; static struct sock *uevent_sock;
#endif
static char *action_to_string(enum kobject_action action) static char *action_to_string(enum kobject_action action)
{ {
@ -155,6 +157,7 @@ void kobject_uevent(struct kobject *kobj, enum kobject_action action)
spin_unlock(&sequence_lock); spin_unlock(&sequence_lock);
sprintf(seq_buff, "SEQNUM=%llu", (unsigned long long)seq); sprintf(seq_buff, "SEQNUM=%llu", (unsigned long long)seq);
#if defined(CONFIG_NET)
/* send netlink message */ /* send netlink message */
if (uevent_sock) { if (uevent_sock) {
struct sk_buff *skb; struct sk_buff *skb;
@ -179,6 +182,7 @@ void kobject_uevent(struct kobject *kobj, enum kobject_action action)
netlink_broadcast(uevent_sock, skb, 0, 1, GFP_KERNEL); netlink_broadcast(uevent_sock, skb, 0, 1, GFP_KERNEL);
} }
} }
#endif
/* call uevent_helper, usually only enabled during early boot */ /* call uevent_helper, usually only enabled during early boot */
if (uevent_helper[0]) { if (uevent_helper[0]) {
@ -249,6 +253,7 @@ int add_uevent_var(char **envp, int num_envp, int *cur_index,
} }
EXPORT_SYMBOL_GPL(add_uevent_var); EXPORT_SYMBOL_GPL(add_uevent_var);
#if defined(CONFIG_NET)
static int __init kobject_uevent_init(void) static int __init kobject_uevent_init(void)
{ {
uevent_sock = netlink_kernel_create(NETLINK_KOBJECT_UEVENT, 1, NULL, uevent_sock = netlink_kernel_create(NETLINK_KOBJECT_UEVENT, 1, NULL,
@ -264,5 +269,6 @@ static int __init kobject_uevent_init(void)
} }
postcore_initcall(kobject_uevent_init); postcore_initcall(kobject_uevent_init);
#endif
#endif /* CONFIG_HOTPLUG */ #endif /* CONFIG_HOTPLUG */