[PATCH -next] driver core: fix build for CONFIG_BLOCK=n

From: Randy Dunlap
Date: Mon Sep 20 2010 - 12:22:49 EST


From: Randy Dunlap <randy.dunlap@xxxxxxxxxx>

Fix build when CONFIG_BLOCK is not enabled (since SEP-06).
Fixes these build errors:

drivers/base/core.c: In function 'get_device_parent':
drivers/base/core.c:622: error: 'block_class' undeclared (first use in this function)
drivers/base/core.c: In function 'device_add_class_symlinks':
drivers/base/core.c:712: error: 'block_class' undeclared (first use in this function)
drivers/base/core.c: In function 'device_remove_class_symlinks':
drivers/base/core.c:742: error: 'block_class' undeclared (first use in this function)

Signed-off-by: Randy Dunlap <randy.dunlap@xxxxxxxxxx>
---
drivers/base/core.c | 6 ++++++
1 file changed, 6 insertions(+)

--- linux-next-20100920.orig/drivers/base/core.c
+++ linux-next-20100920/drivers/base/core.c
@@ -618,6 +618,7 @@ static struct kobject *get_device_parent
struct kobject *k;

#ifdef CONFIG_SYSFS_DEPRECATED
+#ifdef CONFIG_BLOCK
/* block disks show up in /sys/block */
if (dev->class == &block_class) {
if (parent && parent->class == &block_class)
@@ -625,6 +626,7 @@ static struct kobject *get_device_parent
return &block_class.p->class_subsys.kobj;
}
#endif
+#endif
/*
* If we have no parent, we live in "virtual".
* Class-devices with a non class-device as parent, live
@@ -708,10 +710,12 @@ static int device_add_class_symlinks(str
}

#ifdef CONFIG_SYSFS_DEPRECATED
+#ifdef CONFIG_BLOCK
/* /sys/block has directories and does not need symlinks */
if (dev->class == &block_class)
return 0;
#endif
+#endif

/* link in the class directory pointing to the device */
error = sysfs_create_link(&dev->class->p->class_subsys.kobj,
@@ -739,9 +743,11 @@ static void device_remove_class_symlinks
sysfs_remove_link(&dev->kobj, "device");
sysfs_remove_link(&dev->kobj, "subsystem");
#ifdef CONFIG_SYSFS_DEPRECATED
+#ifdef CONFIG_BLOCK
if (dev->class == &block_class)
return;
#endif
+#endif
sysfs_delete_link(&dev->class->p->class_subsys.kobj, &dev->kobj, dev_name(dev));
}

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/