diff options
author | NeilBrown <neilb@suse.de> | 2011-03-10 11:36:47 +1100 |
---|---|---|
committer | NeilBrown <neilb@suse.de> | 2011-03-10 11:36:47 +1100 |
commit | b8b8eda80484a2d4ce4a1a00400924033d212c57 (patch) | |
tree | fa99bbc2e3929930e8c9a389c84a0f4c22f3b9f4 /Assemble.c | |
parent | f362d22b5bc492c60fa1ea7e0f8346b7837dd7da (diff) |
Remove incorrect use of open_dev
open_dev can only be used for md array. To open an
arbitrary device, dev_open must be used.
Signed-off-by: NeilBrown <neilb@suse.de>
Diffstat (limited to 'Assemble.c')
-rw-r--r-- | Assemble.c | 9 |
1 files changed, 7 insertions, 2 deletions
@@ -1555,8 +1555,13 @@ int assemble_container_content(struct supertype *st, int mdfd, for (i=0; i<spare; i++) fdlist[i] = -1; for (dev = content->devs; dev; dev = dev->next) { - int fd = open_dev(makedev(dev->disk.major, - dev->disk.minor)); + char buf[20]; + int fd; + sprintf(buf, "%d:%d", + dev->disk.major, + dev->disk.minor); + fd = dev_open(buf, O_RDWR); + if (dev->disk.raid_disk >= 0) fdlist[dev->disk.raid_disk] = fd; else |