From owner-freebsd-current@freebsd.org Fri Feb 15 21:33:00 2019 Return-Path: Delivered-To: freebsd-current@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 06F8A14EA261 for ; Fri, 15 Feb 2019 21:33:00 +0000 (UTC) (envelope-from se@freebsd.org) Received: from mailman.ysv.freebsd.org (mailman.ysv.freebsd.org [IPv6:2001:1900:2254:206a::50:5]) by mx1.freebsd.org (Postfix) with ESMTP id 830C186793 for ; Fri, 15 Feb 2019 21:32:59 +0000 (UTC) (envelope-from se@freebsd.org) Received: by mailman.ysv.freebsd.org (Postfix) id 4222D14EA260; Fri, 15 Feb 2019 21:32:59 +0000 (UTC) Delivered-To: current@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 05E1114EA25E for ; Fri, 15 Feb 2019 21:32:59 +0000 (UTC) (envelope-from se@freebsd.org) Received: from smtp.freebsd.org (smtp.freebsd.org [IPv6:2610:1c1:1:606c::24b:4]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "smtp.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 9CA5B86790; Fri, 15 Feb 2019 21:32:58 +0000 (UTC) (envelope-from se@freebsd.org) Received: from Stefans-MBP-402.fritz.box (p200300CD5F200D0081D4AAF5D762D5F4.dip0.t-ipconnect.de [IPv6:2003:cd:5f20:d00:81d4:aaf5:d762:d5f4]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client did not present a certificate) (Authenticated sender: se/mail) by smtp.freebsd.org (Postfix) with ESMTPSA id B395312A08; Fri, 15 Feb 2019 21:32:57 +0000 (UTC) (envelope-from se@freebsd.org) Subject: Re: problem building dev/e1000 To: Warner Losh , Ian Lepore Cc: Enji Cooper , Eric Joyner , Robert Huff , FreeBSD Current References: <23653.56460.521599.489556@jerusalem.litteratus.org> <754B5C21-656B-4A67-BA39-50BB4AF5C0CD@gmail.com> <652F1541-52DE-4744-8AEA-8EE6434E04E8@gmail.com> <39629f6cb41cff32b348cf5d329d425352c28464.camel@freebsd.org> <50b76fd19c51acda91ca56d429b5539053ce74a9.camel@freebsd.org> From: Stefan Esser Openpgp: preference=signencrypt Autocrypt: addr=se@freebsd.org; prefer-encrypt=mutual; keydata= mQENBFVxiRIBCADOLNOZBsqlplHUQ3tG782FNtVT33rQli9EjNt2fhFERHIo4NxHlWBpHLnU b0s4L/eItx7au0i7Gegv01A9LUMwOnAc9EFAm4EW3Wmoa6MYrcP7xDClohg/Y69f7SNpEs3x YATBy+L6NzWZbJjZXD4vqPgZSDuMcLU7BEdJf0f+6h1BJPnGuwHpsSdnnMrZeIM8xQ8PPUVQ L0GZkVojHgNUngJH6e21qDrud0BkdiBcij0M3TCP4GQrJ/YMdurfc8mhueLpwGR2U1W8TYB7 4UY+NLw0McThOCLCxXflIeF/Y7jSB0zxzvb/H3LWkodUTkV57yX9IbUAGA5RKRg9zsUtABEB AAG0J1N0ZWZhbiBFw59lciAoRnJlZUJTRCkgPHNlQGZyZWVic2Qub3JnPokBVAQTAQoAPgIb AwULCQgHAwUVCgkICwUWAwIBAAIeAQIXgBYhBKNx6mWcC+zIK3FTE0frte9a/fVEBQJa8u+q BQkLJQETAAoJEEfrte9a/fVEOeMH/icmdK1eZQvB3U8quJo9VMaZsaTuCMbUE4NThyfsIvIm MCd+rb/yULmMYwqNfjyKB1x4ikR4x+94l+yJoz7K0Usks+eNKDmMGJM6pWWssTigaJubFdVd hVVC+C1QJi7JshYSib08uONoPmO4lv5Az0TDYGtsMzsES2sIlc62c9go5WPGYhQFRbX3Lk6y V6m8OHh+G9XGSj3oPO4UteRwu+SzTdOLunZBWG1wu34+IeZm663D+2gOppQLWpLa2qaTerqw THu377ayZ2B2LPJ5JkvkZeHYPkwDQ+b5PGn0UhfkxPnDVYki5F7qKxvQ5uq1/q9YaCX7mmOl H2yO7tgVsrW5AQ0EVXGJEgEIALEj9qCXMZVucjpcd3QxM/TlUr98m5viEd1z4tCnPUyRWcIC EVtj2h5xMH+2iB0q1+KWhq+NsWtvScmEmfHnsr7dJ1K677OdpDhKVaJk61eeRulFY1R4yb6C 1MMxK+WgYB+vvpG0UeyR0M4uBewcPvRsq4yGUHFQKtLAbMdoPTSryJA+ElnmK1vdY+rPcHgi OIMBZM7ahsPXC0C9K4e5SP9clGyIoMpbfHXdx9q+Rp3zVtlbhyk3BS/xccu/+9pk9ICXL6GR js2sNnJ0wxdU1DsAlC59a5MnSruwiZFwRnkQhr3x6wk97Lg7sLS9jjTnCN7LGlVmSmpOEMy6 uq1AWfUAEQEAAYkBPAQYAQoAJgIbDBYhBKNx6mWcC+zIK3FTE0frte9a/fVEBQJa8u+rBQkL JQEZAAoJEEfrte9a/fVEuesH/2DNxGWnHvWwMyiyhlQtafvDKwEn/wAgR8gHJFodB7emf8rA TnukH7MVttCoHtjN5lvv9RSBHjNTZls5wR/ANlwdRuPQHd8ZGxLe3S6IuUB3zDSwFltLGurO N2kOMhs5mTGyypSa+uw3rtQbUAVYf1oPbiR4FLtiM8FLyEvE95hX5fPq9Qvx9FmN79kmCIEw jDKPqDaUf/OR2fEF0LSIbXHEk4tNqCEwx5DIJ0fp5/z5UzICUAmwxyRs5O/Hre1jzPsMVyud Ml9t7UTOJGKVWwRory1PMnOFxN+iz5/d4FhYSKXF7kfMiFgol4LuWaxJRwbBrr71VGBrRy2a L1nw6Bc= Message-ID: Date: Fri, 15 Feb 2019 22:32:36 +0100 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.14; rv:60.0) Gecko/20100101 Thunderbird/60.5.1 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=windows-1252 Content-Language: en-US Content-Transfer-Encoding: 7bit X-Rspamd-Queue-Id: 9CA5B86790 X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.95 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; REPLY(-4.00)[]; NEURAL_HAM_SHORT(-0.95)[-0.952,0] X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 15 Feb 2019 21:33:00 -0000 Am 15.02.19 um 21:28 schrieb Warner Losh: > On Fri, Feb 15, 2019 at 12:54 PM Ian Lepore wrote: > >> On Fri, 2019-02-15 at 12:32 -0700, Warner Losh wrote: >>> On Fri, Feb 15, 2019 at 12:17 PM Ian Lepore 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, STefan