]> git.ipfire.org Git - thirdparty/mdadm.git/commitdiff
[PATCH] Get the name for partitioned devices in sysfs correct.
authorNeil Brown <neilb@suse.de>
Fri, 28 Apr 2006 04:09:24 +0000 (14:09 +1000)
committerNeil Brown <neilb@suse.de>
Fri, 28 Apr 2006 04:09:24 +0000 (14:09 +1000)
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

sysfs.c

diff --git a/sysfs.c b/sysfs.c
index 1774509ce7d84de96b0665b69529f4f8a9fbab72..8c1d45f082b3ccebf0b612f21a4d91966a97a935 100644 (file)
--- 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;