From: Guru Anbalagane Date: Thu, 1 Mar 2012 21:42:49 +0000 (-0800) Subject: sysfs: restore upstream sysfs code X-Git-Tag: v2.6.39-400.9.0~602 X-Git-Url: https://www.infradead.org/git/?a=commitdiff_plain;h=a443c0e0523948f1a0232daf52dfb56bcc5221f0;p=users%2Fjedix%2Flinux-maple.git sysfs: restore upstream sysfs code Revert "Partial revert of mainline removal of deprecated sysfs interface for 13568528" This reverts commit 0c01ee13c10ea3360d517f46cfbe26fd09ee1819. --- diff --git a/drivers/base/class.c b/drivers/base/class.c index 6fcb15b3f73f8..4f1df2e8fd744 100644 --- a/drivers/base/class.c +++ b/drivers/base/class.c @@ -276,25 +276,6 @@ void class_destroy(struct class *cls) class_unregister(cls); } -#ifdef CONFIG_SYSFS_DEPRECATED -char *make_class_name(const char *name, struct kobject *kobj) -{ - char *class_name; - int size; - - size = strlen(name) + strlen(kobject_name(kobj)) + 2; - - class_name = kmalloc(size, GFP_KERNEL); - if (!class_name) - return NULL; - - strcpy(class_name, name); - strcat(class_name, ":"); - strcat(class_name, kobject_name(kobj)); - return class_name; -} -#endif - /** * class_dev_iter_init - initialize class device iterator * @iter: class iterator to initialize diff --git a/drivers/base/core.c b/drivers/base/core.c index 7c2bfbf27c689..78445f40c4308 100644 --- a/drivers/base/core.c +++ b/drivers/base/core.c @@ -759,29 +759,6 @@ static int device_add_class_symlinks(struct device *dev) goto out_subsys; } -#ifdef CONFIG_SYSFS_DEPRECATED - if (dev->parent && device_is_not_partition(dev)) { - struct device *parent = dev->parent; - char *class_name; - - /* - * stacked class devices have the 'device' link - * pointing to the bus device instead of the parent - */ - while (parent->class && !parent->bus && parent->parent) - parent = parent->parent; - - class_name = make_class_name(dev->class->name, - &dev->kobj); - if (class_name) - error = sysfs_create_link(&dev->parent->kobj, - &dev->kobj, class_name); - kfree(class_name); - if (error) - goto out_subsys; - } -#endif - #ifdef CONFIG_BLOCK /* /sys/block has directories and does not need symlinks */ if (sysfs_deprecated && dev->class == &block_class) @@ -810,18 +787,6 @@ static void device_remove_class_symlinks(struct device *dev) if (!dev->class) return; -#ifdef CONFIG_SYSFS_DEPRECATED - if (dev->parent && device_is_not_partition(dev)) { - char *class_name; - - class_name = make_class_name(dev->class->name, &dev->kobj); - if (class_name) { - sysfs_remove_link(&dev->parent->kobj, class_name); - kfree(class_name); - } - sysfs_remove_link(&dev->kobj, "device"); - } -#endif if (dev->parent && device_is_not_partition(dev)) sysfs_remove_link(&dev->kobj, "device"); sysfs_remove_link(&dev->kobj, "subsystem");