summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTejun Heo <tj@kernel.org>2008-08-25 14:56:09 +0400
committerJens Axboe <jens.axboe@oracle.com>2008-10-09 10:56:07 +0400
commite56105214943ce5f0901d20e972a7cfd0d1d0656 (patch)
treee7b5abffa47f5bfc664fdbb27025872827514089
parent548b10eb2959c96cef6fc29fc96e0931eeb53bc5 (diff)
downloadlinux-e56105214943ce5f0901d20e972a7cfd0d1d0656.tar.xz
block: unify sysfs size node handling
Now that capacity and __dev are moved to part0, part0 and others can share the same method. Signed-off-by: Tejun Heo <tj@kernel.org> Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
-rw-r--r--block/genhd.c10
-rw-r--r--fs/partitions/check.c4
-rw-r--r--include/linux/genhd.h3
3 files changed, 6 insertions, 11 deletions
diff --git a/block/genhd.c b/block/genhd.c
index 36b9f1bdd91f..c70db35076a0 100644
--- a/block/genhd.c
+++ b/block/genhd.c
@@ -760,14 +760,6 @@ static ssize_t disk_ro_show(struct device *dev,
return sprintf(buf, "%d\n", disk->policy ? 1 : 0);
}
-static ssize_t disk_size_show(struct device *dev,
- struct device_attribute *attr, char *buf)
-{
- struct gendisk *disk = dev_to_disk(dev);
-
- return sprintf(buf, "%llu\n", (unsigned long long)get_capacity(disk));
-}
-
static ssize_t disk_capability_show(struct device *dev,
struct device_attribute *attr, char *buf)
{
@@ -835,7 +827,7 @@ static DEVICE_ATTR(range, S_IRUGO, disk_range_show, NULL);
static DEVICE_ATTR(ext_range, S_IRUGO, disk_ext_range_show, NULL);
static DEVICE_ATTR(removable, S_IRUGO, disk_removable_show, NULL);
static DEVICE_ATTR(ro, S_IRUGO, disk_ro_show, NULL);
-static DEVICE_ATTR(size, S_IRUGO, disk_size_show, NULL);
+static DEVICE_ATTR(size, S_IRUGO, part_size_show, NULL);
static DEVICE_ATTR(capability, S_IRUGO, disk_capability_show, NULL);
static DEVICE_ATTR(stat, S_IRUGO, disk_stat_show, NULL);
#ifdef CONFIG_FAIL_MAKE_REQUEST
diff --git a/fs/partitions/check.c b/fs/partitions/check.c
index 902b95f1f9d5..24d2c56d7d2d 100644
--- a/fs/partitions/check.c
+++ b/fs/partitions/check.c
@@ -208,8 +208,8 @@ static ssize_t part_start_show(struct device *dev,
return sprintf(buf, "%llu\n",(unsigned long long)p->start_sect);
}
-static ssize_t part_size_show(struct device *dev,
- struct device_attribute *attr, char *buf)
+ssize_t part_size_show(struct device *dev,
+ struct device_attribute *attr, char *buf)
{
struct hd_struct *p = dev_to_part(dev);
return sprintf(buf, "%llu\n",(unsigned long long)p->nr_sects);
diff --git a/include/linux/genhd.h b/include/linux/genhd.h
index ff293ec8b3f7..9cb8380cf0eb 100644
--- a/include/linux/genhd.h
+++ b/include/linux/genhd.h
@@ -591,6 +591,9 @@ extern void blk_register_region(dev_t devt, unsigned long range,
void *data);
extern void blk_unregister_region(dev_t devt, unsigned long range);
+extern ssize_t part_size_show(struct device *dev,
+ struct device_attribute *attr, char *buf);
+
#else /* CONFIG_BLOCK */
static inline void printk_all_partitions(void) { }