Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 19 Dec 2002 10:03:56 +1030
From:      Greg 'groggy' Lehey <grog@FreeBSD.org>
To:        Joost Bekkers <joost@bps.jodocus.org>
Cc:        questions@FreeBSD.ORG
Subject:   Re: moving 'vinum start' forward
Message-ID:  <20021218233356.GE2941@wantadilla.lemis.com>
In-Reply-To: <20021218164940.GA22846@bps.jodocus.org>
References:  <20021215194803.GA6395@bps.jodocus.org> <20021215220928.GD53628@wantadilla.lemis.com> <20021216093042.GA9240@bps.jodocus.org> <20021217004352.GE15733@wantadilla.lemis.com> <20021218164940.GA22846@bps.jodocus.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On Wednesday, 18 December 2002 at 17:49:40 +0100, Joost Bekkers wrote:
> On Tue, Dec 17, 2002 at 11:13:52AM +1030, Greg 'groggy' Lehey wrote:
>> On Monday, 16 December 2002 at 10:30:42 +0100, Joost Bekkers wrote:
>>> On Mon, Dec 16, 2002 at 08:39:28AM +1030, Greg 'groggy' Lehey wrote:
>>>> On Sunday, 15 December 2002 at 20:48:03 +0100, Joost Bekkers wrote:
>>>>
>>>>> I've been hacking away at vinum_attach() in sys/dev/vinum/vinum.c
>>>>> but I can't seen to get it to work properly (yet)
>>>>
>>>> It needs to be done during system startup.  I have code to do it, I
>>>> just haven't got around to sorting out the other issues that are
>>>> needed in order to do this properly.
>>>
>>> Is that code available somewhere or could you send it to me?
>>
>> I can send it to you, but it's in a bit of a mess, since it's been
>> lying there for nearly three years.  I could explain to you what to
>> do, but it would take me about as long as really doing it.
>>
>>> I've already got my root partition accessible both directly (so the
>>> loader can get at it) and as a vinum mirrored volume.
>>
>> I'd be interested in seeing *your* code.
>>
>
> Let me say in advance that it is lacking any form of error checking. I should
> also find some way to determine which disk we're booting from, since that is
> the only disk that makes sence to read the config from.
>
>   {
>     char *bootdev[]={"/dev/da0","/dev/da1",NULL};
>     start_config(0);
>     lock_config();
>     vinum_scandisk(bootdev,sizeof(bootdev)/sizeof(bootdev[0]));
>     unlock_config();
>     finish_config(0);
>     save_config();
>   }

Ah.  Yes, that's partially the correct approach, but it requires you
to know *all* Vinum drives; otherwise Vinum will mark the missing ones
down.  Jörg Wunsch already has functional code which does things this
way.  I'm in the process of rewriting vinum_scandisk to find the
drives itself.

Greg
--
When replying to this message, please copy the original recipients.
If you don't, I may ignore the reply or reply to the original recipients.
For more information, see http://www.lemis.com/questions.html
See complete headers for address and phone numbers

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-questions" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20021218233356.GE2941>