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>