Commit Graph

88 Commits

Author SHA1 Message Date
hannken 49511bba25 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@.
2011-07-11 08:27:37 +00:00
manu be95d60797 Add a flag to VOP_LISTEXTATTR(9) so that the vnode interface can tell the
filesystem in which format extended attribute shall be listed.

There are currently two formats:
- NUL-terminated strings, used for listxattr(2), this is the default.
- one byte length-pprefixed, non NUL-terminated strings, used for
  extattr_list_file(2), which is obtanined by setting the
  EXTATTR_LIST_PREFIXLEN flag to VOP_LISTEXTATTR(9)

This approach avoid the need for converting the list back and forth, except
in libperfuse, since FUSE uses NUL-terminated strings, and the kernel may
have requested EXTATTR_LIST_PREFIXLEN.
2011-07-04 08:07:29 +00:00
bouyer 063f96f3c2 merge the bouyer-quota2 branch. This adds a new on-disk format
to store disk quota usage and limits, integrated with ffs
metadata. Usage is checked by fsck_ffs (no more quotacheck)
and is covered by the WAPBL journal. Enabled with kernel
option QUOTA2 (added where QUOTA was enabled in kernel config files),
turned on with tunefs(8) on a per-filesystem
basis. mount_mfs(8) can also turn quotas on.

See http://mail-index.netbsd.org/tech-kern/2011/02/19/msg010025.html
for details.
2011-03-06 17:08:10 +00:00
hannken 1423e65b26 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.
2010-06-24 12:58:48 +00:00
pooka 00dd646066 regen: rump vnodeif went on a diet 2010-04-14 14:00:04 +00:00
pooka 592f1701c5 regenefactor for comment and whitespace changes 2010-04-14 12:21:04 +00:00
pooka cfff0936d1 regen: remove unused vdesc_transports 2010-04-10 19:44:02 +00:00
pooka 8de13bd4c6 regen: remove VNODE_LOCKDEBUG 2009-09-29 11:54:52 +00:00
pooka fa86dc99d5 reregen to get those most important rcsids right 2008-11-17 08:59:33 +00:00
pooka 8299c3166a regen 2008-11-17 08:56:02 +00:00
simonb 2a3d67b697 Remove needless white-space change that crept in through wapbl branch
merge.
2008-07-31 08:42:01 +00:00
simonb 36d65f1138 Merge the simonb-wapbl branch. From the original branch commit:
Add Wasabi System's WAPBL (Write Ahead Physical Block Logging)
   journaling code.  Originally written by Darrin B. Jewell while
   at Wasabi and updated to -current by Antti Kantee, Andy Doran,
   Greg Oster and Simon Burge.

OK'd by core@, releng@.
2008-07-31 05:38:04 +00:00
ad dcc13a2839 Regen. 2008-01-25 14:32:46 +00:00
ad e871738d3d Regen. 2008-01-02 11:51:15 +00:00
pooka 0aea761bea regen: remove struct lwp as a parameter to VOPs 2007-11-26 19:03:30 +00:00
pooka 61e8303e9d 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
2007-11-26 19:01:26 +00:00
ad b7235be3f9 Regen. 2007-11-06 22:00:00 +00:00
ad 7dad9f7391 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.
2007-10-10 20:42:20 +00:00
pooka 90f58074b5 regen: VOP_MMAP fflags -> prot 2007-07-27 08:27:38 +00:00
pooka 4aa4a0d0ae regen: assert that vnode creating operations set the size 2007-07-22 21:27:49 +00:00
gdt c2f4bcfa32 regen
(changes in RCS Ids only)
2007-04-09 15:00:42 +00:00
pooka 24f932e907 regen for VOP_FOO_DESCOFFSET change in vnode_if.sh 2006-11-30 21:07:36 +00:00
martin a3b5baed42 Fix alignement problems for fhandle_t, exposed by gcc4.1.
While touching all vptofh/fhtovp functions, get rid of VFS_MAXFIDSIZ,
version the getfh(2) syscall and explicitly pass the size available in
the filehandle from userland.

Discussed on tech-kern, with lots of help from yamt (thanks!).
2006-07-13 12:00:24 +00:00
elad 215bd95ba4 integrate kauth. 2006-05-14 21:15:11 +00:00
perseant 86f30eea43 Regen after making VOP_FCNTL take an unlocked vnode. 2006-05-04 16:49:54 +00:00
yamt 98f56ad82e regen. 2005-12-30 11:19:26 +00:00
skrll c9e1574d35 Get correct Ids after ktrace-lwp merge. 2005-12-11 13:02:20 +00:00
christos 95e1ffb156 merge ktrace-lwp. 2005-12-11 12:16:03 +00:00
thorpej 6d942b5afc Regen: Generate ANSI function decls. 2005-12-07 00:46:23 +00:00
thorpej 3b7f7cc748 Regen: VNODE_OP_NOINLINE is gone. 2005-12-07 00:42:26 +00:00
yamt d3bf8145af regen to revert the previous. 2005-11-29 23:02:22 +00:00
yamt 221616873d merge yamt-readahead branch. 2005-11-29 22:52:02 +00:00
yamt f3602c2466 regen. 2005-11-02 12:41:50 +00:00
yamt a748ea88dd merge yamt-vop branch. remove following VOPs.
VOP_BLKATOFF
	VOP_VALLOC
	VOP_BALLOC
	VOP_REALLOCBLKS
	VOP_VFREE
	VOP_TRUNCATE
	VOP_UPDATE
2005-11-02 12:38:58 +00:00
isaki a658e0cd29 regen. 2005-10-08 06:15:30 +00:00
perry b244cb9316 regen 2005-02-26 22:15:10 +00:00
perry ba7c4ed2a6 regen 2005-02-26 22:10:31 +00:00
thorpej aee687701e Regen for extended attribute VOPs. 2005-01-02 17:46:41 +00:00
thorpej d01a5a57e8 Regenerate for VNODE_LOCKDEBUG changes. 2004-09-21 03:11:53 +00:00
yamt 6a2c652541 regen. 2004-09-10 09:38:17 +00:00
yamt a08da7645d regen. 2004-05-27 12:50:35 +00:00
hannken 3db4e2acd8 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.
2004-01-25 18:06:48 +00:00
hannken d7f6cbf8bc Make VOP_STRATEGY(bp) a real VOP as discussed on tech-kern. 2004-01-25 18:02:04 +00:00
agc aad01611e7 Move UCB-licensed code from 4-clause to 3-clause licence.
Patches provided by Joel Baker in PR 22364, verified by myself.
2003-08-07 16:26:28 +00:00
fvdl d5aece61d6 Back out the lwp/ktrace changes. They contained a lot of colateral damage,
and need to be examined and discussed more.
2003-06-29 22:28:00 +00:00
darrenr 960df3c8d1 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
2003-06-28 14:20:43 +00:00
jdolecek c157f669ac regen:
'tvp' in vop_rename needs to be vput(), not vrele()d, so adjust the
definition here to match current reality
okayed by Bill Studenmund
2003-04-10 20:38:12 +00:00
dsl bd99e3429d Use 'void *' instead of 'caddr_t' in prototypes of VOP_IOCTL, VOP_FCNTL
and VOP_ADVLOCK, delete casts from callers (and some to copyin/out).
2003-03-21 23:11:19 +00:00
jdolecek 25cfe9dabd regen: kqueue branch merge, addition of VOP_KQFILTER() 2002-10-23 09:16:46 +00:00
lukem 6e69bda797 regen (for RCSID) 2001-11-12 14:50:28 +00:00