Subject: Re: VPS mailing list, BSD interest?
To: James Graham <greywolf@siva.captech.com>
From: Justin T. Gibbs <gibbs@freefall.freebsd.org>
List: current-users
Date: 10/03/1996 14:29:54
>Justin sez:
># >*smeksmeksmek* Hey!  WAKE UP!
># >
># >	--> mirroring != striping <--
># 
># It amazes me how rude people are during technical discussions.
># First I have to read things like "Hint: <blah>", now this.  
># It doesn't make it any less rude if the comments are technically
># incorrect.  Lets keep the discussion on a technical basis, please.
>
><non-technical-diatribe>
>
>Two words, Justin:  lighten up.  I was not trying to be rude, I was
>trying to interject some humour into an obviously missed point.

Not everyone reading this thread may understand or appreciate your
humor.  Email is a poor enough medium for communication as it is.
Stop making it worse so.

>I was saying something different than you were reading, and I wanted
>to make sure you got it.

That isn't true, although I may not have been clear enough about my
own point when I made it.

>I should probably have interjected a smiley.  Even so, this is no
>reason to get nasty about it.
>
>Would you have preferred I said something like, "What are you,
>an idiot?  I said nothing about mirroring, I said *striping*.
>There _is_ a difference."????  I didn't think so, that would have
>been both generally REALLY rude, and completely uncharacteristic
>of my contributions to this forum.  Please, by the way, don't
>consider that I would have even *thought* of saying that, because
>I wasn't even thinking anything along those lines at the time.

I would have prefered something that could not have been construed as
confrontational or rude.  You could have said what you had to say any
number of ways without this ever being an issue.

>I don't claim to know everything, and I never will.  I _do_ believe
>myself to have a fairly good grasp of the concepts, however ill my
>ability to actually code such concepts.

That's fine.  Continue to contribute on a 'technical' level and
we'll be fine.

></non-technical-diatribe>
>
># 
># Of course mirroring != striping.  From the point of design, it
># doesn't matter that that they are.  The point is that you should
># be able to apply VM management to *any* partition even if some
># of the formating choices are restricted by the way a particular 
># machine boots.
>
>That gets really ugly, though, and it adds quite a bit of bloat to
>an otherwise performance-wise streamlined design.

What bloat?  If there is any bloat, its in the boot blocks, and I
believe the decision to implement such a feature should be left
for each individual port to decide on their own.  The policy of
what can and cannot be used by the VM should not be artificially
constrained in this fashion.

>I don't think
>the tradeoff is worth it.  At the very least, you'd need a three-
>stage booter to accomplish the task, as opposed to the two-stage
>model we have now.

You need a three stage boot loader to do a number of things correctly.  If
you want to properly determine the amount of memory in the system on an
i386, you need a three stage boot loader (unless someone has found out how
to shink the boot blocks enough to put this feature in).  In short, this
problem already has to be addressed in order to move forward in other
areas.

>I'll illustrate that if you wish, but I think
>it would be redundant to do so since you are endowed with sufficient
>logistical skills to arrive at the conclusion on your own.

What, no smiley?

># >I think _mirroring_ the root drive is a good idea.
># >
># >I think _striping_ the root drive is suicidal.
># 
># RAID 5 is a form of striping and wouldn't necessarily be overkill
># especially if you consider that what I really want to do with my
># 5 identical disks is to stripe *all* of their space regardless of
># the fact that a small part of the total space is / and /usr.
>
>RAID 5, again, is a time/reliability trade.  If you need that level
>of reliability, okay, that's an all right thing, but RAID 5 is slow
>in hardware and slower in software.  And, of course, I don't need it
>as much as others do.  If it's something you wish to implement, I _do_
>support your (and others) effort.  But I object if the implementation
>is going to add another layer to the already laden filesystem interface.

The decision on how to allocate and manage disk should be up to the user.
If I want to stripe my entire system across 5 disks with no parity at all,
I should be able to.  I don't want the system to decide for me what is
dumb and what is not.

>If it's going to slow me down, I don't want it on my system, not
>even in the form of hooks, because that means I'm still going to end
>up going through another layer, be it null or not.  A null layer is
>still an extra layer, and func(){} still takes time to execute.
>But I'm rambling, as I'm sure you'll be happy to point out.

If the VM supports RAID 5 or striping or mirroring, it will have to do so
even if one of the partitions affected by those allocation policies is not
/.  A properly designed system will allow you to decide what allocation
policies are compiled into the kernel (or loaded via LKM) and will not add
any overhead if you choose to use a non VM managed partition.  The only
place the / VM support may add size in addition to the normal kernel
support is in the boot loader.

>First there was the inode-layered filesystem.  Then we got vnodes due
>to NFS.  Then they implemented the fsswitch on top of that or in
>between the first two.  That's three layers already.  I'd rather
>the fourth was an option.

And I agree.

># My
># other choice is to either lose part of all 5 disks from my stripe
># set, or buy two additional disks so that I can mirror just / and /usr.
># The fact that some machines prevent you from booting to a striped
># volume sucks, but that doesn't mean that your design shouldn't
># allow it for those that can.
>
>You have a third choice:  Stripe 4 out of 5, and put /usr on a
>different spindle from /.

But then / isn't protected.

>Fourth:  have an /altroot hanging around (or a mirrored root), and
>on the other three drives, use that space as swap space.  Give you
>one hell of a /tmp partition! :-)

Having an /altroot only gives me 100% reliability if its on another
drive, so I may as well mirror which means I'm now down to a 3 way
stripe or again taking a chunk out of each drive.

><personal>
>Finally, I want you to realise that I am not intentionally being
>callous, nor are my remarks intended to be rude.  If I come across
>that way, I do apologise.
></personal>

They weren't rude or callous.  I'm sure that you can determine that
just as well as I, but perhaps you weren't thinking about it as much
as before I mentioned it.

># >				--*greywolf;

--
Justin T. Gibbs
===========================================
  FreeBSD: Turning PCs into workstations
===========================================