Bug #1565
closed
vinum root mount cannot be found
Added by rumcic almost 15 years ago.
Updated over 14 years ago.
Description
Vinum cannot read the configuration off of partitions ATM during boot since it
starts accessing (or more precisely tries to) the slices and partitions before
they are registered with devfs (before I can see things like "da0: type 0xa5,
start 63, end = 312581807, size 312581745 : OK" in dmesg which is printed by
ckeck_part() which is called by mbrinit() in sys/kern/subr_diskmbr.c).
Talked with Simon (corecode) on IRC and according to him, it seems vinuminit
needs to be run after disk probing (which currently does not).
P.S.: Also while playing around with vinum, produced the following patchset
which maybe could be useful?
1. When calling init_drive() from read_drive_label() change the static 0 with
the verbose var that is passed to read_drive_label().
2. Changed the way the drives are parsed in vinum_scandisk() and removed the
second iteration of detecting vinum partitions ... everything should be done
in the first iteration? If you provide the slice and maybe even the partitions
it should check that, otherwise it should check everything including the
compatibility slice?
--
Regards,
Rumko
Files
It seems vinum tries to use /dev before it is available. A possible workaround
might be to do the following change to sys/dev/raid/vinum/vinumio.c:
In open_drive(), remove the conditional branch "if (rootdev)" and only leave
the content of the else branch.
This will remove dependance on /dev, and might solve the issue.
Cheers,
Alex Hornung
Hi Alex,
The workaround you specified won't work as pointed in issue1653 (it tries to
assign a synthetized vnode which won't work).
We need to find another solution.
Cheers,
Antonio Huete
I'll take a closer look at this. The right solution seems to be to implement
some synthetic vnode magic within devfs. I'm a bit busy these days, though, so
it might take a while :)
Cheers,
Alex Hornung
This issue should be fixed by 4c83c1d38c3f000618b4d9d46f6e5a50a1655af8.
It is important to note that vfs.root.mountfrom in /boot/loader.conf has to be
set to "<fs>:vinum/vinumroot".
Cheers,
Alex Hornung
Vinum root mounts do work now, but the patch from this issue (vinum.patch) was
still needed in order for vinum to find my vinum slice (had
vinum.drives="/dev/da1s1h" in my loader.conf).
vinum.patch commited in d48458589f0c910aa4909428ec49ccef5b3f35e0, nothing left
in this issue
Also available in: Atom
PDF