]> git.karo-electronics.de Git - mv-sheeva.git/blobdiff - lib/kobject_uevent.c
iwl3945: Getting rid of the *39_rxon iwl_priv fields
[mv-sheeva.git] / lib / kobject_uevent.c
index 3f914725bda8ae6b278070b52258940bc4b68489..38131028d16f87c9eb2685c08ce9a7af45fa2daa 100644 (file)
@@ -165,7 +165,7 @@ int kobject_uevent_env(struct kobject *kobj, enum kobject_action action,
        /* keys passed in from the caller */
        if (envp_ext) {
                for (i = 0; envp_ext[i]; i++) {
-                       retval = add_uevent_var(env, envp_ext[i]);
+                       retval = add_uevent_var(env, "%s", envp_ext[i]);
                        if (retval)
                                goto exit;
                }
@@ -225,8 +225,13 @@ int kobject_uevent_env(struct kobject *kobj, enum kobject_action action,
                        }
 
                        NETLINK_CB(skb).dst_group = 1;
-                       netlink_broadcast(uevent_sock, skb, 0, 1, GFP_KERNEL);
-               }
+                       retval = netlink_broadcast(uevent_sock, skb, 0, 1,
+                                                  GFP_KERNEL);
+                       /* ENOBUFS should be handled in userspace */
+                       if (retval == -ENOBUFS)
+                               retval = 0;
+               } else
+                       retval = -ENOMEM;
        }
 #endif