Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 7 Mar 1998 17:02:48 -0700
From:      Nate Williams <nate@mt.sri.com>
To:        Dmitrij Tejblum <dima@tejblum.dnttm.rssi.ru>
Cc:        Terry Lambert <tlambert@primenet.com>, current@FreeBSD.ORG
Subject:   Re: vnode_pager: *** WARNING *** stale FS code in system 
Message-ID:  <199803080002.RAA05223@mt.sri.com>
In-Reply-To: <199803072354.CAA02807@tejblum.dnttm.rssi.ru>
References:  <199803070154.SAA27728@usr09.primenet.com> <199803072354.CAA02807@tejblum.dnttm.rssi.ru>

next in thread | previous in thread | raw e-mail | index | archive | help
As a complete newbie to this, let me see if I can inject my thoughts
into this.

Terry wants FS implementors (therefore all FS's) to explicitly write
code for vnode_pagers, rather than having the (potentially buggy) code
used by FS writers.

Dima wants people to not have write potentially trivial code into their
FS, but give them a default that will work in most cases.

Terry claims that if they rely on the trivial code, it could cause bugs.

Dima claims that for most existing FS's, the trivial stuff is good
enough for their purposes, and that any FS developer that isn't writing
a trivial FS already is smart enough to write a non-default vnode_pager
implementation.

Terry claims that this vnode_pager stuff should go away, and it'll be
easier to remove it by making sure that all FS's have this code, but
then he loses me from that point on.

Is everything I said up to this point true for the most part?

If so, I've gotta agree with Dima here.  Anyone silly enough to write
FS's should know what they're doing, and forcing them to write more
boilerplate code that could be done by default is simply silliness.  If
you're smart enough to write FS, you should also be smart enough to
figure out when the defaults won't cut it.

This is the intent of stacking FS's as I understand.  The VFS stuff is
intended to make FS design more OOP, so that you can pick what things
you need to implement, and not have to implement others, just like
object inheritence.

Tell me what I'm missing, if anything?



Nate

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



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