Am 15.02.19 um 21:28 schrieb Warner Losh: > On Fri, Feb 15, 2019 at 12:54 PM Ian Lepore <ian_at_freebsd.org> wrote: > >> On Fri, 2019-02-15 at 12:32 -0700, Warner Losh wrote: >>> On Fri, Feb 15, 2019 at 12:17 PM Ian Lepore <ian_at_freebsd.org> wrote: >> I guess the question would be how many things does '...' represent now >> and in the future? What it would need to be, given our current >> inflexible config(8) is >> >> net/iflib.c optional ether pci em | ether pci igb | ... >> >> So if ... is 2 or 3 more drivers, that's not so bad. If iflib is >> eventually going to be used by dozens of drivers, even the parens would >> make for a pretty ugly solution. > > Immediately, there's at least half a dozen. Count on there being a dozen or > two eventually. I had been thinking about a dependencies file for config, which either reports missing device/options lines, or adds obvious dependencies. This could also detect other missing pre-requisites, e.g. if inet or inet6 is to be compiled in, but no link-layer support (e.g. ether or wlan). The same applies to iflib for drivers that need it, miibus, CAM, ... The purpose of such a dependency check would be a clear indication of the missing definitions, especially if the dependencies have been changed as with iflib becoming non-standard. Open points: - How to generate these dependency files (could be derived from driver sources, e.g. an #include of some header might indicate that some "device xyz" is required). - Loadable kernel modules are an alternate method to provide a device driver or protocol (the dependency check could in such cases warn that a driver is not compiled in and will be required in form of a LKM). I have had a look at /sys/conf/files and have noticed that a number of lines contain bugs. E.g. there are network drivers that depend on "inet" and will not be compiled in if only "inet6" has been selected in the config file. Regards, STefanReceived on Fri Feb 15 2019 - 20:33:00 UTC
This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:41:20 UTC