Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 7 Jul 2018 18:06:31 -0700 (PDT)
From:      "Rodney W. Grimes" <freebsd@pdx.rh.CN85.dnsmgr.net>
To:        Warner Losh <imp@bsdimp.com>
Cc:        Eugene Grosbein <eugen@grosbein.net>, Andrew Gallatin <gallatin@cs.duke.edu>, src-committers <src-committers@freebsd.org>, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   Re: svn commit: r335916 - head/sys/conf
Message-ID:  <201807080106.w6816V3r059288@pdx.rh.CN85.dnsmgr.net>
In-Reply-To: <CANCZdfoOyMi=LpRYnv7=sF4OvOMd4TJ99dSpPEnerWSQCX1Wfg@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
> On Sat, Jul 7, 2018, 5:40 PM Eugene Grosbein <eugen@grosbein.net> wrote:
> 
> > 08.07.2018 4:38, Warner Losh wrote:
> >
> > > On Sat, Jul 7, 2018, 4:14 PM Eugene Grosbein <eugen@grosbein.net
> > <mailto:eugen@grosbein.net>> wrote:
> > >
> > >     07.07.2018 22:02, Andrew Gallatin wrote:
> > >
> > >     > One thing that was tangentially brought up is that the ability
> > >     > to compile out-of-tree modules requires keeping the kernel-headers
> > >     > around.  So we may need to identify all the headers that a module
> > might
> > >     > need, and install them in /boot/$KERNEL/sys or some-such.  This
> > would
> > >     > be needed if, for example, we wanted to install a new Nvidia or
> > Virtual
> > >     > Box module and have it work for older installed kernel versions too
> > >     > (eg, across ABI breaking changes in -current).
> > >
> > >     We already have all headers in /usr/include, don't we?
> > >
> > >
> > > Not really. We have a subset of the kernel headers that might not match
> > the running kernel, nor be enough to build modules.
> >
> > They should match running kernel definitely as we do not support not
> > syncronized kernel/world
> > and installworld populates /usr/include.
> >
> 
> Nice theory. Lots and lots of people run this way. And it has worked well,
> so long as the kernel is newer... so, no, they don't have to match.

At some point I had an evolution of "make includes" that would work
without the other parts of src being present (ie, only sys) so that
you could update /usr/include with the kernel headers if you reved
your kernel sources.

Not sure how hard this would be to reimplement, but basically skip over
missing parts of the src tree with a message (echo) that it could not
find that particular set of sources was how it worked.

> And why a subset? Don'we support old-style kernel re-build "config; make
> > depend; make"
> > that does not require full /usr/src tree but /usr/src/sys only?
> >

Your mail agent is still mangling quoting.  Mostly when it line wraps.

> 
> /usr/include is never, ever used to build the kernel (except for things
> like aicasm).

Is not /usr/include really the kernel/userland interface,
not the kernel/kernel interface?

> Warner

-- 
Rod Grimes                                                 rgrimes@freebsd.org



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