Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 03 Jul 2000 21:42:49 +0200
From:      Poul-Henning Kamp <phk@critter.freebsd.dk>
To:        John Baldwin <jhb@FreeBSD.org>
Cc:        cvs-all@FreeBSD.org, cvs-committers@FreeBSD.org, Nick Hibma <n_hibma@calcaphon.com>
Subject:   Re: cvs commit: src/sys/sys bus.h bus_private.h src/sys/kern sub 
Message-ID:  <8362.962653369@critter.freebsd.dk>
In-Reply-To: Your message of "Mon, 03 Jul 2000 12:18:19 PDT." <200007031918.MAA36724@john.baldwin.cx> 

next in thread | previous in thread | raw e-mail | index | archive | help
In message <200007031918.MAA36724@john.baldwin.cx>, John Baldwin writes:

>> FreeBSD delivers tools, not policy.  This includes the policy on
>> softc use in device drivers you seem to advocate.
>
>And that's why we have both new-bus and new-config in the system,
>right?

With regards to new-bus and new-config, I'm the wrong person to ask,
I didn't get much involved in that one.

My perception from what I read and remember, was that new-config
was config warmed over with a gratin sauce, but still suffering
from all the ailments of config, and without any of the flexibility
we desire in FreeBSD.

So in that sensel: adopting new-config would have set a stricter
"policy" than new-bus does.

But policy vs tools, doesn't really apply to that case I think,
that was more a case of two competing implementations.

>We are capable of setting some policy.

I still don't see an example really.  The only time I would say
that we set policy is when we say things like "BSD always had
/bin/csh as roots shell, and that's they way it's gonna stay!"

For a question like which shell for root, that is IMO a valid
answer, since the only other sensible way to decide it would be a
coin toss, and I'd rather let POLA reign: FreeBSD 1.0 and forward
have all had /bin/csh as roots shell and before that a lot of BSD
and 386BSD releases has as well, and there is no overwhelming reason
to change, only personal preferences.

>How about having
>the new struct bio?  That's policy now, isn't it?  It's not just
>policy if someone else does it and tools if you do it.

If struct bio implements a policy then that policy is no different
from what struct buf implemented.  All I did was to split struct
buf in two separate structures.

>It's not just
>policy if someone else does it and tools if you do it.

Are we getting a bit annoyed here ? :-)

No, it's policy when you limit peoples otherwise valid uses
of something.

If we removed telnetd or ftpd from the tree because People Really
Should Not Be Using It, as has been proposed several times, that
would be policy.

In this particular case, Nick hasn't really given any other reason
than "because I say so", and that is pure policy (at best).

When he starts to argue with memory fragmentation at boot (if we're
that tight we're toast anyway), broken drivers (right, we should
design our system to cater specially for broken drivers ?) he
reminds me of the note scribbled in the margin of the manuscript
to a priests sermon: "Weak argument, raise voice"  :-)

I think Nick and I agree that it is a shortcoming in new-bus that
it can not handle this particular (but not that uncommon) device
architecture better, but until somebody enhances new-bus to do
that, I have the freedom to chose the best possible workaround.

--
Poul-Henning Kamp       | UNIX since Zilog Zeus 3.20
phk@FreeBSD.ORG         | TCP/IP since RFC 956
FreeBSD coreteam member | BSD since 4.3-tahoe    
Never attribute to malice what can adequately be explained by incompetence.


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




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