cvs commit: src/sys/alpha/alpha autoconf.c src/sys/amd64/amd64 autoconf.c src/sys/boot/common dev_net.c loader.8 src/sys/boot/forth loader.conf src/sys/conf NOTES files options src/sys/i386/i386 autoconf.c locore.s src/sys/ia64/ia64 autoconf.c ...

Robert Watson rwatson at FreeBSD.org
Thu Jul 8 15:17:50 PDT 2004


On Thu, 8 Jul 2004, Brian Somers wrote:

> brian       2004-07-08 13:40:33 UTC
> 
>   FreeBSD src repository
> 
>   Modified files:
>     sys/alpha/alpha      autoconf.c 
>     sys/amd64/amd64      autoconf.c 
>     sys/boot/common      dev_net.c loader.8 
>     sys/boot/forth       loader.conf 
>     sys/conf             NOTES files options 
>     sys/i386/i386        autoconf.c locore.s 
>     sys/ia64/ia64        autoconf.c 
>     sys/modules/nfs4client Makefile 
>     sys/modules/nfsclient Makefile 
>     sys/netinet          ip_input.c 
>     sys/nfs4client       nfs4_vfsops.c 
>     sys/nfsclient        bootp_subr.c nfs_vfsops.c 
>   Log:
>   Change the following kernel options to environment variables:
>   
>       BOOTP -> bootp
>       BOOTP_NFSROOT -> bootp.nfsroot
>       BOOTP_NFSV3 -> bootp.nfsv3
>       BOOTP_COMPAT -> bootp.compat
>       BOOTP_WIRED_TO -> bootp.wired_to

This appears to break the kernel build without NFS client support, as
reported by Steve Kargl, since it builds the bootp code by default, and
the bootp code references the NFS diskless variables from the NFS client.

It's worth noting there was a brief discussion at the Dev Summit about
letting more bits of the kernel be conditionally compiled in order to
avoid unnecessary kernel bloatage for "small" environments.  It's useful
to be able to do this stuff dynamically, but it's also useful to retain
the option to not do it dynamically.  Could we look for an alternative
approach here that does that?

Also, given that PXE seems to be The Way to handle netbooting on i386
these days, I'm puzzled as to what building it in on i386 by default
actually buys us.  Our existing vfs root tunables, etc, seem to provide
much of the benefit, and the pxeboot code already passes interface and
address information to the kernel...?

Robert N M Watson             FreeBSD Core Team, TrustedBSD Projects
robert at fledge.watson.org      Principal Research Scientist, McAfee Research


>   
>   This lets you PXE boot with a GENERIC kernel by putting this sort of thing
>   in loader.conf:
>   
>       bootp="YES"
>       bootp.nfsroot="YES"
>       bootp.nfsv3="YES"
>       bootp.wired_to="bge1"
>   
>   or even setting the variables manually from the OK prompt.
>   
>   Revision  Changes    Path
>   1.58      +6 -6      src/sys/alpha/alpha/autoconf.c
>   1.179     +11 -8     src/sys/amd64/amd64/autoconf.c
>   1.14      +1 -1      src/sys/boot/common/dev_net.c
>   1.63      +23 -0     src/sys/boot/common/loader.8
>   1.81      +5 -0      src/sys/boot/forth/loader.conf
>   1.1242    +1 -8      src/sys/conf/NOTES
>   1.924     +2 -2      src/sys/conf/files
>   1.461     +0 -5      src/sys/conf/options
>   1.176     +11 -8     src/sys/i386/i386/autoconf.c
>   1.183     +0 -3      src/sys/i386/i386/locore.s
>   1.18      +10 -13    src/sys/ia64/ia64/autoconf.c
>   1.2       +1 -1      src/sys/modules/nfs4client/Makefile
>   1.28      +1 -1      src/sys/modules/nfsclient/Makefile
>   1.276     +6 -5      src/sys/netinet/ip_input.c
>   1.8       +0 -1      src/sys/nfs4client/nfs4_vfsops.c
>   1.59      +80 -76    src/sys/nfsclient/bootp_subr.c
>   1.154     +11 -5     src/sys/nfsclient/nfs_vfsops.c
> 



More information about the cvs-src mailing list