diff --git a/lib/kobject_uevent.c b/lib/kobject_uevent.c index ad72a03ce5e96d6b5e84727bf092bdc2ef25641a..e66e9b63261763eee8b325bd9d79b041622e135e 100644 --- a/lib/kobject_uevent.c +++ b/lib/kobject_uevent.c @@ -259,6 +259,9 @@ int kobject_uevent_env(struct kobject *kobj, enum kobject_action action, struct sk_buff *skb; size_t len; + if (!netlink_has_listeners(uevent_sock, 1)) + continue; + /* allocate message with the maximum possible size */ len = strlen(action_string) + strlen(devpath) + 2; skb = alloc_skb(len + env->buflen, GFP_KERNEL);