Przeglądaj źródła

driver core: fix build for CONFIG_BLOCK not enabled

Fix build errors when CONFIG_BLOCK is not enabled:

drivers/base/core.c: In function 'get_device_parent':
drivers/base/core.c:634: error: 'block_class' undeclared (first use in this function)
drivers/base/core.c: In function 'device_add_class_symlinks':
drivers/base/core.c:723: error: 'block_class' undeclared (first use in this function)
drivers/base/core.c: In function 'device_remove_class_symlinks':
drivers/base/core.c:751: error: 'block_class' undeclared (first use in this function)

Signed-off-by: Randy Dunlap <randy.dunlap@oracle.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Randy Dunlap 14 lat temu
rodzic
commit
ead454feb6
1 zmienionych plików z 6 dodań i 0 usunięć
  1. 6 0
      drivers/base/core.c

+ 6 - 0
drivers/base/core.c

@@ -630,12 +630,14 @@ static struct kobject *get_device_parent(struct device *dev,
 		struct kobject *parent_kobj;
 		struct kobject *parent_kobj;
 		struct kobject *k;
 		struct kobject *k;
 
 
+#ifdef CONFIG_BLOCK
 		/* block disks show up in /sys/block */
 		/* block disks show up in /sys/block */
 		if (sysfs_deprecated && dev->class == &block_class) {
 		if (sysfs_deprecated && dev->class == &block_class) {
 			if (parent && parent->class == &block_class)
 			if (parent && parent->class == &block_class)
 				return &parent->kobj;
 				return &parent->kobj;
 			return &block_class.p->class_subsys.kobj;
 			return &block_class.p->class_subsys.kobj;
 		}
 		}
+#endif
 
 
 		/*
 		/*
 		 * If we have no parent, we live in "virtual".
 		 * If we have no parent, we live in "virtual".
@@ -719,9 +721,11 @@ static int device_add_class_symlinks(struct device *dev)
 			goto out_subsys;
 			goto out_subsys;
 	}
 	}
 
 
+#ifdef CONFIG_BLOCK
 	/* /sys/block has directories and does not need symlinks */
 	/* /sys/block has directories and does not need symlinks */
 	if (sysfs_deprecated && dev->class == &block_class)
 	if (sysfs_deprecated && dev->class == &block_class)
 		return 0;
 		return 0;
+#endif
 
 
 	/* link in the class directory pointing to the device */
 	/* link in the class directory pointing to the device */
 	error = sysfs_create_link(&dev->class->p->class_subsys.kobj,
 	error = sysfs_create_link(&dev->class->p->class_subsys.kobj,
@@ -748,8 +752,10 @@ static void device_remove_class_symlinks(struct device *dev)
 	if (dev->parent && device_is_not_partition(dev))
 	if (dev->parent && device_is_not_partition(dev))
 		sysfs_remove_link(&dev->kobj, "device");
 		sysfs_remove_link(&dev->kobj, "device");
 	sysfs_remove_link(&dev->kobj, "subsystem");
 	sysfs_remove_link(&dev->kobj, "subsystem");
+#ifdef CONFIG_BLOCK
 	if (sysfs_deprecated && dev->class == &block_class)
 	if (sysfs_deprecated && dev->class == &block_class)
 		return;
 		return;
+#endif
 	sysfs_delete_link(&dev->class->p->class_subsys.kobj, &dev->kobj, dev_name(dev));
 	sysfs_delete_link(&dev->class->p->class_subsys.kobj, &dev->kobj, dev_name(dev));
 }
 }