Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

driver-core: skip uevent generation when nobody is listening

Most network namespaces unlikely have listeners to uevents, and should
benefit from skipping all the string copies.

Cc: Eric Biederman <ebiederm@xmission.com>
Signed-off-by: Kay Sievers <kay.sievers@vrfy.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

authored by

Kay Sievers and committed by
Greg Kroah-Hartman
74099b18 cf6a2eac

+3
+3
lib/kobject_uevent.c
··· 259 259 struct sk_buff *skb; 260 260 size_t len; 261 261 262 + if (!netlink_has_listeners(uevent_sock, 1)) 263 + continue; 264 + 262 265 /* allocate message with the maximum possible size */ 263 266 len = strlen(action_string) + strlen(devpath) + 2; 264 267 skb = alloc_skb(len + env->buflen, GFP_KERNEL);