]> git.ipfire.org Git - thirdparty/mdadm.git/blobdiff - Assemble.c
Allow scanning of devices listed in /proc/partitions independant of /dev
[thirdparty/mdadm.git] / Assemble.c
index ae06f57217cd427d0447a514a28c39a16eca9281..d251500d3f0750a746134075b7e625b2ed00e60e 100644 (file)
@@ -195,7 +195,7 @@ int Assemble(struct supertype *st, char *mddev, int mdfd,
                        super = NULL;
                }
                
-               dfd = open(devname, O_RDONLY|O_EXCL, 0);
+               dfd = dev_open(devname, O_RDONLY|O_EXCL);
                if (dfd < 0) {
                        if ((inargv && verbose >= 0) || verbose > 0)
                                fprintf(stderr, Name ": cannot open device %s: %s\n",
@@ -287,7 +287,7 @@ int Assemble(struct supertype *st, char *mddev, int mdfd,
                        
                        st->ss->update_super(&info, super, update, devname, verbose);
                        
-                       dfd = open(devname, O_RDWR|O_EXCL, 0);
+                       dfd = dev_open(devname, O_RDWR|O_EXCL);
                        if (dfd < 0) 
                                fprintf(stderr, Name ": Cannot open %s for superblock update\n",
                                        devname);
@@ -418,7 +418,7 @@ int Assemble(struct supertype *st, char *mddev, int mdfd,
                                devices[chosen_drive].devname, devices[chosen_drive].raid_disk,
                                (int)(devices[chosen_drive].events),
                                (int)(devices[most_recent].events));
-               fd = open(devices[chosen_drive].devname, O_RDWR|O_EXCL);
+               fd = dev_open(devices[chosen_drive].devname, O_RDWR|O_EXCL);
                if (fd < 0) {
                        fprintf(stderr, Name ": Couldn't open %s for write - not updating\n",
                                devices[chosen_drive].devname);
@@ -468,7 +468,7 @@ int Assemble(struct supertype *st, char *mddev, int mdfd,
                if (!devices[j].uptodate)
                        continue;
                chosen_drive = j;
-               if ((fd=open(devices[j].devname, O_RDONLY|O_EXCL))< 0) {
+               if ((fd=dev_open(devices[j].devname, O_RDONLY|O_EXCL))< 0) {
                        fprintf(stderr, Name ": Cannot open %s: %s\n",
                                devices[j].devname, strerror(errno));
                        return 1;
@@ -534,7 +534,7 @@ int Assemble(struct supertype *st, char *mddev, int mdfd,
 
        if (change) {
                int fd;
-               fd = open(devices[chosen_drive].devname, O_RDWR|O_EXCL);
+               fd = dev_open(devices[chosen_drive].devname, O_RDWR|O_EXCL);
                if (fd < 0) {
                        fprintf(stderr, Name ": Could open %s for write - cannot Assemble array.\n",
                                devices[chosen_drive].devname);