sys: Remove $FreeBSD$: one-line .c patternRemove /^[\s*]*__FBSDID\("\$FreeBSD\$"\);?\s*\n/
sys: Remove $FreeBSD$: two-line .c patternRemove /^#include\s+<sys/cdefs.h>.*$\n\s+__FBSDID\("\$FreeBSD\$"\);\n/
sys: Remove $FreeBSD$: two-line .h patternRemove /^\s*\*\n \*\s+\$FreeBSD\$$\n/
spdx: The BSD-2-Clause-FreeBSD identifier is obsolete, drop -FreeBSDThe SPDX folks have obsoleted the BSD-2-Clause-FreeBSD identifier. Catchup to that fact and revert to their recommended match of
spdx: The BSD-2-Clause-FreeBSD identifier is obsolete, drop -FreeBSDThe SPDX folks have obsoleted the BSD-2-Clause-FreeBSD identifier. Catchup to that fact and revert to their recommended match of BSD-2-Clause.Discussed with: pfgMFC After: 3 daysSponsored by: Netflix
show more ...
vfs: add the concept of vnode state transitionsTo quote from a comment above vput_final:<quote>* XXX Some filesystems pass in an exclusively locked vnode and strongly depend* on the lock being h
vfs: add the concept of vnode state transitionsTo quote from a comment above vput_final:<quote>* XXX Some filesystems pass in an exclusively locked vnode and strongly depend* on the lock being held all the way until VOP_INACTIVE. This in particular* happens with UFS which adds half-constructed vnodes to the hash, where they* can be found by other code.</quote>As is there is no mechanism which allows filesystems to denote that avnode is fully initialized, consequently problems like the above areonly found the hard way(tm).Add rudimentary support for state transitions, which in particular allowto assert the vnode is not legally unlocked until its fate is decided(either construction finishes or vgone is called to abort it).The new field lands in a 1-byte hole, thus it does not grow the struct.Bump __FreeBSD_version to 1400077Reviewed by: kib (previous version)Tested by: phoDifferential Revision: https://reviews.freebsd.org/D37759
autofs: whack an always-false branch
vfs: remove cn_threadIt is always curthread.Reviewed by: kibDifferential Revision: https://reviews.freebsd.org/D32453
Ensure that dirent's d_off field is initializedWe have the d_off field in struct dirent for providing the seek offsetof the next directory entry. Several filesystems were not initializingthe fie
Ensure that dirent's d_off field is initializedWe have the d_off field in struct dirent for providing the seek offsetof the next directory entry. Several filesystems were not initializingthe field, which ends up being copied out to userland.Reported by: Syed Faraz Abrar <[email protected]>Reviewed by: kibMFC after: 3 daysSponsored by: The FreeBSD FoundationDifferential Revision: https://reviews.freebsd.org/D27792
Drop "All rights reserved" from all my stuff. This includesFoundation copyrights, approved by emaste@. It does not includefiles which carry other people's copyrights; if you're oneof those peopl
Drop "All rights reserved" from all my stuff. This includesFoundation copyrights, approved by emaste@. It does not includefiles which carry other people's copyrights; if you're oneof those people, feel free to make similar change.Reviewed by: emaste, imp, gbe (manpages)Differential Revision: https://reviews.freebsd.org/D26980
fs: clean up empty lines in .c and .h files
vfs: remove the thread argument from vgetIt was already asserted to be curthread.Semantic patch:@@expression arg1, arg2, arg3;@@- vget(arg1, arg2, arg3)+ vget(arg1, arg2)
Silence down a warning which should really be a debug message.MFC after: 2 weeksSponsored by: DARPA
Make autofs(5) timeout messages include affected process name and PID.MFC after: 2 weeksSponsored by: DARPA, AFRL
Mark more nodes as CTLFLAG_MPSAFE or CTLFLAG_NEEDGIANT (1 of many)r357614 added CTLFLAG_NEEDGIANT to make it easier to find nodes that arestill not MPSAFE (or already are but aren’t properly marke
Mark more nodes as CTLFLAG_MPSAFE or CTLFLAG_NEEDGIANT (1 of many)r357614 added CTLFLAG_NEEDGIANT to make it easier to find nodes that arestill not MPSAFE (or already are but aren’t properly marked). Use it inpreparation for a general review of all nodes.This is non-functional change that adds annotations to SYSCTL_NODE andSYSCTL_PROC nodes using one of the soon-to-be-required flags.Reviewed by: kib, traszApproved by: kib (mentor)Differential Revision: https://reviews.freebsd.org/D23640
vfs: drop the mostly unused flags argument from VOP_UNLOCKFilesystems which want to use it in limited capacity can employ theVOP_UNLOCK_FLAGS macro.Reviewed by: kib (previous version)Differenti
vfs: drop the mostly unused flags argument from VOP_UNLOCKFilesystems which want to use it in limited capacity can employ theVOP_UNLOCK_FLAGS macro.Reviewed by: kib (previous version)Differential Revision: https://reviews.freebsd.org/D21427
vfs: flatten vop vectorsThis eliminates the following loop from all VOP calls:while(vop != NULL && \ vop->vop_spare2 == NULL && vop->vop_bypass == NULL) vop = vop->vop_default;Revie
vfs: flatten vop vectorsThis eliminates the following loop from all VOP calls:while(vop != NULL && \ vop->vop_spare2 == NULL && vop->vop_bypass == NULL) vop = vop->vop_default;Reviewed by: jeffTesetd by: phoDifferential Revision: https://reviews.freebsd.org/D22738
vfs: introduce v_irflag and make v_type smallerThe current vnode layout is not smp-friendly by having frequently read dataavoidably sharing cachelines with very frequently modified fields. Inpart
vfs: introduce v_irflag and make v_type smallerThe current vnode layout is not smp-friendly by having frequently read dataavoidably sharing cachelines with very frequently modified fields. Inparticular v_iflag inspected for VI_DOOMED can be found in the same line withv_usecount. Instead make it available in the same cacheline as the v_op, v_dataand v_type which all get read all the time.v_type is avoidably 4 bytes while the necessary data will easily fit in 1.Shrinking it frees up 3 bytes, 2 of which get used here to introduce a newflag field with a new value: VIRF_DOOMED.Reviewed by: kib, jeffDifferential Revision: https://reviews.freebsd.org/D22715
Ensure that directory entry padding bytes are zeroed.Directory entries must be padded to maintain alignment; in manyfilesystems the padding was not initialized, resulting in stackmemory being cop
Ensure that directory entry padding bytes are zeroed.Directory entries must be padded to maintain alignment; in manyfilesystems the padding was not initialized, resulting in stackmemory being copied out to userspace. With the ino64 work thereare also some explicit pad fields in struct dirent. Add a subroutineto clear these bytes and use it in the in-tree filesystems. TheNFS client is omitted for now as it was fixed separately in r340787.Reported by: Thomas Barabosch, Fraunhofer FKIEReviewed by: kibMFC after: 3 daysSponsored by: The FreeBSD Foundation
Add SPDX tags to autofs(5).MFC after: 2 weeks
Renumber copyright clause 4Renumber cluase 4 to 3, per what everybody else did when BSD grantedthem permission to remove clause 3. My insistance on keeping the samenumbering for legal reasons is
Renumber copyright clause 4Renumber cluase 4 to 3, per what everybody else did when BSD grantedthem permission to remove clause 3. My insistance on keeping the samenumbering for legal reasons is too pedantic, so give up on that point.Submitted by: Jan Schaumann <[email protected]>Pull Request: https://github.com/freebsd/freebsd/pull/96
Remove spurious space.MFC after: 1 month
Value returned by taskqueue_enqueue_timeout(9) is not an error; don't treatit as such.MFC after: 1 month
Implement autofs_print(), for improved debugging experience.MFC after: 1 month
Remove write-only variable.MFC after: 1 month
Silence down the "insmntque() failed" autofs error; it happenson shutdown and is perfectly normal.MFC after: 1 monthSponsored by: The FreeBSD Foundation
123