Vinum and GEOM: the future
Jesper Louis Andersen
jlouis at mongers.org
Tue Jan 6 23:50:41 PST 2004
Quoting Greg 'groggy' Lehey (grog at FreeBSD.org):
Not doing anything useful work for FreeBSD wont let me stand away
from commenting on this issue. I saw it coming about the time where
GEOM was added to the kernel and then forced as mandatory for the
operation of the kernel.
> 1. Ditch it. It's served its purpose, and there are better
> 2. Keep it alongside GEOM, and maintain code such as the swapon()
> code to handle both.
> 3. Modify it to understand GEOM.
I think you explain the points of (3) quite well. I will kill (1) then:
o GEOM is new in the sense that it has not seen a bashing of n system
administrators running it on flaky disks (to quote the GEOM author
from gbde(1) in a slighty modified manner ;).
o GEOM provides things which vinum is not capable of at present and
it will probably be beyond the scope to add said features to Vinum,
apart from the fact that it will start a competition between the
2 implementations of the same feature. FreeBSD does not have enough
committers to support that IMO. This is radically different from
e.g. Linux where it is common to see pieces of code compete for
inclusion into the kernel.
o Vinum is stable. Vinum is proven to work. Apart from it being a
bit dark lands since people who _really_ need RAID probably does
it by hardware anyway. This fact makes it hard to ditch Vinum
entirely because that would leave people with no stable option
when choosing to build software RAID systems.
That said I think it should die at some point. There really is no
reason for having 2 things that does the same unless they differ in
the presumed stability. I did some mental abstract work about thinking
how to implement a RAID-1 by the use of GEOM. It is not abstractly
hard to do kernel work. Yet it is complex: There is a very high risk
that you forget to handle a little nitpick situation correctly and
then data on the disks are lost when that case happens. People using
RAID systems should not do it because of backup. They should be in
place before. People uses RAID to minimize the downtime window and
if that is the point, then stability matters a whole lot.
Modifying Vinum to work with GEOM is changing Vinum yes. But not in
the area that matters with respect to stability.
My 2 cents, somebody else may attack (2).
More information about the freebsd-arch