X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=init%2Fdo_mounts_md.c;h=3fbc3555ce96410d9d47dca83eda6e4a9f7fae7d;hb=6a77f38946aaee1cd85eeec6cf4229b204c15071;hp=1b960c88cb58a17a40ad5ce8a0ce51ba575bfc4f;hpb=87fc8d1bb10cd459024a742c6a10961fefcef18f;p=linux-2.6.git diff --git a/init/do_mounts_md.c b/init/do_mounts_md.c index 1b960c88c..3fbc3555c 100644 --- a/init/do_mounts_md.c +++ b/init/do_mounts_md.c @@ -232,6 +232,16 @@ static void __init md_setup_drive(void) err = sys_ioctl(fd, RUN_ARRAY, 0); if (err) printk(KERN_WARNING "md: starting md%d failed\n", minor); + else { + /* reread the partition table. + * I (neilb) and not sure why this is needed, but I cannot + * boot a kernel with devfs compiled in from partitioned md + * array without it + */ + sys_close(fd); + fd = sys_open(name, 0, 0); + sys_ioctl(fd, BLKRRPART, 0); + } sys_close(fd); } }