History log of /src/sys/miscfs/umapfs |
Revision | Date | Author | Comments |
1.1 | 12-Jun-1998 |
cgd | Rework the way kernel include files are installed. In the new method, as with user-land programs, include files are installed by each directory in the tree that has includes to install. (This allows more flexibility as to what gets installed, makes 'partial installs' easier, and gives us more options as to which machines' includes get installed at any given time.) The old SYS_INCLUDES={symlinks,copies} behaviours are _both_ still supported, though at least one bug in the 'symlinks' case is fixed by this change. Include files can't be build before installation, so directories that have includes as targets (e.g. dev/pci) have to move those targets into a different Makefile.
|
1.3 | 12-Oct-2014 |
uebayasi | Define layerfs as an attribute.
|
1.2 | 11-Oct-2014 |
uebayasi | Define filesystem attributes with vfs dependency.
|
1.1 | 16-Apr-2002 |
thorpej | branches: 1.1.6; 1.1.8; 1.1.162; Cleanup how file system configuration information is declared, grouping related information together, with the file system code itself.
This is just low-hanging fruit -- more to come.
|
1.1.162.1 | 03-Dec-2017 |
jdolecek | update from HEAD
|
1.1.8.2 | 23-Jun-2002 |
jdolecek | catch up with -current on kqueue branch
|
1.1.8.1 | 16-Apr-2002 |
jdolecek | file files.umapfs was added on branch kqueue on 2002-06-23 17:50:16 +0000
|
1.1.6.2 | 20-Jun-2002 |
nathanw | Catch up to -current.
|
1.1.6.1 | 16-Apr-2002 |
nathanw | file files.umapfs was added on branch nathanw_sa on 2002-06-20 03:48:04 +0000
|
1.19 | 20-Aug-2019 |
perseant | Clean up debugging cruft that somehow made it into my previous commit.
|
1.18 | 20-Aug-2019 |
perseant | Allow the user to specify the filesystem ID for umapfs at mount time, allowing a consistent filesystem ID across reboots. Closes PR #54471.
|
1.17 | 11-Apr-2017 |
hannken | branches: 1.17.12; Field "layerm_vfs" of "struct layer_mount" got superseded by "mnt_lower". Adapt consumers and remove the now unused field.
Ride 7.99.68
|
1.16 | 28-Jun-2008 |
rumble | branches: 1.16.40; 1.16.60; 1.16.64; 1.16.68; Create sysctl entries during module initialisation and destroy them appropriately.
Many of these file systems are now ready for modularisation.
|
1.15 | 14-May-2006 |
elad | branches: 1.15.58; 1.15.62; 1.15.64; 1.15.66; integrate kauth.
|
1.14 | 11-Dec-2005 |
christos | branches: 1.14.4; 1.14.6; 1.14.8; 1.14.10; 1.14.12; merge ktrace-lwp.
|
1.13 | 30-Aug-2005 |
xtraeme | Remove __P()
|
1.12 | 26-Feb-2005 |
perry | branches: 1.12.4; nuke trailing whitespace
|
1.11 | 20-May-2004 |
atatat | branches: 1.11.4; 1.11.6; Tweak sysctl setup functions (the macros, actually) for use in lkms, and tweak lkminit_*.c (where applicable) to call them, and to call sysctl_teardown() when being unloaded.
This consists of (1) making setup functions not be static when being compiled as lkms (change to sys/sysctl.h), (2) making prototypes visible for the various setup functions in header files (changes to various header files), and (3) making simple "load" and "unload" functions in the actual lkminit stuff.
linux_sysctl.c also needs its root exposed (ie, made not static) for this (when built as an lkm).
|
1.10 | 07-Aug-2003 |
agc | branches: 1.10.2; Move UCB-licensed code from 4-clause to 3-clause licence.
Patches provided by Joel Baker in PR 22364, verified by myself.
|
1.9 | 08-Jul-1999 |
wrstuden | branches: 1.9.36; Introduce layer library in genfs. This set of files abstracts most of the functionality of nullfs. The latter is now just a mount & unmount routine, and a few tables. umapfs borrow most of this infrastructure.
Both fs's are now nfs-exportable.
All layered fs's share a common format to private mount & private vnode structs (which a particular fs can extend).
Also add genfs_noerr_rele(), a vnode op which will vrele/vput operand vnodes appropriately.
|
1.8 | 01-Mar-1998 |
fvdl | branches: 1.8.10; Merge with Lite2 + local changes
|
1.7 | 06-Oct-1997 |
thorpej | Make the vfs ops and vnodeop_opv symbols match the name of the file-system option used to configure the file system into the kernel.
|
1.6 | 09-Feb-1996 |
christos | branches: 1.6.12; miscfs prototype changes
|
1.5 | 15-Apr-1995 |
cgd | clean up some return-type warnings
|
1.4 | 29-Mar-1995 |
briggs | KERNEL -> _KERNEL
|
1.3 | 19-Aug-1994 |
mycroft | Convert hash tables.
|
1.2 | 29-Jun-1994 |
cgd | branches: 1.2.2; New RCS ID's, take two. they're more aesthecially pleasant, and use 'NetBSD'
|
1.1 | 08-Jun-1994 |
mycroft | branches: 1.1.1; Update to 4.4-Lite fs code, with local changes.
|
1.1.1.2 | 01-Mar-1998 |
fvdl | Import 4.4BSD-Lite2
|
1.1.1.1 | 01-Mar-1998 |
fvdl | Import 4.4BSD-Lite for reference
|
1.2.2.1 | 19-Aug-1994 |
mycroft | update from trunk
|
1.6.12.1 | 14-Oct-1997 |
thorpej | Update marc-pcmcia branch from trunk.
|
1.8.10.1 | 02-Aug-1999 |
thorpej | Update from trunk.
|
1.9.36.5 | 10-Nov-2005 |
skrll | Sync with HEAD. Here we go again...
|
1.9.36.4 | 04-Mar-2005 |
skrll | Sync with HEAD.
Hi Perry!
|
1.9.36.3 | 21-Sep-2004 |
skrll | Fix the sync with head I botched.
|
1.9.36.2 | 18-Sep-2004 |
skrll | Sync with HEAD.
|
1.9.36.1 | 03-Aug-2004 |
skrll | Sync with HEAD
|
1.10.2.1 | 23-May-2004 |
tron | Pull up revision 1.11 (requested by atatat in ticket #374): Tweak sysctl setup functions (the macros, actually) for use in lkms, and tweak lkminit_*.c (where applicable) to call them, and to call sysctl_teardown() when being unloaded. This consists of (1) making setup functions not be static when being compiled as lkms (change to sys/sysctl.h), (2) making prototypes visible for the various setup functions in header files (changes to various header files), and (3) making simple "load" and "unload" functions in the actual lkminit stuff. linux_sysctl.c also needs its root exposed (ie, made not static) for this (when built as an lkm).
|
1.11.6.1 | 19-Mar-2005 |
yamt | sync with head. xen and whitespace. xen part is not finished.
|
1.11.4.1 | 29-Apr-2005 |
kent | sync with -current
|
1.12.4.1 | 21-Jun-2006 |
yamt | sync with head.
|
1.14.12.1 | 24-May-2006 |
tron | Merge 2006-05-24 NetBSD-current into the "peter-altq" branch.
|
1.14.10.1 | 08-Mar-2006 |
elad | Adapt to kernel authorization KPI.
|
1.14.8.1 | 24-May-2006 |
yamt | sync with head.
|
1.14.6.1 | 01-Jun-2006 |
kardel | Sync with head.
|
1.14.4.1 | 09-Sep-2006 |
rpaulo | sync with head
|
1.15.66.1 | 03-Jul-2008 |
simonb | Sync with head.
|
1.15.64.1 | 18-Sep-2008 |
wrstuden | Sync with wrstuden-revivesa-base-2.
|
1.15.62.1 | 04-May-2009 |
yamt | sync with head.
|
1.15.58.1 | 29-Jun-2008 |
mjf | Sync with HEAD.
|
1.16.68.1 | 21-Apr-2017 |
bouyer | Sync with HEAD
|
1.16.64.1 | 26-Apr-2017 |
pgoyette | Sync with HEAD
|
1.16.60.1 | 28-Aug-2017 |
skrll | Sync with HEAD
|
1.16.40.1 | 03-Dec-2017 |
jdolecek | update from HEAD
|
1.17.12.1 | 13-Apr-2020 |
martin | Mostly merge changes from HEAD upto 20200411
|
1.29 | 09-Nov-2014 |
maxv | Do not uselessly include <sys/malloc.h>.
|
1.28 | 15-Mar-2009 |
cegger | branches: 1.28.22; 1.28.38; ansify function definitions
|
1.27 | 14-Mar-2009 |
dsl | Change about 4500 of the K&R function definitions to ANSI ones. There are still about 1600 left, but they have ',' or /* ... */ in the actual variable definitions - which my awk script doesn't handle. There are also many that need () -> (void). (The script does handle misordered arguments.)
|
1.26 | 13-Feb-2009 |
plunky | While we remap credentials we should ignore cred == FSCRED as well as cred == NOCRED.
This fixes a page fault occurring when a union is mounted over a umap, as FSCRED is passed by union filesystem.
|
1.25 | 30-Jun-2007 |
dsl | branches: 1.25.32; 1.25.42; 1.25.44; 1.25.48; Updates for changes prototype of kauth_cred_set/getgroups().
|
1.24 | 14-May-2006 |
elad | branches: 1.24.18; 1.24.20; integrate kauth.
|
1.23 | 11-Dec-2005 |
christos | branches: 1.23.4; 1.23.6; 1.23.8; 1.23.10; 1.23.12; merge ktrace-lwp.
|
1.22 | 30-Aug-2005 |
xtraeme | Remove __P()
|
1.21 | 26-Feb-2005 |
perry | branches: 1.21.4; nuke trailing whitespace
|
1.20 | 07-Aug-2003 |
agc | branches: 1.20.8; 1.20.10; Move UCB-licensed code from 4-clause to 3-clause licence.
Patches provided by Joel Baker in PR 22364, verified by myself.
|
1.19 | 15-Nov-2001 |
lukem | branches: 1.19.16; don't need <sys/types.h> when including <sys/param.h>
|
1.18 | 10-Nov-2001 |
lukem | add RCSIDs
|
1.17 | 07-Jun-2001 |
wiz | branches: 1.17.2; 1.17.6; Typos and grammer fixes in comments (misc/13133 by Michael K. Sanders)
|
1.16 | 13-Mar-2000 |
soren | branches: 1.16.6; Fix doubled 'the's in comments.
|
1.15 | 08-Jul-1999 |
wrstuden | branches: 1.15.2; Introduce layer library in genfs. This set of files abstracts most of the functionality of nullfs. The latter is now just a mount & unmount routine, and a few tables. umapfs borrow most of this infrastructure.
Both fs's are now nfs-exportable.
All layered fs's share a common format to private mount & private vnode structs (which a particular fs can extend).
Also add genfs_noerr_rele(), a vnode op which will vrele/vput operand vnodes appropriately.
|
1.14 | 19-Mar-1999 |
perseant | branches: 1.14.4; Apply patch from kern/5538:
Fix group mapping so members of group 0 get other group-ids mapped as well. Avoid rename panic by checking (*this_vp_p) against NULLVP before dereferencing it (same change as to NULLFS some time ago).
|
1.13 | 01-Mar-1998 |
fvdl | Merge with Lite2 + local changes
|
1.12 | 07-Feb-1998 |
chs | add flags arg to hashinit(), to pass to malloc().
|
1.11 | 10-Sep-1997 |
christos | PR/4098: Alan Barrett: Fix diagnostic printf formatting.
|
1.10 | 13-Oct-1996 |
christos | branches: 1.10.10; backout previous kprintf changes
|
1.9 | 10-Oct-1996 |
christos | printf -> kprintf, sprintf -> ksprintf
|
1.8 | 05-Mar-1996 |
thorpej | Don't deref a bad ucred pointer, from Dave Carrel <carrel@cisco.com>, PR #1699.
|
1.7 | 09-Feb-1996 |
christos | miscfs prototype changes
|
1.6 | 01-Jun-1995 |
jtc | Moved egid credential from cr_groups[0] to new field cr_gid. POSIX.1 requires that sgid executables and the setuid() syscall *not* change the supplemental group list.
|
1.5 | 15-Apr-1995 |
cgd | clean up some return-type warnings
|
1.4 | 20-Sep-1994 |
cgd | fix device aliasing and lost vnode problems.
|
1.3 | 19-Aug-1994 |
mycroft | Convert hash tables.
|
1.2 | 29-Jun-1994 |
cgd | branches: 1.2.2; New RCS ID's, take two. they're more aesthecially pleasant, and use 'NetBSD'
|
1.1 | 08-Jun-1994 |
mycroft | branches: 1.1.1; Update to 4.4-Lite fs code, with local changes.
|
1.1.1.2 | 01-Mar-1998 |
fvdl | Import 4.4BSD-Lite2
|
1.1.1.1 | 01-Mar-1998 |
fvdl | Import 4.4BSD-Lite for reference
|
1.2.2.2 | 20-Sep-1994 |
cgd | from trunk.
|
1.2.2.1 | 19-Aug-1994 |
mycroft | update from trunk
|
1.10.10.1 | 16-Sep-1997 |
thorpej | Update marc-pcmcia branch from trunk.
|
1.14.4.1 | 02-Aug-1999 |
thorpej | Update from trunk.
|
1.15.2.1 | 20-Nov-2000 |
bouyer | Update thorpej_scsipi to -current as of a month ago
|
1.16.6.3 | 08-Jan-2002 |
nathanw | Catch up to -current.
|
1.16.6.2 | 14-Nov-2001 |
nathanw | Catch up to -current.
|
1.16.6.1 | 21-Jun-2001 |
nathanw | Catch up to -current.
|
1.17.6.1 | 12-Nov-2001 |
thorpej | Sync the thorpej-mips-cache branch with -current.
|
1.17.2.1 | 10-Jan-2002 |
thorpej | Sync kqueue branch with -current.
|
1.19.16.5 | 10-Nov-2005 |
skrll | Sync with HEAD. Here we go again...
|
1.19.16.4 | 04-Mar-2005 |
skrll | Sync with HEAD.
Hi Perry!
|
1.19.16.3 | 21-Sep-2004 |
skrll | Fix the sync with head I botched.
|
1.19.16.2 | 18-Sep-2004 |
skrll | Sync with HEAD.
|
1.19.16.1 | 03-Aug-2004 |
skrll | Sync with HEAD
|
1.20.10.1 | 19-Mar-2005 |
yamt | sync with head. xen and whitespace. xen part is not finished.
|
1.20.8.1 | 29-Apr-2005 |
kent | sync with -current
|
1.21.4.2 | 03-Sep-2007 |
yamt | sync with head.
|
1.21.4.1 | 21-Jun-2006 |
yamt | sync with head.
|
1.23.12.1 | 24-May-2006 |
tron | Merge 2006-05-24 NetBSD-current into the "peter-altq" branch.
|
1.23.10.3 | 06-May-2006 |
christos | - Move kauth_cred_t declaration to <sys/types.h> - Cleanup struct ucred; forward declarations that are unused. - Don't include <sys/kauth.h> in any header, but include it in the c files that need it.
Approved by core.
|
1.23.10.2 | 14-Mar-2006 |
elad | Use kauth_cred_[sg]etgroups() where appropriate.
|
1.23.10.1 | 08-Mar-2006 |
elad | Adapt to kernel authorization KPI.
|
1.23.8.1 | 24-May-2006 |
yamt | sync with head.
|
1.23.6.1 | 01-Jun-2006 |
kardel | Sync with head.
|
1.23.4.1 | 09-Sep-2006 |
rpaulo | sync with head
|
1.24.20.1 | 11-Jul-2007 |
mjf | Sync with head.
|
1.24.18.1 | 15-Jul-2007 |
ad | Sync with head.
|
1.25.48.1 | 13-May-2009 |
jym | Sync with HEAD.
Commit is split, to avoid a "too many arguments" protocol error.
|
1.25.44.1 | 23-Feb-2009 |
snj | Pull up following revision(s) (requested by plunky in ticket #461): sys/miscfs/umapfs/umap_subr.c: revision 1.26 sys/miscfs/umapfs/umap_vnops.c: revision 1.44 While we remap credentials we should ignore cred == FSCRED as well as cred == NOCRED. This fixes a page fault occurring when a union is mounted over a umap, as FSCRED is passed by union filesystem.
|
1.25.42.2 | 28-Apr-2009 |
skrll | Sync with HEAD.
|
1.25.42.1 | 03-Mar-2009 |
skrll | Sync with HEAD.
|
1.25.32.1 | 04-May-2009 |
yamt | sync with head.
|
1.28.38.1 | 17-Jan-2015 |
martin | Pull up following revision(s) (requested by maxv in ticket #427): sys/compat/svr4/svr4_schedctl.c: revision 1.8 sys/netinet/tcp_timer.c: revision 1.88 sys/miscfs/genfs/layer_vfsops.c: revision 1.45 sys/compat/svr4/svr4_ioctl.c: revision 1.37 sys/ufs/chfs/chfs_vfsops.c: revision 1.14 sys/miscfs/fdesc/fdesc_vfsops.c: revision 1.91 sys/compat/linux/arch/i386/linux_ptrace.c: revision 1.30 sys/compat/common/kern_time_50.c: revision 1.28 sys/netinet6/ip6_forward.c: revision 1.74 sys/miscfs/umapfs/umap_vnops.c: revision 1.57 sys/compat/svr4/svr4_fcntl.c: revision 1.74 distrib/sets/lists/comp/mi: revision 1.1931 sys/netinet6/udp6_output.c: revision 1.46 sys/fs/puffs/puffs_compat.c: revision 1.3 sys/fs/udf/udf_rename.c: revision 1.11 sys/compat/svr4/svr4_filio.c: revision 1.24 sys/fs/udf/udf_rename.c: revision 1.12 sys/netinet/tcp_usrreq.c: revision 1.202 sys/miscfs/umapfs/umap_subr.c: revision 1.29 sys/compat/linux/common/linux_fadvise64.c: revision 1.3 sys/netinet/if_atm.c: revision 1.34 sys/miscfs/procfs/procfs_subr.c: revision 1.106 sys/miscfs/genfs/layer_subr.c: revision 1.37 sys/netinet/tcp_sack.c: revision 1.30 sys/compat/freebsd/freebsd_misc.c: revision 1.33 sys/compat/freebsd/freebsd_file.c: revision 1.33 sys/ufs/chfs/chfs_vnode.c: revision 1.12 sys/compat/svr4/svr4_ttold.c: revision 1.34 sys/compat/linux/common/linux_file.c: revision 1.114 sys/compat/linux/arch/mips/linux_machdep.c: revision 1.43 sys/compat/linux/common/linux_signal.c: revision 1.76 sys/compat/common/compat_util.c: revision 1.46 sys/compat/linux/arch/arm/linux_ptrace.c: revision 1.18 sys/compat/svr4/svr4_sockio.c: revision 1.36 sys/compat/linux/arch/arm/linux_machdep.c: revision 1.32 sys/compat/svr4/svr4_signal.c: revision 1.66 sys/kern/kern_exec.c: revision 1.410 sys/fs/puffs/puffs_vfsops.c: revision 1.115 sys/compat/svr4/svr4_exec_elf64.c: revision 1.15 sys/compat/linux/arch/i386/linux_machdep.c: revision 1.159 sys/compat/linux/arch/alpha/linux_machdep.c: revision 1.50 sys/compat/linux32/common/linux32_misc.c: revision 1.24 sys/netinet/in_pcb.c: revision 1.153 sys/sys/malloc.h: revision 1.116 sys/compat/common/if_43.c: revision 1.9 share/man/man9/Makefile: revision 1.380 sys/netinet/tcp_vtw.c: revision 1.12 sys/miscfs/umapfs/umap_vfsops.c: revision 1.95 sys/ufs/ext2fs/ext2fs_vfsops.c: revision 1.186 sys/compat/common/uipc_syscalls_43.c: revision 1.46 sys/ufs/ext2fs/ext2fs_vnops.c: revision 1.115 sys/fs/puffs/puffs_msgif.c: revision 1.97 sys/compat/svr4/svr4_ipc.c: revision 1.27 sys/compat/linux/common/linux_exec.c: revision 1.117 sys/ufs/ext2fs/ext2fs_readwrite.c: revision 1.66 sys/netinet/tcp_output.c: revision 1.179 sys/compat/svr4/svr4_termios.c: revision 1.28 sys/fs/udf/udf_strat_bootstrap.c: revision 1.4 sys/fs/puffs/puffs_subr.c: revision 1.67 sys/fs/puffs/puffs_node.c: revision 1.36 sys/miscfs/overlay/overlay_vnops.c: revision 1.21 sys/fs/cd9660/cd9660_node.c: revision 1.34 sys/netinet/raw_ip.c: revision 1.146 sys/sys/mallocvar.h: revision 1.13 sys/miscfs/overlay/overlay_vfsops.c: revision 1.63 share/man/man9/malloc.9: revision 1.50 sys/netinet6/dest6.c: revision 1.18 sys/compat/linux/common/linux_uselib.c: revision 1.33 sys/compat/linux/common/linux_socket.c: revision 1.120 share/man/man9/malloc.9: revision 1.51 sys/netinet/tcp_subr.c: revision 1.257 sys/compat/linux/common/linux_socketcall.c: revision 1.45 sys/compat/linux/common/linux_fadvise64_64.c: revision 1.3 sys/compat/freebsd/freebsd_ipc.c: revision 1.17 sys/compat/linux/common/linux_misc_notalpha.c: revision 1.109 sys/compat/linux/arch/alpha/linux_pipe.c: revision 1.17 sys/netinet6/in6_pcb.c: revision 1.132 sys/netinet6/in6_ifattach.c: revision 1.94 sys/compat/svr4/svr4_exec_elf32.c: revision 1.15 sys/miscfs/nullfs/null_vfsops.c: revision 1.90 sys/fs/cd9660/cd9660_util.c: revision 1.12 sys/compat/linux/arch/powerpc/linux_machdep.c: revision 1.48 sys/compat/freebsd/freebsd_exec_elf32.c: revision 1.20 sys/miscfs/procfs/procfs_vfsops.c: revision 1.94 sys/compat/linux/arch/powerpc/linux_ptrace.c: revision 1.28 sys/compat/linux/common/linux_sched.c: revision 1.67 sys/compat/linux/common/linux_exec_aout.c: revision 1.67 sys/compat/linux/common/linux_pipe.c: revision 1.67 sys/compat/linux/common/linux_llseek.c: revision 1.34 sys/compat/linux/arch/mips/linux_ptrace.c: revision 1.10 Do not uselessly include <sys/malloc.h>. Cleanup: - remove struct kmembuckets (dead) - correctly deadify MALLOC_XX - remove MALLOC_DEFINE_LIMIT and MALLOC_JUSTDEFINE_LIMIT (dead) - remove malloc_roundup(), malloc_type_setlimit(), MALLOC_DEFINE_LIMIT() and MALLOC_JUSTDEFINE_LIMIT() from man 9 malloc New sentence, new line. Bump date for previous. Obsolete malloc_roundup(9), malloc_type_setlimit(9) and MALLOC_DEFINE_LIMIT(9) man pages.
|
1.28.22.1 | 03-Dec-2017 |
jdolecek | update from HEAD
|
1.105 | 16-Feb-2025 |
joe | remove unecessary branches
|
1.104 | 04-Nov-2022 |
hannken | branches: 1.104.8; Add a helper to set or clear lower mount and use it. Always add a reference to the lower mount.
Ride 9.99.105
|
1.103 | 13-Apr-2020 |
ad | Replace most uses of vp->v_usecount with a call to vrefcnt(vp), a function that hides the details and does atomic_load_relaxed(). Signature matches FreeBSD.
|
1.102 | 16-Mar-2020 |
pgoyette | branches: 1.102.2; Use the module subsystem's ability to process SYSCTL_SETUP() entries to automate installation of sysctl nodes.
Note that there are still a number of device and pseudo-device modules that create entries tied to individual device units, rather than to the module itself. These are not changed.
|
1.101 | 20-Aug-2019 |
perseant | Allow the user to specify the filesystem ID for umapfs at mount time, allowing a consistent filesystem ID across reboots. Closes PR #54471.
|
1.100 | 20-Feb-2019 |
hannken | Set "mnt_lower" before the first file system operation on the new file system.
|
1.99 | 11-Apr-2017 |
hannken | branches: 1.99.12; Field "layerm_vfs" of "struct layer_mount" got superseded by "mnt_lower". Adapt consumers and remove the now unused field.
Ride 7.99.68
|
1.98 | 30-Mar-2017 |
hannken | Change _fstrans_start() to allocate per lwp info for layered file systems to get a reference on the mount.
Set mnt_lower on successfull mount only.
|
1.97 | 06-Mar-2017 |
hannken | Add field "mnt_lower" to "struct mount" to track the file system a layered file system is mounted on.
Welcome to 7.99.65
|
1.96 | 17-Feb-2017 |
hannken | Add generic genfs_suspendctl() and use it for all file systems. Layered file systems need work.
|
1.95 | 09-Nov-2014 |
maxv | branches: 1.95.2; 1.95.4; 1.95.6; Do not uselessly include <sys/malloc.h>.
|
1.94 | 11-Aug-2014 |
maxv | 1) 'error' is returned while it does not even hold an error code. Which means that zero is returned, and the kernel keeps mounting (and it probably ends up in a deadlock/memory corruption somewhere). 2) 'nentries' and 'gnentries' are int and user-controlled, and there's no check to ensure they are greater than zero. Since they are used to compute the size of two copyin's, a user can control the copied size by giving a negative value (like 128-2^29), and thus overwrite kernel memory.
Both triggerable from root only.
|
1.93 | 25-May-2014 |
hannken | branches: 1.93.2; Change layerfs from hashlist to vcache. Make VI_LOCKSHARE public again.
Ride 6.99.43
|
1.92 | 16-Apr-2014 |
maxv | An (un)privileged user can easily make the kernel dereference a NULL pointer.
The kernel allows 'data' to be NULL; it's the fs's responsibility to ensure that it isn't NULL (if the fs actually needs data).
ok christos@
|
1.91 | 23-Mar-2014 |
hannken | branches: 1.91.2; Change all vfsops to use C99 designated initializers.
No functional changes intended.
|
1.90 | 25-Feb-2014 |
pooka | Ensure that the top level sysctl nodes (kern, vfs, net, ...) exist before the sysctl link sets are processed, and remove redundancy.
Shaves >13kB off of an amd64 GENERIC, not to mention >1k duplicate lines of code.
|
1.89 | 10-Feb-2014 |
hannken | Change layerfs_vget(), layerfs_fhtovp() and the various layer xxx_mount() functions to unlock/relock the node for the call to layer_node_create().
Finally remove dirty hacks (LK_NOWAIT, kpause) from layer_node_find().
|
1.88 | 30-Apr-2012 |
rmind | branches: 1.88.2; 1.88.4; - Replace some malloc(9) uses with kmem(9). - G/C M_IPMOPTS, M_IPMADDR and M_BWMETER.
|
1.87 | 13-Mar-2012 |
elad | Replace the remaining KAUTH_GENERIC_ISSUSER authorization calls with something meaningful. All relevant documentation has been updated or written.
Most of these changes were brought up in the following messages:
http://mail-index.netbsd.org/tech-kern/2012/01/18/msg012490.html http://mail-index.netbsd.org/tech-kern/2012/01/19/msg012502.html http://mail-index.netbsd.org/tech-kern/2012/02/17/msg012728.html
Thanks to christos, manu, njoly, and jmmv for input.
Huge thanks to pgoyette for spinning these changes through some build cycles and ATF.
|
1.86 | 19-Nov-2010 |
dholland | branches: 1.86.8; 1.86.12; 1.86.14; 1.86.18; 1.86.20; Introduce struct pathbuf. This is an abstraction to hold a pathname and the metadata required to interpret it. Callers of namei must now create a pathbuf and pass it to NDINIT (instead of a string and a uio_seg), then destroy the pathbuf after the namei session is complete.
Update all namei call sites accordingly. Add a pathbuf(9) man page and update namei(9).
The pathbuf interface also now appears in a couple of related additional places that were passing string/uio_seg pairs that were later fed into NDINIT. Update other call sites accordingly.
|
1.85 | 24-Jun-2010 |
hannken | Clean up vnode lock operations pass 2:
VOP_UNLOCK(vp, flags) -> VOP_UNLOCK(vp): Remove the unneeded flags argument.
Welcome to 5.99.32.
Discussed on tech-kern.
|
1.84 | 11-Apr-2010 |
mlelstv | The *_modcmd functions use the module name as prefix.
|
1.83 | 11-Apr-2010 |
pooka | Make module name match MOUNT_NAME. Inspired by PR kern/43110.
|
1.82 | 14-Mar-2009 |
dsl | branches: 1.82.2; 1.82.4; Change about 4500 of the K&R function definitions to ANSI ones. There are still about 1600 left, but they have ',' or /* ... */ in the actual variable definitions - which my awk script doesn't handle. There are also many that need () -> (void). (The script does handle misordered arguments.)
|
1.81 | 05-Dec-2008 |
ad | branches: 1.81.4; PR kern/40110: null, overlay and umap modules loading -> panic (layerfs symbols not there)
Add a layerfs module.
|
1.80 | 28-Jun-2008 |
rumble | branches: 1.80.2; 1.80.4; 1.80.6; 1.80.12; 1.80.16; Create sysctl entries during module initialisation and destroy them appropriately.
Many of these file systems are now ready for modularisation.
|
1.79 | 13-May-2008 |
simonb | branches: 1.79.2; mnt_data is a pointer, set it to NULL not 0 when we're finished with it.
|
1.78 | 10-May-2008 |
rumble | Convert file systems to dynamically attach with the new module interface. Make VFS hooks dynamic while we're here and say farewell to VFS_ATTACH and VFS_HOOKS_ATTACH linksets.
As a consequence, most of the file systems can now be loaded as new style modules.
Quick sanity check by ad@.
|
1.77 | 05-May-2008 |
ad | branches: 1.77.2; - Convert hashinit() to use kmem_alloc(). The hash tables can be large and it's better to not have them in kmem_map. - Convert a couple of minor items along the way to kmem_alloc(). - Fix some memory leaks.
|
1.76 | 29-Apr-2008 |
ad | PR kern/38057 ffs makes assuptions about devvp file system PR kern/33406 softdeps get stuck in endless loop
Introduce VFS_FSYNC() and call it when syncing a block device, if it has a mounted file system.
|
1.75 | 28-Jan-2008 |
dholland | branches: 1.75.6; 1.75.8; 1.75.10; Fix some race conditions in rename. Introduce a per-FS rename lock and new vfsops to manipulate it. Get this lock while renaming. Also add another relookup() in do_sys_rename, which is a hack to kludge around some of the worst deficiencies of ufs_rename. reviewed-by: pooka (and an earlier rev by ad) posted on tech-kern with no objections.
|
1.74 | 02-Jan-2008 |
ad | Merge vmlocking2 to head.
|
1.73 | 08-Dec-2007 |
pooka | branches: 1.73.4; Remove cn_lwp from struct componentname. curlwp should be used from on. The NDINIT() macro no longer takes the lwp parameter and associates the credentials of the calling thread with the namei structure.
|
1.72 | 26-Nov-2007 |
pooka | branches: 1.72.2; Remove the "struct lwp *" argument from all VFS and VOP interfaces. The general trend is to remove it from all kernel interfaces and this is a start. In case the calling lwp is desired, curlwp should be used.
quick consensus on tech-kern
|
1.71 | 10-Oct-2007 |
ad | branches: 1.71.4; umapm_hashlock is a mutex.
|
1.70 | 10-Oct-2007 |
ad | Merge from vmlocking:
- Split vnode::v_flag into three fields, depending on field locking. - simple_lock -> kmutex in a few places. - Fix some simple locking problems.
|
1.69 | 31-Jul-2007 |
pooka | branches: 1.69.2; 1.69.4; 1.69.6; 1.69.8; * nuke the nameidata parameter from VFS_MOUNT(). Nobody on tech-kern knew what it was supposed to be used for and wrstuden gave a go-ahead * while rototilling, convert file systems which went easily to use VFS_PROTOS() instead of manually prototyping the methods
|
1.68 | 26-Jul-2007 |
pooka | Use eopnotsupp() instead of vfs_stdsuspendctl() and retire the latter.
|
1.67 | 17-Jul-2007 |
pooka | branches: 1.67.2; Make set_statvfs_info() take a parameter for the vfs name instead of always retrieving it from mp->mnt_op->vfs_name
christos ok
|
1.66 | 12-Jul-2007 |
dsl | Change the VFS_MOUNT() interface so that the 'data' buffer passed to the fs code is a kernel buffer, pass though the length of the buffer as well. Since the length of the userspace buffer isn'it (yet) passed through the mount system call, add a field to the vfsops structure containing the default length. Split sys_mount() for calls from compat code. Ride one of the recent kernel version changes - old fs LKMs will load, but sys_mount() will reject any attempt to use them.
|
1.65 | 08-Jul-2007 |
pooka | * allow unmount even if rootvp has a usecount > 1 provided that MNT_FORCE is given * decrease cargo cult index by getting rid of commented sections with mntflushbuf() in them - AFAICT the call was removed from our kernel over 13 years ago with the 4.4BSDlite import
|
1.64 | 08-Apr-2007 |
hannken | Remove now obsolete vn_start_write() and vn_finished_write() and corresponding flags.
Revert softdep_trackbufs() to its state before vn_start_write() was added.
Remove from struct mount now unneeded flags IMNT_SUSPEND* and members mnt_writeopcountupper, mnt_writeopcountlower and mnt_leaf.
Welcome to 4.99.17
|
1.63 | 19-Jan-2007 |
hannken | branches: 1.63.2; 1.63.6; 1.63.8; New file system suspension API to replace vn_start_write and vn_finished_write. The suspension helpers are now put into file system specific operations. This means every file system not supporting these helpers cannot be suspended and therefore snapshots are no longer possible.
Implemented for file systems of type ffs.
The new API is enabled on a kernel option NEWVNGATE. This option is not enabled by default in any kernel config.
Presented and discussed on tech-kern with much input from Bill Studenmund <wrstuden@netbsd.org> and YAMAMOTO Takashi <yamt@netbsd.org>.
Welcome to 4.99.9 (new vfs op vfs_suspendctl).
|
1.62 | 04-Jan-2007 |
elad | Consistent usage of KAUTH_GENERIC_ISSUSER.
|
1.61 | 16-Nov-2006 |
christos | __unused removal on arguments; approved by core.
|
1.60 | 12-Oct-2006 |
christos | - sprinkle __unused on function decls. - fix a couple of unused bugs - no more -Wno-unused for i386
|
1.59 | 03-Sep-2006 |
christos | branches: 1.59.2; 1.59.4; add missing initializers
|
1.58 | 23-Jul-2006 |
ad | Use the LWP cached credentials where sane.
|
1.57 | 14-May-2006 |
elad | integrate kauth.
|
1.56 | 11-Dec-2005 |
christos | branches: 1.56.4; 1.56.6; 1.56.8; 1.56.10; 1.56.12; merge ktrace-lwp.
|
1.55 | 23-Sep-2005 |
jmmv | Apply the NFS exports list rototill patch:
- Remove all NFS related stuff from file system specific code. - Drop the vfs_checkexp hook and generalize it in the new nfs_check_export function, thus removing redundancy from all file systems. - Move all NFS export-related stuff from kern/vfs_subr.c to the new file sys/nfs/nfs_export.c. The former was becoming large and its code is always compiled, regardless of the build options. Using the latter, the code is only compiled in when NFSSERVER is enabled. While doing this, also make some functions in nfs_subs.c conditional to NFSSERVER. - Add a new command in nfssvc(2), called NFSSVC_SETEXPORTSLIST, that takes a path and a set of export entries. At the moment it can only clear the exports list or append entries, one by one, but it is done in a way that allows setting the whole set of entries atomically in the future (see the comment in mountd_set_exports_list or in doc/TODO). - Change mountd(8) to use the nfssvc(2) system call instead of mount(2) so that it becomes file system agnostic. In fact, all this whole thing was done to remove a 'XXX' block from this utility! - Change the mount*, newfs and fsck* userland utilities to not deal with NFS exports initialization; done internally by the kernel when initializing the NFS support for each file system. - Implement an interface for VFS (called VFS hooks) so that several kernel subsystems can run arbitrary code upon receipt of specific VFS events. At the moment, this only provides support for unmount and is used to destroy NFS exports lists from the file systems being unmounted, though it has room for extension.
Thanks go to yamt@, chs@, thorpej@, wrstuden@ and others for their comments and advice in the development of this patch.
|
1.54 | 30-Aug-2005 |
xtraeme | Remove __P()
|
1.53 | 29-May-2005 |
christos | branches: 1.53.2; - sprinkle const - avoid shadowed variables.
|
1.52 | 29-Mar-2005 |
thorpej | - Define a VFS_ATTACH() macro that places a reference to a vfsops structure into the "vfsops" link set. - Use VFS_ATTACH() where vfsops are declared for individual file systems. - In vfsinit(), traverse the "vfsops" link set, rather than vfs_list_initial[].
|
1.51 | 26-Feb-2005 |
perry | nuke trailing whitespace
|
1.50 | 02-Jan-2005 |
thorpej | branches: 1.50.2; 1.50.4; Add the system call and VFS infrastructure for file system extended attributes.
From FreeBSD.
|
1.49 | 01-Jul-2004 |
hannken | Keep a pointer to the leaf mount. Needed for write gating where a file system gets suspended and has layered mounts above it.
Welcome to 2.0G
Reviewed by: Bill Studenmund <wrstuden@netbsd.org>
|
1.48 | 29-May-2004 |
wrstuden | Add layerfs_snapshot() as a handler routine for VFS_SNAPSHOT() calls through a layered file system.
Note: we don't actually support snapshots through a layered file system, and this routine returns an error. However we: 1) have clearly documented what needs fixing (which isn't trivial to fix) and 2) if we do fix this, all layered file systems can take advantage of it at once.
|
1.47 | 25-May-2004 |
hannken | Add ffs internal snapshots. Written by Marshall Kirk McKusick for FreeBSD.
- Not enabled by default. Needs kernel option FFS_SNAPSHOT. - Change parameters of ffs_blkfree. - Let the copy-on-write functions return an error so spec_strategy may fail if the copy-on-write fails. - Change genfs_*lock*() to use vp->v_vnlock instead of &vp->v_lock. - Add flag B_METAONLY to VOP_BALLOC to return indirect block buffer. - Add a function ffs_checkfreefile needed for snapshot creation. - Add special handling of snapshot files: Snapshots may not be opened for writing and the attributes are read-only. Use the mtime as the time this snapshot was taken. Deny mtime updates for snapshot files. - Add function transferlockers to transfer any waiting processes from one lock to another. - Add vfsop VFS_SNAPSHOT to take a snapshot and make it accessible through a vnode. - Add snapshot support to ls, fsck_ffs and dump.
Welcome to 2.0F.
Approved by: Jason R. Thorpe <thorpej@netbsd.org>
|
1.46 | 25-May-2004 |
atatat | Sysctl descriptions under vfs subtree
|
1.45 | 29-Apr-2004 |
jrf | Removed remaining caddr_t casts we do not need in miscfs. Recompiled kernel and ran for a day or so. There are still some caddr_t types in the arguments of some calls, I will do those separately (later) as they touch a lot more of the system. Approved by christos@NetBSD.org.
|
1.44 | 21-Apr-2004 |
christos | Replace the statfs() family of system calls with statvfs(). Retain binary compatibility.
|
1.43 | 24-Mar-2004 |
atatat | branches: 1.43.2; Tango on sysctl_createv() and flags. The flags have all been renamed, and sysctl_createv() now uses more arguments.
|
1.42 | 09-Mar-2004 |
atatat | Remove pointless comment about layerfs_sysctl()
|
1.41 | 04-Dec-2003 |
atatat | Dynamic sysctl.
Gone are the old kern_sysctl(), cpu_sysctl(), hw_sysctl(), vfs_sysctl(), etc, routines, along with sysctl_int() et al. Now all nodes are registered with the tree, and nodes can be added (or removed) easily, and I/O to and from the tree is handled generically.
Since the nodes are registered with the tree, the mapping from name to number (and back again) can now be discovered, instead of having to be hard coded. Adding new nodes to the tree is likewise much simpler -- the new infrastructure handles almost all the work for simple types, and just about anything else can be done with a small helper function.
All existing nodes are where they were before (numerically speaking), so all existing consumers of sysctl information should notice no difference.
PS - I'm sorry, but there's a distinct lack of documentation at the moment. I'm working on sysctl(3/8/9) right now, and I promise to watch out for buses.
|
1.40 | 07-Aug-2003 |
agc | Move UCB-licensed code from 4-clause to 3-clause licence.
Patches provided by Joel Baker in PR 22364, verified by myself.
|
1.39 | 29-Jun-2003 |
fvdl | branches: 1.39.2; Back out the lwp/ktrace changes. They contained a lot of colateral damage, and need to be examined and discussed more.
|
1.38 | 29-Jun-2003 |
thorpej | Adjust for ktrace/lwp changes.
|
1.37 | 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.36 | 16-Apr-2003 |
christos | PR/1796: John Kohl: statfs misbehaves under chrooted environments.
- Under chroot it displays only the visible filesystems with appropriate paths. - The statfs f_mntonname gets adjusted to contain the real path from root. - While was there, fixed a bug in ext2fs, locking problems with vfs_getfsstat(), and factored out some of the vfsop statfs() code to copy_statfs_info(). This fixes the problem where some filesystems forgot to set fsid. - Made coda look more like a normal fs.
|
1.35 | 21-Sep-2002 |
christos | MNT_GETARGS support
|
1.34 | 30-Jul-2002 |
soren | Die, qaddr_t, die! - mnt_data in struct mount is already effectively a void *, so stop pretending otherwise.
|
1.33 | 15-Nov-2001 |
lukem | branches: 1.33.8; don't need <sys/types.h> when including <sys/param.h>
|
1.32 | 10-Nov-2001 |
lukem | add RCSIDs
|
1.31 | 15-Sep-2001 |
chs | branches: 1.31.2; add a new VFS op, vfs_reinit, which is called when desiredvnodes is adjusted via sysctl. file systems that have hash tables which are sized based on the value of this variable now resize those hash tables using the new value. the max number of FFS softdeps is also recalculated.
convert various file systems to use the <sys/queue.h> macros for their hash tables.
|
1.30 | 16-Aug-2001 |
tv | branches: 1.30.2; KNF on previous.
|
1.29 | 03-Aug-2001 |
jdolecek | bound check mount args more thoroughly
|
1.28 | 02-Aug-2001 |
assar | (*fs_mount): do not get the parent vnode back from namei to just release it
|
1.27 | 22-Jan-2001 |
jdolecek | branches: 1.27.2; 1.27.4; make filesystem vnodeop, specop, fifoop and vnodeopv_* arrays const
|
1.26 | 08-Nov-2000 |
ad | Update for hashinit() change.
|
1.25 | 10-Jun-2000 |
assar | branches: 1.25.2; make vfs_getnewfsid only take one argument and fetch the name of the filesystem from the supplied mount argument. also make makefstype take a const parameter. update all the callers.
|
1.24 | 16-Mar-2000 |
jdolecek | branches: 1.24.2; Adapt to last VFS changes - add appropriate vfs_done routine.
|
1.23 | 08-Jul-1999 |
wrstuden | branches: 1.23.2; 1.23.8; Introduce layer library in genfs. This set of files abstracts most of the functionality of nullfs. The latter is now just a mount & unmount routine, and a few tables. umapfs borrow most of this infrastructure.
Both fs's are now nfs-exportable.
All layered fs's share a common format to private mount & private vnode structs (which a particular fs can extend).
Also add genfs_noerr_rele(), a vnode op which will vrele/vput operand vnodes appropriately.
|
1.22 | 19-Mar-1999 |
perseant | branches: 1.22.4; Apply patch from kern/5538:
Fix group mapping so members of group 0 get other group-ids mapped as well. Avoid rename panic by checking (*this_vp_p) against NULLVP before dereferencing it (same change as to NULLFS some time ago).
|
1.21 | 12-Mar-1999 |
bouyer | Restrict umap mounts to root. Letting any user use this has security implications.
|
1.20 | 26-Feb-1999 |
wrstuden | Modify vfsops to seperate vfs_fhtovp() into two routines. vfs_fhtovp() now only handles the file handle to vnode conversion, and a new call, vfs_checkexp(), performs the export verification.
|
1.19 | 09-Aug-1998 |
perry | bzero->memset, bcopy->memcpy, bcmp->memcmp
|
1.18 | 01-Mar-1998 |
fvdl | Merge with Lite2 + local changes
|
1.17 | 18-Feb-1998 |
thorpej | Place a pointer to an array of our vnodeopv_desc *'s in our vfsops structure, for use by vfs_attach().
|
1.16 | 06-Oct-1997 |
thorpej | Make the vfs ops and vnodeop_opv symbols match the name of the file-system option used to configure the file system into the kernel.
|
1.15 | 10-Sep-1997 |
christos | PR/4098: Alan Barrett: Fix diagnostic printf formatting.
|
1.14 | 11-Mar-1997 |
mikel | branches: 1.14.4; this is umapfs, not lofs
|
1.13 | 20-Feb-1997 |
mikel | use the proper entry count; from Yasufumi Itoh in PR kern/3175.
|
1.12 | 22-Dec-1996 |
cgd | branches: 1.12.6; Change the second and third args to struct vfsops' (*vfs_mount)() to 'const char *', and 'void *', respectively. The second arg is taken directly from user arguments, and is const there, so must be const in the prototypes and functions. The third arg is also taken directly from user arguments. It doesn't have to be changed, but since it's cleaner to keep the type the same as the user arg's type, and I'm already making the 'const char *' change...
|
1.11 | 13-Oct-1996 |
christos | backout previous kprintf changes
|
1.10 | 10-Oct-1996 |
christos | printf -> kprintf, sprintf -> ksprintf
|
1.9 | 09-Feb-1996 |
christos | miscfs prototype changes
|
1.8 | 18-Jun-1995 |
cgd | don't assume the f_fsnamelen is nul-truncated or longer than MFSNAMELEN
|
1.7 | 09-Mar-1995 |
mycroft | copy*str() should use size_t.
|
1.6 | 25-Jan-1995 |
cgd | return EOPNOTSUPP from fhtovp and vptofh functions; doing otherwise correctly is not possible.
|
1.5 | 18-Jan-1995 |
mycroft | Clean up the code to frob mnt_stat a (tiny) bit.
|
1.4 | 15-Dec-1994 |
mycroft | Call foo_statfs() from a common place when mounting.
|
1.3 | 15-Sep-1994 |
mycroft | stat the file system at mount time, for `df -n', et al.
|
1.2 | 29-Jun-1994 |
cgd | branches: 1.2.2; New RCS ID's, take two. they're more aesthecially pleasant, and use 'NetBSD'
|
1.1 | 08-Jun-1994 |
mycroft | branches: 1.1.1; Update to 4.4-Lite fs code, with local changes.
|
1.1.1.2 | 01-Mar-1998 |
fvdl | Import 4.4BSD-Lite2
|
1.1.1.1 | 01-Mar-1998 |
fvdl | Import 4.4BSD-Lite for reference
|
1.2.2.1 | 16-Sep-1994 |
cgd | from trunk, per mycroft
|
1.12.6.1 | 12-Mar-1997 |
is | Merge in changes from Trunk
|
1.14.4.2 | 14-Oct-1997 |
thorpej | Update marc-pcmcia branch from trunk.
|
1.14.4.1 | 16-Sep-1997 |
thorpej | Update marc-pcmcia branch from trunk.
|
1.22.4.1 | 02-Aug-1999 |
thorpej | Update from trunk.
|
1.23.8.1 | 21-Dec-1999 |
wrstuden | Initial commit of recent changes to make DEV_BSIZE go away.
Runs on i386, needs work on other arch's. Main kernel routines should be fine, but a number of the stand programs need help.
cd, fd, ccd, wd, and sd have been updated. sd has been tested with non-512 byte block devices. vnd, raidframe, and lfs need work.
Non 2**n block support is automatic for LKM's and conditional for kernels on "options NON_PO2_BLOCKS".
|
1.23.2.3 | 11-Feb-2001 |
bouyer | Sync with HEAD.
|
1.23.2.2 | 22-Nov-2000 |
bouyer | Sync with HEAD.
|
1.23.2.1 | 20-Nov-2000 |
bouyer | Update thorpej_scsipi to -current as of a month ago
|
1.24.2.1 | 22-Jun-2000 |
minoura | Sync w/ netbsd-1-5-base.
|
1.25.2.1 | 16-Aug-2001 |
tv | Pullup [jdolecek]:
sys/miscfs/umapfs/umap_vfsops.c 1.29-1.30 sys/kern/vfs_subr.c 1.156 sys/nfs/nfs.h 1.30
Bounds check mount args.
|
1.27.4.5 | 10-Oct-2002 |
jdolecek | sync kqueue with -current; this includes merge of gehenna-devsw branch, merge of i386 MP branch, and part of autoconf rototil work
|
1.27.4.4 | 06-Sep-2002 |
jdolecek | sync kqueue branch with HEAD
|
1.27.4.3 | 10-Jan-2002 |
thorpej | Sync kqueue branch with -current.
|
1.27.4.2 | 25-Aug-2001 |
thorpej | Merge Aug 24 -current into the kqueue branch.
|
1.27.4.1 | 03-Aug-2001 |
lukem | update to -current
|
1.27.2.6 | 18-Oct-2002 |
nathanw | Catch up to -current.
|
1.27.2.5 | 01-Aug-2002 |
nathanw | Catch up to -current.
|
1.27.2.4 | 08-Jan-2002 |
nathanw | Catch up to -current.
|
1.27.2.3 | 14-Nov-2001 |
nathanw | Catch up to -current.
|
1.27.2.2 | 21-Sep-2001 |
nathanw | Catch up to -current.
|
1.27.2.1 | 24-Aug-2001 |
nathanw | Catch up with -current.
|
1.30.2.1 | 01-Oct-2001 |
fvdl | Catch up with -current.
|
1.31.2.1 | 12-Nov-2001 |
thorpej | Sync the thorpej-mips-cache branch with -current.
|
1.33.8.1 | 29-Aug-2002 |
gehenna | catch up with -current.
|
1.39.2.9 | 10-Nov-2005 |
skrll | Sync with HEAD. Here we go again...
|
1.39.2.8 | 01-Apr-2005 |
skrll | Sync with HEAD.
|
1.39.2.7 | 04-Mar-2005 |
skrll | Sync with HEAD.
Hi Perry!
|
1.39.2.6 | 17-Jan-2005 |
skrll | Sync with HEAD.
|
1.39.2.5 | 21-Sep-2004 |
skrll | Fix the sync with head I botched.
|
1.39.2.4 | 18-Sep-2004 |
skrll | Sync with HEAD.
|
1.39.2.3 | 03-Aug-2004 |
skrll | Sync with HEAD
|
1.39.2.2 | 03-Jul-2003 |
wrstuden | LWP-ify. Changes all seem to be catching up wiht recent set_statfs_info() chances.
|
1.39.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.43.2.1 | 29-May-2004 |
tron | Pull up revision 1.46 (requested by atatat in ticket #393): Sysctl descriptions under vfs subtree
|
1.50.4.1 | 19-Mar-2005 |
yamt | sync with head. xen and whitespace. xen part is not finished.
|
1.50.2.1 | 29-Apr-2005 |
kent | sync with -current
|
1.53.2.8 | 04-Feb-2008 |
yamt | sync with head.
|
1.53.2.7 | 21-Jan-2008 |
yamt | sync with head
|
1.53.2.6 | 07-Dec-2007 |
yamt | sync with head
|
1.53.2.5 | 27-Oct-2007 |
yamt | sync with head.
|
1.53.2.4 | 03-Sep-2007 |
yamt | sync with head.
|
1.53.2.3 | 26-Feb-2007 |
yamt | sync with head.
|
1.53.2.2 | 30-Dec-2006 |
yamt | sync with head.
|
1.53.2.1 | 21-Jun-2006 |
yamt | sync with head.
|
1.56.12.1 | 24-May-2006 |
tron | Merge 2006-05-24 NetBSD-current into the "peter-altq" branch.
|
1.56.10.3 | 06-May-2006 |
christos | - Move kauth_cred_t declaration to <sys/types.h> - Cleanup struct ucred; forward declarations that are unused. - Don't include <sys/kauth.h> in any header, but include it in the c files that need it.
Approved by core.
|
1.56.10.2 | 10-Mar-2006 |
elad | generic_authorize() -> kauth_authorize_generic().
|
1.56.10.1 | 08-Mar-2006 |
elad | Adapt to kernel authorization KPI.
|
1.56.8.3 | 14-Sep-2006 |
yamt | sync with head.
|
1.56.8.2 | 11-Aug-2006 |
yamt | sync with head
|
1.56.8.1 | 24-May-2006 |
yamt | sync with head.
|
1.56.6.1 | 01-Jun-2006 |
kardel | Sync with head.
|
1.56.4.1 | 09-Sep-2006 |
rpaulo | sync with head
|
1.59.4.2 | 10-Dec-2006 |
yamt | sync with head.
|
1.59.4.1 | 22-Oct-2006 |
yamt | sync with head
|
1.59.2.3 | 01-Feb-2007 |
ad | Sync with head.
|
1.59.2.2 | 12-Jan-2007 |
ad | Sync with head.
|
1.59.2.1 | 18-Nov-2006 |
ad | Sync with head.
|
1.63.8.1 | 11-Jul-2007 |
mjf | Sync with head.
|
1.63.6.6 | 16-Sep-2007 |
ad | Checkpoint work in progress on the vnode lifecycle and reference counting stuff. This makes it work properly without kernel_lock and fixes a few quite old bugs. See vfs_subr.c 1.283.2.17 for details.
|
1.63.6.5 | 20-Aug-2007 |
ad | Sync with HEAD.
|
1.63.6.4 | 15-Jul-2007 |
ad | Sync with head.
|
1.63.6.3 | 17-Jun-2007 |
ad | - Increase the number of thread priorities from 128 to 256. How the space is set up is to be revisited. - Implement soft interrupts as kernel threads. A generic implementation is provided, with hooks for fast-path MD code that can run the interrupt threads over the top of other threads executing in the kernel. - Split vnode::v_flag into three fields, depending on how the flag is locked (by the interlock, by the vnode lock, by the file system). - Miscellaneous locking fixes and improvements.
|
1.63.6.2 | 10-Apr-2007 |
ad | Sync with head.
|
1.63.6.1 | 05-Apr-2007 |
ad | Compile fixes.
|
1.63.2.1 | 15-Apr-2007 |
yamt | sync with head.
|
1.67.2.1 | 15-Aug-2007 |
skrll | Sync with HEAD.
|
1.69.8.2 | 31-Jul-2007 |
pooka | * nuke the nameidata parameter from VFS_MOUNT(). Nobody on tech-kern knew what it was supposed to be used for and wrstuden gave a go-ahead * while rototilling, convert file systems which went easily to use VFS_PROTOS() instead of manually prototyping the methods
|
1.69.8.1 | 31-Jul-2007 |
pooka | file umap_vfsops.c was added on branch matt-mips64 on 2007-07-31 21:14:17 +0000
|
1.69.6.1 | 14-Oct-2007 |
yamt | sync with head.
|
1.69.4.3 | 23-Mar-2008 |
matt | sync with HEAD
|
1.69.4.2 | 09-Jan-2008 |
matt | sync with HEAD
|
1.69.4.1 | 06-Nov-2007 |
matt | sync with HEAD
|
1.69.2.3 | 09-Dec-2007 |
jmcneill | Sync with HEAD.
|
1.69.2.2 | 27-Nov-2007 |
joerg | Sync with HEAD. amd64 Xen support needs testing.
|
1.69.2.1 | 26-Oct-2007 |
joerg | Sync with HEAD.
Follow the merge of pmap.c on i386 and amd64 and move pmap_init_tmp_pgtbl into arch/x86/x86/pmap.c. Modify the ACPI wakeup code to restore CR4 before jumping back into kernel space as the large page option might cover that.
|
1.71.4.3 | 18-Feb-2008 |
mjf | Sync with HEAD.
|
1.71.4.2 | 27-Dec-2007 |
mjf | Sync with HEAD.
|
1.71.4.1 | 08-Dec-2007 |
mjf | Sync with HEAD.
|
1.72.2.2 | 26-Dec-2007 |
ad | Sync with head.
|
1.72.2.1 | 04-Dec-2007 |
ad | Pull the vmlocking changes into a new branch.
|
1.73.4.1 | 02-Jan-2008 |
bouyer | Sync with HEAD
|
1.75.10.3 | 11-Aug-2010 |
yamt | sync with head.
|
1.75.10.2 | 04-May-2009 |
yamt | sync with head.
|
1.75.10.1 | 16-May-2008 |
yamt | sync with head.
|
1.75.8.1 | 18-May-2008 |
yamt | sync with head.
|
1.75.6.3 | 17-Jan-2009 |
mjf | Sync with HEAD.
|
1.75.6.2 | 29-Jun-2008 |
mjf | Sync with HEAD.
|
1.75.6.1 | 02-Jun-2008 |
mjf | Sync with HEAD.
|
1.77.2.2 | 18-Sep-2008 |
wrstuden | Sync with wrstuden-revivesa-base-2.
|
1.77.2.1 | 23-Jun-2008 |
wrstuden | Sync w/ -current. 34 merge conflicts to follow.
|
1.79.2.1 | 03-Jul-2008 |
simonb | Sync with head.
|
1.80.16.2 | 27-Aug-2014 |
msaitoh | Pull up following revision(s) (requested by maxv in ticket #1921): sys/miscfs/umapfs/umap_vfsops.c: revision 1.94 1) 'error' is returned while it does not even hold an error code. Which means that zero is returned, and the kernel keeps mounting (and it probably ends up in a deadlock/memory corruption somewhere). 2) 'nentries' and 'gnentries' are int and user-controlled, and there's no check to ensure they are greater than zero. Since they are used to compute the size of two copyin's, a user can control the copied size by giving a negative value (like 128-2^29), and thus overwrite kernel memory. Both triggerable from root only.
|
1.80.16.1 | 28-Apr-2014 |
sborrill | Pull up the following revisions(s) (requested by maxv in ticket #1901): sys/kern/vfs_syscalls.c: revision 1.478, 1.480 via patch sys/coda/coda_vfsops.c: revision 1.81 sys/fs/adosfs/advfsops.c: revision 1.70 sys/fs/cd9660/cd9660_vfsops.c: revision 1.84 sys/fs/efs/efs_vfsops.c: revision 1.25 sys/fs/filecorefs/filecore_vfsops.c: revision 1.76 sys/fs/hfs/hfs_vfsops.c: revision 1.31 sys/fs/msdosfs/msdosfs_vfsops.c: revision 1.107 sys/fs/ntfs/ntfs_vfsops.c: revision 1.94 sys/fs/ptyfs/ptyfs_vfsops.c: revision 1.50 via patch sys/fs/puffs/puffs_vfsops.c: revision 1.110 via patch sys/fs/smbfs/smbfs_vfsops.c: revision 1.100 sys/fs/sysvbfs/sysvbfs_vfsops.c: revision 1.43 sys/fs/tmpfs/tmpfs_vfsops.c: revision 1.59 via patch sys/fs/udf/udf_vfsops.c: revision 1.67 sys/fs/union/union_vfsops.c: revision 1.72 sys/fs/unionfs/unionfs_vfsops.c: revision 1.13 sys/kern/vfs_syscalls.c: revision 1.479 sys/miscfs/nullfs/null_vfsops.c: revision 1.88 via patch sys/miscfs/overlay/overlay_vfsops.c: revision 1.61 sys/miscfs/procfs/procfs_vfsops.c: revision 1.91 sys/miscfs/umapfs/umap_vfsops.c: revision 1.92 sys/nfs/nfs_vfsops.c: revision 1.227 sys/ufs/ext2fs/ext2fs_vfsops.c: revision 1.180 sys/ufs/ffs/ffs_vfsops.c: revision 1.297 sys/ufs/lfs/lfs_vfsops.c: revision 1.321 sys/ufs/mfs/mfs_vfsops.c: revision 1.107
Due to missing checks in the mount syscall, and a wrong assumption on the file systems side, the kernel could allocate an unbounded or zero-sized memory buffer, and could dereference a NULL pointer when particular arguments are given by a user.
|
1.80.12.2 | 27-Aug-2014 |
msaitoh | Pull up following revision(s) (requested by maxv in ticket #1921): sys/miscfs/umapfs/umap_vfsops.c: revision 1.94 1) 'error' is returned while it does not even hold an error code. Which means that zero is returned, and the kernel keeps mounting (and it probably ends up in a deadlock/memory corruption somewhere). 2) 'nentries' and 'gnentries' are int and user-controlled, and there's no check to ensure they are greater than zero. Since they are used to compute the size of two copyin's, a user can control the copied size by giving a negative value (like 128-2^29), and thus overwrite kernel memory. Both triggerable from root only.
|
1.80.12.1 | 28-Apr-2014 |
sborrill | Pull up the following revisions(s) (requested by maxv in ticket #1901): sys/kern/vfs_syscalls.c: revision 1.478, 1.480 via patch sys/coda/coda_vfsops.c: revision 1.81 sys/fs/adosfs/advfsops.c: revision 1.70 sys/fs/cd9660/cd9660_vfsops.c: revision 1.84 sys/fs/efs/efs_vfsops.c: revision 1.25 sys/fs/filecorefs/filecore_vfsops.c: revision 1.76 sys/fs/hfs/hfs_vfsops.c: revision 1.31 sys/fs/msdosfs/msdosfs_vfsops.c: revision 1.107 sys/fs/ntfs/ntfs_vfsops.c: revision 1.94 sys/fs/ptyfs/ptyfs_vfsops.c: revision 1.50 via patch sys/fs/puffs/puffs_vfsops.c: revision 1.110 via patch sys/fs/smbfs/smbfs_vfsops.c: revision 1.100 sys/fs/sysvbfs/sysvbfs_vfsops.c: revision 1.43 sys/fs/tmpfs/tmpfs_vfsops.c: revision 1.59 via patch sys/fs/udf/udf_vfsops.c: revision 1.67 sys/fs/union/union_vfsops.c: revision 1.72 sys/fs/unionfs/unionfs_vfsops.c: revision 1.13 sys/kern/vfs_syscalls.c: revision 1.479 sys/miscfs/nullfs/null_vfsops.c: revision 1.88 via patch sys/miscfs/overlay/overlay_vfsops.c: revision 1.61 sys/miscfs/procfs/procfs_vfsops.c: revision 1.91 sys/miscfs/umapfs/umap_vfsops.c: revision 1.92 sys/nfs/nfs_vfsops.c: revision 1.227 sys/ufs/ext2fs/ext2fs_vfsops.c: revision 1.180 sys/ufs/ffs/ffs_vfsops.c: revision 1.297 sys/ufs/lfs/lfs_vfsops.c: revision 1.321 sys/ufs/mfs/mfs_vfsops.c: revision 1.107
Due to missing checks in the mount syscall, and a wrong assumption on the file systems side, the kernel could allocate an unbounded or zero-sized memory buffer, and could dereference a NULL pointer when particular arguments are given by a user.
|
1.80.6.2 | 27-Aug-2014 |
msaitoh | Pull up following revision(s) (requested by maxv in ticket #1921): sys/miscfs/umapfs/umap_vfsops.c: revision 1.94 1) 'error' is returned while it does not even hold an error code. Which means that zero is returned, and the kernel keeps mounting (and it probably ends up in a deadlock/memory corruption somewhere). 2) 'nentries' and 'gnentries' are int and user-controlled, and there's no check to ensure they are greater than zero. Since they are used to compute the size of two copyin's, a user can control the copied size by giving a negative value (like 128-2^29), and thus overwrite kernel memory. Both triggerable from root only.
|
1.80.6.1 | 25-Apr-2014 |
sborrill | Pull up the following revisions(s) (requested by maxv in ticket #1901): sys/kern/vfs_syscalls.c: revision 1.478, 1.480 via patch sys/coda/coda_vfsops.c: revision 1.81 sys/fs/adosfs/advfsops.c: revision 1.70 sys/fs/cd9660/cd9660_vfsops.c: revision 1.84 sys/fs/efs/efs_vfsops.c: revision 1.25 sys/fs/filecorefs/filecore_vfsops.c: revision 1.76 sys/fs/hfs/hfs_vfsops.c: revision 1.31 sys/fs/msdosfs/msdosfs_vfsops.c: revision 1.107 sys/fs/ntfs/ntfs_vfsops.c: revision 1.94 sys/fs/ptyfs/ptyfs_vfsops.c: revision 1.50 via patch sys/fs/puffs/puffs_vfsops.c: revision 1.110 via patch sys/fs/smbfs/smbfs_vfsops.c: revision 1.100 sys/fs/sysvbfs/sysvbfs_vfsops.c: revision 1.43 sys/fs/tmpfs/tmpfs_vfsops.c: revision 1.59 via patch sys/fs/udf/udf_vfsops.c: revision 1.67 sys/fs/union/union_vfsops.c: revision 1.72 sys/fs/unionfs/unionfs_vfsops.c: revision 1.13 sys/kern/vfs_syscalls.c: revision 1.479 sys/miscfs/nullfs/null_vfsops.c: revision 1.88 via patch sys/miscfs/overlay/overlay_vfsops.c: revision 1.61 sys/miscfs/procfs/procfs_vfsops.c: revision 1.91 sys/miscfs/umapfs/umap_vfsops.c: revision 1.92 sys/nfs/nfs_vfsops.c: revision 1.227 sys/ufs/ext2fs/ext2fs_vfsops.c: revision 1.180 sys/ufs/ffs/ffs_vfsops.c: revision 1.297 sys/ufs/lfs/lfs_vfsops.c: revision 1.321 sys/ufs/mfs/mfs_vfsops.c: revision 1.107
Due to missing checks in the mount syscall, and a wrong assumption on the file systems side, the kernel could allocate an unbounded or zero-sized memory buffer, and could dereference a NULL pointer when particular arguments are given by a user.
|
1.80.4.2 | 28-Apr-2009 |
skrll | Sync with HEAD.
|
1.80.4.1 | 19-Jan-2009 |
skrll | Sync with HEAD.
|
1.80.2.1 | 13-Dec-2008 |
haad | Update haad-dm branch to haad-dm-base2.
|
1.81.4.1 | 13-May-2009 |
jym | Sync with HEAD.
Commit is split, to avoid a "too many arguments" protocol error.
|
1.82.4.3 | 05-Mar-2011 |
rmind | sync with head
|
1.82.4.2 | 03-Jul-2010 |
rmind | sync with head
|
1.82.4.1 | 30-May-2010 |
rmind | sync with head
|
1.82.2.2 | 17-Aug-2010 |
uebayasi | Sync with HEAD.
|
1.82.2.1 | 30-Apr-2010 |
uebayasi | Sync with HEAD.
|
1.86.20.2 | 27-Aug-2014 |
msaitoh | Pull up following revision(s) (requested by maxv in ticket #1115): sys/miscfs/umapfs/umap_vfsops.c: revision 1.94 sys/fs/ptyfs/ptyfs_vfsops.c: revision 1.52 Overflow if *data_len == OSIZE and args->version >= PTYFS_ARGSVERSION. Sent on tech-kern@, ok christos@ 1) 'error' is returned while it does not even hold an error code. Which means that zero is returned, and the kernel keeps mounting (and it probably ends up in a deadlock/memory corruption somewhere). 2) 'nentries' and 'gnentries' are int and user-controlled, and there's no check to ensure they are greater than zero. Since they are used to compute the size of two copyin's, a user can control the copied size by giving a negative value (like 128-2^29), and thus overwrite kernel memory. Both triggerable from root only.
|
1.86.20.1 | 21-Apr-2014 |
bouyer | Pull up following revision(s) (requested by maxv in ticket #1050): sys/ufs/chfs/chfs_vfsops.c: revision 1.11 sys/fs/unionfs/unionfs_vfsops.c: revision 1.13 sys/fs/nilfs/nilfs_vfsops.c: revision 1.16 sys/ufs/mfs/mfs_vfsops.c: revision 1.107 sys/fs/sysvbfs/sysvbfs_vfsops.c: revision 1.43 sys/ufs/ffs/ffs_vfsops.c: revision 1.297 sys/kern/vfs_syscalls.c: revision 1.478 sys/kern/vfs_syscalls.c: revision 1.479 sys/fs/puffs/puffs_vfsops.c: revision 1.110 sys/fs/cd9660/cd9660_vfsops.c: revision 1.84 sys/nfs/nfs_vfsops.c: revision 1.227 sys/fs/v7fs/v7fs_vfsops.c: revision 1.10 sys/ufs/ext2fs/ext2fs_vfsops.c: revision 1.180 sys/miscfs/umapfs/umap_vfsops.c: revision 1.92 sys/fs/filecorefs/filecore_vfsops.c: revision 1.76 sys/miscfs/nullfs/null_vfsops.c: revision 1.88 sys/fs/ptyfs/ptyfs_vfsops.c: revision 1.50 sys/coda/coda_vfsops.c: revision 1.81 sys/ufs/lfs/lfs_vfsops.c: revision 1.321 sys/fs/tmpfs/tmpfs_vfsops.c: revision 1.59 sys/fs/hfs/hfs_vfsops.c: revision 1.31 sys/miscfs/overlay/overlay_vfsops.c: revision 1.61 sys/fs/union/union_vfsops.c: revision 1.72 sys/fs/ntfs/ntfs_vfsops.c: revision 1.94 sys/kern/vfs_syscalls.c: revision 1.480 sys/fs/efs/efs_vfsops.c: revision 1.25 sys/kern/vfs_syscalls.c: revision 1.482 sys/fs/msdosfs/msdosfs_vfsops.c: revision 1.107 external/cddl/osnet/dist/uts/common/fs/zfs/zfs_vfsops.c: revision 1.12 sys/miscfs/procfs/procfs_vfsops.c: revision 1.91 sys/fs/smbfs/smbfs_vfsops.c: revision 1.100 sys/fs/adosfs/advfsops.c: revision 1.70 sys/fs/udf/udf_vfsops.c: revision 1.67 Limit check for 'data_len'. Otherwise a (un)privileged user can easily panic the system by passing a huge size. ok christos@ An (un)privileged user can easily make the kernel dereference a NULL pointer. The kernel allows 'data' to be NULL; it's the fs's responsibility to ensure that it isn't NULL (if the fs actually needs data). ok christos@ Some fs's - like kernfs - set their vfs_min_mount_data to zero. Add a check to prevent an (un)privileged user from requesting a zero-sized allocation (and thus a panic). This thing is totally buggy: 'data_len' is modified by the fs, so calling kmem_free with it while its value has changed since the kmem_alloc is far from being a good idea. If the kernel figures out that something mismatches, it will panic (typically with kernfs).
|
1.86.18.2 | 27-Aug-2014 |
msaitoh | Pull up following revision(s) (requested by maxv in ticket #1115): sys/miscfs/umapfs/umap_vfsops.c: revision 1.94 sys/fs/ptyfs/ptyfs_vfsops.c: revision 1.52 Overflow if *data_len == OSIZE and args->version >= PTYFS_ARGSVERSION. Sent on tech-kern@, ok christos@ 1) 'error' is returned while it does not even hold an error code. Which means that zero is returned, and the kernel keeps mounting (and it probably ends up in a deadlock/memory corruption somewhere). 2) 'nentries' and 'gnentries' are int and user-controlled, and there's no check to ensure they are greater than zero. Since they are used to compute the size of two copyin's, a user can control the copied size by giving a negative value (like 128-2^29), and thus overwrite kernel memory. Both triggerable from root only.
|
1.86.18.1 | 21-Apr-2014 |
bouyer | Pull up following revision(s) (requested by maxv in ticket #1050): sys/ufs/chfs/chfs_vfsops.c: revision 1.11 sys/fs/unionfs/unionfs_vfsops.c: revision 1.13 sys/fs/nilfs/nilfs_vfsops.c: revision 1.16 sys/ufs/mfs/mfs_vfsops.c: revision 1.107 sys/fs/sysvbfs/sysvbfs_vfsops.c: revision 1.43 sys/ufs/ffs/ffs_vfsops.c: revision 1.297 sys/kern/vfs_syscalls.c: revision 1.478 sys/kern/vfs_syscalls.c: revision 1.479 sys/fs/puffs/puffs_vfsops.c: revision 1.110 sys/fs/cd9660/cd9660_vfsops.c: revision 1.84 sys/nfs/nfs_vfsops.c: revision 1.227 sys/fs/v7fs/v7fs_vfsops.c: revision 1.10 sys/ufs/ext2fs/ext2fs_vfsops.c: revision 1.180 sys/miscfs/umapfs/umap_vfsops.c: revision 1.92 sys/fs/filecorefs/filecore_vfsops.c: revision 1.76 sys/miscfs/nullfs/null_vfsops.c: revision 1.88 sys/fs/ptyfs/ptyfs_vfsops.c: revision 1.50 sys/coda/coda_vfsops.c: revision 1.81 sys/ufs/lfs/lfs_vfsops.c: revision 1.321 sys/fs/tmpfs/tmpfs_vfsops.c: revision 1.59 sys/fs/hfs/hfs_vfsops.c: revision 1.31 sys/miscfs/overlay/overlay_vfsops.c: revision 1.61 sys/fs/union/union_vfsops.c: revision 1.72 sys/fs/ntfs/ntfs_vfsops.c: revision 1.94 sys/kern/vfs_syscalls.c: revision 1.480 sys/fs/efs/efs_vfsops.c: revision 1.25 sys/kern/vfs_syscalls.c: revision 1.482 sys/fs/msdosfs/msdosfs_vfsops.c: revision 1.107 external/cddl/osnet/dist/uts/common/fs/zfs/zfs_vfsops.c: revision 1.12 sys/miscfs/procfs/procfs_vfsops.c: revision 1.91 sys/fs/smbfs/smbfs_vfsops.c: revision 1.100 sys/fs/adosfs/advfsops.c: revision 1.70 sys/fs/udf/udf_vfsops.c: revision 1.67 Limit check for 'data_len'. Otherwise a (un)privileged user can easily panic the system by passing a huge size. ok christos@ An (un)privileged user can easily make the kernel dereference a NULL pointer. The kernel allows 'data' to be NULL; it's the fs's responsibility to ensure that it isn't NULL (if the fs actually needs data). ok christos@ Some fs's - like kernfs - set their vfs_min_mount_data to zero. Add a check to prevent an (un)privileged user from requesting a zero-sized allocation (and thus a panic). This thing is totally buggy: 'data_len' is modified by the fs, so calling kmem_free with it while its value has changed since the kmem_alloc is far from being a good idea. If the kernel figures out that something mismatches, it will panic (typically with kernfs).
|
1.86.14.2 | 27-Aug-2014 |
msaitoh | Pull up following revision(s) (requested by maxv in ticket #1115): sys/miscfs/umapfs/umap_vfsops.c: revision 1.94 sys/fs/ptyfs/ptyfs_vfsops.c: revision 1.52 Overflow if *data_len == OSIZE and args->version >= PTYFS_ARGSVERSION. Sent on tech-kern@, ok christos@ 1) 'error' is returned while it does not even hold an error code. Which means that zero is returned, and the kernel keeps mounting (and it probably ends up in a deadlock/memory corruption somewhere). 2) 'nentries' and 'gnentries' are int and user-controlled, and there's no check to ensure they are greater than zero. Since they are used to compute the size of two copyin's, a user can control the copied size by giving a negative value (like 128-2^29), and thus overwrite kernel memory. Both triggerable from root only.
|
1.86.14.1 | 21-Apr-2014 |
bouyer | Pull up following revision(s) (requested by maxv in ticket #1050): sys/ufs/chfs/chfs_vfsops.c: revision 1.11 sys/fs/unionfs/unionfs_vfsops.c: revision 1.13 sys/fs/nilfs/nilfs_vfsops.c: revision 1.16 sys/ufs/mfs/mfs_vfsops.c: revision 1.107 sys/fs/sysvbfs/sysvbfs_vfsops.c: revision 1.43 sys/ufs/ffs/ffs_vfsops.c: revision 1.297 sys/kern/vfs_syscalls.c: revision 1.478 sys/kern/vfs_syscalls.c: revision 1.479 sys/fs/puffs/puffs_vfsops.c: revision 1.110 sys/fs/cd9660/cd9660_vfsops.c: revision 1.84 sys/nfs/nfs_vfsops.c: revision 1.227 sys/fs/v7fs/v7fs_vfsops.c: revision 1.10 sys/ufs/ext2fs/ext2fs_vfsops.c: revision 1.180 sys/miscfs/umapfs/umap_vfsops.c: revision 1.92 sys/fs/filecorefs/filecore_vfsops.c: revision 1.76 sys/miscfs/nullfs/null_vfsops.c: revision 1.88 sys/fs/ptyfs/ptyfs_vfsops.c: revision 1.50 sys/coda/coda_vfsops.c: revision 1.81 sys/ufs/lfs/lfs_vfsops.c: revision 1.321 sys/fs/tmpfs/tmpfs_vfsops.c: revision 1.59 sys/fs/hfs/hfs_vfsops.c: revision 1.31 sys/miscfs/overlay/overlay_vfsops.c: revision 1.61 sys/fs/union/union_vfsops.c: revision 1.72 sys/fs/ntfs/ntfs_vfsops.c: revision 1.94 sys/kern/vfs_syscalls.c: revision 1.480 sys/fs/efs/efs_vfsops.c: revision 1.25 sys/kern/vfs_syscalls.c: revision 1.482 sys/fs/msdosfs/msdosfs_vfsops.c: revision 1.107 external/cddl/osnet/dist/uts/common/fs/zfs/zfs_vfsops.c: revision 1.12 sys/miscfs/procfs/procfs_vfsops.c: revision 1.91 sys/fs/smbfs/smbfs_vfsops.c: revision 1.100 sys/fs/adosfs/advfsops.c: revision 1.70 sys/fs/udf/udf_vfsops.c: revision 1.67 Limit check for 'data_len'. Otherwise a (un)privileged user can easily panic the system by passing a huge size. ok christos@ An (un)privileged user can easily make the kernel dereference a NULL pointer. The kernel allows 'data' to be NULL; it's the fs's responsibility to ensure that it isn't NULL (if the fs actually needs data). ok christos@ Some fs's - like kernfs - set their vfs_min_mount_data to zero. Add a check to prevent an (un)privileged user from requesting a zero-sized allocation (and thus a panic). This thing is totally buggy: 'data_len' is modified by the fs, so calling kmem_free with it while its value has changed since the kmem_alloc is far from being a good idea. If the kernel figures out that something mismatches, it will panic (typically with kernfs).
|
1.86.12.2 | 02-Jun-2012 |
mrg | sync to latest -current.
|
1.86.12.1 | 05-Apr-2012 |
mrg | sync to latest -current.
|
1.86.8.3 | 22-May-2014 |
yamt | sync with head.
for a reference, the tree before this commit was tagged as yamt-pagecache-tag8.
this commit was splitted into small chunks to avoid a limitation of cvs. ("Protocol error: too many arguments")
|
1.86.8.2 | 23-May-2012 |
yamt | sync with head.
|
1.86.8.1 | 17-Apr-2012 |
yamt | sync with head
|
1.88.4.1 | 18-May-2014 |
rmind | sync with head
|
1.88.2.2 | 03-Dec-2017 |
jdolecek | update from HEAD
|
1.88.2.1 | 20-Aug-2014 |
tls | Rebase to HEAD as of a few days ago.
|
1.91.2.1 | 10-Aug-2014 |
tls | Rebase.
|
1.93.2.2 | 17-Jan-2015 |
martin | Pull up following revision(s) (requested by maxv in ticket #427): sys/compat/svr4/svr4_schedctl.c: revision 1.8 sys/netinet/tcp_timer.c: revision 1.88 sys/miscfs/genfs/layer_vfsops.c: revision 1.45 sys/compat/svr4/svr4_ioctl.c: revision 1.37 sys/ufs/chfs/chfs_vfsops.c: revision 1.14 sys/miscfs/fdesc/fdesc_vfsops.c: revision 1.91 sys/compat/linux/arch/i386/linux_ptrace.c: revision 1.30 sys/compat/common/kern_time_50.c: revision 1.28 sys/netinet6/ip6_forward.c: revision 1.74 sys/miscfs/umapfs/umap_vnops.c: revision 1.57 sys/compat/svr4/svr4_fcntl.c: revision 1.74 distrib/sets/lists/comp/mi: revision 1.1931 sys/netinet6/udp6_output.c: revision 1.46 sys/fs/puffs/puffs_compat.c: revision 1.3 sys/fs/udf/udf_rename.c: revision 1.11 sys/compat/svr4/svr4_filio.c: revision 1.24 sys/fs/udf/udf_rename.c: revision 1.12 sys/netinet/tcp_usrreq.c: revision 1.202 sys/miscfs/umapfs/umap_subr.c: revision 1.29 sys/compat/linux/common/linux_fadvise64.c: revision 1.3 sys/netinet/if_atm.c: revision 1.34 sys/miscfs/procfs/procfs_subr.c: revision 1.106 sys/miscfs/genfs/layer_subr.c: revision 1.37 sys/netinet/tcp_sack.c: revision 1.30 sys/compat/freebsd/freebsd_misc.c: revision 1.33 sys/compat/freebsd/freebsd_file.c: revision 1.33 sys/ufs/chfs/chfs_vnode.c: revision 1.12 sys/compat/svr4/svr4_ttold.c: revision 1.34 sys/compat/linux/common/linux_file.c: revision 1.114 sys/compat/linux/arch/mips/linux_machdep.c: revision 1.43 sys/compat/linux/common/linux_signal.c: revision 1.76 sys/compat/common/compat_util.c: revision 1.46 sys/compat/linux/arch/arm/linux_ptrace.c: revision 1.18 sys/compat/svr4/svr4_sockio.c: revision 1.36 sys/compat/linux/arch/arm/linux_machdep.c: revision 1.32 sys/compat/svr4/svr4_signal.c: revision 1.66 sys/kern/kern_exec.c: revision 1.410 sys/fs/puffs/puffs_vfsops.c: revision 1.115 sys/compat/svr4/svr4_exec_elf64.c: revision 1.15 sys/compat/linux/arch/i386/linux_machdep.c: revision 1.159 sys/compat/linux/arch/alpha/linux_machdep.c: revision 1.50 sys/compat/linux32/common/linux32_misc.c: revision 1.24 sys/netinet/in_pcb.c: revision 1.153 sys/sys/malloc.h: revision 1.116 sys/compat/common/if_43.c: revision 1.9 share/man/man9/Makefile: revision 1.380 sys/netinet/tcp_vtw.c: revision 1.12 sys/miscfs/umapfs/umap_vfsops.c: revision 1.95 sys/ufs/ext2fs/ext2fs_vfsops.c: revision 1.186 sys/compat/common/uipc_syscalls_43.c: revision 1.46 sys/ufs/ext2fs/ext2fs_vnops.c: revision 1.115 sys/fs/puffs/puffs_msgif.c: revision 1.97 sys/compat/svr4/svr4_ipc.c: revision 1.27 sys/compat/linux/common/linux_exec.c: revision 1.117 sys/ufs/ext2fs/ext2fs_readwrite.c: revision 1.66 sys/netinet/tcp_output.c: revision 1.179 sys/compat/svr4/svr4_termios.c: revision 1.28 sys/fs/udf/udf_strat_bootstrap.c: revision 1.4 sys/fs/puffs/puffs_subr.c: revision 1.67 sys/fs/puffs/puffs_node.c: revision 1.36 sys/miscfs/overlay/overlay_vnops.c: revision 1.21 sys/fs/cd9660/cd9660_node.c: revision 1.34 sys/netinet/raw_ip.c: revision 1.146 sys/sys/mallocvar.h: revision 1.13 sys/miscfs/overlay/overlay_vfsops.c: revision 1.63 share/man/man9/malloc.9: revision 1.50 sys/netinet6/dest6.c: revision 1.18 sys/compat/linux/common/linux_uselib.c: revision 1.33 sys/compat/linux/common/linux_socket.c: revision 1.120 share/man/man9/malloc.9: revision 1.51 sys/netinet/tcp_subr.c: revision 1.257 sys/compat/linux/common/linux_socketcall.c: revision 1.45 sys/compat/linux/common/linux_fadvise64_64.c: revision 1.3 sys/compat/freebsd/freebsd_ipc.c: revision 1.17 sys/compat/linux/common/linux_misc_notalpha.c: revision 1.109 sys/compat/linux/arch/alpha/linux_pipe.c: revision 1.17 sys/netinet6/in6_pcb.c: revision 1.132 sys/netinet6/in6_ifattach.c: revision 1.94 sys/compat/svr4/svr4_exec_elf32.c: revision 1.15 sys/miscfs/nullfs/null_vfsops.c: revision 1.90 sys/fs/cd9660/cd9660_util.c: revision 1.12 sys/compat/linux/arch/powerpc/linux_machdep.c: revision 1.48 sys/compat/freebsd/freebsd_exec_elf32.c: revision 1.20 sys/miscfs/procfs/procfs_vfsops.c: revision 1.94 sys/compat/linux/arch/powerpc/linux_ptrace.c: revision 1.28 sys/compat/linux/common/linux_sched.c: revision 1.67 sys/compat/linux/common/linux_exec_aout.c: revision 1.67 sys/compat/linux/common/linux_pipe.c: revision 1.67 sys/compat/linux/common/linux_llseek.c: revision 1.34 sys/compat/linux/arch/mips/linux_ptrace.c: revision 1.10 Do not uselessly include <sys/malloc.h>. Cleanup: - remove struct kmembuckets (dead) - correctly deadify MALLOC_XX - remove MALLOC_DEFINE_LIMIT and MALLOC_JUSTDEFINE_LIMIT (dead) - remove malloc_roundup(), malloc_type_setlimit(), MALLOC_DEFINE_LIMIT() and MALLOC_JUSTDEFINE_LIMIT() from man 9 malloc New sentence, new line. Bump date for previous. Obsolete malloc_roundup(9), malloc_type_setlimit(9) and MALLOC_DEFINE_LIMIT(9) man pages.
|
1.93.2.1 | 21-Aug-2014 |
martin | Pull up following revision(s) (requested by maxv in ticket #43): sys/miscfs/umapfs/umap_vfsops.c: revision 1.94 1) 'error' is returned while it does not even hold an error code. Which means that zero is returned, and the kernel keeps mounting (and it probably ends up in a deadlock/memory corruption somewhere). 2) 'nentries' and 'gnentries' are int and user-controlled, and there's no check to ensure they are greater than zero. Since they are used to compute the size of two copyin's, a user can control the copied size by giving a negative value (like 128-2^29), and thus overwrite kernel memory. Both triggerable from root only.
|
1.95.6.1 | 21-Apr-2017 |
bouyer | Sync with HEAD
|
1.95.4.2 | 26-Apr-2017 |
pgoyette | Sync with HEAD
|
1.95.4.1 | 20-Mar-2017 |
pgoyette | Sync with HEAD
|
1.95.2.1 | 28-Aug-2017 |
skrll | Sync with HEAD
|
1.99.12.4 | 21-Apr-2020 |
martin | Sync with HEAD
|
1.99.12.3 | 13-Apr-2020 |
martin | Mostly merge changes from HEAD upto 20200411
|
1.99.12.2 | 08-Apr-2020 |
martin | Merge changes from current as of 20200406
|
1.99.12.1 | 10-Jun-2019 |
christos | Sync with HEAD
|
1.102.2.1 | 20-Apr-2020 |
bouyer | Sync with HEAD
|
1.104.8.1 | 02-Aug-2025 |
perseant | Sync with HEAD
|
1.62 | 20-Oct-2021 |
thorpej | Overhaul of the EVFILT_VNODE kevent(2) filter:
- Centralize vnode kevent handling in the VOP_*() wrappers, rather than forcing each individual file system to deal with it (except VOP_RENAME(), because VOP_RENAME() is a mess and we currently have 2 different ways of handling it; at least it's reasonably well-centralized in the "new" way). - Add support for NOTE_OPEN, NOTE_CLOSE, NOTE_CLOSE_WRITE, and NOTE_READ, compatible with the same events in FreeBSD. - Track which kevent notifications clients are interested in receiving to avoid doing work for events no one cares about (avoiding, e.g. taking locks and traversing the klist to send a NOTE_WRITE when someone is merely watching for a file to be deleted, for example).
In support of the above:
- Add support in vnode_if.sh for specifying PRE- and POST-op handlers, to be invoked before and after vop_pre() and vop_post(), respectively. Basic idea from FreeBSD, but implemented differently. - Add support in vnode_if.sh for specifying CONTEXT fields in the vop_*_args structures. These context fields are used to convey information between the file system VOP function and the VOP wrapper, but do not occupy an argument slot in the VOP_*() call itself. These context fields are initialized and subsequently interpreted by PRE- and POST-op handlers. - Version VOP_REMOVE(), uses the a context field for the file system to report back the resulting link count of the target vnode. Return this in tmpfs, udf, nfs, chfs, ext2fs, lfs, and ufs.
NetBSD 9.99.92.
|
1.61 | 16-May-2020 |
christos | Add ACL support for FFS. From FreeBSD.
|
1.60 | 04-Jun-2017 |
hannken | Locking a layer vnode using the regular bypass routine is no longer racy. Undo the change from 2017-03-30 11:16:52, commitid eurqbzuGxGRlryLz and make vi_lock a krwlock_t again.
|
1.59 | 30-Mar-2017 |
hannken | branches: 1.59.6; Locking a layer vnode is racy as it may become reclaimed before calling the operation on the lower vnode.
Replace vi_lock with a rw_obj and change layered file systems to share the lock with the lower vnode.
Layered file systems now use genfs_lock()/_unlock/_islocked().
Welcome to 7.99.67
|
1.58 | 27-Jan-2017 |
hannken | Handle v_writecount from layer_open(), layer_close() and layer_revoke() so lower file system vnodes get marked as open for writing.
|
1.57 | 09-Nov-2014 |
maxv | branches: 1.57.2; 1.57.4; 1.57.6; Do not uselessly include <sys/malloc.h>.
|
1.56 | 27-Feb-2014 |
hannken | branches: 1.56.4; The current implementation of vn_lock() is racy. Modification of the vnode operations vector for active vnodes is unsafe because it is not known whether deadfs or the original file system will be called.
- Pass down LK_RETRY to the lock operation (hint for deadfs only).
- Change deadfs lock operation to return ENOENT if LK_RETRY is unset.
- Change all other lock operations to check for dead vnode once the vnode is locked and unlock and return ENOENT in this case.
With these changes in place vnode lock operations will never succeed after vclean() has marked the vnode as VI_XLOCK and before vclean() has changed the operations vector.
Adresses PR kern/37706 (Forced unmount of file systems is unsafe)
Discussed on tech-kern.
Welcome to 6.99.33
|
1.55 | 09-Feb-2014 |
hannken | Adjust comment and change vput() to vrele(). This change got missed when changing vnode creation operations to return unlocked result.
|
1.54 | 07-Feb-2014 |
hannken | Change vnode operation lookup to return the resulting vnode *vpp unlocked. Change cache_lookup() to return an unlocked vnode.
Discussed on tech-kern@
Welcome to 6.99.31
|
1.53 | 11-Jul-2011 |
hannken | branches: 1.53.2; 1.53.12; 1.53.16; Change VOP_BWRITE() to take a vnode as its first argument like all other VOPs do. Layered file systems no longer have to modify bp->b_vp and run into trouble when an async VOP_BWRITE() uses the wrong vnode.
- change all occurences of VOP_BWRITE(bp) to VOP_BWRITE(bp->b_vp, bp). - remove layer_bwrite(). - welcome to 5.99.55
Adresses PR kern/38762 panic: vwakeup: neg numoutput
No objections from tech-kern@.
|
1.52 | 03-Apr-2011 |
rmind | - Use offsetof() in VOPARG_OFFSETOF() instead of re-implementing it. - Remove VDESC_NOMAP_VPP and VDESC_VPP_WILLRELE. - Remove VRELEL_NOINACTIVE and VRELEL_ONHEAD.
|
1.51 | 10-Jan-2011 |
hannken | branches: 1.51.2; Add layer_revoke() that adjusts the lower vnode use count to be at least as high as the upper vnode count before passing down the VOP_REVOKE().
This way vclean() check for active (vp->v_usecount > 1) vnodes gets it right.
Should fix PR kern/43456.
|
1.50 | 02-Jul-2010 |
hannken | LK_INTERLOCK is no longer a valid flag for VOP_LOCK(). This makes layer_*lock*() obsolete. Remove them and handle lock operations with the generic bypass function.
Ride 5.99.34.
|
1.49 | 06-Jun-2010 |
hannken | Change layered file systems to always pass the locking VOP's down to the leaf file system. Remove now unused member v_vnlock from struct vnode. Welcome to 5.99.30
Discussed on tech-kern.
|
1.48 | 08-Jan-2010 |
pooka | branches: 1.48.2; 1.48.4; The VATTR_NULL/VREF/VHOLD/HOLDRELE() macros lost their will to live years ago when the kernel was modified to not alter ABI based on DIAGNOSTIC, and now just call the respective function interfaces (in lowercase). Plenty of mix'n match upper/lowercase has creeped into the tree since then. Nuke the macros and convert all callsites to lowercase.
no functional change
|
1.47 | 14-Mar-2009 |
dsl | ANSIfy another 1261 function definitions. The only ones left in sys are beyond by sed script! (or in sys/dist or sys/external) Mostly they have function pointer parameters.
|
1.46 | 14-Feb-2009 |
plunky | add a comment re the vop (?) flag LAYERFS_MBYPASSDEBUG, that if set could cause a bad pointer dereference in the debug printing when credentials with values of NOCRED or FSCRED were passed to kauth.
I don't see any way to set such a flag, I think its just a debug thing that could be enabled at compile time by somebody who knew how, hence the comment rather than a real fix.
|
1.45 | 14-Feb-2009 |
plunky | consistency checks made inside #ifdef SAFETY should really be #ifdef DIAGNOSTIC
|
1.44 | 13-Feb-2009 |
plunky | While we remap credentials we should ignore cred == FSCRED as well as cred == NOCRED.
This fixes a page fault occurring when a union is mounted over a umap, as FSCRED is passed by union filesystem.
|
1.43 | 09-Dec-2006 |
chs | branches: 1.43.44; 1.43.54; 1.43.56; 1.43.60; a smorgasbord of improvements to vnode locking and path lookup: - LOCKPARENT is no longer relevant for lookup(), relookup() or VOP_LOOKUP(). these now always return the parent vnode locked. namei() works as before. lookup() and various other paths no longer acquire vnode locks in the wrong order via vrele(). fixes PR 32535. as a nice side effect, path lookup is also up to 25% faster. - the above allows us to get rid of PDIRUNLOCK. - also get rid of WANTPARENT (just use LOCKPARENT and unlock it). - remove an assumption in layer_node_find() that all file systems implement a recursive VOP_LOCK() (unionfs doesn't). - require that all file systems supply vfs_vptofh and vfs_fhtovp routines. fill in eopnotsupp() for file systems that don't support being exported and remove the checks for NULL. (layerfs calls these without checking.) - in union_lookup1(), don't change refcounts in the ISDOTDOT case, just adjust which vnode is locked. fixes PR 33374. - apply fixes for ufs_rename() from ufs_vnops.c rev. 1.61 to ext2fs_rename().
|
1.42 | 25-Oct-2006 |
elad | branches: 1.42.2; kauth_cred_geteuid() is okay for the purposes of these checks. Revert conversion to kauth_authorize_generic() done some time ago.
|
1.41 | 13-Sep-2006 |
elad | branches: 1.41.2; Don't use KAUTH_RESULT_* where it's not applicable. Prompted by yamt@.
|
1.40 | 08-Sep-2006 |
elad | First take at security model abstraction.
- Add a few scopes to the kernel: system, network, and machdep.
- Add a few more actions/sub-actions (requests), and start using them as opposed to the KAUTH_GENERIC_ISSUSER place-holders.
- Introduce a basic set of listeners that implement our "traditional" security model, called "bsd44". This is the default (and only) model we have at the moment.
- Update all relevant documentation.
- Add some code and docs to help folks who want to actually use this stuff:
* There's a sample overlay model, sitting on-top of "bsd44", for fast experimenting with tweaking just a subset of an existing model.
This is pretty cool because it's *really* straightforward to do stuff you had to use ugly hacks for until now...
* And of course, documentation describing how to do the above for quick reference, including code samples.
All of these changes were tested for regressions using a Python-based testsuite that will be (I hope) available soon via pkgsrc. Information about the tests, and how to write new ones, can be found on:
http://kauth.linbsd.org/kauthwiki
NOTE FOR DEVELOPERS: *PLEASE* don't add any code that does any of the following:
- Uses a KAUTH_GENERIC_ISSUSER kauth(9) request, - Checks 'securelevel' directly, - Checks a uid/gid directly.
(or if you feel you have to, contact me first)
This is still work in progress; It's far from being done, but now it'll be a lot easier.
Relevant mailing list threads:
http://mail-index.netbsd.org/tech-security/2006/01/25/0011.html http://mail-index.netbsd.org/tech-security/2006/03/24/0001.html http://mail-index.netbsd.org/tech-security/2006/04/18/0000.html http://mail-index.netbsd.org/tech-security/2006/05/15/0000.html http://mail-index.netbsd.org/tech-security/2006/08/01/0000.html http://mail-index.netbsd.org/tech-security/2006/08/25/0000.html
Many thanks to YAMAMOTO Takashi, Matt Thomas, and Christos Zoulas for help stablizing kauth(9).
Full credit for the regression tests, making sure these changes didn't break anything, goes to Matt Fleming and Jaime Fournier.
Happy birthday Randi! :)
|
1.39 | 14-May-2006 |
elad | branches: 1.39.8; integrate kauth.
|
1.38 | 12-Apr-2006 |
christos | Coverity CID 2851: Check for NULL before freeing.
|
1.37 | 04-Apr-2006 |
christos | Coverity CID 1002: Yes, this could really be NULL, so check against it.
|
1.36 | 04-Apr-2006 |
christos | Coverity CID 2413: NULL deref cannot happen, but nevertheless protect against it.
|
1.35 | 11-Dec-2005 |
christos | branches: 1.35.4; 1.35.6; 1.35.8; 1.35.10; 1.35.12; merge ktrace-lwp.
|
1.34 | 30-Aug-2005 |
xtraeme | Remove __P()
|
1.33 | 26-Feb-2005 |
perry | branches: 1.33.4; nuke trailing whitespace
|
1.32 | 30-Jun-2004 |
hannken | branches: 1.32.4; 1.32.6; Do LAYERFS_REMOVED for vop_rmdir.
Reviewed by: Bill Studenmund <wrstuden@netbsd.org>
|
1.31 | 16-Jun-2004 |
wrstuden | Make sure we actually locked the parent vnode before we clear PDIRUNLOCK. The whole reason we have the flag is to note (rare) cases where we are supposed to have the parent directory locked but don't. Permits error handling code to know what to do with the parrent vnode (vrele() vs vput()).
|
1.30 | 16-Jun-2004 |
yamt | - eliminate gratuitous differences between umap_bypass() and layer_bypass(). - fix a typo in a comment. no functional changes are intended.
|
1.29 | 16-Jun-2004 |
yamt | missing error recover from layer_node_create failure.
|
1.28 | 11-Jun-2004 |
yamt | umap_lookup/layer_lookup: NULL out *ap->a_vpp after calling underlying filesystem because some caller including lookup() assume that *vpp is NULL on error.
|
1.27 | 07-Jun-2004 |
yamt | do a LAYERFS_REMOVED hack for vop_rename as well.
|
1.26 | 28-May-2004 |
wrstuden | Since VOP_UPCALL() has been a long time in coming, add this partial fix for layered-file-removal. It will work for the case of accessing and deleting a file through the layered file system. Accessing via the layer and deleting on the underlying still won't work, nor will accessing via complicated structures (like two umap layers over a given file systems).
We still need VOP_UPCALL(), but this is better than things were before.
This patch has been discussed off & on for a while. This incarnation was tested by hannken at netbsd dot org.
|
1.25 | 21-Apr-2004 |
christos | Replace the statfs() family of system calls with statvfs(). Retain binary compatibility.
|
1.24 | 25-Jan-2004 |
hannken | branches: 1.24.2; Make VOP_STRATEGY(bp) a real VOP as discussed on tech-kern.
VOP_STRATEGY(bp) is replaced by one of two new functions:
- VOP_STRATEGY(vp, bp) Call the strategy routine of vp for bp. - DEV_STRATEGY(bp) Call the d_strategy routine of bp->b_dev for bp.
DEV_STRATEGY(bp) is used only for block-to-block device situations.
|
1.23 | 07-Aug-2003 |
agc | Move UCB-licensed code from 4-clause to 3-clause licence.
Patches provided by Joel Baker in PR 22364, verified by myself.
|
1.22 | 04-Jan-2002 |
chs | branches: 1.22.16; add the entry for layer_getpages() to the VOP tables of the layered file systems that need it.
|
1.21 | 06-Dec-2001 |
chs | add VOP_GETPAGES and VOP_PUTPAGES methods for layered filesystems. drop the interlock on the upper layer, acquire the interlock on the lower layer.
|
1.20 | 15-Nov-2001 |
lukem | don't need <sys/types.h> when including <sys/param.h>
|
1.19 | 10-Nov-2001 |
lukem | add RCSIDs
|
1.18 | 22-Jan-2001 |
jdolecek | branches: 1.18.2; 1.18.4; 1.18.8; make filesystem vnodeop, specop, fifoop and vnodeopv_* arrays const
|
1.17 | 18-Jan-2001 |
jdolecek | constify
|
1.16 | 16-Aug-1999 |
wrstuden | branches: 1.16.2; Fin uninitialized variable use noted by Simon Burge.
|
1.15 | 08-Jul-1999 |
wrstuden | Introduce layer library in genfs. This set of files abstracts most of the functionality of nullfs. The latter is now just a mount & unmount routine, and a few tables. umapfs borrow most of this infrastructure.
Both fs's are now nfs-exportable.
All layered fs's share a common format to private mount & private vnode structs (which a particular fs can extend).
Also add genfs_noerr_rele(), a vnode op which will vrele/vput operand vnodes appropriately.
|
1.14 | 17-May-1999 |
wrstuden | Remove explicit references to null_bypass (used in umap_lock() and umap_unlock()) so as to not explicitly depend on nullfs being compiled into the kernel.
umap_bypass won't be too slow as there are no credentials in these two ops to need mapping.
|
1.13 | 25-Mar-1999 |
bouyer | branches: 1.13.2; 1.13.4; 1.13.6; We must handle MNT_NODEV at open time, so add an open op for null and union, and do proper checks in union_open(). Fix to nullfs from OpenBSD, extended to umap and union by me.
|
1.12 | 22-Mar-1999 |
sommerfe | vinvalbuf, called from vclean, could cause a locking-against-self deadlock in VOP_FSYNC() if the unreferenced vnode picked for reclamation happened to be stacked on top of a vnode the process already had locked. This could happen if the same filesystem was accessed both through a union mount and directly; it seemed to happen most frequently when the direct access was through NFS.
Avoid this deadlock by changing vinvalbuf to pass a new FSYNC_RECLAIM flag bit to VOP_FSYNC() to indicate that a reclaim is in progress and only a `shallow' fsync is necessary.
Do nothing in *_fsync() in umapfs, nullfs, and unionfs when FSYNC_RECLAIM is set; the underlying vnodes will shortly be released in *_reclaim and may be reclaimed (and fsync'ed) later.
|
1.11 | 19-Mar-1999 |
perseant | Apply patch from kern/5538:
Fix group mapping so members of group 0 get other group-ids mapped as well. Avoid rename panic by checking (*this_vp_p) against NULLVP before dereferencing it (same change as to NULLFS some time ago).
|
1.10 | 01-Mar-1998 |
fvdl | Merge with Lite2 + local changes
|
1.9 | 06-Oct-1997 |
thorpej | Make the vfs ops and vnodeop_opv symbols match the name of the file-system option used to configure the file system into the kernel.
|
1.8 | 13-Oct-1996 |
christos | branches: 1.8.10; backout previous kprintf changes
|
1.7 | 10-Oct-1996 |
christos | printf -> kprintf, sprintf -> ksprintf
|
1.6 | 23-May-1996 |
cgd | print pointers with %p, rather than by printing with %x and casting to (unsigned int).
|
1.5 | 09-Feb-1996 |
christos | branches: 1.5.4; miscfs prototype changes
|
1.4 | 15-Apr-1995 |
cgd | clean up some return-type warnings
|
1.3 | 19-Aug-1994 |
mycroft | Convert hash tables.
|
1.2 | 29-Jun-1994 |
cgd | branches: 1.2.2; New RCS ID's, take two. they're more aesthecially pleasant, and use 'NetBSD'
|
1.1 | 08-Jun-1994 |
mycroft | branches: 1.1.1; Update to 4.4-Lite fs code, with local changes.
|
1.1.1.2 | 01-Mar-1998 |
fvdl | Import 4.4BSD-Lite2
|
1.1.1.1 | 01-Mar-1998 |
fvdl | Import 4.4BSD-Lite for reference
|
1.2.2.1 | 19-Aug-1994 |
mycroft | update from trunk
|
1.5.4.1 | 25-May-1996 |
jtc | pulled up to the release branch by cgd's request
|
1.8.10.1 | 14-Oct-1997 |
thorpej | Update marc-pcmcia branch from trunk.
|
1.13.6.1 | 30-Nov-1999 |
itojun | bring in latest KAME (as of 19991130, KAME/NetBSD141) into kame branch just for reference purposes. This commit includes 1.4 -> 1.4.1 sync for kame branch.
The branch does not compile at all (due to the lack of ALTQ and some other source code). Please do not try to modify the branch, this is just for referenre purposes.
synchronization to latest KAME will take place on HEAD branch soon.
|
1.13.4.2 | 02-Aug-1999 |
thorpej | Update from trunk.
|
1.13.4.1 | 21-Jun-1999 |
thorpej | Sync w/ -current.
|
1.13.2.1 | 22-Jun-1999 |
perry | pullup 1.13->1.14 (wrstuden)
|
1.16.2.1 | 11-Feb-2001 |
bouyer | Sync with HEAD.
|
1.18.8.1 | 12-Nov-2001 |
thorpej | Sync the thorpej-mips-cache branch with -current.
|
1.18.4.1 | 10-Jan-2002 |
thorpej | Sync kqueue branch with -current.
|
1.18.2.4 | 28-Feb-2002 |
nathanw | Catch up to -current.
|
1.18.2.3 | 11-Jan-2002 |
nathanw | More catchup.
|
1.18.2.2 | 08-Jan-2002 |
nathanw | Catch up to -current.
|
1.18.2.1 | 14-Nov-2001 |
nathanw | Catch up to -current.
|
1.22.16.6 | 10-Nov-2005 |
skrll | Sync with HEAD. Here we go again...
|
1.22.16.5 | 04-Mar-2005 |
skrll | Sync with HEAD.
Hi Perry!
|
1.22.16.4 | 27-Oct-2004 |
skrll | Fix various comments that describe the argument structures
|
1.22.16.3 | 21-Sep-2004 |
skrll | Fix the sync with head I botched.
|
1.22.16.2 | 18-Sep-2004 |
skrll | Sync with HEAD.
|
1.22.16.1 | 03-Aug-2004 |
skrll | Sync with HEAD
|
1.24.2.4 | 02-Jul-2004 |
he | Pull up revision 1.32 (requested by hannken in ticket #575): Do LAYERFS_REMOVED for vop_rmdir.
|
1.24.2.3 | 21-Jun-2004 |
tron | Pull up revision 1.28 (requested by yamt in ticket #514): umap_lookup/layer_lookup: NULL out *ap->a_vpp after calling underlying filesystem because some caller including lookup() assume that *vpp is NULL on error.
|
1.24.2.2 | 21-Jun-2004 |
tron | Pull up revision 1.27 (requested by yamt in ticket #512): do a LAYERFS_REMOVED hack for vop_rename as well.
|
1.24.2.1 | 30-May-2004 |
tron | Pull up revision 1.26 (requested by wrstuden in ticket #424): Since VOP_UPCALL() has been a long time in coming, add this partial fix for layered-file-removal. It will work for the case of accessing and deleting a file through the layered file system. Accessing via the layer and deleting on the underlying still won't work, nor will accessing via complicated structures (like two umap layers over a given file systems). We still need VOP_UPCALL(), but this is better than things were before. This patch has been discussed off & on for a while. This incarnation was tested by hannken at netbsd dot org.
|
1.32.6.1 | 19-Mar-2005 |
yamt | sync with head. xen and whitespace. xen part is not finished.
|
1.32.4.1 | 29-Apr-2005 |
kent | sync with -current
|
1.33.4.2 | 30-Dec-2006 |
yamt | sync with head.
|
1.33.4.1 | 21-Jun-2006 |
yamt | sync with head.
|
1.35.12.1 | 24-May-2006 |
tron | Merge 2006-05-24 NetBSD-current into the "peter-altq" branch.
|
1.35.10.3 | 06-May-2006 |
christos | - Move kauth_cred_t declaration to <sys/types.h> - Cleanup struct ucred; forward declarations that are unused. - Don't include <sys/kauth.h> in any header, but include it in the c files that need it.
Approved by core.
|
1.35.10.2 | 19-Apr-2006 |
elad | sync with head.
|
1.35.10.1 | 08-Mar-2006 |
elad | Adapt to kernel authorization KPI.
|
1.35.8.3 | 14-Sep-2006 |
yamt | sync with head.
|
1.35.8.2 | 24-May-2006 |
yamt | sync with head.
|
1.35.8.1 | 11-Apr-2006 |
yamt | sync with head
|
1.35.6.2 | 01-Jun-2006 |
kardel | Sync with head.
|
1.35.6.1 | 22-Apr-2006 |
simonb | Sync with head.
|
1.35.4.1 | 09-Sep-2006 |
rpaulo | sync with head
|
1.39.8.2 | 12-Jan-2007 |
ad | Sync with head.
|
1.39.8.1 | 18-Nov-2006 |
ad | Sync with head.
|
1.41.2.1 | 10-Dec-2006 |
yamt | sync with head.
|
1.42.2.1 | 17-Feb-2007 |
tron | Apply patch (requested by chs in ticket #422): - Fix various deadlock problems with nullfs and unionfs. - Speed up path lookups by upto 25%.
|
1.43.60.1 | 13-May-2009 |
jym | Sync with HEAD.
Commit is split, to avoid a "too many arguments" protocol error.
|
1.43.56.1 | 23-Feb-2009 |
snj | Pull up following revision(s) (requested by plunky in ticket #461): sys/miscfs/umapfs/umap_subr.c: revision 1.26 sys/miscfs/umapfs/umap_vnops.c: revision 1.44 While we remap credentials we should ignore cred == FSCRED as well as cred == NOCRED. This fixes a page fault occurring when a union is mounted over a umap, as FSCRED is passed by union filesystem.
|
1.43.54.2 | 28-Apr-2009 |
skrll | Sync with HEAD.
|
1.43.54.1 | 03-Mar-2009 |
skrll | Sync with HEAD.
|
1.43.44.3 | 11-Aug-2010 |
yamt | sync with head.
|
1.43.44.2 | 11-Mar-2010 |
yamt | sync with head
|
1.43.44.1 | 04-May-2009 |
yamt | sync with head.
|
1.48.4.3 | 21-Apr-2011 |
rmind | sync with head
|
1.48.4.2 | 05-Mar-2011 |
rmind | sync with head
|
1.48.4.1 | 03-Jul-2010 |
rmind | sync with head
|
1.48.2.1 | 17-Aug-2010 |
uebayasi | Sync with HEAD.
|
1.51.2.1 | 06-Jun-2011 |
jruoho | Sync with HEAD.
|
1.53.16.1 | 18-May-2014 |
rmind | sync with head
|
1.53.12.2 | 03-Dec-2017 |
jdolecek | update from HEAD
|
1.53.12.1 | 20-Aug-2014 |
tls | Rebase to HEAD as of a few days ago.
|
1.53.2.1 | 22-May-2014 |
yamt | sync with head.
for a reference, the tree before this commit was tagged as yamt-pagecache-tag8.
this commit was splitted into small chunks to avoid a limitation of cvs. ("Protocol error: too many arguments")
|
1.56.4.1 | 17-Jan-2015 |
martin | Pull up following revision(s) (requested by maxv in ticket #427): sys/compat/svr4/svr4_schedctl.c: revision 1.8 sys/netinet/tcp_timer.c: revision 1.88 sys/miscfs/genfs/layer_vfsops.c: revision 1.45 sys/compat/svr4/svr4_ioctl.c: revision 1.37 sys/ufs/chfs/chfs_vfsops.c: revision 1.14 sys/miscfs/fdesc/fdesc_vfsops.c: revision 1.91 sys/compat/linux/arch/i386/linux_ptrace.c: revision 1.30 sys/compat/common/kern_time_50.c: revision 1.28 sys/netinet6/ip6_forward.c: revision 1.74 sys/miscfs/umapfs/umap_vnops.c: revision 1.57 sys/compat/svr4/svr4_fcntl.c: revision 1.74 distrib/sets/lists/comp/mi: revision 1.1931 sys/netinet6/udp6_output.c: revision 1.46 sys/fs/puffs/puffs_compat.c: revision 1.3 sys/fs/udf/udf_rename.c: revision 1.11 sys/compat/svr4/svr4_filio.c: revision 1.24 sys/fs/udf/udf_rename.c: revision 1.12 sys/netinet/tcp_usrreq.c: revision 1.202 sys/miscfs/umapfs/umap_subr.c: revision 1.29 sys/compat/linux/common/linux_fadvise64.c: revision 1.3 sys/netinet/if_atm.c: revision 1.34 sys/miscfs/procfs/procfs_subr.c: revision 1.106 sys/miscfs/genfs/layer_subr.c: revision 1.37 sys/netinet/tcp_sack.c: revision 1.30 sys/compat/freebsd/freebsd_misc.c: revision 1.33 sys/compat/freebsd/freebsd_file.c: revision 1.33 sys/ufs/chfs/chfs_vnode.c: revision 1.12 sys/compat/svr4/svr4_ttold.c: revision 1.34 sys/compat/linux/common/linux_file.c: revision 1.114 sys/compat/linux/arch/mips/linux_machdep.c: revision 1.43 sys/compat/linux/common/linux_signal.c: revision 1.76 sys/compat/common/compat_util.c: revision 1.46 sys/compat/linux/arch/arm/linux_ptrace.c: revision 1.18 sys/compat/svr4/svr4_sockio.c: revision 1.36 sys/compat/linux/arch/arm/linux_machdep.c: revision 1.32 sys/compat/svr4/svr4_signal.c: revision 1.66 sys/kern/kern_exec.c: revision 1.410 sys/fs/puffs/puffs_vfsops.c: revision 1.115 sys/compat/svr4/svr4_exec_elf64.c: revision 1.15 sys/compat/linux/arch/i386/linux_machdep.c: revision 1.159 sys/compat/linux/arch/alpha/linux_machdep.c: revision 1.50 sys/compat/linux32/common/linux32_misc.c: revision 1.24 sys/netinet/in_pcb.c: revision 1.153 sys/sys/malloc.h: revision 1.116 sys/compat/common/if_43.c: revision 1.9 share/man/man9/Makefile: revision 1.380 sys/netinet/tcp_vtw.c: revision 1.12 sys/miscfs/umapfs/umap_vfsops.c: revision 1.95 sys/ufs/ext2fs/ext2fs_vfsops.c: revision 1.186 sys/compat/common/uipc_syscalls_43.c: revision 1.46 sys/ufs/ext2fs/ext2fs_vnops.c: revision 1.115 sys/fs/puffs/puffs_msgif.c: revision 1.97 sys/compat/svr4/svr4_ipc.c: revision 1.27 sys/compat/linux/common/linux_exec.c: revision 1.117 sys/ufs/ext2fs/ext2fs_readwrite.c: revision 1.66 sys/netinet/tcp_output.c: revision 1.179 sys/compat/svr4/svr4_termios.c: revision 1.28 sys/fs/udf/udf_strat_bootstrap.c: revision 1.4 sys/fs/puffs/puffs_subr.c: revision 1.67 sys/fs/puffs/puffs_node.c: revision 1.36 sys/miscfs/overlay/overlay_vnops.c: revision 1.21 sys/fs/cd9660/cd9660_node.c: revision 1.34 sys/netinet/raw_ip.c: revision 1.146 sys/sys/mallocvar.h: revision 1.13 sys/miscfs/overlay/overlay_vfsops.c: revision 1.63 share/man/man9/malloc.9: revision 1.50 sys/netinet6/dest6.c: revision 1.18 sys/compat/linux/common/linux_uselib.c: revision 1.33 sys/compat/linux/common/linux_socket.c: revision 1.120 share/man/man9/malloc.9: revision 1.51 sys/netinet/tcp_subr.c: revision 1.257 sys/compat/linux/common/linux_socketcall.c: revision 1.45 sys/compat/linux/common/linux_fadvise64_64.c: revision 1.3 sys/compat/freebsd/freebsd_ipc.c: revision 1.17 sys/compat/linux/common/linux_misc_notalpha.c: revision 1.109 sys/compat/linux/arch/alpha/linux_pipe.c: revision 1.17 sys/netinet6/in6_pcb.c: revision 1.132 sys/netinet6/in6_ifattach.c: revision 1.94 sys/compat/svr4/svr4_exec_elf32.c: revision 1.15 sys/miscfs/nullfs/null_vfsops.c: revision 1.90 sys/fs/cd9660/cd9660_util.c: revision 1.12 sys/compat/linux/arch/powerpc/linux_machdep.c: revision 1.48 sys/compat/freebsd/freebsd_exec_elf32.c: revision 1.20 sys/miscfs/procfs/procfs_vfsops.c: revision 1.94 sys/compat/linux/arch/powerpc/linux_ptrace.c: revision 1.28 sys/compat/linux/common/linux_sched.c: revision 1.67 sys/compat/linux/common/linux_exec_aout.c: revision 1.67 sys/compat/linux/common/linux_pipe.c: revision 1.67 sys/compat/linux/common/linux_llseek.c: revision 1.34 sys/compat/linux/arch/mips/linux_ptrace.c: revision 1.10 Do not uselessly include <sys/malloc.h>. Cleanup: - remove struct kmembuckets (dead) - correctly deadify MALLOC_XX - remove MALLOC_DEFINE_LIMIT and MALLOC_JUSTDEFINE_LIMIT (dead) - remove malloc_roundup(), malloc_type_setlimit(), MALLOC_DEFINE_LIMIT() and MALLOC_JUSTDEFINE_LIMIT() from man 9 malloc New sentence, new line. Bump date for previous. Obsolete malloc_roundup(9), malloc_type_setlimit(9) and MALLOC_DEFINE_LIMIT(9) man pages.
|
1.57.6.1 | 21-Apr-2017 |
bouyer | Sync with HEAD
|
1.57.4.2 | 26-Apr-2017 |
pgoyette | Sync with HEAD
|
1.57.4.1 | 20-Mar-2017 |
pgoyette | Sync with HEAD
|
1.57.2.2 | 28-Aug-2017 |
skrll | Sync with HEAD
|
1.57.2.1 | 05-Feb-2017 |
skrll | Sync with HEAD
|
1.59.6.1 | 04-Jun-2017 |
bouyer | pullup the following revisions, requested by hannken in ticket #2: src/share/man/man9/fstrans.9 1.25 src/sys/kern/vfs_mount.c 1.66 src/sys/kern/vfs_subr.c 1.468 src/sys/kern/vfs_trans.c 1.46 src/sys/kern/vfs_vnode.c 1.94, 1.95, 1.96 src/sys/kern/vnode_if.c 1.105, 1.106 src/sys/kern/vnode_if.sh 1.65, 1.66 src/sys/kern/vnode_if.src 1.76 src/sys/miscfs/genfs/genfs_io.c 1.69 src/sys/miscfs/genfs/genfs_vnops.c 1.196, 1.197 src/sys/miscfs/genfs/layer_extern.h 1.40 src/sys/miscfs/genfs/layer_vfsops.c 1.51 src/sys/miscfs/genfs/layer_vnops.c 1.67 src/sys/miscfs/nullfs/null_vnops.c 1.42 src/sys/miscfs/overlay/overlay_vnops.c 1.24 src/sys/miscfs/umapfs/umap_vnops.c 1.60 src/sys/rump/include/rump/rumpvnode_if.h 1.29, 1.30 src/sys/rump/librump/rumpkern/emul.c 1.182 src/sys/rump/librump/rumpvfs/rumpvnode_if.c 1.29, 1.30 src/sys/sys/fstrans.h 1.11 src/sys/sys/vnode.h 1.278 src/sys/sys/vnode_if.h 1.100, 1.101 src/sys/sys/vnode_impl.h 1.14, 1.15 src/sys/ufs/lfs/lfs_pages.c 1.12
Vnode state, lock and fstrans cleanup: - Rename vnode state "VS_ACTIVE" to "VS_LOADED" and add synthetic state "VS_ACTIVE" to assert a loaded vnode with usecount > 0.
- Redo FSTRANS in vnode_if.c and use it for VOP_LOCK and VOP_UNLOCK.
- Cleanup the genfs lock operations.
- Make "struct vnode_impl" member "vi_lock" a krwlock_t again.
- Remove the lock type argument from fstrans_start and fstrans_start_nowait, remove now unused FSTRANS state "FSTRANS_SUSPENDING".
|