summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorNeil Brown <neilb@suse.de>2006-04-28 14:09:24 +1000
committerNeil Brown <neilb@suse.de>2006-04-28 14:09:24 +1000
commit7fa42a0b5e4541b7178c848229fcb7e98696babe (patch)
tree4eca964e12eb9e6227e6c9cef323c670ec8c0e43
parent90d0adf4badeb1ea818b0578fd734b78b3921f3d (diff)
downloadmdadm-7fa42a0b5e4541b7178c848229fcb7e98696babe.tar.gz
mdadm-7fa42a0b5e4541b7178c848229fcb7e98696babe.tar.xz
mdadm-7fa42a0b5e4541b7178c848229fcb7e98696babe.zip
[PATCH] Get the name for partitioned devices in sysfs correct.
There are 64 partitions per device, not 16. Signed-off-by: Neil Brown <neilb@suse.de> ### Diffstat output ./sysfs.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff ./sysfs.c~current~ ./sysfs.c
-rw-r--r--sysfs.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/sysfs.c b/sysfs.c
index 1774509..8c1d45f 100644
--- a/sysfs.c
+++ b/sysfs.c
@@ -69,7 +69,7 @@ struct sysarray *sysfs_read(int fd, int devnum, unsigned long options)
sprintf(sra->name, "md%d", minor(stb.st_rdev));
else
sprintf(sra->name, "md_d%d",
- minor(stb.st_rdev)/16);
+ minor(stb.st_rdev)>>MdpMinorShift);
} else {
if (devnum >= 0)
sprintf(sra->name, "md%d", devnum);
@@ -206,7 +206,7 @@ unsigned long long get_component_size(int fd)
minor(stb.st_rdev));
else
sprintf(fname, "/sys/block/md_d%d/md/component_size",
- minor(stb.st_rdev)/16);
+ minor(stb.st_rdev)>>MdpMinorShift);
fd = open(fname, O_RDONLY);
if (fd < 0)
return 0;