aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/generic/patches-2.6.36/223-kobject-add-broadcast_uevent.patch
diff options
context:
space:
mode:
authorGabor Juhos <juhosg@openwrt.org>2012-04-29 15:00:33 +0000
committerGabor Juhos <juhosg@openwrt.org>2012-04-29 15:00:33 +0000
commit4fa9cf6c332964b032488eaf91af25718bb17339 (patch)
tree30c062fe5af12e17cea9f033b7e94156b976c845 /target/linux/generic/patches-2.6.36/223-kobject-add-broadcast_uevent.patch
parent3bc2afc384c4eb5852cfc74f056a045c9dd17dd6 (diff)
downloadupstream-4fa9cf6c332964b032488eaf91af25718bb17339.tar.gz
upstream-4fa9cf6c332964b032488eaf91af25718bb17339.tar.bz2
upstream-4fa9cf6c332964b032488eaf91af25718bb17339.zip
linux/2.6.36: R.I.P.
SVN-Revision: 31519
Diffstat (limited to 'target/linux/generic/patches-2.6.36/223-kobject-add-broadcast_uevent.patch')
-rw-r--r--target/linux/generic/patches-2.6.36/223-kobject-add-broadcast_uevent.patch85
1 files changed, 0 insertions, 85 deletions
diff --git a/target/linux/generic/patches-2.6.36/223-kobject-add-broadcast_uevent.patch b/target/linux/generic/patches-2.6.36/223-kobject-add-broadcast_uevent.patch
deleted file mode 100644
index cfe96f194e..0000000000
--- a/target/linux/generic/patches-2.6.36/223-kobject-add-broadcast_uevent.patch
+++ /dev/null
@@ -1,85 +0,0 @@
---- a/include/linux/kobject.h
-+++ b/include/linux/kobject.h
-@@ -31,6 +31,8 @@
- #define UEVENT_NUM_ENVP 32 /* number of env pointers */
- #define UEVENT_BUFFER_SIZE 2048 /* buffer for the variables */
-
-+struct sk_buff;
-+
- /* path to the userspace helper executed on an event */
- extern char uevent_helper[];
-
-@@ -213,6 +215,10 @@ int add_uevent_var(struct kobj_uevent_en
-
- int kobject_action_type(const char *buf, size_t count,
- enum kobject_action *type);
-+
-+int broadcast_uevent(struct sk_buff *skb, __u32 pid, __u32 group,
-+ gfp_t allocation);
-+
- #else
- static inline int kobject_uevent(struct kobject *kobj,
- enum kobject_action action)
-@@ -229,6 +235,16 @@ static inline int add_uevent_var(struct
- static inline int kobject_action_type(const char *buf, size_t count,
- enum kobject_action *type)
- { return -EINVAL; }
-+
-+void kfree_skb(struct sk_buff *);
-+
-+static inline int broadcast_uevent(struct sk_buff *skb, __u32 pid, __u32 group,
-+ gfp_t allocation)
-+{
-+ kfree_skb(skb);
-+ return 0;
-+}
-+
- #endif
-
- #endif /* _KOBJECT_H_ */
---- a/lib/kobject_uevent.c
-+++ b/lib/kobject_uevent.c
-@@ -377,6 +377,43 @@ int add_uevent_var(struct kobj_uevent_en
- EXPORT_SYMBOL_GPL(add_uevent_var);
-
- #if defined(CONFIG_NET)
-+int broadcast_uevent(struct sk_buff *skb, __u32 pid, __u32 group,
-+ gfp_t allocation)
-+{
-+ struct uevent_sock *ue_sk;
-+ int err = 0;
-+
-+ /* send netlink message */
-+ mutex_lock(&uevent_sock_mutex);
-+ list_for_each_entry(ue_sk, &uevent_sock_list, list) {
-+ struct sock *uevent_sock = ue_sk->sk;
-+ struct sk_buff *skb2;
-+
-+ skb2 = skb_clone(skb, allocation);
-+ if (!skb2)
-+ break;
-+
-+ err = netlink_broadcast(uevent_sock, skb2, pid, group,
-+ allocation);
-+ if (err)
-+ break;
-+ }
-+ mutex_unlock(&uevent_sock_mutex);
-+
-+ kfree_skb(skb);
-+ return err;
-+}
-+#else
-+int broadcast_uevent(struct sk_buff *skb, __u32 pid, __u32 group,
-+ gfp_t allocation)
-+{
-+ kfree_skb(skb);
-+ return 0;
-+}
-+#endif
-+EXPORT_SYMBOL_GPL(broadcast_uevent);
-+
-+#if defined(CONFIG_NET)
- static int uevent_net_init(struct net *net)
- {
- struct uevent_sock *ue_sk;