USB: cdc_acm: Fix memory leak after hangup
[safe/jmp/linux-2.6] / drivers / pnp / interface.c
index a876ecf..c3f1c8e 100644 (file)
@@ -12,7 +12,6 @@
 #include <linux/errno.h>
 #include <linux/list.h>
 #include <linux/types.h>
-#include <linux/pnp.h>
 #include <linux/stat.h>
 #include <linux/ctype.h>
 #include <linux/slab.h>
@@ -243,8 +242,6 @@ static ssize_t pnp_show_options(struct device *dmdev,
        return ret;
 }
 
-static DEVICE_ATTR(options, S_IRUGO, pnp_show_options, NULL);
-
 static ssize_t pnp_show_current_resources(struct device *dmdev,
                                          struct device_attribute *attr,
                                          char *buf)
@@ -420,9 +417,6 @@ done:
        return count;
 }
 
-static DEVICE_ATTR(resources, S_IRUGO | S_IWUSR,
-                  pnp_show_current_resources, pnp_set_current_resources);
-
 static ssize_t pnp_show_current_ids(struct device *dmdev,
                                    struct device_attribute *attr, char *buf)
 {
@@ -437,27 +431,11 @@ static ssize_t pnp_show_current_ids(struct device *dmdev,
        return (str - buf);
 }
 
-static DEVICE_ATTR(id, S_IRUGO, pnp_show_current_ids, NULL);
-
-int pnp_interface_attach_device(struct pnp_dev *dev)
-{
-       int rc = device_create_file(&dev->dev, &dev_attr_options);
-
-       if (rc)
-               goto err;
-       rc = device_create_file(&dev->dev, &dev_attr_resources);
-       if (rc)
-               goto err_opt;
-       rc = device_create_file(&dev->dev, &dev_attr_id);
-       if (rc)
-               goto err_res;
-
-       return 0;
-
-err_res:
-       device_remove_file(&dev->dev, &dev_attr_resources);
-err_opt:
-       device_remove_file(&dev->dev, &dev_attr_options);
-err:
-       return rc;
-}
+struct device_attribute pnp_interface_attrs[] = {
+       __ATTR(resources, S_IRUGO | S_IWUSR,
+                  pnp_show_current_resources,
+                  pnp_set_current_resources),
+       __ATTR(options, S_IRUGO, pnp_show_options, NULL),
+       __ATTR(id, S_IRUGO, pnp_show_current_ids, NULL),
+       __ATTR_NULL,
+};