summaryrefslogtreecommitdiffstats
path: root/sys/kern/vfs_init.c (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Move extern declarations of vfsops variables into header file.bluhm2019-12-261-42/+1
| | | | OK visa@
* Restrict which filesystems are available for swap. This rules outvisa2019-04-021-5/+5
| | | | | | obvious misconfigurations that cannot work. OK mpi@ tedu@
* Simplify VFS initialization.visa2018-09-171-34/+29
| | | | | | | | | | Because loadable kernel modules are no longer, there is no need to register or unregister filesystem implementations at runtime. Remove vfs_register() and vfs_unregister(), and make vfsinit() call vfs_init routines directly. Replace the linked list of vfsconf structs with the vfsconflist[] array. OK mpi@ bluhm@
* Move vfsconf lookup code into dedicated functions.visa2018-09-161-1/+26
| | | | OK bluhm@
* In uvm Chuck decided backing store would not be allocated proactivelyderaadt2017-12-111-11/+21
| | | | | | | | | | | | | | | | | | | | | | for blocks re-fetchable from the filesystem. However at reboot time, filesystems are unmounted, and since processes lack backing store they are killed. Since the scheduler is still running, in some cases init is killed... which drops us to ddb [noted by bluhm]. Solution is to convert filesystems to read-only [proposed by kettenis]. The tale follows: sys_reboot() should pass proc * to MD boot() to vfs_shutdown() which completes current IO with vfs_busy VB_WRITE|VB_WAIT, then calls VFS_MOUNT() with MNT_UPDATE | MNT_RDONLY, soon teaching us that *fs_mount() calls a copyin() late... so store the sizes in vfsconflist[] and move the copyin() to sys_mount()... and notice nfs_mount copyin() is size-variant, so kill legacy struct nfs_args3. Next we learn ffs_mount()'s MNT_UPDATE code is sharp and rusty especially wrt softdep, so fix some bugs adn add ~MNT_SOFTDEP to the downgrade. Some vnodes need a little more help, so tie them to &dead_vnops. ffs_mount calling DIOCCACHESYNC is causing a bit of grief still but this issue is seperate and will be dealt with in time. couple hundred reboots by bluhm and myself, advice from guenther and others at the hut
* all pools have their ipl set via pool_setipl, so fold it into pool_init.dlg2016-09-151-3/+3
| | | | | | | | | | | | | | | | | | | | | | the ioff argument to pool_init() is unused and has been for many years, so this replaces it with an ipl argument. because the ipl will be set on init we no longer need pool_setipl. most of these changes have been done with coccinelle using the spatch below. cocci sucks at formatting code though, so i fixed that by hand. the manpage and subr_pool.c bits i did myself. ok tedu@ jmatthew@ @ipl@ expression pp; expression ipl; expression s, a, o, f, m, p; @@ -pool_init(pp, s, a, o, f, m, p); -pool_setipl(pp, ipl); +pool_init(pp, s, a, ipl, f, m, p);
* pool_setipldlg2016-08-251-1/+2
| | | | ok kettenis@
* Remove some includes include-what-you-use claims don'tjsg2015-03-141-2/+1
| | | | | | | have any direct symbols used. Tested for indirect use by compiling amd64/i386/sparc64 kernels. ok tedu@ deraadt@
* start retiring the nointr allocator. specify PR_WAITOK as a flag as atedu2014-12-191-3/+2
| | | | marker for which pools are not interrupt safe. ok dlg
* Delete procfs; it's always had races and is now unused: no one noticed forguenther2014-09-081-9/+1
| | | | | | months that I broke it before the 5.5 release. confirmed as not being required by ports by sthen@, ajacoutot@, dcoppa@
* a bit more tmpfs scaffolding (still not active, no kernel change)espie2013-09-241-1/+9
| | | | | | | | | reduces the actual diff needed, and allows one to build mount_tmpfs without reinstalling the includes. (still awaiting review on the uvm bits) okay krw@, tedu@
* changes for isc fuse support. not enabled. ok beck deraadt.tedu2013-06-031-1/+9
| | | | from Sylvestre Gallon ccna.syl gmail.com
* no need for vnode.h to include namei.h unconditionallytedu2013-03-281-1/+2
| | | | ok deraadt guenther
* kill nnpfs deadderaadt2012-08-231-9/+1
|
* merge vfs_conf.c and vfs_init.c and retire vfs_conf.c;thib2011-04-071-9/+97
| | | | | | | The contents belong togather a long with other crud, that should get moved at some point. ok deraadt@, miod@
* Bring back the "End the VOP experiment." diff, naddy's issues wherethib2010-12-211-153/+5
| | | | | | unrelated, and his alpha is much happier now. OK deraadt@
* Backout the VOP diff until the issues naddy was seeing on alpha (gcc3)thib2010-09-101-5/+153
| | | | have been resolved.
* End the VOP experiment. Instead of the ridicolusly complicated operationthib2010-09-061-153/+5
| | | | | | | | | | | | | | | | | | | vector setup that has questionable features (that have, as far as I can tell never been used in practice, atleast not in OpenBSD), remove all the gunk and favor a simple struct full of function pointers that get set directly by each of the filesystems. Removes gobs of ugly code and makes things simpler by a magnitude. The only downside of this is that we loose the vnoperate feature so the spec/fifo operations of the filesystems need to be kept in sync with specfs and fifofs, this is no big deal as the API it self is pretty static. Many thanks to armani@ who pulled an earlier version of this diff to current after c2k10 and Gabriel Kihlman on tech@ for testing. Liked by many. "come on, find your balls" deraadt@.
* fix typos in comments, no code changes;schwarze2010-01-141-3/+3
| | | | | from Brad Tilley <brad at 16systems dot com>; ok oga@
* correct test when checking the default operation entry.fgsch2009-01-141-2/+2
| | | | from patrick keshishian <sidster at boxsoft dot com>
* merge vfs_opv_init into vfs_op_init and remove the former,thib2008-05-161-26/+15
| | | | as they where called consecutively in vfs_init.
* remove some old debug cruft, make some comments nicerthib2008-05-161-20/+7
| | | | | | and shuffle declerations around. OK blambert@
* retire vn_default_error() and replace all instancesthib2008-05-081-13/+1
| | | | | | with eopnotsupp() instead; ok blambert@
* Use M_ZERO in a few more places to shave bytes from the kernel.art2007-09-071-3/+2
| | | | eyeballed and ok dlg@
* Nuke the predefined vattr, it was only used for !DIAGNOSTIC,thib2007-05-291-7/+1
| | | | | | | | this shrinks the i386 RAMDISK a bit. (Using the predefined vattr for GENERIC meant a growth of 416bytes without any measurable perfomance gain). ok krw@, art@
* Use ANSI-style function declarations, no binary change, okay jsg@pedro2005-11-061-11/+7
|
* use pool for namei pathbuf. testing ok millert@ tdeval@tedu2004-05-141-1/+7
|
* spelling in comment, jonathon graytedu2003-08-181-2/+2
|
* kill some externs that are not there anymore and had left other places for a better void ages agomickey2003-07-241-3/+1
|
* Remove the advertising clause in the UCB license which Berkeleymillert2003-06-021-6/+2
| | | | rescinded 22 July 1999. Proofed by myself and Theo.
* make it compile w/ debugging onmickey2002-05-201-2/+2
|
* First round of __P removal in sysmillert2002-03-141-4/+4
|
* KNFderaadt2001-06-221-4/+3
|
* replace MALLOC/FREE w/ malloc/free for non-constant-sized memory allocations; art@ okmickey2000-09-271-3/+3
|
* use vfs_register instead of the ugly hack to build vfsconfart1999-02-191-13/+15
|
* Please GCC 2.8's harsher view of good styleniklas1998-02-201-2/+2
|
* Updates for VFS Lite 2 + soft update.csapuntz1997-11-061-7/+14
|
* back out vfs lite2 till after 2.2deraadt1997-10-061-14/+7
|
* VFS Lite2 Changescsapuntz1997-10-061-7/+14
|
* OpenBSD tagsniklas1997-02-241-0/+1
|
* export vfs_opv_init*mickey1996-11-111-5/+0
|
* From NetBSD: Merge with NetBSD 960217niklas1996-02-291-7/+14
|
* initial import of NetBSD treederaadt1995-10-181-0/+267