|
|
|
@ -30,8 +30,8 @@
|
|
|
|
|
#include <linux/workqueue.h>
|
|
|
|
|
#include <linux/skbuff.h>
|
|
|
|
|
#include <linux/netlink.h>
|
|
|
|
|
#include <linux/kobject.h>
|
|
|
|
|
#include <net/sock.h>
|
|
|
|
|
extern struct sock *uevent_sock;
|
|
|
|
|
extern u64 uevent_next_seqnum(void);
|
|
|
|
|
|
|
|
|
|
#include "gpio.h"
|
|
|
|
@ -1169,9 +1169,6 @@ static void hotplug_button(struct work_struct *work)
|
|
|
|
|
struct event_t *event = container_of(work, struct event_t, wq);
|
|
|
|
|
char *s;
|
|
|
|
|
|
|
|
|
|
if (!uevent_sock)
|
|
|
|
|
return;
|
|
|
|
|
|
|
|
|
|
event->skb = alloc_skb(2048, GFP_KERNEL);
|
|
|
|
|
|
|
|
|
|
s = skb_put(event->skb, strlen(event->action) + 2);
|
|
|
|
@ -1179,7 +1176,7 @@ static void hotplug_button(struct work_struct *work)
|
|
|
|
|
fill_event(event);
|
|
|
|
|
|
|
|
|
|
NETLINK_CB(event->skb).dst_group = 1;
|
|
|
|
|
netlink_broadcast(uevent_sock, event->skb, 0, 1, GFP_KERNEL);
|
|
|
|
|
broadcast_uevent(event->skb, 0, 1, GFP_KERNEL);
|
|
|
|
|
|
|
|
|
|
kfree(event);
|
|
|
|
|
}
|
|
|
|
|