Home | History | Annotate | Download | only in nfs
History log of /src/sys/nfs/nfsdiskless.h
RevisionDateAuthorComments
 1.33  07-Dec-2024  riastradh sys/nfs/nfs: Add some missing includes and include guards.

Fix up some minor KNF issues while here.

No functional change intended (except to enable things to build that
might not have built before because of previously required #include
ordering).
 1.32  21-May-2015  rtr change nfs_boot_sendrecv to take sockaddr_in * instead of mbuf *

fixes m_serv (single mbuf leak) leak in kern/subr_tftproot.c
 1.31  27-Mar-2015  hikaru m_pullup() is called in rcvproc callback functions,
so nfs_boot_sendrecv() should keep track of the head of mbuf chain.
fixes kern/48746
 1.30  04-Oct-2010  cyber branches: 1.30.14; 1.30.18; 1.30.34; 1.30.36;
Add support to honor MTU settings from DHCP during netboot.

Defines IP_MIN_MTU as 576.

Glanced over quickly by martin@ and joerg@.
 1.29  27-Oct-2008  cegger branches: 1.29.12; 1.29.14;
change nfs boot behaviour to automatically try next boot method if boot information are incomplete to succeed.
That way, it is possible combine static and dhcp boot:
For example, to boot diskless you can specify the nfs-server and the rootpath statically. All other information will be taken via dhcp.

Patch has been presented on port-xen, tech-kern and tech-net:
http://mail-index.netbsd.org/port-xen/2008/10/24/msg004488.html
http://mail-index.netbsd.org/tech-kern/2008/10/24/msg003255.html
http://mail-index.netbsd.org/tech-net/2008/10/24/msg000864.html

No comments, no objections.
 1.28  24-Oct-2008  cegger branches: 1.28.2;
- ansify function definition
- de- __P
- u_int32_t -> uint32_t

No functional changes.
 1.27  28-Apr-2008  martin branches: 1.27.6;
Remove clause 3 and 4 from TNF licenses
 1.26  08-Jul-2007  bouyer branches: 1.26.28; 1.26.30; 1.26.32;
Add a new BOOTSTATIC flag, NFS_BOOTSTATIC_NOSTATIC, which causes
nfs_bootstatic() to abort with EOPNOTSUPP. This allows a callback to
say that there is no bootstatic config, and the next NFS boot method should
be tried.
 1.25  08-May-2007  manu Add the TFTPROOT kernel option for TFTP'ing root RAMdisk at root mount time.
This allows working around situations where a kernel with embedded RAMdisk
cannot be booted by the bootloader because the RAMdisk is too big.
 1.24  11-Dec-2005  christos branches: 1.24.24; 1.24.26; 1.24.30; 1.24.32;
merge ktrace-lwp.
 1.23  22-May-2004  jonathan branches: 1.23.12;
Eliminate several uses of `curproc' from the socket-layer code and from NFS.

Add a new explicit `struct proc *p' argument to socreate(), sosend().
Use that argument instead of curproc. Follow-on changes to pass that
argument to socreate(), sosend(), and (*so->so_send)() calls.
These changes reviewed and independently recoded by Matt Thomas.

