⚫ Sendig kobject uevent to user space from kernel
⚬ Concept
• Execute user-space binary with predefined + customized environment variables.
• Send message to pre-defined netlink socket unit created by kernel.
⚬ From souce code (hotplug)
• kernel node [kernel/sysctl.c]
: /proc/sys/kernel/hotplug
• kobject_uevent_env() [kobject_uevent.c]
default user process executable image path
-> CONFIG_UEVENT_HELPER_PATH
• kernel/sysctl.c
'uevent_helper' value can be RWed through 'hotplug' node of sysctl.
⚬ From souce code (netlink)
• kobject_uevent_env() [kobject_uevent.c]
: #if defined(CONFIG_NET)
write message to netlink socket unit (NETLINK_KOBJECT_UEVENT)
• netlink.h
netlink units
• Creating in userspace
socket(PF_NETLINK, SOCK_DGRAM, NETLINK_KOBJECT_UEVENT)