Changes to soreceive() and (*dom->dom_exernalize() from Matt Thomas:
pass soreceive()'s struct uio* uio->uio_procp to unp_externalize().
Eliminate curproc from unp_externalize. Also, now soreceive() uses
its uio->uio_procp value, pass that same value downward to
((pr->pru_usrreq)() calls for consistency, instead of (struct proc * )0.

Similar changes in sys/nfs to eliminate (most) uses of curproc,
either via the req-> r_procp field of a struct nfsreq *req argument,
or by passing down new explicit struct proc * arguments.

Reviewed by: Matt Thomas, posted to tech-kern.
NB: The (*pr->pru_usrreq)() change should be tested on more (all!) protocols.
 1.22  01-May-2004  matt Commons are not allowed in header files. extern it.
 1.21  11-Mar-2004  cl Add static nfs boot configuration, from the kernel config file or from
a driver selectable callback function. This is used in the Xen port to
allow controlling the domain's network setup from the domain building
environment at domain creation (vs. having to maintain/change this on a
dhcp server). The Xen network driver parses a command line passed in
from the domain builder.
 1.20  29-Jun-2003  fvdl branches: 1.20.2;
Back out the lwp/ktrace changes. They contained a lot of colateral damage,
and need to be examined and discussed more.
 1.19  28-Jun-2003  darrenr Pass lwp pointers throughtout the kernel, as required, so that the lwpid can
be inserted into ktrace records. The general change has been to replace
"struct proc *" with "struct lwp *" in various function prototypes, pass
the lwp through and use l_proc to get the process pointer when needed.

Bump the kernel rev up to 1.6V
 1.18  05-May-2003  yamt keep things not needed by userland in #ifdef _KERNEL.
(e.g. prototypes for in-kernel functions)
 1.17  01-Dec-2002  matt Add multiple inclusion protection.
 1.16  21-Feb-1999  drochner branches: 1.16.20;
restructure the diskless NFS boot code to keep track of the used
interface and the address allocated, to roll everything back if the
mount fails:
-put an interface pointer into "struct nfs_diskless" to have it
available for cleanup, don't pass it around anymore where the
"struct nfs_diskless" is already passed
-add a "cleanup" function which shuts the interface down
-in the protocol-specific parts, either return with "everything
ready" or "completely shut down"
-use common functions for interface initialization and shutdown
-add a function to delete all routes associate to an interface
(why is this necessary and not done by ~IFF_UP?)
g/c diskless swap stuff
general cleanup
 1.15  30-Sep-1997  drochner Factor out some functions used by bootparam and DHCP boot.
 1.14  09-Sep-1997  gwr Move the call to nfs_boot_getfh() from nfs_vfsops.c to nfs_boot.c
(just for better isolation - it can now be static)
 1.13  29-Aug-1997  gwr Supporting changes for the new BOOTP support in nfs_mountroot.
 1.12  14-Aug-1997  drochner 1. Allow to set a netmask (option NFS_BOOT_NETMASK) for the booting
interface. Without this, NFS_BOOT_NETMASK could be useless in
subnetting envirinment.
2. Comment out unneeded NFS swap related stuff.
Closes PR kern/3918.
 1.11  27-May-1997  gwr branches: 1.11.4;
Minor reorganization of nfs_mountroot code to simplify BOOTP support.
The RPC/bootparamd calls to get the root and swap paths are now done
in nfs_boot_init() instead of nfs_boot_getfh(), so the latter now just
does the RPC/mountd call. Also changed some panics into error returns.
 1.10  20-Oct-1996  fvdl Enhancements from Matthias Drochner:
- Try V3 first for diskless booting. Fall back to V2 if V3 fails.
- optionally (option NFS_BOOT_TCP) try a TCP mount first
for diskless booting. Fall back to UDP if it fails.
- Enable switching between UDP and TCP for remounts.
 1.9  18-Feb-1996  fvdl Bring in a merge of Rick Macklem's NFSv3 code from Lite2
 1.8  13-Feb-1996  gwr Do the RPC to bootparamd a little later (just before the mountd call)
so that we do not ask for the "swap" path when swapping on disk.
 1.7  29-Jun-1994  cgd New RCS ID's, take two. they're more aesthecially pleasant, and use 'NetBSD'
 1.6  13-Jun-1994  gwr New diskless boot code (uses RARP, bootparamd).
 1.5  08-Jun-1994  mycroft Update to 4.4-Lite fs code, with local changes.
 1.4  07-Jul-1993  cgd changes from ws to support diskless booting... these are "OK" on inspection
and after testing... (actually, currently, none of the changed
code is even used...)
 1.3  20-May-1993  cgd more rcs id adding and header cleanup. i like vi macros!
 1.2  20-Apr-1993  cgd re-merged include file changes which got eaten by crash
 1.1  21-Mar-1993  cgd branches: 1.1.1;
Initial revision
 1.1.1.3  01-Mar-1998  fvdl Import 4.4BSD-Lite2
 1.1.1.2  01-Mar-1998  fvdl Import 4.4BSD-Lite for reference
 1.1.1.1  21-Mar-1993  cgd initial import of 386bsd-0.1 sources
 1.11.4.4  14-Oct-1997  thorpej Update marc-pcmcia branch from trunk.
 1.11.4.3  16-Sep-1997  thorpej Update marc-pcmcia branch from trunk.
 1.11.4.2  01-Sep-1997  thorpej Update marc-pcmcia branch from trunk.
 1.11.4.1  23-Aug-1997  thorpej Update marc-pcmcia branch from trunk.
 1.16.20.1  11-Dec-2002  thorpej Sync with HEAD.
 1.20.2.4  21-Sep-2004  skrll Fix the sync with head I botched.
 1.20.2.3  18-Sep-2004  skrll Sync with HEAD.
 1.20.2.2  03-Aug-2004  skrll Sync with HEAD
 1.20.2.1  02-Jul-2003  darrenr Apply the aborted ktrace-lwp changes to a specific branch. This is just for
others to review, I'm concerned that patch fuziness may have resulted in some
errant code being generated but I'll look at that later by comparing the diff
from the base to the branch with the file I attempt to apply to it. This will,
at the very least, put the changes in a better context for others to review
them and attempt to tinker with removing passing of 'struct lwp' through
the kernel.
 1.23.12.2  03-Sep-2007  yamt sync with head.
 1.23.12.1  21-Jun-2006  yamt sync with head.
 1.24.32.1  11-Jul-2007  mjf Sync with head.
 1.24.30.2  15-Jul-2007  ad Sync with head.
 1.24.30.1  08-Jun-2007  ad Sync with head.
 1.24.26.1  17-May-2007  yamt sync with head.
 1.24.24.1  13-May-2007  jdc Pull up revision 1.25 (requested by manu in ticket #635).

Add the TFTPROOT kernel option for TFTP'ing root RAMdisk at root mount time.
This allows working around situations where a kernel with embedded RAMdisk
cannot be booted by the bootloader because the RAMdisk is too big.
 1.26.32.3  09-Oct-2010  yamt sync with head
 1.26.32.2  04-May-2009  yamt sync with head.
 1.26.32.1  16-May-2008  yamt sync with head.
 1.26.30.1  18-May-2008  yamt sync with head.
 1.26.28.2  17-Jan-2009  mjf Sync with HEAD.
 1.26.28.1  02-Jun-2008  mjf Sync with HEAD.
 1.27.6.1  13-Dec-2008  haad Update haad-dm branch to haad-dm-base2.
 1.28.2.1  19-Jan-2009  skrll Sync with HEAD.
 1.29.14.1  05-Mar-2011  rmind sync with head
 1.29.12.1  22-Oct-2010  uebayasi Sync with HEAD (-D20101022).
 1.30.36.2  06-Jun-2015  skrll Sync with HEAD
 1.30.36.1  06-Apr-2015  skrll Sync with HEAD
 1.30.34.1  06-Apr-2015  snj Pull up following revision(s) (requested by hikaru in ticket #656):
sys/kern/subr_tftproot.c: revision 1.14
sys/nfs/krpc_subr.c: revision 1.39
sys/nfs/nfs_boot.c: revision 1.82
sys/nfs/nfs_bootdhcp.c: revision 1.53
sys/nfs/nfsdiskless.h: revision 1.31
m_pullup() is called in rcvproc callback functions,
so nfs_boot_sendrecv() should keep track of the head of mbuf chain.
fixes kern/48746
 1.30.18.1  03-Dec-2017  jdolecek update from HEAD
 1.30.14.1  16-Apr-2015  msaitoh Pull up following revision(s) (requested by hikaru in ticket #1287):
sys/kern/subr_tftproot.c: revision 1.14 via patch
sys/nfs/nfsdiskless.h: revision 1.31
sys/nfs/nfs_boot.c: revision 1.82
sys/nfs/krpc_subr.c: revision 1.39
sys/nfs/nfs_bootdhcp.c: revision 1.53
m_pullup() is called in rcvproc callback functions,
so nfs_boot_sendrecv() should keep track of the head of mbuf chain.
fixes kern/48746

RSS XML Feed