The NetBSD Project

CVS log for src/sys/sys/vnode.h

[BACK] Up to [cvs.NetBSD.org] / src / sys / sys

Request diff between arbitrary revisions


Default branch: MAIN


Revision 1.304 / (download) - annotate - [select for diffs], Wed Oct 26 23:40:30 2022 UTC (16 months ago) by riastradh
Branch: MAIN
CVS Tags: thorpej-ifq-base, thorpej-ifq, thorpej-altq-separation-base, thorpej-altq-separation, netbsd-10-base, netbsd-10-0-RC4, netbsd-10-0-RC3, netbsd-10-0-RC2, netbsd-10-0-RC1, netbsd-10, HEAD
Changes since 1.303: +3 -1 lines
Diff to previous 1.303 (colored)

sys/vnode.h: New home for extern vfs_op_descs.

(Maybe this should be in a more kern-private header file -- it's used
only by vnode_if.c and vfs_init.c -- but this'll do for now.)

Revision 1.303 / (download) - annotate - [select for diffs], Fri Aug 5 05:20:39 2022 UTC (18 months, 3 weeks ago) by thorpej
Branch: MAIN
CVS Tags: bouyer-sunxi-drm-base, bouyer-sunxi-drm
Changes since 1.302: +14 -12 lines
Diff to previous 1.302 (colored)

In vcache_reclaim(), post NOTE_REVOKE immediately after changing the
vnode state to VS_RECLAIMING, before we actually call VOP_RECLAIM(),
which will release the reference on the lower node of a stacked FS
vnode, which is likely to free the upper node's v_klist backing store.

Acquire the vnode interlock when checking for kevent interest now,
because the vp->v_klist pointer is now volatile.

PR kern/56950

Revision 1.302 / (download) - annotate - [select for diffs], Mon Jul 18 04:30:30 2022 UTC (19 months, 1 week ago) by thorpej
Branch: MAIN
Changes since 1.301: +19 -5 lines
Diff to previous 1.301 (colored)

Make kqueue event status for vnodes shareable, and for stacked file systems
like nullfs, make the upper vnode share that status with the lower vnode.

And, lo, NetBSD 9.99.99.

Fixes PR kern/56713.

Revision 1.301 / (download) - annotate - [select for diffs], Fri Mar 25 08:56:36 2022 UTC (23 months ago) by hannken
Branch: MAIN
Changes since 1.300: +3 -3 lines
Diff to previous 1.300 (colored)

As VV_LOCKSWORK is gone remove LOCKSWORK from VNODE_FLAGBITS string.
Also convert illegal octal number 18 to 20.

Revision 1.300 / (download) - annotate - [select for diffs], Sat Mar 19 13:53:32 2022 UTC (23 months, 1 week ago) by hannken
Branch: MAIN
Changes since 1.299: +1 -19 lines
Diff to previous 1.299 (colored)

Remove now unused VV_LOCKSWORK, all file systems support locking.

Remove unused predicates vn_locked() and vn_anylocked().

Welcome to 9.99.95

Revision 1.299 / (download) - annotate - [select for diffs], Mon Jan 17 19:12:31 2022 UTC (2 years, 1 month ago) by christos
Branch: MAIN
Changes since 1.298: +1 -2 lines
Diff to previous 1.298 (colored)

There is no more vaccess(9)

Revision 1.298 / (download) - annotate - [select for diffs], Wed Oct 20 03:08:18 2021 UTC (2 years, 4 months ago) by thorpej
Branch: MAIN
Changes since 1.297: +24 -6 lines
Diff to previous 1.297 (colored)

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.

Revision 1.296.6.1 / (download) - annotate - [select for diffs], Sun Aug 1 22:42:44 2021 UTC (2 years, 6 months ago) by thorpej
Branch: thorpej-i2c-spi-conf
Changes since 1.296: +3 -2 lines
Diff to previous 1.296 (colored) next main 1.297 (colored)

Sync with HEAD.

Revision 1.297 / (download) - annotate - [select for diffs], Tue Jun 29 22:40:53 2021 UTC (2 years, 7 months ago) by dholland
Branch: MAIN
CVS Tags: thorpej-i2c-spi-conf2-base, thorpej-i2c-spi-conf2, thorpej-i2c-spi-conf-base, thorpej-futex2-base, thorpej-futex2, thorpej-cfargs2-base, thorpej-cfargs2
Changes since 1.296: +3 -2 lines
Diff to previous 1.296 (colored)

Add containment for the cloning devices hack in vn_open.

Cloning devices (and also things like /dev/stderr) work by allocating
a struct file, stuffing it in the file table (which is a layer
violation), stuffing the file descriptor number for it in a magic
field of struct lwp (which is gross), and then "failing" with one of
two magic errnos, EDUPFD or EMOVEFD.

Before this commit, all callers of vn_open in the kernel (there are
quite a few) were expected to check for these errors and handle the
situation. Needless to say, none of them except for open() itself did,
resulting in internal negative errnos being returned to userspace.

This hack is fairly deeply rooted and cannot be eliminated all at
once. This commit adds logic to handle the magic errnos inside
vn_open; now on success vn_open returns either a vnode or an integer
file descriptor, along with a flag that says whether the underlying
code requested EDUPFD or EMOVEFD. Callers not prepared to cope with
file descriptors can pass NULL for the extra return values, in which
case if a file descriptor would be produced vn_open fails with
EOPNOTSUPP.

Since I'm rearranging vn_open's signature anyway, stop exposing struct
nameidata. Instead, take three arguments: an optional vnode to use as
the starting point (like openat()), the path, and additional namei
flags to use, restricted to NOCHROOT and TRYEMULROOT. (Other namei
behavior, e.g. NOFOLLOW, can be requested via the open flags.)

This change requires a kernel bump. Ride the one an hour ago.
(That was supposed to be coordinated; did not intend to let an hour
slip by. My fault.)

Revision 1.296 / (download) - annotate - [select for diffs], Sat May 16 18:31:53 2020 UTC (3 years, 9 months ago) by christos
Branch: MAIN
CVS Tags: thorpej-futex-base, thorpej-futex, thorpej-cfargs-base, thorpej-cfargs, cjep_sun2x-base1, cjep_sun2x-base, cjep_sun2x, cjep_staticlib_x-base1, cjep_staticlib_x-base, cjep_staticlib_x
Branch point for: thorpej-i2c-spi-conf
Changes since 1.295: +68 -5 lines
Diff to previous 1.295 (colored)

Add ACL support for FFS. From FreeBSD.

Revision 1.280.2.4 / (download) - annotate - [select for diffs], Tue Apr 21 18:42:45 2020 UTC (3 years, 10 months ago) by martin
Branch: phil-wifi
Changes since 1.280.2.3: +2 -1 lines
Diff to previous 1.280.2.3 (colored) to branchpoint 1.280 (colored) next main 1.281 (colored)

Sync with HEAD

Revision 1.294.2.1 / (download) - annotate - [select for diffs], Mon Apr 20 11:29:13 2020 UTC (3 years, 10 months ago) by bouyer
Branch: bouyer-xenpvh
Changes since 1.294: +3 -2 lines
Diff to previous 1.294 (colored) next main 1.295 (colored)

Sync with HEAD

Revision 1.295 / (download) - annotate - [select for diffs], Mon Apr 13 19:23:20 2020 UTC (3 years, 10 months ago) by ad
Branch: MAIN
CVS Tags: phil-wifi-20200421, bouyer-xenpvh-base2, bouyer-xenpvh-base1
Changes since 1.294: +3 -2 lines
Diff to previous 1.294 (colored)

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.

Revision 1.280.2.3 / (download) - annotate - [select for diffs], Mon Apr 13 08:05:20 2020 UTC (3 years, 10 months ago) by martin
Branch: phil-wifi
Changes since 1.280.2.2: +6 -0 lines
Diff to previous 1.280.2.2 (colored) to branchpoint 1.280 (colored)

Mostly merge changes from HEAD upto 20200411

Revision 1.280.2.2 / (download) - annotate - [select for diffs], Wed Apr 8 14:09:03 2020 UTC (3 years, 10 months ago) by martin
Branch: phil-wifi
Changes since 1.280.2.1: +64 -67 lines
Diff to previous 1.280.2.1 (colored) to branchpoint 1.280 (colored)

Merge changes from current as of 20200406

Revision 1.294 / (download) - annotate - [select for diffs], Sun Mar 22 18:32:42 2020 UTC (3 years, 11 months ago) by ad
Branch: MAIN
CVS Tags: phil-wifi-20200411, phil-wifi-20200406, bouyer-xenpvh-base
Branch point for: bouyer-xenpvh
Changes since 1.293: +3 -2 lines
Diff to previous 1.293 (colored)

Process concurrent page faults on individual uvm_objects / vm_amaps in
parallel, where the relevant pages are already in-core.  Proposed on
tech-kern.

Temporarily disabled on MP architectures with __HAVE_UNLOCKED_PMAP until
adjustments are made to their pmaps.

Revision 1.293 / (download) - annotate - [select for diffs], Sat Mar 14 20:45:23 2020 UTC (3 years, 11 months ago) by ad
Branch: MAIN
Changes since 1.292: +3 -4 lines
Diff to previous 1.292 (colored)

Make uvm_pagemarkdirty() responsible for putting vnodes onto the syncer
work list.  Proposed on tech-kern@.

Revision 1.292 / (download) - annotate - [select for diffs], Thu Mar 5 15:18:55 2020 UTC (3 years, 11 months ago) by riastradh
Branch: MAIN
Changes since 1.291: +1 -5 lines
Diff to previous 1.291 (colored)

Revert "Include opt_diagnostic.h for DIAGNOSTIC."

This did not do what I thought it did.  opt_diagnostic.h is only for
the unused _DIAGNOSTIC, which seems like an abortive attempt to
incrementally convert DIAGNOSTIC to an opt_*.h option rather than a
command-line option.

Revision 1.291 / (download) - annotate - [select for diffs], Thu Mar 5 08:08:33 2020 UTC (3 years, 11 months ago) by riastradh
Branch: MAIN
Changes since 1.290: +5 -1 lines
Diff to previous 1.290 (colored)

Include opt_diagnostic.h for DIAGNOSTIC.

...at least, in header files, which may not have already included
libkern.h.

Revision 1.286.2.3 / (download) - annotate - [select for diffs], Sat Feb 29 20:21:10 2020 UTC (3 years, 11 months ago) by ad
Branch: ad-namecache
Changes since 1.286.2.2: +38 -32 lines
Diff to previous 1.286.2.2 (colored) to branchpoint 1.286 (colored) next main 1.287 (colored)

Sync with head.

Revision 1.290 / (download) - annotate - [select for diffs], Thu Feb 27 22:12:54 2020 UTC (3 years, 11 months ago) by ad
Branch: MAIN
CVS Tags: is-mlppp-base, is-mlppp, ad-namecache-base3
Changes since 1.289: +2 -1 lines
Diff to previous 1.289 (colored)

Tighten up the locking around vp->v_iflag a little more after the recent
split of vmobjlock & v_interlock.

Revision 1.289 / (download) - annotate - [select for diffs], Sun Feb 23 22:14:04 2020 UTC (4 years ago) by ad
Branch: MAIN
Changes since 1.288: +24 -35 lines
Diff to previous 1.288 (colored)

Merge from ad-namecache:

- Have a stab at clustering the members of vnode_t and vnode_impl_t in a
  more cache-conscious way.  With that done, go back to adjusting v_usecount
  with atomics and keep vi_lock directly in vnode_impl_t (saves KVA).

- Allow VOP_LOCK(LK_NONE) for the benefit of VFS_VGET() and VFS_ROOT().
  Make sure LK_UPGRADE always comes with LK_NOWAIT.

- Make cwdinfo use mostly lockless.

Revision 1.288 / (download) - annotate - [select for diffs], Sun Feb 23 15:46:42 2020 UTC (4 years ago) by ad
Branch: MAIN
Changes since 1.287: +37 -32 lines
Diff to previous 1.287 (colored)

UVM locking changes, proposed on tech-kern:

- Change the lock on uvm_object, vm_amap and vm_anon to be a RW lock.
- Break v_interlock and vmobjlock apart.  v_interlock remains a mutex.
- Do partial PV list locking in the x86 pmap.  Others to follow later.

Revision 1.286.2.2 / (download) - annotate - [select for diffs], Sat Jan 25 22:38:53 2020 UTC (4 years, 1 month ago) by ad
Branch: ad-namecache
Changes since 1.286.2.1: +3 -1 lines
Diff to previous 1.286.2.1 (colored) to branchpoint 1.286 (colored)

Sync with head.

Revision 1.286.2.1 / (download) - annotate - [select for diffs], Fri Jan 24 16:05:23 2020 UTC (4 years, 1 month ago) by ad
Branch: ad-namecache
Changes since 1.286: +22 -33 lines
Diff to previous 1.286 (colored)

vnodes:

- Have own v_usecount again, don't share the uvm_object's refcount.
- Cluster the members of vnode_t and vnode_impl_t in a cache-concious way.
- Go back to having vi_lock directly in vnode_impl_t.
- Go back to having v_usecount adjusted with atomics.
- Start adjusting v_holdcnt with atomics, too.
- Put all the namecache stuff back into vnode_impl_t.

Revision 1.287 / (download) - annotate - [select for diffs], Thu Jan 23 10:21:14 2020 UTC (4 years, 1 month ago) by ad
Branch: MAIN
CVS Tags: ad-namecache-base2
Changes since 1.286: +3 -1 lines
Diff to previous 1.286 (colored)

PAX_SEGVGUARD doesn't seem to work properly in testing for me, but at least
make it not cause problems:

- Cover it with exec_lock so the updates are not racy.
- Using fileassoc is silly.  Just hang a pointer off the vnode.

Revision 1.286 / (download) - annotate - [select for diffs], Sun Dec 22 19:47:34 2019 UTC (4 years, 2 months ago) by ad
Branch: MAIN
CVS Tags: ad-namecache-base1, ad-namecache-base
Branch point for: ad-namecache
Changes since 1.285: +1 -6 lines
Diff to previous 1.285 (colored)

Make mntvnode_lock per-mount, and address false sharing of struct mount.

Revision 1.285 / (download) - annotate - [select for diffs], Sun Dec 15 21:56:13 2019 UTC (4 years, 2 months ago) by ad
Branch: MAIN
Changes since 1.284: +3 -1 lines
Diff to previous 1.284 (colored)

Add missing proto for vfs_mount_print_all().

Revision 1.284 / (download) - annotate - [select for diffs], Sun Dec 1 13:56:29 2019 UTC (4 years, 2 months ago) by ad
Branch: MAIN
Changes since 1.283: +6 -3 lines
Diff to previous 1.283 (colored)

Minor vnode locking changes:

- Stop using atomics to maniupulate v_usecount.  It was a mistake to begin
  with.  It doesn't work as intended unless the XLOCK bit is incorporated in
  v_usecount and we don't have that any more.  When I introduced this 10+
  years ago it was to reduce pressure on v_interlock but it doesn't do that,
  it just makes stuff disappear from lockstat output and introduces problems
  elsewhere.  We could do atomic usecounts on vnodes but there has to be a
  well thought out scheme.

- Resurrect LK_UPGRADE/LK_DOWNGRADE which will be needed to work effectively
  when there is increased use of shared locks on vnodes.

- Allocate the vnode lock using rw_obj_alloc() to reduce false sharing of
  struct vnode.

- Put all of the LRU lists into a single cache line, and do not requeue a
  vnode if it's already on the correct list and was requeued recently (less
  than a second ago).

Kernel build before and after:

119.63s real  1453.16s user  2742.57s system
115.29s real  1401.52s user  2690.94s system

Revision 1.283 / (download) - annotate - [select for diffs], Sun Nov 10 06:47:30 2019 UTC (4 years, 3 months ago) by mlelstv
Branch: MAIN
CVS Tags: phil-wifi-20191119
Changes since 1.282: +5 -1 lines
Diff to previous 1.282 (colored)

Add functions to open devices by device number or path.

Revision 1.282 / (download) - annotate - [select for diffs], Thu Sep 26 20:57:19 2019 UTC (4 years, 5 months ago) by christos
Branch: MAIN
Changes since 1.281: +3 -1 lines
Diff to previous 1.281 (colored)

provide VNOVALSIZE and VNOVALFLAGS to avoid casting in source.

Revision 1.280.2.1 / (download) - annotate - [select for diffs], Mon Jun 10 22:09:57 2019 UTC (4 years, 8 months ago) by christos
Branch: phil-wifi
Changes since 1.280: +2 -2 lines
Diff to previous 1.280 (colored)

Sync with HEAD

Revision 1.279.2.2 / (download) - annotate - [select for diffs], Fri Jan 18 08:50:59 2019 UTC (5 years, 1 month ago) by pgoyette
Branch: pgoyette-compat
CVS Tags: pgoyette-compat-merge-20190127
Changes since 1.279.2.1: +2 -2 lines
Diff to previous 1.279.2.1 (colored) to branchpoint 1.279 (colored) next main 1.280 (colored)

Synch with HEAD

Revision 1.281 / (download) - annotate - [select for diffs], Tue Jan 1 10:06:54 2019 UTC (5 years, 1 month ago) by hannken
Branch: MAIN
CVS Tags: phil-wifi-20190609, pgoyette-compat-20190127, pgoyette-compat-20190118, netbsd-9-base, netbsd-9-3-RELEASE, netbsd-9-2-RELEASE, netbsd-9-1-RELEASE, netbsd-9-0-RELEASE, netbsd-9-0-RC2, netbsd-9-0-RC1, netbsd-9, isaki-audio2-base, isaki-audio2
Changes since 1.280: +2 -2 lines
Diff to previous 1.280 (colored)

Add "void *extra" argument to vcache_new() so a file system may
pass more information about the file to create.

Welcome to 8.99.30

Revision 1.279.2.1 / (download) - annotate - [select for diffs], Sun Apr 22 07:20:29 2018 UTC (5 years, 10 months ago) by pgoyette
Branch: pgoyette-compat
Changes since 1.279: +3 -3 lines
Diff to previous 1.279 (colored)

Sync with HEAD

Revision 1.280 / (download) - annotate - [select for diffs], Thu Apr 19 21:19:07 2018 UTC (5 years, 10 months ago) by christos
Branch: MAIN
CVS Tags: phil-wifi-base, pgoyette-compat-1226, pgoyette-compat-1126, pgoyette-compat-1020, pgoyette-compat-0930, pgoyette-compat-0906, pgoyette-compat-0728, pgoyette-compat-0625, pgoyette-compat-0521, pgoyette-compat-0502, pgoyette-compat-0422
Branch point for: phil-wifi
Changes since 1.279: +3 -3 lines
Diff to previous 1.279 (colored)

s/static inline/static __inline/g for consistency with other include
headers.

Revision 1.279 / (download) - annotate - [select for diffs], Tue Jan 9 03:31:13 2018 UTC (6 years, 1 month ago) by christos
Branch: MAIN
CVS Tags: pgoyette-compat-base, pgoyette-compat-0415, pgoyette-compat-0407, pgoyette-compat-0330, pgoyette-compat-0322, pgoyette-compat-0315
Branch point for: pgoyette-compat
Changes since 1.278: +3 -3 lines
Diff to previous 1.278 (colored)

Merge autofs support from: Tomohiro Kusumi
XXX: Does not work yet

Revision 1.236.8.3 / (download) - annotate - [select for diffs], Sun Dec 3 11:39:21 2017 UTC (6 years, 2 months ago) by jdolecek
Branch: tls-maxphys
Changes since 1.236.8.2: +33 -53 lines
Diff to previous 1.236.8.2 (colored) to branchpoint 1.236 (colored) next main 1.237 (colored)

update from HEAD

Revision 1.249.4.10 / (download) - annotate - [select for diffs], Mon Aug 28 17:53:16 2017 UTC (6 years, 6 months ago) by skrll
Branch: nick-nhusb
Changes since 1.249.4.9: +19 -5 lines
Diff to previous 1.249.4.9 (colored) to branchpoint 1.249 (colored) next main 1.250 (colored)

Sync with HEAD

Revision 1.277.4.1 / (download) - annotate - [select for diffs], Sun Jun 4 20:35:01 2017 UTC (6 years, 8 months ago) by bouyer
Branch: netbsd-8
CVS Tags: netbsd-8-2-RELEASE, netbsd-8-1-RELEASE, netbsd-8-1-RC1, netbsd-8-0-RELEASE, netbsd-8-0-RC2, netbsd-8-0-RC1, matt-nb8-mediatek-base, matt-nb8-mediatek
Changes since 1.277: +1 -2 lines
Diff to previous 1.277 (colored) next main 1.278 (colored)

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".

Revision 1.278 / (download) - annotate - [select for diffs], Sun Jun 4 08:02:26 2017 UTC (6 years, 8 months ago) by hannken
Branch: MAIN
CVS Tags: tls-maxphys-base-20171202, perseant-stdc-iso10646-base, perseant-stdc-iso10646, nick-nhusb-base-20170825
Changes since 1.277: +1 -2 lines
Diff to previous 1.277 (colored)

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.

Revision 1.263.2.4 / (download) - annotate - [select for diffs], Wed Apr 26 02:53:31 2017 UTC (6 years, 10 months ago) by pgoyette
Branch: pgoyette-localcount
Changes since 1.263.2.3: +19 -5 lines
Diff to previous 1.263.2.3 (colored) to branchpoint 1.263 (colored) next main 1.264 (colored)

Sync with HEAD

Revision 1.273.2.1 / (download) - annotate - [select for diffs], Fri Apr 21 16:54:08 2017 UTC (6 years, 10 months ago) by bouyer
Branch: bouyer-socketcan
Changes since 1.273: +20 -5 lines
Diff to previous 1.273 (colored) next main 1.274 (colored)

Sync with HEAD

Revision 1.277 / (download) - annotate - [select for diffs], Tue Apr 11 14:29:32 2017 UTC (6 years, 10 months ago) by riastradh
Branch: MAIN
CVS Tags: prg-localcount2-base3, prg-localcount2-base2, prg-localcount2-base1, prg-localcount2-base, prg-localcount2, pgoyette-localcount-20170426, netbsd-8-base, bouyer-socketcan-base1
Branch point for: netbsd-8
Changes since 1.276: +1 -5 lines
Diff to previous 1.276 (colored)

Eliminate now-unused WILLUNLOCK vop flag.

Revision 1.276 / (download) - annotate - [select for diffs], Tue Apr 11 06:47:25 2017 UTC (6 years, 10 months ago) by riastradh
Branch: MAIN
Changes since 1.275: +18 -1 lines
Diff to previous 1.275 (colored)

New diagnostic functions vn_locked, vn_anylocked.

For use only within KASSERT.

vn_locked asserts exclusive lock, as most operations require.
vn_anylocked asserts exclusive or shared lock.

No effect unless VV_LOCKSWORK.  This will reduce the visual cost of
sprinkling lock ownership assertions throughout kern/vfs_*.

Revision 1.275 / (download) - annotate - [select for diffs], Thu Mar 30 09:16:53 2017 UTC (6 years, 10 months ago) by hannken
Branch: MAIN
CVS Tags: jdolecek-ncq-base, jdolecek-ncq
Changes since 1.274: +2 -1 lines
Diff to previous 1.274 (colored)

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

Revision 1.263.2.3 / (download) - annotate - [select for diffs], Mon Mar 20 06:57:53 2017 UTC (6 years, 11 months ago) by pgoyette
Branch: pgoyette-localcount
Changes since 1.263.2.2: +4 -11 lines
Diff to previous 1.263.2.2 (colored) to branchpoint 1.263 (colored)

Sync with HEAD

Revision 1.274 / (download) - annotate - [select for diffs], Fri Feb 17 08:30:00 2017 UTC (7 years ago) by hannken
Branch: MAIN
CVS Tags: pgoyette-localcount-20170320
Changes since 1.273: +2 -1 lines
Diff to previous 1.273 (colored)

Bring back vrele_flush() to flush deferred vrele() o an suspended file system.

Revision 1.249.4.9 / (download) - annotate - [select for diffs], Sun Feb 5 13:41:01 2017 UTC (7 years ago) by skrll
Branch: nick-nhusb
Changes since 1.249.4.8: +3 -18 lines
Diff to previous 1.249.4.8 (colored) to branchpoint 1.249 (colored)

Sync with HEAD

Revision 1.273 / (download) - annotate - [select for diffs], Wed Jan 11 12:17:34 2017 UTC (7 years, 1 month ago) by joerg
Branch: MAIN
CVS Tags: nick-nhusb-base-20170204, bouyer-socketcan-base
Branch point for: bouyer-socketcan
Changes since 1.272: +3 -1 lines
Diff to previous 1.272 (colored)

Add ddb command to find a vnode by the address of its lock.
This makes it much easier to convert lockstat traces into understandable
data.

Revision 1.272 / (download) - annotate - [select for diffs], Wed Jan 11 09:08:59 2017 UTC (7 years, 1 month ago) by hannken
Branch: MAIN
Changes since 1.271: +1 -2 lines
Diff to previous 1.271 (colored)

Move vnode member v_lock as vi_lock to vnode_impl.h.

Revision 1.271 / (download) - annotate - [select for diffs], Wed Jan 11 09:07:57 2017 UTC (7 years, 1 month ago) by hannken
Branch: MAIN
Changes since 1.270: +1 -3 lines
Diff to previous 1.270 (colored)

Move vnode member v_mntvnodes as vi_mntvnodes to vnode_impl.h.

Add an ugly hack so pstat.c may still traverse the list.

Revision 1.270 / (download) - annotate - [select for diffs], Wed Jan 11 09:06:57 2017 UTC (7 years, 1 month ago) by hannken
Branch: MAIN
Changes since 1.269: +1 -4 lines
Diff to previous 1.269 (colored)

Move vnode members v_synclist_slot and v_synclist as vi_synclist_slot and
vi_synclist to vnode_impl.h.

Revision 1.269 / (download) - annotate - [select for diffs], Wed Jan 11 09:04:37 2017 UTC (7 years, 1 month ago) by hannken
Branch: MAIN
Changes since 1.268: +1 -5 lines
Diff to previous 1.268 (colored)

Move vnode members v_dnclist and v_nclist as vi_dnclist and
vi_nclist to vnode_impl.h.

Revision 1.263.2.2 / (download) - annotate - [select for diffs], Sat Jan 7 08:56:53 2017 UTC (7 years, 1 month ago) by pgoyette
Branch: pgoyette-localcount
Changes since 1.263.2.1: +1 -8 lines
Diff to previous 1.263.2.1 (colored) to branchpoint 1.263 (colored)

Sync with HEAD.  (Note that most of these changes are simply $NetBSD$
tag issues.)

Revision 1.268 / (download) - annotate - [select for diffs], Mon Jan 2 10:33:28 2017 UTC (7 years, 1 month ago) by hannken
Branch: MAIN
CVS Tags: pgoyette-localcount-20170107
Changes since 1.267: +1 -2 lines
Diff to previous 1.267 (colored)

Rename vget() to vcache_vget() and vcache_tryvget() respectively and
move the definitions to sys/vnode_impl.h.

No functional change intended.

Welcome to 7.99.54

Revision 1.267 / (download) - annotate - [select for diffs], Wed Dec 14 15:48:55 2016 UTC (7 years, 2 months ago) by hannken
Branch: MAIN
Changes since 1.266: +1 -5 lines
Diff to previous 1.266 (colored)

Move vnode members "v_freelisthd" and "v_freelist" from "struct vnode"
to "struct vnode_impl" and rename to "vi_lrulisthd" and "vi_lrulist".

No functional change intended.

Welcome to 7.99.48

Revision 1.266 / (download) - annotate - [select for diffs], Wed Dec 14 15:46:57 2016 UTC (7 years, 2 months ago) by hannken
Branch: MAIN
Changes since 1.265: +1 -3 lines
Diff to previous 1.265 (colored)

Remove the "target" argment from vfs_drainvnodes() as it is
always equal to "desiredvnodes" and move its definition
from sys/vnode.h to sys/vnode_impl.h.

Extend vfs_drainvnodes() to also wait for deferred vrele to flush
and replace the call to vrele_flush() with a call to vfs_drainvnodes().

Revision 1.249.4.8 / (download) - annotate - [select for diffs], Mon Dec 5 10:55:30 2016 UTC (7 years, 2 months ago) by skrll
Branch: nick-nhusb
Changes since 1.249.4.7: +1 -13 lines
Diff to previous 1.249.4.7 (colored) to branchpoint 1.249 (colored)

Sync with HEAD

Revision 1.263.2.1 / (download) - annotate - [select for diffs], Fri Nov 4 14:49:22 2016 UTC (7 years, 3 months ago) by pgoyette
Branch: pgoyette-localcount
Changes since 1.263: +1 -13 lines
Diff to previous 1.263 (colored)

Sync with HEAD

Revision 1.265 / (download) - annotate - [select for diffs], Thu Nov 3 11:03:31 2016 UTC (7 years, 3 months ago) by hannken
Branch: MAIN
CVS Tags: pgoyette-localcount-20161104, nick-nhusb-base-20161204
Changes since 1.264: +1 -13 lines
Diff to previous 1.264 (colored)

Split sys/vnode.h into sys/vnode.h and sys/vnode_impl.h
- Move _VFS_VNODE_PRIVATE protected operations into vnode_impl.h.
- Move struct vnode_impl definition and operations into vnode_impl.h.
- Include vnode_impl.h where we include vnode.h with _VFS_VNODE_PRIVATE defined.
- Get rid of _VFS_VNODE_PRIVATE.

Revision 1.249.4.7 / (download) - annotate - [select for diffs], Wed Oct 5 20:56:11 2016 UTC (7 years, 4 months ago) by skrll
Branch: nick-nhusb
Changes since 1.249.4.6: +1 -2 lines
Diff to previous 1.249.4.6 (colored) to branchpoint 1.249 (colored)

Sync with HEAD

Revision 1.264 / (download) - annotate - [select for diffs], Sat Aug 20 12:37:09 2016 UTC (7 years, 6 months ago) by hannken
Branch: MAIN
CVS Tags: nick-nhusb-base-20161004, localcount-20160914
Changes since 1.263: +1 -2 lines
Diff to previous 1.263 (colored)

Remove now obsolete operation vcache_remove().

Welcome to 7.99.36

Revision 1.249.4.6 / (download) - annotate - [select for diffs], Sat Jul 9 20:25:24 2016 UTC (7 years, 7 months ago) by skrll
Branch: nick-nhusb
Changes since 1.249.4.5: +5 -5 lines
Diff to previous 1.249.4.5 (colored) to branchpoint 1.249 (colored)

Sync with HEAD

Revision 1.263 / (download) - annotate - [select for diffs], Fri Jun 3 15:15:49 2016 UTC (7 years, 8 months ago) by dholland
Branch: MAIN
CVS Tags: pgoyette-localcount-base, pgoyette-localcount-20160806, pgoyette-localcount-20160726, nick-nhusb-base-20160907
Branch point for: pgoyette-localcount
Changes since 1.262: +5 -5 lines
Diff to previous 1.262 (colored)

avoid "u_int"

Revision 1.249.4.5 / (download) - annotate - [select for diffs], Sun May 29 08:44:40 2016 UTC (7 years, 9 months ago) by skrll
Branch: nick-nhusb
Changes since 1.249.4.4: +14 -16 lines
Diff to previous 1.249.4.4 (colored) to branchpoint 1.249 (colored)

Sync with HEAD

Revision 1.262 / (download) - annotate - [select for diffs], Thu May 26 11:09:55 2016 UTC (7 years, 9 months ago) by hannken
Branch: MAIN
CVS Tags: nick-nhusb-base-20160529
Changes since 1.261: +2 -13 lines
Diff to previous 1.261 (colored)

Use vnode state to replace VI_MARKER, VI_CHANGING, VI_XLOCK and VI_CLEAN.

Presented on tech-kern@

Revision 1.261 / (download) - annotate - [select for diffs], Thu May 26 11:07:33 2016 UTC (7 years, 9 months ago) by hannken
Branch: MAIN
Changes since 1.260: +3 -1 lines
Diff to previous 1.260 (colored)

Merge the vnode and its corresponding vcache_node into one
vcache_node structure.

Print the vcache_node part in vprint() and vfs_vnode_print().

Presented on tech-kern@

Revision 1.260 / (download) - annotate - [select for diffs], Thu May 19 14:47:33 2016 UTC (7 years, 9 months ago) by hannken
Branch: MAIN
Changes since 1.259: +11 -4 lines
Diff to previous 1.259 (colored)

Add VFS_VNODE_PRIVATE protected operations vnalloc_marker() to create,
vnfree_marker() to destroy and vnis_marker() to test for marker vnodes.

Make operations vnalloc() and vnfree() local to vfs_vnode.c.

Revision 1.249.4.4 / (download) - annotate - [select for diffs], Sat Mar 19 11:30:39 2016 UTC (7 years, 11 months ago) by skrll
Branch: nick-nhusb
Changes since 1.249.4.3: +6 -1 lines
Diff to previous 1.249.4.3 (colored) to branchpoint 1.249 (colored)

Sync with HEAD

Revision 1.259 / (download) - annotate - [select for diffs], Sat Jan 23 16:08:20 2016 UTC (8 years, 1 month ago) by christos
Branch: MAIN
CVS Tags: nick-nhusb-base-20160422, nick-nhusb-base-20160319
Changes since 1.258: +2 -2 lines
Diff to previous 1.258 (colored)

allow uvm_param.h since it defines types...

Revision 1.258 / (download) - annotate - [select for diffs], Sat Jan 23 16:02:09 2016 UTC (8 years, 1 month ago) by christos
Branch: MAIN
Changes since 1.257: +5 -1 lines
Diff to previous 1.257 (colored)

protect more kernel stuff.

Revision 1.257 / (download) - annotate - [select for diffs], Fri Jan 22 22:43:25 2016 UTC (8 years, 1 month ago) by dholland
Branch: MAIN
Changes since 1.256: +2 -1 lines
Diff to previous 1.256 (colored)

Needs sys/time.h for struct timespec.

Revision 1.249.4.3 / (download) - annotate - [select for diffs], Tue Sep 22 12:06:17 2015 UTC (8 years, 5 months ago) by skrll
Branch: nick-nhusb
Changes since 1.249.4.2: +1 -4 lines
Diff to previous 1.249.4.2 (colored) to branchpoint 1.249 (colored)

Sync with HEAD

Revision 1.256 / (download) - annotate - [select for diffs], Sun Jul 12 08:11:28 2015 UTC (8 years, 7 months ago) by hannken
Branch: MAIN
CVS Tags: nick-nhusb-base-20151226, nick-nhusb-base-20150921
Changes since 1.255: +1 -4 lines
Diff to previous 1.255 (colored)

Operations getnewvnode() and ungetnewvnode() have been replaced with vcache.
- Remove now obsolete functions getnewvnode() and ungetnewvnode().
- Document vcache operations.

Welcome to 7.99.20

Revision 1.249.4.2 / (download) - annotate - [select for diffs], Sat Jun 6 14:40:30 2015 UTC (8 years, 8 months ago) by skrll
Branch: nick-nhusb
Changes since 1.249.4.1: +4 -12 lines
Diff to previous 1.249.4.1 (colored) to branchpoint 1.249 (colored)

Sync with HEAD

Revision 1.255 / (download) - annotate - [select for diffs], Wed May 6 15:57:08 2015 UTC (8 years, 9 months ago) by hannken
Branch: MAIN
CVS Tags: nick-nhusb-base-20150606
Changes since 1.254: +2 -1 lines
Diff to previous 1.254 (colored)

Remove miscfs/syncfs and

- move the syncer into kern/vfs_subr.c.

- change the syncer to process the mountlist and VFS_SYNC as appropriate.

- use an API for mount points similiar to the API for vnodes:
  - vfs_syncer_add_to_worklist(struct mount *mp) to add
  - vfs_syncer_remove_from_worklist(struct mount *mp) to remove a mount.

No objections on tech-kern@

Revision 1.254 / (download) - annotate - [select for diffs], Mon Apr 20 19:36:56 2015 UTC (8 years, 10 months ago) by riastradh
Branch: MAIN
Changes since 1.253: +2 -4 lines
Diff to previous 1.253 (colored)

Cull unused vnode v_iflags: VI_LAYER, VI_LOCKSHARE.

Revision 1.253 / (download) - annotate - [select for diffs], Mon Apr 20 13:49:02 2015 UTC (8 years, 10 months ago) by riastradh
Branch: MAIN
Changes since 1.252: +1 -2 lines
Diff to previous 1.252 (colored)

Remove declaration of speedup_syncer, removed back in 2011.

Revision 1.252 / (download) - annotate - [select for diffs], Mon Apr 20 13:44:16 2015 UTC (8 years, 10 months ago) by riastradh
Branch: MAIN
Changes since 1.251: +2 -2 lines
Diff to previous 1.251 (colored)

Make vget always return vnode unlocked.

Convert callers who want locks to use vn_lock afterward.

Add extra argument so the compiler will report stragglers.

Revision 1.251 / (download) - annotate - [select for diffs], Mon Apr 20 13:12:24 2015 UTC (8 years, 10 months ago) by riastradh
Branch: MAIN
Changes since 1.250: +1 -7 lines
Diff to previous 1.250 (colored)

Nix LEASE_READ/LEASE_WRITE from <sys/vnode.h>.

Revision 1.249.4.1 / (download) - annotate - [select for diffs], Mon Apr 6 15:18:32 2015 UTC (8 years, 10 months ago) by skrll
Branch: nick-nhusb
Changes since 1.249: +3 -1 lines
Diff to previous 1.249 (colored)

Sync with HEAD

Revision 1.250 / (download) - annotate - [select for diffs], Tue Mar 17 09:38:21 2015 UTC (8 years, 11 months ago) by hannken
Branch: MAIN
CVS Tags: nick-nhusb-base-20150406
Changes since 1.249: +3 -1 lines
Diff to previous 1.249 (colored)

Add new operation "vcache_new()" to allocate and initialise a new
vnode/fsnode pair:

int
vcache_new(struct mount *mp, struct vnode *dvp, struct vattr *vap,
    kauth_cred_t cred, struct vnode **vpp)

where dvp is the (referenced) directory where we want to create the
new node, vap passes va_type, va_mode and possibly va_rdev and cred
gives the credentials to setup uid/guid.

The node returned from vcache_new() is referenced, fully initialised
and has link count zero.

Welcome to NetBSD 7.99.7

Revision 1.236.8.2 / (download) - annotate - [select for diffs], Wed Aug 20 00:04:44 2014 UTC (9 years, 6 months ago) by tls
Branch: tls-maxphys
Changes since 1.236.8.1: +20 -30 lines
Diff to previous 1.236.8.1 (colored) to branchpoint 1.236 (colored)

Rebase to HEAD as of a few days ago.

Revision 1.246.2.1 / (download) - annotate - [select for diffs], Sun Aug 10 06:56:55 2014 UTC (9 years, 6 months ago) by tls
Branch: tls-earlyentropy
Changes since 1.246: +8 -2 lines
Diff to previous 1.246 (colored) next main 1.247 (colored)

Rebase.

Revision 1.249 / (download) - annotate - [select for diffs], Sat Jul 5 09:33:15 2014 UTC (9 years, 7 months ago) by hannken
Branch: MAIN
CVS Tags: tls-maxphys-base, tls-earlyentropy-base, nick-nhusb-base, netbsd-7-nhusb-base-20170116, netbsd-7-nhusb-base, netbsd-7-nhusb, netbsd-7-base, netbsd-7-2-RELEASE, netbsd-7-1-RELEASE, netbsd-7-1-RC2, netbsd-7-1-RC1, netbsd-7-1-2-RELEASE, netbsd-7-1-1-RELEASE, netbsd-7-1, netbsd-7-0-RELEASE, netbsd-7-0-RC3, netbsd-7-0-RC2, netbsd-7-0-RC1, netbsd-7-0-2-RELEASE, netbsd-7-0-1-RELEASE, netbsd-7-0, netbsd-7
Branch point for: nick-nhusb
Changes since 1.248: +5 -1 lines
Diff to previous 1.248 (colored)

Add vcache operations to support key changes:

vcache_rekey_enter locks the old cache node and creates and locks the
  new cache node.  It is an error if the new cache node exists.

vcache_rekey_exit removes the old cache node and finalizes and
  unlocks the new cache node.

No objections on tech-kern@

Welcome to 6.99.46

Revision 1.248 / (download) - annotate - [select for diffs], Sun May 25 13:51:26 2014 UTC (9 years, 9 months ago) by hannken
Branch: MAIN
Changes since 1.247: +2 -2 lines
Diff to previous 1.247 (colored)

Change layerfs from hashlist to vcache.
Make VI_LOCKSHARE public again.

Ride 6.99.43

Revision 1.233.2.3 / (download) - annotate - [select for diffs], Thu May 22 11:41:18 2014 UTC (9 years, 9 months ago) by yamt
Branch: yamt-pagecache
Changes since 1.233.2.2: +16 -30 lines
Diff to previous 1.233.2.2 (colored) to branchpoint 1.233 (colored) next main 1.234 (colored)

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")

Revision 1.237.2.1 / (download) - annotate - [select for diffs], Sun May 18 17:46:21 2014 UTC (9 years, 9 months ago) by rmind
Branch: rmind-smpnet
Changes since 1.237: +16 -30 lines
Diff to previous 1.237 (colored) next main 1.238 (colored)

sync with head

Revision 1.247 / (download) - annotate - [select for diffs], Thu May 8 08:21:53 2014 UTC (9 years, 9 months ago) by hannken
Branch: MAIN
CVS Tags: yamt-pagecache-base9, rmind-smpnet-nbase, rmind-smpnet-base
Changes since 1.246: +3 -1 lines
Diff to previous 1.246 (colored)

Add a global vnode cache:

- vcache_get() retrieves a referenced and initialised vnode / fs node pair.
- vcache_remove() removes a vnode / fs node pair from the cache.

On cache miss vcache_get() calls new vfs operation vfs_loadvnode() to
initialise a vnode / fs node pair.  This call is guaranteed exclusive,
no other thread will try to load this vnode / fs node pair.

Convert ufs/ext2fs, ufs/ffs and ufs/mfs to use this interface.

Remove now unused ufs/ufs_ihash

Discussed on tech-kern.

Welcome to 6.99.41

Revision 1.246 / (download) - annotate - [select for diffs], Mon Mar 24 13:42:40 2014 UTC (9 years, 11 months ago) by hannken
Branch: MAIN
CVS Tags: riastradh-xf86-video-intel-2-7-1-pre-2-21-15
Branch point for: tls-earlyentropy
Changes since 1.245: +7 -3 lines
Diff to previous 1.245 (colored)

- Make VI_XLOCK, VI_CLEAN and VI_LOCKSHARE private to kern/vfs_*.c.
- Make vwait() static.
- Add  vdead_check() to check a vnode for being or becoming dead.

Discussed on tech-kern.

Welcome to 6.99.38

Revision 1.245 / (download) - annotate - [select for diffs], Tue Mar 18 10:21:47 2014 UTC (9 years, 11 months ago) by hannken
Branch: MAIN
Changes since 1.244: +3 -11 lines
Diff to previous 1.244 (colored)

Operations vmark(), vunmark() and vismarker() have been replaced by
vfs_vnode_iterator_*(), remove them.

Document vfs_vnode_iterator_*().

Make VI_MARKER private to vfs_vnode.c, vfs_mount.c and unfortunately
to ufs/lfs/lfs_segment.c.

Welcome to 6.99.37

Revision 1.244 / (download) - annotate - [select for diffs], Wed Mar 5 09:37:29 2014 UTC (9 years, 11 months ago) by hannken
Branch: MAIN
CVS Tags: riastradh-drm2-base3
Changes since 1.243: +2 -2 lines
Diff to previous 1.243 (colored)

Current support for iterating over mnt_vnodelist is rudimentary.  Every
caller has to care about list and vnode mutexes, reference count being zero,
intermediate vnode states like VI_CLEAN, VI_XLOCK, VI_MARKER and so on.

Add an interface to iterate over a vnode list:

void vfs_vnode_iterator_init(struct mount *mp, struct vnode_iterator **marker)
void vfs_vnode_iterator_destroy(struct vnode_iterator *marker)
bool vfs_vnode_iterator_next(struct vnode_iterator *marker, struct vnode **vpp)

vfs_vnode_iterator_next() returns either "false / *vpp == NULL" when done
or "true / *vpp != NULL" to return the next referenced vnode from the list.

To make vrecycle() work in this environment change it to

bool vrecycle(struct vnode *vp)

where "vp" is a referenced vnode to be destroyed if this is the last reference.

Discussed on tech-kern.

Welcome to 6.99.34

Revision 1.243 / (download) - annotate - [select for diffs], Sun Dec 1 17:29:40 2013 UTC (10 years, 2 months ago) by christos
Branch: MAIN
Changes since 1.242: +3 -5 lines
Diff to previous 1.242 (colored)

Put back the vnode changes I backed out yesterday; they were not the problem.
I've tested them with 2 -j 20 builds on an 8 cpu box. It crashed reliably
with the pcu changes present before.

Revision 1.242 / (download) - annotate - [select for diffs], Sun Dec 1 00:59:34 2013 UTC (10 years, 2 months ago) by christos
Branch: MAIN
Changes since 1.241: +4 -2 lines
Diff to previous 1.241 (colored)

Revert recent vnode changes per PR/48411, I still have deadlocks with
build -j 20 on an 8 cpu machine.

Revision 1.241 / (download) - annotate - [select for diffs], Sat Nov 23 13:46:22 2013 UTC (10 years, 3 months ago) by hannken
Branch: MAIN
Changes since 1.240: +3 -5 lines
Diff to previous 1.240 (colored)

Replace VI_INACTNOW and VI_INACTREDO with a new flag VI_CHANGING that gets
set while a vnode changes state from active to inactive or from active
or inactive to clean and protects "vclean(); vrelel()" and "vrelel()"
against "vget()".

Presented on tech-kern.

Revision 1.240 / (download) - annotate - [select for diffs], Thu Nov 7 09:48:34 2013 UTC (10 years, 3 months ago) by hannken
Branch: MAIN
Changes since 1.239: +1 -2 lines
Diff to previous 1.239 (colored)

Make vclean static (ride 6.99.2).

DOCLOSE is no longer needed -- remove.

Revision 1.239 / (download) - annotate - [select for diffs], Tue Oct 29 09:53:51 2013 UTC (10 years, 4 months ago) by hannken
Branch: MAIN
Changes since 1.238: +4 -12 lines
Diff to previous 1.238 (colored)

Vnode API cleanup pass 1.

- Make these defines and functions private to vfs_vnode.c:

  VC_MASK, VC_LOCK, DOCLOSE, VI_IANCTREDO and VI_INACTNOW
  vclean() and vrelel()

- Remove the long time unused lwp argument from vrecycle().

- Remove vtryget(), it is responsible for ugly hacks and doesn't
  look that effective.

Presented on tech-kern.

Welcome to 6.99.25

Revision 1.238 / (download) - annotate - [select for diffs], Mon Sep 30 15:24:14 2013 UTC (10 years, 4 months ago) by hannken
Branch: MAIN
Changes since 1.237: +3 -4 lines
Diff to previous 1.237 (colored)

Remove VI_INACTPEND. Last consumer was vcount() which got removed 2010-01-08.

Reviewed by: David Holland <dholland@netbsd.org>

Revision 1.233.2.2 / (download) - annotate - [select for diffs], Wed Jan 16 05:33:54 2013 UTC (11 years, 1 month ago) by yamt
Branch: yamt-pagecache
CVS Tags: yamt-pagecache-tag8
Changes since 1.233.2.1: +2 -7 lines
Diff to previous 1.233.2.1 (colored) to branchpoint 1.233 (colored)

sync with (a bit old) head

Revision 1.236.8.1 / (download) - annotate - [select for diffs], Tue Nov 20 03:02:52 2012 UTC (11 years, 3 months ago) by tls
Branch: tls-maxphys
Changes since 1.236: +2 -7 lines
Diff to previous 1.236 (colored)

Resync to 2012-11-19 00:00:00 UTC

Revision 1.237 / (download) - annotate - [select for diffs], Sun Nov 18 18:39:24 2012 UTC (11 years, 3 months ago) by pooka
Branch: MAIN
CVS Tags: yamt-pagecache-base8, yamt-pagecache-base7, riastradh-drm2-base2, riastradh-drm2-base1, riastradh-drm2-base, riastradh-drm2, khorben-n900, agc-symver-base, agc-symver
Branch point for: rmind-smpnet
Changes since 1.236: +2 -7 lines
Diff to previous 1.236 (colored)

Finally remove the "temporary" __VTYPE_DEFINED stuff I added >5 years ago.

Revision 1.233.2.1 / (download) - annotate - [select for diffs], Tue Apr 17 00:08:53 2012 UTC (11 years, 10 months ago) by yamt
Branch: yamt-pagecache
Changes since 1.233: +8 -6 lines
Diff to previous 1.233 (colored)

sync with head

Revision 1.236 / (download) - annotate - [select for diffs], Thu Nov 24 15:51:30 2011 UTC (12 years, 3 months ago) by ahoka
Branch: MAIN
CVS Tags: yamt-pagecache-base6, yamt-pagecache-base5, yamt-pagecache-base4, netbsd-6-base, netbsd-6-1-RELEASE, netbsd-6-1-RC4, netbsd-6-1-RC3, netbsd-6-1-RC2, netbsd-6-1-RC1, netbsd-6-1-5-RELEASE, netbsd-6-1-4-RELEASE, netbsd-6-1-3-RELEASE, netbsd-6-1-2-RELEASE, netbsd-6-1-1-RELEASE, netbsd-6-1, netbsd-6-0-RELEASE, netbsd-6-0-RC2, netbsd-6-0-RC1, netbsd-6-0-6-RELEASE, netbsd-6-0-5-RELEASE, netbsd-6-0-4-RELEASE, netbsd-6-0-3-RELEASE, netbsd-6-0-2-RELEASE, netbsd-6-0-1-RELEASE, netbsd-6-0, netbsd-6, matt-nb6-plus-nbase, matt-nb6-plus-base, matt-nb6-plus, jmcneill-usbmp-pre-base2, jmcneill-usbmp-base9, jmcneill-usbmp-base8, jmcneill-usbmp-base7, jmcneill-usbmp-base6, jmcneill-usbmp-base5, jmcneill-usbmp-base4, jmcneill-usbmp-base3, jmcneill-usbmp-base2, jmcneill-usbmp-base10, jmcneill-usbmp-base, jmcneill-usbmp
Branch point for: tls-maxphys
Changes since 1.235: +4 -4 lines
Diff to previous 1.235 (colored)

Import CHFS, which was formerly known as ChewieFS.

CHFS is a file system for flash devices developed by the
Software Engineering Department at University of Szeged, Hungary.

http://chewiefs.sed.hu/

Thanks for all who made it possible.

Revision 1.235 / (download) - annotate - [select for diffs], Mon Nov 21 04:36:06 2011 UTC (12 years, 3 months ago) by christos
Branch: MAIN
Changes since 1.234: +3 -3 lines
Diff to previous 1.234 (colored)

change printf gcc attribute to __printflike(), requested by joerg.

Revision 1.234 / (download) - annotate - [select for diffs], Sun Nov 20 23:37:00 2011 UTC (12 years, 3 months ago) by christos
Branch: MAIN
Changes since 1.233: +5 -3 lines
Diff to previous 1.233 (colored)

add more missing printf attributes.

Revision 1.233 / (download) - annotate - [select for diffs], Mon Jun 27 11:52:24 2011 UTC (12 years, 8 months ago) by uch
Branch: MAIN
CVS Tags: yamt-pagecache-base3, yamt-pagecache-base2, yamt-pagecache-base, jmcneill-audiomp3-base, jmcneill-audiomp3
Branch point for: yamt-pagecache
Changes since 1.232: +3 -3 lines
Diff to previous 1.232 (colored)

7th Edition(V7) File System support. and NetBSD symbolic-link, socket, FIFO extension. see newfs_v7fs(8).

Revision 1.230.2.1 / (download) - annotate - [select for diffs], Thu Jun 23 14:20:29 2011 UTC (12 years, 8 months ago) by cherry
Branch: cherry-xenmp
Changes since 1.230: +9 -8 lines
Diff to previous 1.230 (colored) next main 1.231 (colored)

Catchup with rmind-uvmplock merge.

Revision 1.232 / (download) - annotate - [select for diffs], Tue Jun 21 17:28:11 2011 UTC (12 years, 8 months ago) by riz
Branch: MAIN
Changes since 1.231: +2 -2 lines
Diff to previous 1.231 (colored)

The referred-to comment was moved to vfs_vnode.c; update the pointer.

Revision 1.231 / (download) - annotate - [select for diffs], Sun Jun 12 03:36:00 2011 UTC (12 years, 8 months ago) by rmind
Branch: MAIN
Changes since 1.230: +9 -8 lines
Diff to previous 1.230 (colored)

Welcome to 5.99.53!  Merge rmind-uvmplock branch:

- Reorganize locking in UVM and provide extra serialisation for pmap(9).
  New lock order: [vmpage-owner-lock] -> pmap-lock.

- Simplify locking in some pmap(9) modules by removing P->V locking.

- Use lock object on vmobjlock (and thus vnode_t::v_interlock) to share
  the locks amongst UVM objects where necessary (tmpfs, layerfs, unionfs).

- Rewrite and optimise x86 TLB shootdown code, make it simpler and cleaner.
  Add TLBSTATS option for x86 to collect statistics about TLB shootdowns.

- Unify /dev/mem et al in MI code and provide required locking (removes
  kernel-lock on some ports).  Also, avoid cache-aliasing issues.

Thanks to Andrew Doran and Joerg Sonnenberger, as their initial patches
formed the core changes of this branch.

Revision 1.223.2.1 / (download) - annotate - [select for diffs], Mon Jun 6 09:10:14 2011 UTC (12 years, 8 months ago) by jruoho
Branch: jruoho-x86intr
Changes since 1.223: +11 -33 lines
Diff to previous 1.223 (colored) next main 1.224 (colored)

Sync with HEAD.

Revision 1.214.2.8 / (download) - annotate - [select for diffs], Tue May 31 03:05:12 2011 UTC (12 years, 9 months ago) by rmind
Branch: rmind-uvmplock
Changes since 1.214.2.7: +2 -3 lines
Diff to previous 1.214.2.7 (colored) to branchpoint 1.214 (colored) next main 1.215 (colored)

sync with head

Revision 1.214.2.7 / (download) - annotate - [select for diffs], Mon May 30 14:57:49 2011 UTC (12 years, 9 months ago) by rmind
Branch: rmind-uvmplock
Changes since 1.214.2.6: +2 -2 lines
Diff to previous 1.214.2.6 (colored) to branchpoint 1.214 (colored)

- Amend getnewvnode(9) to take the lock for sharing, not a vnode.
- Update tmpfs to perform vnode and UVM object lock sharing correctly.

Revision 1.214.2.6 / (download) - annotate - [select for diffs], Thu May 19 03:43:04 2011 UTC (12 years, 9 months ago) by rmind
Branch: rmind-uvmplock
Changes since 1.214.2.5: +3 -2 lines
Diff to previous 1.214.2.5 (colored) to branchpoint 1.214 (colored)

Implement sharing of vnode_t::v_interlock amongst vnodes:
- Lock is shared amongst UVM objects using uvm_obj_setlock() or getnewvnode().
- Adjust vnode cache to handle unsharing, add VI_LOCKSHARE flag for that.
- Use sharing in tmpfs and layerfs for underlying object.
- Simplify locking in ubc_fault().
- Sprinkle some asserts.

Discussed with ad@.

Revision 1.230 / (download) - annotate - [select for diffs], Wed Apr 27 09:46:27 2011 UTC (12 years, 10 months ago) by hannken
Branch: MAIN
CVS Tags: rmind-uvmplock-nbase, rmind-uvmplock-base, cherry-xenmp-base
Branch point for: cherry-xenmp
Changes since 1.229: +1 -2 lines
Diff to previous 1.229 (colored)

Remove no longer needed flag FSYNC_VFS /* fsync: via FSYNC_VFS() */.

Revision 1.229 / (download) - annotate - [select for diffs], Tue Apr 26 11:32:39 2011 UTC (12 years, 10 months ago) by hannken
Branch: MAIN
Changes since 1.228: +2 -2 lines
Diff to previous 1.228 (colored)

Change vflushbuf() to return an error if a synchronous write fails.

Welcome to 5.99.51.

Revision 1.214.2.5 / (download) - annotate - [select for diffs], Thu Apr 21 01:42:19 2011 UTC (12 years, 10 months ago) by rmind
Branch: rmind-uvmplock
Changes since 1.214.2.4: +9 -30 lines
Diff to previous 1.214.2.4 (colored) to branchpoint 1.214 (colored)

sync with head

Revision 1.228 / (download) - annotate - [select for diffs], Mon Apr 18 15:53:04 2011 UTC (12 years, 10 months ago) by rmind
Branch: MAIN
Changes since 1.227: +1 -5 lines
Diff to previous 1.227 (colored)

G/C unused speedup_syncer() mechanism and thus simplify some code.
Update some comments to reflect the reality.  No actual changes to
the (used) syncer logic.

OK ad@

Revision 1.227 / (download) - annotate - [select for diffs], Sun Apr 3 01:19:36 2011 UTC (12 years, 10 months ago) by rmind
Branch: MAIN
Changes since 1.226: +6 -23 lines
Diff to previous 1.226 (colored)

- Use offsetof() in VOPARG_OFFSETOF() instead of re-implementing it.
- Remove VDESC_NOMAP_VPP and VDESC_VPP_WILLRELE.
- Remove VRELEL_NOINACTIVE and VRELEL_ONHEAD.

Revision 1.226 / (download) - annotate - [select for diffs], Sat Apr 2 05:07:56 2011 UTC (12 years, 10 months ago) by rmind
Branch: MAIN
Changes since 1.225: +2 -2 lines
Diff to previous 1.225 (colored)

vfs_drainvnodes: drop lwp argument, remove variable name in prototype.

Revision 1.225 / (download) - annotate - [select for diffs], Sat Apr 2 04:45:24 2011 UTC (12 years, 10 months ago) by rmind
Branch: MAIN
Changes since 1.224: +2 -1 lines
Diff to previous 1.224 (colored)

- Move vrele_list flush notify code into vrele_flush() routine.
- Make some structures static.

Revision 1.224 / (download) - annotate - [select for diffs], Sat Apr 2 04:28:57 2011 UTC (12 years, 10 months ago) by rmind
Branch: MAIN
Changes since 1.223: +3 -4 lines
Diff to previous 1.223 (colored)

Split off parts of vfs_subr.c into vfs_vnode.c and vfs_mount.c modules.

No functional change.  Discussed on tech-kern@.

Revision 1.214.2.4 / (download) - annotate - [select for diffs], Sat Mar 5 20:56:26 2011 UTC (12 years, 11 months ago) by rmind
Branch: rmind-uvmplock
Changes since 1.214.2.3: +2 -4 lines
Diff to previous 1.214.2.3 (colored) to branchpoint 1.214 (colored)

sync with head

Revision 1.213.2.3 / (download) - annotate - [select for diffs], Tue Aug 17 06:48:09 2010 UTC (13 years, 6 months ago) by uebayasi
Branch: uebayasi-xip
Changes since 1.213.2.2: +13 -29 lines
Diff to previous 1.213.2.2 (colored) to branchpoint 1.213 (colored) next main 1.214 (colored)

Sync with HEAD.

Revision 1.191.4.6 / (download) - annotate - [select for diffs], Wed Aug 11 22:55:12 2010 UTC (13 years, 6 months ago) by yamt
Branch: yamt-nfs-mp
Changes since 1.191.4.5: +15 -37 lines
Diff to previous 1.191.4.5 (colored) to branchpoint 1.191 (colored) next main 1.192 (colored)

sync with head.

Revision 1.223 / (download) - annotate - [select for diffs], Wed Jul 28 11:03:47 2010 UTC (13 years, 7 months ago) by hannken
Branch: MAIN
CVS Tags: yamt-nfs-mp-base11, yamt-nfs-mp-base10, uebayasi-xip-base7, uebayasi-xip-base6, uebayasi-xip-base5, uebayasi-xip-base4, uebayasi-xip-base3, uebayasi-xip-base2, matt-mips64-premerge-20101231, jruoho-x86intr-base, bouyer-quota2-nbase, bouyer-quota2-base, bouyer-quota2
Branch point for: jruoho-x86intr
Changes since 1.222: +2 -3 lines
Diff to previous 1.222 (colored)

ext2fs,ffs: free on disk inodes in the reclaim routine.
Remove now unneeded vnode flag VI_FREEING.

Welcome to 5.99.38.

Ok: Andrew Doran <ad@netbsd.org>

Revision 1.222 / (download) - annotate - [select for diffs], Wed Jul 28 09:31:00 2010 UTC (13 years, 7 months ago) by hannken
Branch: MAIN
Changes since 1.221: +1 -2 lines
Diff to previous 1.221 (colored)

Remove now unneeded flag LK_INTERLOCK.

Revision 1.214.2.3 / (download) - annotate - [select for diffs], Sat Jul 3 01:20:04 2010 UTC (13 years, 7 months ago) by rmind
Branch: rmind-uvmplock
Changes since 1.214.2.2: +13 -28 lines
Diff to previous 1.214.2.2 (colored) to branchpoint 1.214 (colored)

sync with head

Revision 1.221 / (download) - annotate - [select for diffs], Thu Jul 1 13:00:57 2010 UTC (13 years, 7 months ago) by hannken
Branch: MAIN
Changes since 1.220: +13 -16 lines
Diff to previous 1.220 (colored)

Remove vlockmgr().  Generic vnode lock operations now use a rwlock located
in the vnode.  All LK_* flags move from sys/lock.h to sys/vnode.h.  Calls
to vlockmgr() in file systems get replaced with VOP_LOCK() or VOP_UNLOCK().

Welcome to 5.99.34.

Discussed on tech-kern.

Revision 1.220 / (download) - annotate - [select for diffs], Fri Jun 18 16:29:02 2010 UTC (13 years, 8 months ago) by hannken
Branch: MAIN
Changes since 1.219: +1 -5 lines
Diff to previous 1.219 (colored)

Remove the concept of recursive vnode locks by eliminating
vn_setrecurse(), vn_restorerecurse() and LK_CANRECURSE.
Welcome to 5.99.31

Discussed on tech-kern.

Revision 1.219 / (download) - annotate - [select for diffs], Sun Jun 6 08:01:32 2010 UTC (13 years, 8 months ago) by hannken
Branch: MAIN
Changes since 1.218: +4 -12 lines
Diff to previous 1.218 (colored)

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.

Revision 1.214.2.2 / (download) - annotate - [select for diffs], Sun May 30 05:18:08 2010 UTC (13 years, 9 months ago) by rmind
Branch: rmind-uvmplock
Changes since 1.214.2.1: +3 -8 lines
Diff to previous 1.214.2.1 (colored) to branchpoint 1.214 (colored)

sync with head

Revision 1.213.2.2 / (download) - annotate - [select for diffs], Fri Apr 30 14:44:33 2010 UTC (13 years, 10 months ago) by uebayasi
Branch: uebayasi-xip
Changes since 1.213.2.1: +3 -7 lines
Diff to previous 1.213.2.1 (colored) to branchpoint 1.213 (colored)

Sync with HEAD.

Revision 1.218 / (download) - annotate - [select for diffs], Fri Apr 30 10:03:14 2010 UTC (13 years, 10 months ago) by pooka
Branch: MAIN
Changes since 1.217: +2 -1 lines
Diff to previous 1.217 (colored)

Add translation from vtype to dirent type.  Convert rumpfs now.
I'll convert the rest of the file servers in need after the next
version bump to avoid the coding module crisis.

Revision 1.217 / (download) - annotate - [select for diffs], Fri Apr 23 05:10:19 2010 UTC (13 years, 10 months ago) by dholland
Branch: MAIN
CVS Tags: uebayasi-xip-base1
Changes since 1.216: +1 -2 lines
Diff to previous 1.216 (colored)

vgonel() went away a long time ago, so stop declaring it.

Revision 1.197.10.1.2.1 / (download) - annotate - [select for diffs], Wed Apr 21 00:28:24 2010 UTC (13 years, 10 months ago) by matt
Branch: matt-nb5-mips64
CVS Tags: matt-nb5-mips64-premerge-20101231, matt-nb5-mips64-k15
Changes since 1.197.10.1: +1 -1 lines
Diff to previous 1.197.10.1 (colored) next main 1.198 (colored)

sync to netbsd-5

Revision 1.216 / (download) - annotate - [select for diffs], Sat Apr 10 19:41:54 2010 UTC (13 years, 10 months ago) by pooka
Branch: MAIN
Changes since 1.215: +1 -7 lines
Diff to previous 1.215 (colored)

"Not yet" since 4.4BSD is quite a lot of "not yet", so remove
vdesc_transports from vnodeop_desc until we have a "not not yet"
situation.

Ride 5.99.27 bump (full build still in progress.  i wanted to get
this in as soon as possible to most effectively ride the bump.)

Revision 1.215 / (download) - annotate - [select for diffs], Mon Mar 29 13:11:32 2010 UTC (13 years, 11 months ago) by pooka
Branch: MAIN
Changes since 1.214: +2 -1 lines
Diff to previous 1.214 (colored)

Stop exposing fifofs internals and leave only fifo_vnodeop_p visible.

Revision 1.214.2.1 / (download) - annotate - [select for diffs], Tue Mar 16 15:38:13 2010 UTC (13 years, 11 months ago) by rmind
Branch: rmind-uvmplock
Changes since 1.214: +7 -7 lines
Diff to previous 1.214 (colored)

Change struct uvm_object::vmobjlock to be dynamically allocated with
mutex_obj_alloc().  It allows us to share the locks among UVM objects.

Revision 1.191.4.5 / (download) - annotate - [select for diffs], Thu Mar 11 15:04:43 2010 UTC (13 years, 11 months ago) by yamt
Branch: yamt-nfs-mp
Changes since 1.191.4.4: +5 -8 lines
Diff to previous 1.191.4.4 (colored) to branchpoint 1.191 (colored)

sync with head

Revision 1.214 / (download) - annotate - [select for diffs], Thu Feb 11 23:16:35 2010 UTC (14 years ago) by haad
Branch: MAIN
CVS Tags: yamt-nfs-mp-base9
Branch point for: rmind-uvmplock
Changes since 1.213: +3 -1 lines
Diff to previous 1.213 (colored)

Add vrele_async routine which asynchronously release vnodes in different contex
and in some time in the future.

Ok: ad@.

Revision 1.213.2.1 / (download) - annotate - [select for diffs], Thu Feb 11 05:20:28 2010 UTC (14 years ago) by uebayasi
Branch: uebayasi-xip
Changes since 1.213: +1 -0 lines
Diff to previous 1.213 (colored)

XIP glues in struct mount and struct vnode.

Revision 1.213 / (download) - annotate - [select for diffs], Wed Jan 27 15:34:08 2010 UTC (14 years, 1 month ago) by uebayasi
Branch: MAIN
CVS Tags: uebayasi-xip-base
Branch point for: uebayasi-xip
Changes since 1.212: +2 -2 lines
Diff to previous 1.212 (colored)

Typo in comment.

Revision 1.212 / (download) - annotate - [select for diffs], Fri Jan 8 13:07:26 2010 UTC (14 years, 1 month ago) by pooka
Branch: MAIN
Changes since 1.211: +1 -2 lines
Diff to previous 1.211 (colored)

vcount() lost its purpose when opening multiple block devices was
made impossible, oh, two years ago.  nuke it (yes, the interface
name is overgeneric).

Revision 1.211 / (download) - annotate - [select for diffs], Fri Jan 8 11:35:11 2010 UTC (14 years, 1 month ago) by pooka
Branch: MAIN
Changes since 1.210: +1 -6 lines
Diff to previous 1.210 (colored)

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

Revision 1.210 / (download) - annotate - [select for diffs], Tue Oct 6 04:28:10 2009 UTC (14 years, 4 months ago) by elad
Branch: MAIN
CVS Tags: matt-premerge-20091211, jym-xensuspend-nbase
Changes since 1.209: +2 -1 lines
Diff to previous 1.209 (colored)

Factor out a block of code that appears in three places (Veriexec, keylock,
and securelevel) so that others can use it as well.

Revision 1.191.4.4 / (download) - annotate - [select for diffs], Wed Aug 19 18:48:33 2009 UTC (14 years, 6 months ago) by yamt
Branch: yamt-nfs-mp
Changes since 1.191.4.3: +4 -6 lines
Diff to previous 1.191.4.3 (colored) to branchpoint 1.191 (colored)

sync with head.

Revision 1.209 / (download) - annotate - [select for diffs], Sun Aug 16 10:51:21 2009 UTC (14 years, 6 months ago) by yamt
Branch: MAIN
CVS Tags: yamt-nfs-mp-base8, yamt-nfs-mp-base7
Changes since 1.208: +1 -3 lines
Diff to previous 1.208 (colored)

remove a stale comment.

Revision 1.200.2.2 / (download) - annotate - [select for diffs], Thu Jul 23 23:32:57 2009 UTC (14 years, 7 months ago) by jym
Branch: jym-xensuspend
Changes since 1.200.2.1: +10 -4 lines
Diff to previous 1.200.2.1 (colored) to branchpoint 1.200 (colored) next main 1.201 (colored)

Sync with HEAD.

Revision 1.197.4.1 / (download) - annotate - [select for diffs], Tue Jul 21 00:31:58 2009 UTC (14 years, 7 months ago) by snj
Branch: netbsd-5
CVS Tags: netbsd-5-2-RELEASE, netbsd-5-2-RC1, netbsd-5-2-3-RELEASE, netbsd-5-2-2-RELEASE, netbsd-5-2-1-RELEASE, netbsd-5-2, netbsd-5-1-RELEASE, netbsd-5-1-RC4, netbsd-5-1-RC3, netbsd-5-1-RC2, netbsd-5-1-RC1, netbsd-5-1-5-RELEASE, netbsd-5-1-4-RELEASE, netbsd-5-1-3-RELEASE, netbsd-5-1-2-RELEASE, netbsd-5-1-1-RELEASE, netbsd-5-1, matt-nb5-pq3-base, matt-nb5-pq3
Changes since 1.197: +7 -1 lines
Diff to previous 1.197 (colored) next main 1.198 (colored)

Pull up following revision(s) (requested by rmind in ticket #863):
	sys/sys/vnode.h: revision 1.207
	sys/kern/vfs_subr.c: revision 1.379
put a flag bit into v_usecount to prevent vtryget during getcleanvnode.
this fixes the following deadlock.
        a thread doing getcleanvnode:
        pick a vnode
        acqure v_interlock
        v_usecount++
        call vclean
                now, another thread doing cache_lookup:
                picks the vnode
                vtryget succeed
                vn_lock succeed
        now in vclean:
        set VI_XLOCK (too late to be noticed by the competing thread)
        wait on the vnode lock (this might violate locking order)
the use of a flag bit was suggested by Andrew Doran.  PR/41374.

Revision 1.197.10.1 / (download) - annotate - [select for diffs], Tue Jul 21 00:29:32 2009 UTC (14 years, 7 months ago) by snj
Branch: netbsd-5-0
CVS Tags: netbsd-5-0-2-RELEASE, netbsd-5-0-1-RELEASE, matt-nb5-mips64-u2-k2-k4-k7-k8-k9, matt-nb5-mips64-u1-k1-k5, matt-nb5-mips64-premerge-20091211, matt-nb4-mips64-k7-u2a-k9b
Branch point for: matt-nb5-mips64
Changes since 1.197: +7 -1 lines
Diff to previous 1.197 (colored) next main 1.198 (colored)

Pull up following revision(s) (requested by rmind in ticket #863):
	sys/sys/vnode.h: revision 1.207
	sys/kern/vfs_subr.c: revision 1.379
put a flag bit into v_usecount to prevent vtryget during getcleanvnode.
this fixes the following deadlock.
        a thread doing getcleanvnode:
        pick a vnode
        acqure v_interlock
        v_usecount++
        call vclean
                now, another thread doing cache_lookup:
                picks the vnode
                vtryget succeed
                vn_lock succeed
        now in vclean:
        set VI_XLOCK (too late to be noticed by the competing thread)
        wait on the vnode lock (this might violate locking order)
the use of a flag bit was suggested by Andrew Doran.  PR/41374.

Revision 1.208 / (download) - annotate - [select for diffs], Sat Jul 18 16:31:44 2009 UTC (14 years, 7 months ago) by reinoud
Branch: MAIN
CVS Tags: jymxensuspend-base
Changes since 1.207: +4 -4 lines
Diff to previous 1.207 (colored)

Import read-only part of the NiLFS (v2) implementation for NetBSD. It has been
tested with a DEBUG+DIAGNOSTIC+LOCKDEBUG kernel. To summerise NiLFS, i'll
repeat my posting to tech-kern here:

NiLFS stands for New implementation of Logging File System; LFS done
right they claim :) It is at version 2 now and is being developed by NTT, the
Japanese telecom company and recently put into the linux source tree. See
http://www.nilfs.org. The on-disc format is not completely frozen and i expect
at least one minor revision to come in time.

The benefits of NiLFS are build-in fine-grained checkpointing, persistent
snapshots, multiple mounts and very large file and media support. Every
checkpoint can be transformed into a snapshot and v.v. It is said to perform
very well on flash media since it is not overwriting pieces apart from a
incidental update of the superblock, but that might change. It is accompanied
by a cleaner to clean up the segments and recover lost space.

My work is not a port of the linux code; its a new implementation. Porting the
code would be more work since its very linux oriented and never written to be
ported outside linux. The goal is to be fully interchangable. The code is non
intrusive to other parts of the kernel. It is also very light-weight.

The current state of the code is read-only access to both clean and dirty
NiLFS partitions. On mounting a dirty partition it rolls forward the log to
the last checkpoint. Full read-write support is however planned!

Just as the linux code, mount_nilfs allows for the `head' to be mounted
read/write and allows multiple read-only snapshots/checkpoint mounts next to
it.

By allowing the RW mount at a different snapshot for read-write it should be
possible eventually to revert back to a previous state; i.e. try to upgrade a
system and being able to revert to the exact state prior to the upgrade.

Compared to other FS's its pretty light-weight, suitable for embedded use and
on flash media. The read-only code is currently 17kb object code on
NetBSD/i386. I doubt the read-write code will surpass the 50 or 60. Compared
this to FFS being 156kb, UDF being 84 kb and NFS being 130kb. Run-time memory
usage is most likely not very different from other uses though maybe a bit
higher than FFS.

Revision 1.191.4.3 / (download) - annotate - [select for diffs], Sat May 16 10:41:53 2009 UTC (14 years, 9 months ago) by yamt
Branch: yamt-nfs-mp
Changes since 1.191.4.2: +7 -1 lines
Diff to previous 1.191.4.2 (colored) to branchpoint 1.191 (colored)

sync with head

Revision 1.207 / (download) - annotate - [select for diffs], Sat May 16 08:29:53 2009 UTC (14 years, 9 months ago) by yamt
Branch: MAIN
CVS Tags: yamt-nfs-mp-base6, yamt-nfs-mp-base5, yamt-nfs-mp-base4
Changes since 1.206: +7 -1 lines
Diff to previous 1.206 (colored)

put a flag bit into v_usecount to prevent vtryget during getcleanvnode.
this fixes the following deadlock.

	a thread doing getcleanvnode:
	pick a vnode
	acqure v_interlock
	v_usecount++
	call vclean

		now, another thread doing cache_lookup:
		picks the vnode
		vtryget succeed
		vn_lock succeed

	now in vclean:
	set VI_XLOCK (too late to be noticed by the competing thread)
	wait on the vnode lock (this might violate locking order)

the use of a flag bit was suggested by Andrew Doran.  PR/41374.

Revision 1.200.2.1 / (download) - annotate - [select for diffs], Wed May 13 17:23:04 2009 UTC (14 years, 9 months ago) by jym
Branch: jym-xensuspend
Changes since 1.200: +8 -6 lines
Diff to previous 1.200 (colored)

Sync with HEAD.

Commit is split, to avoid a "too many arguments" protocol error.

Revision 1.191.4.2 / (download) - annotate - [select for diffs], Mon May 4 08:14:36 2009 UTC (14 years, 9 months ago) by yamt
Branch: yamt-nfs-mp
Changes since 1.191.4.1: +14 -15 lines
Diff to previous 1.191.4.1 (colored) to branchpoint 1.191 (colored)

sync with head.

Revision 1.206 / (download) - annotate - [select for diffs], Sun May 3 16:52:55 2009 UTC (14 years, 9 months ago) by pooka
Branch: MAIN
CVS Tags: yamt-nfs-mp-base3, jym-xensuspend-base
Changes since 1.205: +2 -2 lines
Diff to previous 1.205 (colored)

Include some debug print routines if DEBUGPRINT is defined.  This
way they can be included without having to include DDB.
(arguably all print routines should be behind #ifdef DEBUGPRINT
and options DDB should define that macro, but I'll tackle that later)

Revision 1.197.2.3 / (download) - annotate - [select for diffs], Tue Apr 28 07:37:53 2009 UTC (14 years, 10 months ago) by skrll
Branch: nick-hppapmap
Changes since 1.197.2.2: +7 -4 lines
Diff to previous 1.197.2.2 (colored) to branchpoint 1.197 (colored) next main 1.198 (colored)

Sync with HEAD.

Revision 1.205 / (download) - annotate - [select for diffs], Wed Apr 22 22:57:08 2009 UTC (14 years, 10 months ago) by elad
Branch: MAIN
CVS Tags: nick-hppapmap-base4, nick-hppapmap-base3, nick-hppapmap-base
Changes since 1.204: +1 -4 lines
Diff to previous 1.204 (colored)

Per discussion on tech-kern@:

  - Replace use of label/goto with returns

  - Rename, change prototype of, and move functions from vfs_subr.c to
    genfs_vnops.c

Revision 1.204 / (download) - annotate - [select for diffs], Mon Apr 20 18:06:26 2009 UTC (14 years, 10 months ago) by elad
Branch: MAIN
Changes since 1.203: +5 -1 lines
Diff to previous 1.203 (colored)

Refactor some duplicated file-system code.

Proposed and received no objections on tech-kern@:

	http://mail-index.netbsd.org/tech-kern/2009/04/18/msg004843.html

Revision 1.203 / (download) - annotate - [select for diffs], Thu Mar 19 09:07:54 2009 UTC (14 years, 11 months ago) by pooka
Branch: MAIN
Changes since 1.202: +5 -3 lines
Diff to previous 1.202 (colored)

+VT_RUMP

Revision 1.202 / (download) - annotate - [select for diffs], Fri Mar 13 11:04:25 2009 UTC (14 years, 11 months ago) by yamt
Branch: MAIN
Changes since 1.201: +2 -2 lines
Diff to previous 1.201 (colored)

VNODE_FLAGBITS: fix octal counting.

Revision 1.197.2.2 / (download) - annotate - [select for diffs], Tue Mar 3 18:34:32 2009 UTC (14 years, 11 months ago) by skrll
Branch: nick-hppapmap
Changes since 1.197.2.1: +2 -3 lines
Diff to previous 1.197.2.1 (colored) to branchpoint 1.197 (colored)

Sync with HEAD.

Revision 1.201 / (download) - annotate - [select for diffs], Sun Feb 22 20:28:06 2009 UTC (15 years ago) by ad
Branch: MAIN
CVS Tags: nick-hppapmap-base2
Changes since 1.200: +2 -3 lines
Diff to previous 1.200 (colored)

PR kern/26878 FFSv2 + softdep = livelock (no free ram)
PR kern/16942 panic with softdep and quotas
PR kern/19565 panic: softdep_write_inodeblock: indirect pointer #1 mismatch
PR kern/26274 softdep panic: allocdirect_merge: ...
PR kern/26374 Long delay before non-root users can write to softdep partitions
PR kern/28621 1.6.x "vp != NULL" panic in ffs_softdep.c:4653 while unmounting a softdep (+quota) filesystem
PR kern/29513 FFS+Softdep panic with unfsck-able file-corruption
PR kern/31544 The ffs softdep code appears to fail to write dirty bits to disk
PR kern/31981 stopping scsi disk can cause panic (softdep)
PR kern/32116 kernel panic in softdep (assertion failure)
PR kern/32532 softdep_trackbufs deadlock
PR kern/37191 softdep: locking against myself
PR kern/40474 Kernel panic after remounting raid root with softdep

Retire softdep, pass 2. As discussed and later formally announced on the
mailing lists.

Revision 1.197.2.1 / (download) - annotate - [select for diffs], Mon Jan 19 13:20:31 2009 UTC (15 years, 1 month ago) by skrll
Branch: nick-hppapmap
Changes since 1.197: +2 -5 lines
Diff to previous 1.197 (colored)

Sync with HEAD.

Revision 1.190.6.7 / (download) - annotate - [select for diffs], Sat Jan 17 13:29:41 2009 UTC (15 years, 1 month ago) by mjf
Branch: mjf-devfs2
Changes since 1.190.6.6: +1 -4 lines
Diff to previous 1.190.6.6 (colored) to branchpoint 1.190 (colored) next main 1.191 (colored)

Sync with HEAD.

Revision 1.200 / (download) - annotate - [select for diffs], Sat Jan 17 07:02:35 2009 UTC (15 years, 1 month ago) by yamt
Branch: MAIN
CVS Tags: mjf-devfs2-base
Branch point for: jym-xensuspend
Changes since 1.199: +1 -4 lines
Diff to previous 1.199 (colored)

malloc -> kmem_alloc.

Revision 1.199 / (download) - annotate - [select for diffs], Sun Jan 11 02:45:56 2009 UTC (15 years, 1 month ago) by christos
Branch: MAIN
Changes since 1.198: +2 -2 lines
Diff to previous 1.198 (colored)

merge christos-time_t

Revision 1.197.8.3 / (download) - annotate - [select for diffs], Tue Dec 30 18:50:26 2008 UTC (15 years, 1 month ago) by christos
Branch: christos-time_t
Changes since 1.197.8.2: +1 -1 lines
Diff to previous 1.197.8.2 (colored) to branchpoint 1.197 (colored) next main 1.198 (colored)

sync with head.

Revision 1.198 / (download) - annotate - [select for diffs], Tue Dec 30 15:08:09 2008 UTC (15 years, 1 month ago) by he
Branch: MAIN
CVS Tags: christos-time_t-nbase, christos-time_t-base
Changes since 1.197: +2 -2 lines
Diff to previous 1.197 (colored)

Change va_fsid from long to u_long, so that we can store a dev_t
there without incurring warnings (which turns into build errors)
about conversions from unsigned int to long.
OK'ed by christos@.

Revision 1.197.8.2 / (download) - annotate - [select for diffs], Sun Dec 28 22:00:03 2008 UTC (15 years, 2 months ago) by christos
Branch: christos-time_t
Changes since 1.197.8.1: +670 -0 lines
Diff to previous 1.197.8.1 (colored) to branchpoint 1.197 (colored)

va_fsid needs to be wider.

Revision 1.196.2.1 / (download) - annotate - [select for diffs], Sun Oct 19 22:18:10 2008 UTC (15 years, 4 months ago) by haad
Branch: haad-dm
Changes since 1.196: +3 -1 lines
Diff to previous 1.196 (colored) next main 1.197 (colored)

Sync with HEAD.

Revision 1.190.6.6 / (download) - annotate - [select for diffs], Sun Sep 28 10:41:05 2008 UTC (15 years, 5 months ago) by mjf
Branch: mjf-devfs2
Changes since 1.190.6.5: +2 -0 lines
Diff to previous 1.190.6.5 (colored) to branchpoint 1.190 (colored)

Sync with HEAD.

Revision 1.193.2.2 / (download) - annotate - [select for diffs], Thu Sep 18 04:37:05 2008 UTC (15 years, 5 months ago) by wrstuden
Branch: wrstuden-revivesa
Changes since 1.193.2.1: +3 -4 lines
Diff to previous 1.193.2.1 (colored) to branchpoint 1.193 (colored) next main 1.194 (colored)

Sync with wrstuden-revivesa-base-2.

Revision 1.197.8.1, Thu Jul 31 05:38:06 2008 UTC (15 years, 7 months ago) by christos
Branch: christos-time_t
Changes since 1.197: +0 -670 lines
FILE REMOVED

file vnode.h was added on branch christos-time_t on 2008-12-28 22:00:03 +0000

Revision 1.197 / (download) - annotate - [select for diffs], Thu Jul 31 05:38:06 2008 UTC (15 years, 7 months ago) by simonb
Branch: MAIN
CVS Tags: wrstuden-revivesa-base-4, wrstuden-revivesa-base-3, wrstuden-revivesa-base-2, netbsd-5-base, netbsd-5-0-RELEASE, netbsd-5-0-RC4, netbsd-5-0-RC3, netbsd-5-0-RC2, netbsd-5-0-RC1, matt-mips64-base2, haad-nbase2, haad-dm-base2, haad-dm-base1, haad-dm-base, ad-audiomp2-base, ad-audiomp2
Branch point for: nick-hppapmap, netbsd-5-0, netbsd-5, christos-time_t
Changes since 1.196: +3 -1 lines
Diff to previous 1.196 (colored)

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@.

Revision 1.190.6.5 / (download) - annotate - [select for diffs], Sun Jun 29 09:33:20 2008 UTC (15 years, 8 months ago) by mjf
Branch: mjf-devfs2
Changes since 1.190.6.4: +0 -3 lines
Diff to previous 1.190.6.4 (colored) to branchpoint 1.190 (colored)

Sync with HEAD.

Revision 1.195.2.2 / (download) - annotate - [select for diffs], Fri Jun 27 15:11:55 2008 UTC (15 years, 8 months ago) by simonb
Branch: simonb-wapbl
Changes since 1.195.2.1: +1 -4 lines
Diff to previous 1.195.2.1 (colored) to branchpoint 1.195 (colored) next main 1.196 (colored)

Sync with head.

Revision 1.196 / (download) - annotate - [select for diffs], Tue Jun 24 11:21:46 2008 UTC (15 years, 8 months ago) by ad
Branch: MAIN
CVS Tags: simonb-wapbl-nbase, simonb-wapbl-base
Branch point for: haad-dm
Changes since 1.195: +1 -4 lines
Diff to previous 1.195 (colored)

Nothing uses getsock/getvnode any more.

Revision 1.193.2.1 / (download) - annotate - [select for diffs], Mon Jun 23 04:32:03 2008 UTC (15 years, 8 months ago) by wrstuden
Branch: wrstuden-revivesa
Changes since 1.193: +5 -4 lines
Diff to previous 1.193 (colored)

Sync w/ -current. 34 merge conflicts to follow.

Revision 1.195.2.1 / (download) - annotate - [select for diffs], Tue Jun 10 14:51:23 2008 UTC (15 years, 8 months ago) by simonb
Branch: simonb-wapbl
Changes since 1.195: +3 -1 lines
Diff to previous 1.195 (colored)

Initial commit of 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.

Still a number of issues - look in doc/BRANCHES for "simonb-wapbl"
for more info.

Revision 1.190.6.4 / (download) - annotate - [select for diffs], Thu Jun 5 19:14:37 2008 UTC (15 years, 8 months ago) by mjf
Branch: mjf-devfs2
Changes since 1.190.6.3: +4 -3 lines
Diff to previous 1.190.6.3 (colored) to branchpoint 1.190 (colored)

Sync with HEAD.

Also fix build.

Revision 1.191.2.2 / (download) - annotate - [select for diffs], Wed Jun 4 02:05:49 2008 UTC (15 years, 8 months ago) by yamt
Branch: yamt-pf42
Changes since 1.191.2.1: +5 -4 lines
Diff to previous 1.191.2.1 (colored) to branchpoint 1.191 (colored) next main 1.192 (colored)

sync with head

Revision 1.195 / (download) - annotate - [select for diffs], Tue Jun 3 14:54:12 2008 UTC (15 years, 8 months ago) by ad
Branch: MAIN
CVS Tags: yamt-pf42-base4, yamt-pf42-base3, wrstuden-revivesa-base-1, wrstuden-revivesa-base
Branch point for: simonb-wapbl
Changes since 1.194: +2 -1 lines
Diff to previous 1.194 (colored)

vtryget: try to get an initial reference to a vnode without taking its
interlock. Only works if v_usecount is already non-zero, which is nearly
always true for busy files like libc.so or ld_elf.so.

Revision 1.194 / (download) - annotate - [select for diffs], Mon Jun 2 16:25:34 2008 UTC (15 years, 8 months ago) by ad
Branch: MAIN
Changes since 1.193: +4 -4 lines
Diff to previous 1.193 (colored)

Use atomics to maintain v_usecount.

Revision 1.190.6.3 / (download) - annotate - [select for diffs], Mon Jun 2 13:24:34 2008 UTC (15 years, 8 months ago) by mjf
Branch: mjf-devfs2
Changes since 1.190.6.2: +1 -7 lines
Diff to previous 1.190.6.2 (colored) to branchpoint 1.190 (colored)

Sync with HEAD.

Revision 1.191.2.1 / (download) - annotate - [select for diffs], Sun May 18 12:35:50 2008 UTC (15 years, 9 months ago) by yamt
Branch: yamt-pf42
Changes since 1.191: +2 -8 lines
Diff to previous 1.191 (colored)

sync with head.

Revision 1.191.4.1 / (download) - annotate - [select for diffs], Fri May 16 02:25:52 2008 UTC (15 years, 9 months ago) by yamt
Branch: yamt-nfs-mp
Changes since 1.191: +2 -8 lines
Diff to previous 1.191 (colored)

sync with head.

Revision 1.193 / (download) - annotate - [select for diffs], Tue Apr 29 18:18:09 2008 UTC (15 years, 10 months ago) by ad
Branch: MAIN
CVS Tags: yamt-pf42-base2, yamt-nfs-mp-base2, hpcarm-cleanup-nbase
Branch point for: wrstuden-revivesa
Changes since 1.192: +2 -1 lines
Diff to previous 1.192 (colored)

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.

Revision 1.192 / (download) - annotate - [select for diffs], Mon Apr 28 20:24:11 2008 UTC (15 years, 10 months ago) by martin
Branch: MAIN
Changes since 1.191: +1 -8 lines
Diff to previous 1.191 (colored)

Remove clause 3 and 4 from TNF licenses

Revision 1.190.6.2 / (download) - annotate - [select for diffs], Thu Apr 3 12:43:13 2008 UTC (15 years, 10 months ago) by mjf
Branch: mjf-devfs2
Changes since 1.190.6.1: +4 -4 lines
Diff to previous 1.190.6.1 (colored) to branchpoint 1.190 (colored)

Sync with HEAD.

Revision 1.140.2.10 / (download) - annotate - [select for diffs], Mon Mar 24 09:39:11 2008 UTC (15 years, 11 months ago) by yamt
Branch: yamt-lazymbuf
Changes since 1.140.2.9: +4 -4 lines
Diff to previous 1.140.2.9 (colored) next main 1.141 (colored)

sync with head.

Revision 1.172.2.3 / (download) - annotate - [select for diffs], Sun Mar 23 02:05:11 2008 UTC (15 years, 11 months ago) by matt
Branch: matt-armv6
Changes since 1.172.2.2: +68 -18 lines
Diff to previous 1.172.2.2 (colored) to branchpoint 1.172 (colored) next main 1.173 (colored)

sync with HEAD

Revision 1.191 / (download) - annotate - [select for diffs], Fri Mar 21 21:55:01 2008 UTC (15 years, 11 months ago) by ad
Branch: MAIN
CVS Tags: yamt-pf42-baseX, yamt-pf42-base, yamt-nfs-mp-base, yamt-lazymbuf-base15, yamt-lazymbuf-base14, ad-socklock-base1
Branch point for: yamt-pf42, yamt-nfs-mp
Changes since 1.190: +4 -4 lines
Diff to previous 1.190 (colored)

Catch up with descriptor handling changes. See kern_descrip.c revision
1.173 for details.

Revision 1.190.6.1 / (download) - annotate - [select for diffs], Thu Feb 21 20:44:55 2008 UTC (16 years ago) by mjf
Branch: mjf-devfs2
Changes since 1.190: +5 -3 lines
Diff to previous 1.190 (colored)

Start where the mjf-devfs branch left off.

Revision 1.173.4.4 / (download) - annotate - [select for diffs], Mon Feb 18 22:07:03 2008 UTC (16 years ago) by mjf
Branch: mjf-devfs
Changes since 1.173.4.3: +5 -3 lines
Diff to previous 1.173.4.3 (colored) to branchpoint 1.173 (colored) next main 1.174 (colored)

Add some devfs code that's been sitting in my local tree for a while.

devfsd(8) is now the first daemon to be started after init(8). It tracks
device insertion (will eventually track removal) and devfs mounts.

Currently, we can mount multiple device file systems and have device
special files pushed into the mounts automatically, though, the device
special files aren't created with the correct major/minor number pairs
yet.

More work to come soon.

Revision 1.173.4.3 / (download) - annotate - [select for diffs], Mon Feb 18 21:07:24 2008 UTC (16 years ago) by mjf
Branch: mjf-devfs
Changes since 1.173.4.2: +142 -69 lines
Diff to previous 1.173.4.2 (colored) to branchpoint 1.173 (colored)

Sync with HEAD.

Revision 1.140.2.9 / (download) - annotate - [select for diffs], Mon Feb 11 15:00:09 2008 UTC (16 years ago) by yamt
Branch: yamt-lazymbuf
Changes since 1.140.2.8: +42 -2 lines
Diff to previous 1.140.2.8 (colored)

sync with head.

Revision 1.190 / (download) - annotate - [select for diffs], Tue Feb 5 14:19:52 2008 UTC (16 years ago) by ad
Branch: MAIN
CVS Tags: nick-net80211-sync-base, nick-net80211-sync, mjf-devfs-base, matt-armv6-nbase, keiichi-mipv6-nbase, keiichi-mipv6-base, keiichi-mipv6, hpcarm-cleanup-base
Branch point for: mjf-devfs2
Changes since 1.189: +42 -2 lines
Diff to previous 1.189 (colored)

Lock v_knlist with the vnode interlock. PR kern/37881.

Revision 1.140.2.8 / (download) - annotate - [select for diffs], Mon Feb 4 09:25:01 2008 UTC (16 years ago) by yamt
Branch: yamt-lazymbuf
Changes since 1.140.2.7: +19 -12 lines
Diff to previous 1.140.2.7 (colored)

sync with head.

Revision 1.189 / (download) - annotate - [select for diffs], Wed Jan 30 09:50:24 2008 UTC (16 years, 1 month ago) by ad
Branch: MAIN
Changes since 1.188: +13 -4 lines
Diff to previous 1.188 (colored)

Replace struct lock on vnodes with a simpler lock object built on
krwlock_t. This is a step towards removing lockmgr and simplifying
vnode locking. Discussed on tech-kern.

Revision 1.188 / (download) - annotate - [select for diffs], Sun Jan 27 22:47:31 2008 UTC (16 years, 1 month ago) by pooka
Branch: MAIN
Changes since 1.187: +4 -2 lines
Diff to previous 1.187 (colored)

Replace vrelel() 010101-mania with a flags parameter.  However,
leave flags unimplemented for a while (no change in functionality).

Revision 1.187 / (download) - annotate - [select for diffs], Sun Jan 27 19:08:07 2008 UTC (16 years, 1 month ago) by pooka
Branch: MAIN
Changes since 1.186: +1 -2 lines
Diff to previous 1.186 (colored)

vrele2 is a goner

Revision 1.186 / (download) - annotate - [select for diffs], Thu Jan 24 17:32:56 2008 UTC (16 years, 1 month ago) by ad
Branch: MAIN
Changes since 1.185: +4 -7 lines
Diff to previous 1.185 (colored)

specfs changes for PR kern/37717 (raidclose() is no longer called on
shutdown). There are still problems with device access and a PR will be
filed.

- Kill checkalias(). Allow multiple vnodes to reference a single device.

- Don't play dangerous tricks with block vnodes to ensure that only one
  vnode can describe a block device. Instead, prohibit concurrent opens of
  block devices. As a bonus remove the unreliable code that prevents
  multiple file system mounts on the same device. It's no longer needed.

- Track opens by vnode and by device. Issue cdev_close() when the last open
  goes away, instead of abusing vnode::v_usecount to tell if the device is
  open.

Revision 1.140.2.7 / (download) - annotate - [select for diffs], Mon Jan 21 09:48:02 2008 UTC (16 years, 1 month ago) by yamt
Branch: yamt-lazymbuf
Changes since 1.140.2.6: +90 -64 lines
Diff to previous 1.140.2.6 (colored)

sync with head

Revision 1.177.6.4 / (download) - annotate - [select for diffs], Sat Jan 19 12:15:45 2008 UTC (16 years, 1 month ago) by bouyer
Branch: bouyer-xeni386
Changes since 1.177.6.3: +1 -0 lines
Diff to previous 1.177.6.3 (colored) to branchpoint 1.177 (colored) next main 1.178 (colored)

Sync with HEAD

Revision 1.185 / (download) - annotate - [select for diffs], Thu Jan 17 17:28:54 2008 UTC (16 years, 1 month ago) by ad
Branch: MAIN
CVS Tags: bouyer-xeni386-nbase, bouyer-xeni386-base
Changes since 1.184: +2 -1 lines
Diff to previous 1.184 (colored)

Fix v_freelisthd assertion failure during call to vdevdone(). No calling
VOPs without a vnode reference!

Revision 1.177.6.3 / (download) - annotate - [select for diffs], Thu Jan 10 23:44:42 2008 UTC (16 years, 1 month ago) by bouyer
Branch: bouyer-xeni386
CVS Tags: bouyer-xeni386-merge1
Changes since 1.177.6.2: +7 -5 lines
Diff to previous 1.177.6.2 (colored) to branchpoint 1.177 (colored)

Sync with HEAD

Revision 1.184 / (download) - annotate - [select for diffs], Wed Jan 9 16:15:23 2008 UTC (16 years, 1 month ago) by ad
Branch: MAIN
Changes since 1.183: +7 -6 lines
Diff to previous 1.183 (colored)

Go back to freeing on disk inodes in the inactive routine. It would be
better not to do this, but it rules out potential side effects with softdep.

Revision 1.183 / (download) - annotate - [select for diffs], Wed Jan 9 08:18:12 2008 UTC (16 years, 1 month ago) by elad
Branch: MAIN
Changes since 1.182: +2 -1 lines
Diff to previous 1.182 (colored)

Refactor part of the sys_revoke() code so that it can be used in the
compat code. Allows for the removal of two redundant kauth(9) calls.

okay christos@.

Revision 1.172.2.2 / (download) - annotate - [select for diffs], Wed Jan 9 01:58:21 2008 UTC (16 years, 1 month ago) by matt
Branch: matt-armv6
Changes since 1.172.2.1: +90 -71 lines
Diff to previous 1.172.2.1 (colored) to branchpoint 1.172 (colored)

sync with HEAD

Revision 1.177.6.2 / (download) - annotate - [select for diffs], Tue Jan 8 22:12:00 2008 UTC (16 years, 1 month ago) by bouyer
Branch: bouyer-xeni386
Changes since 1.177.6.1: +7 -4 lines
Diff to previous 1.177.6.1 (colored) to branchpoint 1.177 (colored)

Sync with HEAD

Revision 1.182 / (download) - annotate - [select for diffs], Mon Jan 7 16:56:27 2008 UTC (16 years, 1 month ago) by ad
Branch: MAIN
CVS Tags: matt-armv6-base
Changes since 1.181: +3 -2 lines
Diff to previous 1.181 (colored)

Fix 'panic: softdep_update_inodeblock: update failed'.

Revision 1.181 / (download) - annotate - [select for diffs], Thu Jan 3 01:26:31 2008 UTC (16 years, 1 month ago) by pooka
Branch: MAIN
Changes since 1.180: +6 -4 lines
Diff to previous 1.180 (colored)

valloc -> vnalloc, vfree -> vnfree
Avoids collision with userland valloc(3).

no functional change
ad ok

Revision 1.177.6.1 / (download) - annotate - [select for diffs], Wed Jan 2 21:58:12 2008 UTC (16 years, 1 month ago) by bouyer
Branch: bouyer-xeni386
Changes since 1.177: +85 -65 lines
Diff to previous 1.177 (colored)

Sync with HEAD

Revision 1.180 / (download) - annotate - [select for diffs], Wed Jan 2 11:49:07 2008 UTC (16 years, 1 month ago) by ad
Branch: MAIN
Changes since 1.179: +81 -61 lines
Diff to previous 1.179 (colored)

Merge vmlocking2 to head.

Revision 1.177.2.6 / (download) - annotate - [select for diffs], Fri Dec 28 21:43:13 2007 UTC (16 years, 2 months ago) by ad
Branch: vmlocking2
Changes since 1.177.2.5: +2 -1 lines
Diff to previous 1.177.2.5 (colored) to branchpoint 1.177 (colored) next main 1.178 (colored)

Make rump build.

Revision 1.173.4.2 / (download) - annotate - [select for diffs], Thu Dec 27 00:46:45 2007 UTC (16 years, 2 months ago) by mjf
Branch: mjf-devfs
Changes since 1.173.4.1: +3 -3 lines
Diff to previous 1.173.4.1 (colored) to branchpoint 1.173 (colored)

Sync with HEAD.

Revision 1.177.2.5 / (download) - annotate - [select for diffs], Wed Dec 26 21:39:57 2007 UTC (16 years, 2 months ago) by ad
Branch: vmlocking2
Changes since 1.177.2.4: +5 -5 lines
Diff to previous 1.177.2.4 (colored) to branchpoint 1.177 (colored)

Sync with head.

Revision 1.179 / (download) - annotate - [select for diffs], Tue Dec 25 18:33:49 2007 UTC (16 years, 2 months ago) by perry
Branch: MAIN
CVS Tags: vmlocking2-base3
Changes since 1.178: +3 -3 lines
Diff to previous 1.178 (colored)

Convert many of the uses of __attribute__ to equivalent
__packed, __unused and __dead macros from cdefs.h

Revision 1.178 / (download) - annotate - [select for diffs], Mon Dec 24 14:58:37 2007 UTC (16 years, 2 months ago) by ad
Branch: MAIN
Changes since 1.177: +3 -3 lines
Diff to previous 1.177 (colored)

+ MOUNT_ZFS, VT_ZFS

Revision 1.177.2.4 / (download) - annotate - [select for diffs], Thu Dec 13 20:08:10 2007 UTC (16 years, 2 months ago) by ad
Branch: vmlocking2
Changes since 1.177.2.3: +2 -2 lines
Diff to previous 1.177.2.3 (colored) to branchpoint 1.177 (colored)

Reduce contention on vnode_free_list_lock.

Revision 1.177.2.3 / (download) - annotate - [select for diffs], Wed Dec 12 02:50:29 2007 UTC (16 years, 2 months ago) by ad
Branch: vmlocking2
Changes since 1.177.2.2: +3 -2 lines
Diff to previous 1.177.2.2 (colored) to branchpoint 1.177 (colored)

- Redo previous so that final release of vnodes by vrele() is only deferred
  if absolutely necessary. It might be beneficial in the long term to defer
  more often than not because it avoids a lot of calls to VOP_INACTIVE().
  That would take some effort to get right and the intent with this change
  is just to make things work.
- If a vnode gains and loses a reference while being deactivated, then call
  VOP_INACTIVE() again to make sure that it's correctly flushed.

Revision 1.177.2.2 / (download) - annotate - [select for diffs], Mon Dec 10 19:31:49 2007 UTC (16 years, 2 months ago) by ad
Branch: vmlocking2
Changes since 1.177.2.1: +5 -3 lines
Diff to previous 1.177.2.1 (colored) to branchpoint 1.177 (colored)

Defer VOP_INACTIVE and clean-on-release of vnodes to a kthread. This is
a hack to avoid lock order issues with the vnode locking scheme. To be
revisited soon.

Revision 1.173.4.1 / (download) - annotate - [select for diffs], Sat Dec 8 18:21:36 2007 UTC (16 years, 2 months ago) by mjf
Branch: mjf-devfs
Changes since 1.173: +3 -7 lines
Diff to previous 1.173 (colored)

Sync with HEAD.

Revision 1.140.2.6 / (download) - annotate - [select for diffs], Fri Dec 7 17:34:59 2007 UTC (16 years, 2 months ago) by yamt
Branch: yamt-lazymbuf
Changes since 1.140.2.5: +3 -7 lines
Diff to previous 1.140.2.5 (colored)

sync with head

Revision 1.177.2.1 / (download) - annotate - [select for diffs], Tue Dec 4 13:03:39 2007 UTC (16 years, 2 months ago) by ad
Branch: vmlocking2
Changes since 1.177: +75 -59 lines
Diff to previous 1.177 (colored)

Pull the vmlocking changes into a new branch.

Revision 1.170.6.5 / (download) - annotate - [select for diffs], Mon Dec 3 16:15:21 2007 UTC (16 years, 2 months ago) by joerg
Branch: jmcneill-pm
Changes since 1.170.6.4: +2 -5 lines
Diff to previous 1.170.6.4 (colored) to branchpoint 1.170 (colored) next main 1.171 (colored)

Sync with HEAD.

Revision 1.177 / (download) - annotate - [select for diffs], Sun Dec 2 13:56:20 2007 UTC (16 years, 2 months ago) by hannken
Branch: MAIN
CVS Tags: yamt-kmem-base3, yamt-kmem-base2, yamt-kmem-base, yamt-kmem, vmlocking2-base2, vmlocking2-base1, vmlocking-nbase, reinoud-bufcleanup-nbase, reinoud-bufcleanup-base, jmcneill-pm-base, cube-autoconf-base, cube-autoconf
Branch point for: vmlocking2, bouyer-xeni386
Changes since 1.176: +1 -5 lines
Diff to previous 1.176 (colored)

Fscow_run(): add a flag "bool data_valid" to note still valid data.
Buffers run through copy-on-write are marked B_COWDONE.  This condition
is valid until the buffer has run through bwrite() and gets cleared from
biodone().

Welcome to 4.99.39.

Reviewed by: YAMAMOTO Takashi <yamt@netbsd.org>

Revision 1.176 / (download) - annotate - [select for diffs], Fri Nov 30 16:52:19 2007 UTC (16 years, 3 months ago) by yamt
Branch: MAIN
Changes since 1.175: +2 -1 lines
Diff to previous 1.175 (colored)

- reduce the number of VOP_ACCESS calls for O_RDWR.  for nfs, it reduces
  the number of rpcs.
- reduce code duplication.

Revision 1.170.6.4 / (download) - annotate - [select for diffs], Tue Nov 27 19:39:16 2007 UTC (16 years, 3 months ago) by joerg
Branch: jmcneill-pm
Changes since 1.170.6.3: +2 -3 lines
Diff to previous 1.170.6.3 (colored) to branchpoint 1.170 (colored)

Sync with HEAD. amd64 Xen support needs testing.

Revision 1.175 / (download) - annotate - [select for diffs], Mon Nov 26 19:02:25 2007 UTC (16 years, 3 months ago) by pooka
Branch: MAIN
Changes since 1.174: +1 -2 lines
Diff to previous 1.174 (colored)

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

Revision 1.174 / (download) - annotate - [select for diffs], Fri Nov 23 11:53:45 2007 UTC (16 years, 3 months ago) by pooka
Branch: MAIN
Changes since 1.173: +2 -2 lines
Diff to previous 1.173 (colored)

Fix value of IO_SYNC to not collide with other definitions.

Revision 1.172.2.1 / (download) - annotate - [select for diffs], Tue Nov 6 23:35:03 2007 UTC (16 years, 3 months ago) by matt
Branch: matt-armv6
CVS Tags: matt-armv6-prevmlocking
Changes since 1.172: +43 -30 lines
Diff to previous 1.172 (colored)

sync with HEAD

Revision 1.140.2.5 / (download) - annotate - [select for diffs], Sat Oct 27 11:36:36 2007 UTC (16 years, 4 months ago) by yamt
Branch: yamt-lazymbuf
Changes since 1.140.2.4: +43 -30 lines
Diff to previous 1.140.2.4 (colored)

sync with head.

Revision 1.170.6.3 / (download) - annotate - [select for diffs], Fri Oct 26 15:49:23 2007 UTC (16 years, 4 months ago) by joerg
Branch: jmcneill-pm
Changes since 1.170.6.2: +43 -30 lines
Diff to previous 1.170.6.2 (colored) to branchpoint 1.170 (colored)

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.

Revision 1.167.2.15 / (download) - annotate - [select for diffs], Thu Oct 25 20:52:17 2007 UTC (16 years, 4 months ago) by ad
Branch: vmlocking
Changes since 1.167.2.14: +8 -1 lines
Diff to previous 1.167.2.14 (colored) to branchpoint 1.167 (colored) next main 1.168 (colored)

Fix up mnt_vnodelist handling.

Revision 1.167.2.14 / (download) - annotate - [select for diffs], Tue Oct 23 20:17:28 2007 UTC (16 years, 4 months ago) by ad
Branch: vmlocking
Changes since 1.167.2.13: +5 -5 lines
Diff to previous 1.167.2.13 (colored) to branchpoint 1.167 (colored)

Sync with head.

Revision 1.172.4.1 / (download) - annotate - [select for diffs], Sun Oct 14 11:49:11 2007 UTC (16 years, 4 months ago) by yamt
Branch: yamt-x86pmap
Changes since 1.172: +43 -30 lines
Diff to previous 1.172 (colored) next main 1.173 (colored)

sync with head.

Revision 1.173 / (download) - annotate - [select for diffs], Wed Oct 10 20:42:32 2007 UTC (16 years, 4 months ago) by ad
Branch: MAIN
CVS Tags: yamt-x86pmap-base4, yamt-x86pmap-base3, vmlocking-base, jmcneill-base, bouyer-xenamd64-base2, bouyer-xenamd64-base, bouyer-xenamd64
Branch point for: mjf-devfs
Changes since 1.172: +43 -30 lines
Diff to previous 1.172 (colored)

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.

Revision 1.167.2.13 / (download) - annotate - [select for diffs], Tue Oct 9 13:45:14 2007 UTC (16 years, 4 months ago) by ad
Branch: vmlocking
Changes since 1.167.2.12: +7 -2 lines
Diff to previous 1.167.2.12 (colored) to branchpoint 1.167 (colored)

Sync with head.

Revision 1.167.2.12 / (download) - annotate - [select for diffs], Sun Sep 16 19:04:40 2007 UTC (16 years, 5 months ago) by ad
Branch: vmlocking
Changes since 1.167.2.11: +26 -16 lines
Diff to previous 1.167.2.11 (colored) to branchpoint 1.167 (colored)

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.

Revision 1.170.6.2 / (download) - annotate - [select for diffs], Mon Sep 3 16:49:14 2007 UTC (16 years, 5 months ago) by jmcneill
Branch: jmcneill-pm
Changes since 1.170.6.1: +7 -2 lines
Diff to previous 1.170.6.1 (colored) to branchpoint 1.170 (colored)

Sync with HEAD.

Revision 1.140.2.4 / (download) - annotate - [select for diffs], Mon Sep 3 14:46:44 2007 UTC (16 years, 5 months ago) by yamt
Branch: yamt-lazymbuf
Changes since 1.140.2.3: +14 -19 lines
Diff to previous 1.140.2.3 (colored)

sync with head.

Revision 1.170.2.2 / (download) - annotate - [select for diffs], Mon Sep 3 10:24:03 2007 UTC (16 years, 5 months ago) by skrll
Branch: nick-csl-alignment
Changes since 1.170.2.1: +7 -2 lines
Diff to previous 1.170.2.1 (colored) to branchpoint 1.170 (colored) next main 1.171 (colored)

Sync with HEAD.

Revision 1.167.2.11 / (download) - annotate - [select for diffs], Fri Aug 24 23:28:42 2007 UTC (16 years, 6 months ago) by ad
Branch: vmlocking
Changes since 1.167.2.10: +4 -3 lines
Diff to previous 1.167.2.10 (colored) to branchpoint 1.167 (colored)

Sync with buffer cache locking changes. See buf.h/vfs_bio.c for details.
Some minor portions are incomplete and needs to be verified as a whole.

Revision 1.167.2.10 / (download) - annotate - [select for diffs], Tue Aug 21 18:05:42 2007 UTC (16 years, 6 months ago) by ad
Branch: vmlocking
Changes since 1.167.2.9: +2 -1 lines
Diff to previous 1.167.2.9 (colored) to branchpoint 1.167 (colored)

Add a per-mount flag that specifies whether the underlying file system code
is MP safe, and populate a per-vnode flag from this at vnode creation time.
If the file system is MP safe, do not acquire kernel_lock in the VOP wrappers.

Revision 1.167.2.9 / (download) - annotate - [select for diffs], Mon Aug 20 21:28:22 2007 UTC (16 years, 6 months ago) by ad
Branch: vmlocking
Changes since 1.167.2.8: +2 -1 lines
Diff to previous 1.167.2.8 (colored) to branchpoint 1.167 (colored)

Sync with HEAD.

Revision 1.172 / (download) - annotate - [select for diffs], Mon Aug 20 15:51:37 2007 UTC (16 years, 6 months ago) by pooka
Branch: MAIN
CVS Tags: yamt-x86pmap-base2, yamt-x86pmap-base, nick-csl-alignment-base5
Branch point for: yamt-x86pmap, matt-armv6
Changes since 1.171: +7 -2 lines
Diff to previous 1.171 (colored)

Wrap enum vtype around __VTYPE_DEFINED to allow overriding it elsewhere.

Revision 1.170.6.1 / (download) - annotate - [select for diffs], Thu Aug 16 11:03:58 2007 UTC (16 years, 6 months ago) by jmcneill
Branch: jmcneill-pm
Changes since 1.170: +2 -1 lines
Diff to previous 1.170 (colored)

Sync with HEAD.

Revision 1.170.2.1 / (download) - annotate - [select for diffs], Wed Aug 15 13:51:05 2007 UTC (16 years, 6 months ago) by skrll
Branch: nick-csl-alignment
Changes since 1.170: +2 -1 lines
Diff to previous 1.170 (colored)

Sync with HEAD.

Revision 1.171 / (download) - annotate - [select for diffs], Thu Aug 9 08:51:21 2007 UTC (16 years, 6 months ago) by pooka
Branch: MAIN
Changes since 1.170: +2 -1 lines
Diff to previous 1.170 (colored)

Instead of having lfs muck directly about with vnode free lists,
introduce vrele2(), which allows to release vnodes the way lfs
sometimes wants it:
  + without calling inactive
  + inserting the vnode at the head of the freelist (this is a very
    questionable optimization that isn't even enabled by default,
    but I went along with the same semantics for now)

Revision 1.167.2.8 / (download) - annotate - [select for diffs], Sun Jul 15 13:28:13 2007 UTC (16 years, 7 months ago) by ad
Branch: vmlocking
Changes since 1.167.2.7: +3 -3 lines
Diff to previous 1.167.2.7 (colored) to branchpoint 1.167 (colored)

Sync with head.

Revision 1.167.4.1 / (download) - annotate - [select for diffs], Wed Jul 11 20:12:40 2007 UTC (16 years, 7 months ago) by mjf
Branch: mjf-ufs-trans
Changes since 1.167: +5 -16 lines
Diff to previous 1.167 (colored) next main 1.168 (colored)

Sync with head.

Revision 1.170 / (download) - annotate - [select for diffs], Fri Jun 29 23:30:32 2007 UTC (16 years, 8 months ago) by rumble
Branch: MAIN
CVS Tags: nick-csl-alignment-base, mjf-ufs-trans-base, matt-mips64-base, matt-mips64, hpcarm-cleanup
Branch point for: nick-csl-alignment, jmcneill-pm
Changes since 1.169: +3 -3 lines
Diff to previous 1.169 (colored)

Add read-only support for SGI's Extent File System.

Reviewed by pooka@.

Revision 1.167.2.7 / (download) - annotate - [select for diffs], Sat Jun 23 18:06:04 2007 UTC (16 years, 8 months ago) by ad
Branch: vmlocking
Changes since 1.167.2.6: +2 -16 lines
Diff to previous 1.167.2.6 (colored) to branchpoint 1.167 (colored)

- Lock v_cleanblkhd, v_dirtyblkhd, v_numoutput with the vnode's interlock.
  Get rid of global_v_numoutput_lock. Partially incomplete as the buffer
  cache locking doesn't work very well and needs an overhaul.
- Some changes to try and make softdep MP safe. Untested.

Revision 1.167.2.6 / (download) - annotate - [select for diffs], Sun Jun 17 21:32:02 2007 UTC (16 years, 8 months ago) by ad
Branch: vmlocking
Changes since 1.167.2.5: +60 -46 lines
Diff to previous 1.167.2.5 (colored) to branchpoint 1.167 (colored)

- 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.

Revision 1.167.2.5 / (download) - annotate - [select for diffs], Sat Jun 9 23:58:18 2007 UTC (16 years, 8 months ago) by ad
Branch: vmlocking
Changes since 1.167.2.4: +2 -1 lines
Diff to previous 1.167.2.4 (colored) to branchpoint 1.167 (colored)

Sync with head.

Revision 1.169 / (download) - annotate - [select for diffs], Tue Jun 5 12:31:33 2007 UTC (16 years, 8 months ago) by yamt
Branch: MAIN
Changes since 1.168: +2 -1 lines
Diff to previous 1.168 (colored)

improve post-ubc file overwrite performance in common cases.
ie. when it's safe, actually overwrite blocks rather than doing
read-modify-write.

also fixes PR/33152 and PR/36303.

Revision 1.164.2.2 / (download) - annotate - [select for diffs], Sun Apr 15 16:04:06 2007 UTC (16 years, 10 months ago) by yamt
Branch: yamt-idlelwp
Changes since 1.164.2.1: +2 -14 lines
Diff to previous 1.164.2.1 (colored) to branchpoint 1.164 (colored) next main 1.165 (colored)

sync with head.

Revision 1.167.2.4 / (download) - annotate - [select for diffs], Fri Apr 13 15:49:50 2007 UTC (16 years, 10 months ago) by ad
Branch: vmlocking
Changes since 1.167.2.3: +6 -4 lines
Diff to previous 1.167.2.3 (colored) to branchpoint 1.167 (colored)

- Fix a (new) bug where vget tries to acquire freed vnodes' interlocks.
- Minor locking fixes.

Revision 1.167.2.3 / (download) - annotate - [select for diffs], Tue Apr 10 13:26:20 2007 UTC (16 years, 10 months ago) by ad
Branch: vmlocking
Changes since 1.167.2.2: +2 -14 lines
Diff to previous 1.167.2.2 (colored) to branchpoint 1.167 (colored)

Sync with head.

Revision 1.168 / (download) - annotate - [select for diffs], Sun Apr 8 11:20:50 2007 UTC (16 years, 10 months ago) by hannken
Branch: MAIN
CVS Tags: yamt-idlelwp-base8, thorpej-atomic-base, thorpej-atomic
Changes since 1.167: +2 -14 lines
Diff to previous 1.167 (colored)

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

Revision 1.167.2.2 / (download) - annotate - [select for diffs], Wed Mar 21 20:11:58 2007 UTC (16 years, 11 months ago) by ad
Branch: vmlocking
Changes since 1.167.2.1: +45 -37 lines
Diff to previous 1.167.2.1 (colored) to branchpoint 1.167 (colored)

- Replace more simple_locks, and fix up in a few places.
- Use condition variables.
- LOCK_ASSERT -> KASSERT.

Revision 1.167.2.1 / (download) - annotate - [select for diffs], Tue Mar 13 17:51:19 2007 UTC (16 years, 11 months ago) by ad
Branch: vmlocking
Changes since 1.167: +14 -14 lines
Diff to previous 1.167 (colored)

Pull in the initial set of changes for the vmlocking branch.

Revision 1.164.2.1 / (download) - annotate - [select for diffs], Mon Mar 12 06:00:56 2007 UTC (16 years, 11 months ago) by rmind
Branch: yamt-idlelwp
Changes since 1.164: +5 -5 lines
Diff to previous 1.164 (colored)

Sync with HEAD.

Revision 1.167 / (download) - annotate - [select for diffs], Tue Mar 6 11:28:46 2007 UTC (16 years, 11 months ago) by dillo
Branch: MAIN
CVS Tags: reinoud-bufcleanup
Branch point for: vmlocking, mjf-ufs-trans
Changes since 1.166: +3 -3 lines
Diff to previous 1.166 (colored)

Complete rename of hfsp to hfs, requested by thorpej.

Revision 1.166 / (download) - annotate - [select for diffs], Mon Mar 5 23:19:17 2007 UTC (16 years, 11 months ago) by dillo
Branch: MAIN
Changes since 1.165: +3 -3 lines
Diff to previous 1.165 (colored)

Integrate apmlabel and HFS+ file system.

Revision 1.165 / (download) - annotate - [select for diffs], Sun Mar 4 06:03:42 2007 UTC (16 years, 11 months ago) by christos
Branch: MAIN
Changes since 1.164: +3 -3 lines
Diff to previous 1.164 (colored)

Kill caddr_t; there will be some MI fallout, but it will be fixed shortly.

Revision 1.140.2.3 / (download) - annotate - [select for diffs], Mon Feb 26 09:12:17 2007 UTC (17 years ago) by yamt
Branch: yamt-lazymbuf
Changes since 1.140.2.2: +1 -3 lines
Diff to previous 1.140.2.2 (colored)

sync with head.

Revision 1.155.4.3 / (download) - annotate - [select for diffs], Thu Feb 1 08:48:47 2007 UTC (17 years ago) by ad
Branch: newlock2
Changes since 1.155.4.2: +1 -3 lines
Diff to previous 1.155.4.2 (colored) to branchpoint 1.155 (colored) next main 1.156 (colored)

Sync with head.

Revision 1.164 / (download) - annotate - [select for diffs], Fri Jan 19 14:49:11 2007 UTC (17 years, 1 month ago) by hannken
Branch: MAIN
CVS Tags: post-newlock2-merge, newlock2-nbase, newlock2-base, ad-audiomp-base, ad-audiomp
Branch point for: yamt-idlelwp
Changes since 1.163: +1 -3 lines
Diff to previous 1.163 (colored)

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).

Revision 1.155.4.2 / (download) - annotate - [select for diffs], Fri Jan 12 01:04:24 2007 UTC (17 years, 1 month ago) by ad
Branch: newlock2
Changes since 1.155.4.1: +7 -8 lines
Diff to previous 1.155.4.1 (colored) to branchpoint 1.155 (colored)

Sync with head.

Revision 1.140.2.2 / (download) - annotate - [select for diffs], Sat Dec 30 20:50:56 2006 UTC (17 years, 2 months ago) by yamt
Branch: yamt-lazymbuf
Changes since 1.140.2.1: +28 -25 lines
Diff to previous 1.140.2.1 (colored)

sync with head.

Revision 1.163 / (download) - annotate - [select for diffs], Wed Dec 27 12:22:14 2006 UTC (17 years, 2 months ago) by yamt
Branch: MAIN
Changes since 1.162: +1 -2 lines
Diff to previous 1.162 (colored)

remove now unused vnode::v_lease.

Revision 1.155.6.2 / (download) - annotate - [select for diffs], Sun Dec 10 07:19:29 2006 UTC (17 years, 2 months ago) by yamt
Branch: yamt-splraiseipl
Changes since 1.155.6.1: +9 -9 lines
Diff to previous 1.155.6.1 (colored) to branchpoint 1.155 (colored) next main 1.156 (colored)

sync with head.

Revision 1.162 / (download) - annotate - [select for diffs], Tue Nov 21 02:37:20 2006 UTC (17 years, 3 months ago) by simonb
Branch: MAIN
CVS Tags: yamt-splraiseipl-base5, yamt-splraiseipl-base4, yamt-splraiseipl-base3, wrstuden-fixsa-newbase, wrstuden-fixsa-base-1, wrstuden-fixsa-base, wrstuden-fixsa, netbsd-4-base, netbsd-4-0-RELEASE, netbsd-4-0-RC5, netbsd-4-0-RC4, netbsd-4-0-RC3, netbsd-4-0-RC2, netbsd-4-0-RC1, netbsd-4-0-1-RELEASE, netbsd-4-0, netbsd-4, matt-nb4-arm-base, matt-nb4-arm
Changes since 1.161: +2 -2 lines
Diff to previous 1.161 (colored)

Poo, fix typo'd typo.

Thanks Pooka.

Revision 1.161 / (download) - annotate - [select for diffs], Tue Nov 21 02:19:54 2006 UTC (17 years, 3 months ago) by simonb
Branch: MAIN
Changes since 1.160: +7 -7 lines
Diff to previous 1.160 (colored)

Fix some #define<tab> while here...

Revision 1.160 / (download) - annotate - [select for diffs], Tue Nov 21 02:17:51 2006 UTC (17 years, 3 months ago) by simonb
Branch: MAIN
Changes since 1.159: +2 -2 lines
Diff to previous 1.159 (colored)

Fix a tyop in a comment.

Revision 1.155.4.1 / (download) - annotate - [select for diffs], Sat Nov 18 21:39:47 2006 UTC (17 years, 3 months ago) by ad
Branch: newlock2
Changes since 1.155: +22 -19 lines
Diff to previous 1.155 (colored)

Sync with head.

Revision 1.159 / (download) - annotate - [select for diffs], Sun Oct 22 22:49:38 2006 UTC (17 years, 4 months ago) by pooka
Branch: MAIN
Changes since 1.158: +3 -3 lines
Diff to previous 1.158 (colored)

add VT_PUFFS

Revision 1.155.6.1 / (download) - annotate - [select for diffs], Sun Oct 22 06:07:47 2006 UTC (17 years, 4 months ago) by yamt
Branch: yamt-splraiseipl
Changes since 1.155: +20 -17 lines
Diff to previous 1.155 (colored)

sync with head

Revision 1.158 / (download) - annotate - [select for diffs], Fri Oct 20 18:58:12 2006 UTC (17 years, 4 months ago) by reinoud
Branch: MAIN
CVS Tags: yamt-splraiseipl-base2
Changes since 1.157: +4 -3 lines
Diff to previous 1.157 (colored)

Replace the LIST structure mp->mnt_vnodelist to a TAILQ structure since all
vnodes were synced and processed backwards. This meant that the last
accessed node was processed first and the earlierst last.

An extra benefit is the removal of the ugly hack from the Berkly days on
LFS.

In the proces, i've also replaced the various variations hand written loops
by the TAILQ_FOREACH() macro's.

Revision 1.157 / (download) - annotate - [select for diffs], Tue Oct 17 14:51:51 2006 UTC (17 years, 4 months ago) by christos
Branch: MAIN
Changes since 1.156: +13 -13 lines
Diff to previous 1.156 (colored)

don't expose a kernel variable to userland.

Revision 1.156 / (download) - annotate - [select for diffs], Thu Oct 5 14:48:33 2006 UTC (17 years, 4 months ago) by chs
Branch: MAIN
Changes since 1.155: +5 -3 lines
Diff to previous 1.155 (colored)

add support for O_DIRECT (I/O directly to application memory,
bypassing any kernel caching for file data).

Revision 1.152.4.1 / (download) - annotate - [select for diffs], Sat Sep 9 02:59:42 2006 UTC (17 years, 5 months ago) by rpaulo
Branch: rpaulo-netinet-merge-pcb
Changes since 1.152: +11 -12 lines
Diff to previous 1.152 (colored) next main 1.153 (colored)

sync with head

Revision 1.154.4.1 / (download) - annotate - [select for diffs], Thu Jul 13 17:50:06 2006 UTC (17 years, 7 months ago) by gdamore
Branch: gdamore-uart
Changes since 1.154: +2 -1 lines
Diff to previous 1.154 (colored) next main 1.155 (colored)

Merge from HEAD.

Revision 1.153.2.2 / (download) - annotate - [select for diffs], Mon Jun 26 12:54:29 2006 UTC (17 years, 8 months ago) by yamt
Branch: yamt-pdpolicy
Changes since 1.153.2.1: +2 -1 lines
Diff to previous 1.153.2.1 (colored) to branchpoint 1.153 (colored) next main 1.154 (colored)

sync with head.

Revision 1.155 / (download) - annotate - [select for diffs], Fri Jun 23 14:13:02 2006 UTC (17 years, 8 months ago) by yamt
Branch: MAIN
CVS Tags: yamt-splraiseipl-base, yamt-pdpolicy-base9, yamt-pdpolicy-base8, yamt-pdpolicy-base7, yamt-pdpolicy-base6, rpaulo-netinet-merge-pcb-base, abandoned-netbsd-4-base, abandoned-netbsd-4
Branch point for: yamt-splraiseipl, newlock2
Changes since 1.154: +1 -0 lines
Diff to previous 1.154 (colored)

fix a simonb-timecounters regression.
the precision of getnanotime() is not suitable for file timestamps.
esp. when it's nfs-exported.

- introduce vfs_timestamp().
  (the name is from freebsd.  currently merely a wrapper of nanotime())
- for ufs-like filesystems, use it rather than getnanotime().

XXX check other filesystems.

Revision 1.140.2.1 / (download) - annotate - [select for diffs], Wed Jun 21 15:12:04 2006 UTC (17 years, 8 months ago) by yamt
Branch: yamt-lazymbuf
Changes since 1.140: +51 -186 lines
Diff to previous 1.140 (colored)

sync with head.

Revision 1.152.6.2 / (download) - annotate - [select for diffs], Thu Jun 1 22:39:27 2006 UTC (17 years, 8 months ago) by kardel
Branch: simonb-timecounters
CVS Tags: simonb-timcounters-final
Changes since 1.152.6.1: +6 -8 lines
Diff to previous 1.152.6.1 (colored) next main 1.153 (colored)

Sync with head.

Revision 1.153.6.1 / (download) - annotate - [select for diffs], Wed May 24 15:50:47 2006 UTC (17 years, 9 months ago) by tron
Branch: peter-altq
Changes since 1.153: +6 -8 lines
Diff to previous 1.153 (colored) next main 1.154 (colored)

Merge 2006-05-24 NetBSD-current into the "peter-altq" branch.

Revision 1.153.2.1 / (download) - annotate - [select for diffs], Wed May 24 10:59:21 2006 UTC (17 years, 9 months ago) by yamt
Branch: yamt-pdpolicy
Changes since 1.153: +6 -8 lines
Diff to previous 1.153 (colored)

sync with head.

Revision 1.154 / (download) - annotate - [select for diffs], Sun May 14 21:38:18 2006 UTC (17 years, 9 months ago) by elad
Branch: MAIN
CVS Tags: yamt-pdpolicy-base5, simonb-timecounters-base, gdamore-uart-base, chap-midi-nbase, chap-midi-base, chap-midi
Branch point for: gdamore-uart
Changes since 1.153: +6 -8 lines
Diff to previous 1.153 (colored)

integrate kauth.

Revision 1.153.4.3 / (download) - annotate - [select for diffs], Sat May 6 23:32:33 2006 UTC (17 years, 9 months ago) by christos
Branch: elad-kernelauth
Changes since 1.153.4.2: +5 -8 lines
Diff to previous 1.153.4.2 (colored) to branchpoint 1.153 (colored) next main 1.154 (colored)

- 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.

Revision 1.152.6.1 / (download) - annotate - [select for diffs], Sat Apr 22 11:40:21 2006 UTC (17 years, 10 months ago) by simonb
Branch: simonb-timecounters
Changes since 1.152: +5 -5 lines
Diff to previous 1.152 (colored)

Sync with head.

Revision 1.153.4.2 / (download) - annotate - [select for diffs], Thu Apr 20 12:57:23 2006 UTC (17 years, 10 months ago) by christos
Branch: elad-kernelauth
Changes since 1.153.4.1: +8 -8 lines
Diff to previous 1.153.4.1 (colored) to branchpoint 1.153 (colored)

Don't expose <sys/kauth.h> to userland.

Revision 1.153.4.1 / (download) - annotate - [select for diffs], Wed Mar 8 01:01:13 2006 UTC (17 years, 11 months ago) by elad
Branch: elad-kernelauth
Changes since 1.153: +6 -5 lines
Diff to previous 1.153 (colored)

Adapt to kernel authorization changes.

Revision 1.152.2.1 / (download) - annotate - [select for diffs], Sat Feb 18 15:39:23 2006 UTC (18 years ago) by yamt
Branch: yamt-uio_vmspace
Changes since 1.152: +5 -5 lines
Diff to previous 1.152 (colored) next main 1.153 (colored)

sync with head.

Revision 1.153 / (download) - annotate - [select for diffs], Thu Feb 16 20:17:20 2006 UTC (18 years ago) by perry
Branch: MAIN
CVS Tags: yamt-uio_vmspace-base5, yamt-pdpolicy-base4, yamt-pdpolicy-base3, yamt-pdpolicy-base2, yamt-pdpolicy-base, peter-altq-base, elad-kernelauth-base
Branch point for: yamt-pdpolicy, peter-altq, elad-kernelauth
Changes since 1.152: +5 -5 lines
Diff to previous 1.152 (colored)

Change "inline" back to "__inline" in .h files -- C99 is still too
new, and some apps compile things in C89 mode. C89 keywords stay.

As per core@.

Revision 1.152 / (download) - annotate - [select for diffs], Thu Dec 29 14:53:47 2005 UTC (18 years, 2 months ago) by tsutsui
Branch: MAIN
Branch point for: yamt-uio_vmspace, simonb-timecounters, rpaulo-netinet-merge-pcb
Changes since 1.151: +3 -3 lines
Diff to previous 1.151 (colored)

Add preliminary support for System V Boot File System.
Written by UCHIYAMA Yasushi <uch@netbsd>.

Revision 1.151 / (download) - annotate - [select for diffs], Tue Dec 27 04:06:46 2005 UTC (18 years, 2 months ago) by chs
Branch: MAIN
Changes since 1.150: +4 -65 lines
Diff to previous 1.150 (colored)

changes for making DIAGNOSTIC not change the kernel ABI:
 - for structure fields that are conditionally present,
   make those fields always present.
 - for functions which are conditionally inline, make them never inline.
 - remove some other functions which are conditionally defined but
   don't actually do anything anymore.
 - make a lock-debugging function conditional on only LOCKDEBUG.

as discussed on tech-kern some time back.

Revision 1.150 / (download) - annotate - [select for diffs], Sun Dec 25 14:48:59 2005 UTC (18 years, 2 months ago) by yamt
Branch: MAIN
Changes since 1.149: +3 -3 lines
Diff to previous 1.149 (colored)

update VNODE_FLAGBITS.
- remove VDIRTY.
- add VFREEING.
- remove leading V from VLOCKSWORK.

Revision 1.149 / (download) - annotate - [select for diffs], Sat Dec 24 19:01:28 2005 UTC (18 years, 2 months ago) by perry
Branch: MAIN
Changes since 1.148: +8 -8 lines
Diff to previous 1.148 (colored)

Remove leading __ from __(const|inline|signed|volatile) -- it is obsolete.

Revision 1.148 / (download) - annotate - [select for diffs], Fri Dec 23 15:31:40 2005 UTC (18 years, 2 months ago) by yamt
Branch: MAIN
Changes since 1.147: +2 -1 lines
Diff to previous 1.147 (colored)

prevent in-core vnode being freed from getting new references.
otherwise, once the corresponding bit in the inode bitmap is cleared,
an unrelated inode with the same inode number can be allocated and
ufs_ihashget() picks a stale in-core vnode for it.

PR/32301 by Matthias Scheler.

Revision 1.147 / (download) - annotate - [select for diffs], Wed Dec 14 21:57:11 2005 UTC (18 years, 2 months ago) by reinoud
Branch: MAIN
Changes since 1.146: +3 -3 lines
Diff to previous 1.146 (colored)

Add entry for in enum vtagtype and VNODE_TAGS for UDF vnodes.

Revision 1.146 / (download) - annotate - [select for diffs], Sun Dec 11 12:25:21 2005 UTC (18 years, 2 months ago) by christos
Branch: MAIN
Changes since 1.145: +14 -14 lines
Diff to previous 1.145 (colored)

merge ktrace-lwp.

Revision 1.112.2.15 / (download) - annotate - [select for diffs], Sun Dec 11 10:29:36 2005 UTC (18 years, 2 months ago) by christos
Branch: ktrace-lwp
Changes since 1.112.2.14: +20 -10 lines
Diff to previous 1.112.2.14 (colored) next main 1.113 (colored)

Sync with head.

Revision 1.145 / (download) - annotate - [select for diffs], Tue Nov 29 22:52:03 2005 UTC (18 years, 3 months ago) by yamt
Branch: MAIN
CVS Tags: ktrace-lwp-base
Changes since 1.144: +20 -10 lines
Diff to previous 1.144 (colored)

merge yamt-readahead branch.

Revision 1.144.6.3 / (download) - annotate - [select for diffs], Sat Nov 26 12:24:58 2005 UTC (18 years, 3 months ago) by yamt
Branch: yamt-readahead
Changes since 1.144.6.2: +12 -11 lines
Diff to previous 1.144.6.2 (colored) to branchpoint 1.144 (colored) next main 1.145 (colored)

- renumber IO_ flags to reduce arithmetics.  i'll bump kernel version anyway.
- wrap some more code with #ifdef _KERNEL.

Revision 1.144.6.2 / (download) - annotate - [select for diffs], Tue Nov 22 15:33:15 2005 UTC (18 years, 3 months ago) by yamt
Branch: yamt-readahead
Changes since 1.144.6.1: +2 -2 lines
Diff to previous 1.144.6.1 (colored) to branchpoint 1.144 (colored)

comments.

Revision 1.144.6.1 / (download) - annotate - [select for diffs], Fri Nov 18 08:44:55 2005 UTC (18 years, 3 months ago) by yamt
Branch: yamt-readahead
CVS Tags: yamt-readahead-pervnode
Changes since 1.144: +18 -9 lines
Diff to previous 1.144 (colored)

- associate read-ahead context to vnode, rather than file.
- revert VOP_READ prototype.

Revision 1.112.2.14 / (download) - annotate - [select for diffs], Thu Nov 10 14:12:13 2005 UTC (18 years, 3 months ago) by skrll
Branch: ktrace-lwp
Changes since 1.112.2.13: +16 -115 lines
Diff to previous 1.112.2.13 (colored)

Sync with HEAD. Here we go again...

Revision 1.144 / (download) - annotate - [select for diffs], Tue Sep 20 09:49:01 2005 UTC (18 years, 5 months ago) by yamt
Branch: MAIN
CVS Tags: yamt-vop-base3, yamt-vop-base2, yamt-vop-base, yamt-vop, yamt-readahead-perfile, yamt-readahead-base3, yamt-readahead-base2, yamt-readahead-base, thorpej-vnode-attr-base, thorpej-vnode-attr
Branch point for: yamt-readahead
Changes since 1.143: +3 -90 lines
Diff to previous 1.143 (colored)

uninline vn_start_write and vn_finished_write as they are big enough.

Revision 1.143 / (download) - annotate - [select for diffs], Sat Sep 10 19:20:51 2005 UTC (18 years, 5 months ago) by jmmv
Branch: MAIN
Changes since 1.142: +5 -3 lines
Diff to previous 1.142 (colored)

Initial addition of tmpfs, an efficient memory file-system.  This project
was developed as part of Google's Summer of Code 2005 program.  This
change adds the kernel code, the mount_tmpfs utility, a regression test
suite and does all other related changes to integrate these.

The file-system is still *experimental*.  Therefore, it is disabled by
default in all kernels.  However, as typically done, a commented-out
entry is added in them to ease its setup.

Note that I haven't commited the required mountd(8) changes to be able
to export tmpfs file-systems because NFS support is still very unstable
and because, before enabling it, I'd like to do some other changes.

OK'ed by my project mentor, William Studenmund (wrstuden@).

Revision 1.134.2.5 / (download) - annotate - [select for diffs], Wed Aug 24 18:43:38 2005 UTC (18 years, 6 months ago) by riz
Branch: netbsd-3
CVS Tags: netbsd-3-1-RELEASE, netbsd-3-1-RC4, netbsd-3-1-RC3, netbsd-3-1-RC2, netbsd-3-1-RC1, netbsd-3-1-1-RELEASE, netbsd-3-1, netbsd-3-0-RELEASE, netbsd-3-0-RC6, netbsd-3-0-RC5, netbsd-3-0-RC4, netbsd-3-0-RC3, netbsd-3-0-RC2, netbsd-3-0-RC1, netbsd-3-0-3-RELEASE, netbsd-3-0-2-RELEASE, netbsd-3-0-1-RELEASE, netbsd-3-0
Changes since 1.134.2.4: +4 -2 lines
Diff to previous 1.134.2.4 (colored) to branchpoint 1.134 (colored) next main 1.135 (colored)

Pull up following revision(s) (requested by yamt in ticket #688):
	sys/miscfs/genfs/genfs_vnops.c: revision 1.98 via patch
	sys/ufs/ffs/ffs_vfsops.c: revision 1.165
	sys/ufs/lfs/lfs_extern.h: revision 1.69
	sys/fs/filecorefs/filecore_vfsops.c: revision 1.20
	sys/nfs/nfs_node.c: revision 1.80
	sys/fs/smbfs/smbfs_node.c: revision 1.24
	sys/fs/cd9660/cd9660_vfsops.c: revision 1.24
	sys/fs/msdosfs/msdosfs_denode.c: revision 1.8
	sys/miscfs/genfs/genfs_node.h: revision 1.6
	sys/ufs/lfs/lfs_vfsops.c: revision 1.183
	sys/ufs/ext2fs/ext2fs_vfsops.c: revision 1.86
	sys/fs/adosfs/advfsops.c: revision 1.23
	sys/fs/ntfs/ntfs_vfsops.c: revision 1.31
- constify genfs_ops.
- use member designators.

        sys/miscfs/genfs/genfs_vnops.c: revision 1.99 via patch
genfs_getpages: don't forget to put the vnode onto the syncer's work que
ue
even in the case of PGO_LOCKED.

        sys/uvm/uvm_bio.c: revision 1.40
        sys/uvm/uvm_pager.h: revision 1.29
        sys/miscfs/genfs/genfs_vnops.c: revision 1.100 via patch
        sys/ufs/ufs/ufs_inode.c: revision 1.50
- introduce PGO_NOBLOCKALLOC and use it for ubc mapping
  to prevent unnecessary block allocations in the case that
  page size > block size.
- ufs_balloc_range: use VM_PROT_WRITE+PGO_NOBLOCKALLOC rather than
  VM_PROT_READ.

        sys/uvm/uvm_fault.c: revision 1.96
        sys/miscfs/genfs/genfs_vnops.c: revision 1.101 via patch
        sys/uvm/uvm_object.h: revision 1.19
        sys/miscfs/genfs/genfs_node.h: revision 1.7
ensure that vnodes with dirty pages are always on syncer's queue.
- genfs_putpages: wait for i/o completion of PG_RELEASED/PG_PAGEOUT pages by
  setting "wasclean" false when encountering them.
  suggested by Stephan Uphoff in PR/24596 (1).
- genfs_putpages: write protect pages when cleaning out, if
  we're going to take the vnode off the syncer's queue.
  uvm_fault: don't write-map pages unless its vnode is already on
  the syncer's queue.
  fix PR/24596 (3) but in the different way from the suggested fix.
  (to keep our current behaviour, ie. not to require explicit msync.
  discussed on tech-kern@.)
- genfs_putpages: don't mistakenly take a vnode off the queue
  by introducing a generation number in genfs_node.
  genfs_getpages: increment the generation number.
  suggested by Stephan Uphoff in PR/24596 (2).
- add some assertions.

        sys/miscfs/genfs/genfs_vnops.c: revision 1.102 via patch
genfs_putpages: don't bother to clean the vnode unless VONWORKLST.

        sys/ufs/ffs/ffs_vnops.c: revision 1.71
ffs_full_fsync: because VBLK/VCHR can be mmap'ed,
do VOP_PUTPAGES for them as well.

        sys/uvm/uvm_fault.c: revision 1.97
uvm_fault: check a correct object in the case of layered filesystems.
fix PR/30811 from Jukka Salmi.

        sys/uvm/uvm_object.h: revision 1.20
        sys/ufs/ffs/ffs_vfsops.c: revision 1.167
        sys/uvm/uvm_bio.c: revision 1.41
        sys/ufs/ufs/ufs_vnops.c: revision 1.129
        sys/uvm/uvm_mmap.c: revision 1.92
        sys/uvm/uvm_fault.c: revision 1.98
        sys/kern/vfs_subr.c: revision 1.252
        sys/fs/msdosfs/denode.h: revision 1.5
        sys/miscfs/genfs/genfs_vnops.c: revision 1.103 via patch
        sys/fs/msdosfs/msdosfs_denode.c: revision 1.9
        sys/sys/vnode.h: revision 1.141
        sys/ufs/ufs/ufs_inode.c: revision 1.51
        sys/ufs/ufs/ufs_extern.h: revision 1.45 via patch
        sys/miscfs/genfs/genfs_node.h: revision 1.8
        sys/ufs/lfs/lfs_vfsops.c: revision 1.184
        sys/uvm/uvm_pager.h: revision 1.30
        sys/ufs/ext2fs/ext2fs_vfsops.c: revision 1.87
update file timestamps for nfsd loaned-read and mmap.
PR/25279.  discussed on tech-kern@.

        sys/miscfs/genfs/genfs_vnops.c: revision 1.104 via patch
don't write-protect wired pages.  pointed by Chuck Silvers.
for now, leave a vnode on the syncer's queue, as suggested by him.

        sys/ufs/ffs/ffs_vnops.c: revision 1.72
revert VCHR part of ffs_vnops.c 1.71.
as VCHR uses the device pager, no point to call VOP_PUTPAGES here.
pointed by Chuck Silvers.

Revision 1.142 / (download) - annotate - [select for diffs], Fri Aug 19 02:04:04 2005 UTC (18 years, 6 months ago) by christos
Branch: MAIN
Changes since 1.141: +2 -2 lines
Diff to previous 1.141 (colored)

64 bit inode changes.

Revision 1.141 / (download) - annotate - [select for diffs], Sat Jul 23 12:18:41 2005 UTC (18 years, 7 months ago) by yamt
Branch: MAIN
Changes since 1.140: +4 -2 lines
Diff to previous 1.140 (colored)

update file timestamps for nfsd loaned-read and mmap.
PR/25279.  discussed on tech-kern@.

Revision 1.134.2.4 / (download) - annotate - [select for diffs], Sat Jul 2 15:54:03 2005 UTC (18 years, 7 months ago) by tron
Branch: netbsd-3
Changes since 1.134.2.3: +2 -15 lines
Diff to previous 1.134.2.3 (colored) to branchpoint 1.134 (colored)

Pull up revision 1.140 (requested by elad in ticket #487):
- Avoid pollution of struct vnode. Save the fingerprint evaluation status
in the veriexec table entry; the lookups are very cheap now. Suggested
by Chuq.
- Handle non-regular (!VREG) files correctly).
- Remove (no longer needed) FINGERPRINT_NOENTRY.

Revision 1.134.2.3 / (download) - annotate - [select for diffs], Sat Jul 2 15:51:41 2005 UTC (18 years, 7 months ago) by tron
Branch: netbsd-3
Changes since 1.134.2.2: +3 -5 lines
Diff to previous 1.134.2.2 (colored) to branchpoint 1.134 (colored)

Pull up revision 1.139 (requested by elad in ticket #487):
More veriexec changes:
- Better organize strict level. Now we have 4 levels:
- Level 0, learning mode: Warnings only about anything that might've
resulted in 'access denied' or similar in a higher strict level.
- Level 1, IDS mode:
- Deny access on fingerprint mismatch.
- Deny modification of veriexec tables.
- Level 2, IPS mode:
- All implications of strict level 1.
- Deny write access to monitored files.
- Prevent removal of monitored files.
- Enforce access type - 'direct', 'indirect', or 'file'.
- Level 3, lockdown mode:
- All implications of strict level 2.
- Prevent creation of new files.
- Deny access to non-monitored files.
- Update sysctl(3) man-page with above. (date bumped too :)
- Remove FINGERPRINT_INDIRECT from possible fp_status values; it's no
longer needed.
- Simplify veriexec_removechk() in light of new strict level policies.
- Eliminate use of 'securelevel'; veriexec now behaves according to
its strict level only.

Revision 1.134.2.2 / (download) - annotate - [select for diffs], Sat Jul 2 15:46:53 2005 UTC (18 years, 7 months ago) by tron
Branch: netbsd-3
Changes since 1.134.2.1: +2 -2 lines
Diff to previous 1.134.2.1 (colored) to branchpoint 1.134 (colored)

Pull up revision 1.138 (requested by elad in ticket #487):
More veriexec refactoring.
- Use u_char for the fingerprint status.
- Add a pointer to the vnode's veriexec hash table entry in the vnode
struct. This saves a lookup and will also used by planned features.
- When removing a file from the tables, set the vnode fingerprint status
to NOENTRY.
- Add switch to do flag-specific handling in veriexec_verify(). At the
moment this prevents execution of FILE entries in strict level 2, but
it will also be used by planned features.
- Use memset() instead of bzero().
- Various cosmetic changes.

Revision 1.140 / (download) - annotate - [select for diffs], Sun Jun 19 18:22:37 2005 UTC (18 years, 8 months ago) by elad
Branch: MAIN
Branch point for: yamt-lazymbuf
Changes since 1.139: +2 -15 lines
Diff to previous 1.139 (colored)

- Avoid pollution of struct vnode. Save the fingerprint evaluation status
  in the veriexec table entry; the lookups are very cheap now. Suggested
  by Chuq.

- Handle non-regular (!VREG) files correctly).

- Remove (no longer needed) FINGERPRINT_NOENTRY.

Revision 1.139 / (download) - annotate - [select for diffs], Fri Jun 17 17:46:18 2005 UTC (18 years, 8 months ago) by elad
Branch: MAIN
Changes since 1.138: +3 -5 lines
Diff to previous 1.138 (colored)

More veriexec changes:

- Better organize strict level. Now we have 4 levels:
  - Level 0, learning mode: Warnings only about anything that might've
      resulted in 'access denied' or similar in a higher strict level.

  - Level 1, IDS mode:
    - Deny access on fingerprint mismatch.
    - Deny modification of veriexec tables.

  - Level 2, IPS mode:
    - All implications of strict level 1.
    - Deny write access to monitored files.
    - Prevent removal of monitored files.
    - Enforce access type - 'direct', 'indirect', or 'file'.

  - Level 3, lockdown mode:
    - All implications of strict level 2.
    - Prevent creation of new files.
    - Deny access to non-monitored files.

- Update sysctl(3) man-page with above. (date bumped too :)

- Remove FINGERPRINT_INDIRECT from possible fp_status values; it's no
  longer needed.

- Simplify veriexec_removechk() in light of new strict level policies.

- Eliminate use of 'securelevel'; veriexec now behaves according to
  its strict level only.

Revision 1.138 / (download) - annotate - [select for diffs], Mon Jun 13 20:17:54 2005 UTC (18 years, 8 months ago) by elad
Branch: MAIN
Changes since 1.137: +3 -3 lines
Diff to previous 1.137 (colored)

More veriexec refactoring.

  - Use u_char for the fingerprint status.
  - Add a pointer to the vnode's veriexec hash table entry in the vnode
    struct. This saves a lookup and will also used by planned features.
  - When removing a file from the tables, set the vnode fingerprint status
    to NOENTRY.
  - Add switch to do flag-specific handling in veriexec_verify(). At the
    moment this prevents execution of FILE entries in strict level 2, but
    it will also be used by planned features.
  - Use memset() instead of bzero().
  - Various cosmetic changes.

Revision 1.134.2.1 / (download) - annotate - [select for diffs], Fri Jun 10 14:48:56 2005 UTC (18 years, 8 months ago) by tron
Branch: netbsd-3
Changes since 1.134: +2 -3 lines
Diff to previous 1.134 (colored)

Pull up revision 1.135 (requested by elad in ticket #389):
Rototill of the verified exec functionality.
* We now use hash tables instead of a list to store the in kernel
fingerprints.
* Fingerprint methods handling has been made more flexible, it is now
even simpler to add new methods.
* the loader no longer passes in magic numbers representing the
fingerprint method so veriexecctl is not longer kernel specific.
* fingerprint methods can be tailored out using options in the kernel
config file.
* more fingerprint methods added - rmd160, sha256/384/512
* veriexecctl can now report the fingerprint methods supported by the
running kernel.
* regularised the naming of some portions of veriexec.

Revision 1.137 / (download) - annotate - [select for diffs], Mon May 30 22:12:35 2005 UTC (18 years, 9 months ago) by christos
Branch: MAIN
Changes since 1.136: +4 -4 lines
Diff to previous 1.136 (colored)

Remove parameter names from function declarations. Can you spell shadow?

Revision 1.136 / (download) - annotate - [select for diffs], Sun May 29 21:19:41 2005 UTC (18 years, 9 months ago) by christos
Branch: MAIN
Changes since 1.135: +2 -2 lines
Diff to previous 1.135 (colored)

Sprinkle const.

Revision 1.131.2.1 / (download) - annotate - [select for diffs], Fri Apr 29 11:29:38 2005 UTC (18 years, 10 months ago) by kent
Branch: kent-audio2
Changes since 1.131: +6 -6 lines
Diff to previous 1.131 (colored) next main 1.132 (colored)

sync with -current

Revision 1.135 / (download) - annotate - [select for diffs], Wed Apr 20 13:44:46 2005 UTC (18 years, 10 months ago) by blymn
Branch: MAIN
CVS Tags: kent-audio2-base
Changes since 1.134: +2 -3 lines
Diff to previous 1.134 (colored)

Rototill of the verified exec functionality.
  * We now use hash tables instead of a list to store the in kernel
    fingerprints.
  * Fingerprint methods handling has been made more flexible, it is now
    even simpler to add new methods.
  * the loader no longer passes in magic numbers representing the
    fingerprint method so veriexecctl is not longer kernel specific.
  * fingerprint methods can be tailored out using options in the kernel
    config file.
  * more fingerprint methods added - rmd160, sha256/384/512
  * veriexecctl can now report the fingerprint methods supported by the
    running kernel.
  * regularised the naming of some portions of veriexec.

Revision 1.131.4.2 / (download) - annotate - [select for diffs], Sat Mar 19 08:36:52 2005 UTC (18 years, 11 months ago) by yamt
Branch: yamt-km
Changes since 1.131.4.1: +3 -3 lines
Diff to previous 1.131.4.1 (colored) to branchpoint 1.131 (colored) next main 1.132 (colored)

sync with head.  xen and whitespace.  xen part is not finished.

Revision 1.112.2.13 / (download) - annotate - [select for diffs], Fri Mar 4 16:54:24 2005 UTC (18 years, 11 months ago) by skrll
Branch: ktrace-lwp
Changes since 1.112.2.12: +3 -3 lines
Diff to previous 1.112.2.12 (colored)

Sync with HEAD.

Hi Perry!

Revision 1.134 / (download) - annotate - [select for diffs], Sat Feb 26 22:25:34 2005 UTC (19 years ago) by perry
Branch: MAIN
CVS Tags: yamt-km-base4, yamt-km-base3, netbsd-3-base
Branch point for: netbsd-3
Changes since 1.133: +3 -3 lines
Diff to previous 1.133 (colored)

nuke trailing whitespace

Revision 1.131.4.1 / (download) - annotate - [select for diffs], Sat Feb 12 18:17:56 2005 UTC (19 years ago) by yamt
Branch: yamt-km
Changes since 1.131: +3 -2 lines
Diff to previous 1.131 (colored)

sync with head.

Revision 1.112.2.12 / (download) - annotate - [select for diffs], Fri Feb 4 11:48:07 2005 UTC (19 years ago) by skrll
Branch: ktrace-lwp
Changes since 1.112.2.11: +3 -2 lines
Diff to previous 1.112.2.11 (colored)

Sync with HEAD.

Revision 1.133 / (download) - annotate - [select for diffs], Thu Feb 3 19:20:02 2005 UTC (19 years ago) by perry
Branch: MAIN
CVS Tags: yamt-km-base2
Changes since 1.132: +2 -2 lines
Diff to previous 1.132 (colored)

de-__P

Revision 1.132 / (download) - annotate - [select for diffs], Tue Jan 25 23:55:21 2005 UTC (19 years, 1 month ago) by wrstuden
Branch: MAIN
Changes since 1.131: +2 -1 lines
Diff to previous 1.131 (colored)

Extend fsync_range(2) to support the FDISKSYNC flag, which requests
that the sync be propogated out through the disk drive caches.

Revision 1.112.2.11 / (download) - annotate - [select for diffs], Mon Jan 17 19:33:10 2005 UTC (19 years, 1 month ago) by skrll
Branch: ktrace-lwp
Changes since 1.112.2.10: +14 -8 lines
Diff to previous 1.112.2.10 (colored)

Sync with HEAD.

Revision 1.131 / (download) - annotate - [select for diffs], Mon Jan 3 16:33:33 2005 UTC (19 years, 1 month ago) by thorpej
Branch: MAIN
CVS Tags: yamt-km-base, kent-audio1-beforemerge
Branch point for: yamt-km, kent-audio2
Changes since 1.130: +9 -7 lines
Diff to previous 1.130 (colored)

Add IO_NORMAL and IO_EXT flags, that will be used by file system extended
attribute support code.

Revision 1.130 / (download) - annotate - [select for diffs], Sun Jan 2 16:08:30 2005 UTC (19 years, 1 month ago) by thorpej
Branch: MAIN
Changes since 1.129: +6 -1 lines
Diff to previous 1.129 (colored)

Add the system call and VFS infrastructure for file system extended
attributes.

From FreeBSD.

Revision 1.129 / (download) - annotate - [select for diffs], Fri Dec 31 14:54:46 2004 UTC (19 years, 1 month ago) by yamt
Branch: MAIN
Changes since 1.128: +1 -2 lines
Diff to previous 1.128 (colored)

remove unused VDIRTY.

Revision 1.112.2.10 / (download) - annotate - [select for diffs], Sat Dec 18 09:33:18 2004 UTC (19 years, 2 months ago) by skrll
Branch: ktrace-lwp
Changes since 1.112.2.9: +19 -5 lines
Diff to previous 1.112.2.9 (colored)

Sync with HEAD.

Revision 1.128 / (download) - annotate - [select for diffs], Sat Dec 18 03:08:48 2004 UTC (19 years, 2 months ago) by christos
Branch: MAIN
Changes since 1.127: +19 -5 lines
Diff to previous 1.127 (colored)

Define debug-printing arrays next to their respective enums/bit definitions.

Revision 1.112.2.9 / (download) - annotate - [select for diffs], Sun Nov 14 08:16:13 2004 UTC (19 years, 3 months ago) by skrll
Branch: ktrace-lwp
Changes since 1.112.2.8: +2 -2 lines
Diff to previous 1.112.2.8 (colored)

Sync with HEAD.

Revision 1.127 / (download) - annotate - [select for diffs], Wed Nov 10 17:30:56 2004 UTC (19 years, 3 months ago) by christos
Branch: MAIN
CVS Tags: kent-audio1-base, kent-audio1
Changes since 1.126: +2 -2 lines
Diff to previous 1.126 (colored)

Add a vnode type for ptyfs PTYs and a mount name for ptyfs.

Revision 1.112.2.8 / (download) - annotate - [select for diffs], Fri Sep 24 10:53:43 2004 UTC (19 years, 5 months ago) by skrll
Branch: ktrace-lwp
Changes since 1.112.2.7: +2 -1 lines
Diff to previous 1.112.2.7 (colored)

Sync with HEAD.

Revision 1.112.2.7 / (download) - annotate - [select for diffs], Tue Sep 21 13:38:51 2004 UTC (19 years, 5 months ago) by skrll
Branch: ktrace-lwp
Changes since 1.112.2.6: +11 -11 lines
Diff to previous 1.112.2.6 (colored)

Fix the sync with head I botched.

Revision 1.126 / (download) - annotate - [select for diffs], Tue Sep 21 03:10:35 2004 UTC (19 years, 5 months ago) by thorpej
Branch: MAIN
Changes since 1.125: +2 -1 lines
Diff to previous 1.125 (colored)

Add a new VNODE_LOCKDEBUG option, which enables checks in the VOP_*()
calls to ensure that the vnode lock state is as expected when the VOP
call is made.  Modify vnode_if.src to set the expected state according
to the documenting lock table for each VOP.  Modify vnode_if.sh to emit
the checks.

Notes:
- The checks are only performed if the vnode has the VLOCKSWORK bit
  set.  Some file systems (e.g. specfs) don't even bother with vnode
  locks, so of course the checks will fail.
- We can't actually run with VNODE_LOCKDEBUG because there are so many
  vnode locking problems, not the least of which is the "use SHARED for
  VOP_READ()" issue, which screws things up for the entire call chain.

Inspired by similar changes in OpenBSD, but implemented differently.

Revision 1.112.2.6 / (download) - annotate - [select for diffs], Sat Sep 18 14:56:31 2004 UTC (19 years, 5 months ago) by skrll
Branch: ktrace-lwp
Changes since 1.112.2.5: +11 -11 lines
Diff to previous 1.112.2.5 (colored)

Sync with HEAD.

Revision 1.112.2.5 / (download) - annotate - [select for diffs], Wed Aug 25 06:59:14 2004 UTC (19 years, 6 months ago) by skrll
Branch: ktrace-lwp
Changes since 1.112.2.4: +2 -1 lines
Diff to previous 1.112.2.4 (colored)

Sync with HEAD.

Revision 1.112.2.4 / (download) - annotate - [select for diffs], Tue Aug 24 17:57:41 2004 UTC (19 years, 6 months ago) by skrll
Branch: ktrace-lwp
Changes since 1.112.2.3: +2 -2 lines
Diff to previous 1.112.2.3 (colored)

Undo part of the ktrace/lwp changes.  In particular:
* Remove the "lwp *" argument that was added to vget().  Turns out
  that nothing actually used it!
* Remove the "lwp *" arguments that were added to VFS_ROOT(), VFS_VGET(),
  and VFS_FHTOVP(); all they did was pass it to vget() (which, as noted
  above, didn't use it).
* Remove all of the "lwp *" arguments to internal functions that were added
  just to appease the above.

Revision 1.125 / (download) - annotate - [select for diffs], Fri Aug 13 23:15:39 2004 UTC (19 years, 6 months ago) by mycroft
Branch: MAIN
Changes since 1.124: +2 -1 lines
Diff to previous 1.124 (colored)

Add a new flag, UPDATE_CLOSE, to be used internally by file systems.

Revision 1.112.2.3 / (download) - annotate - [select for diffs], Tue Aug 3 10:56:33 2004 UTC (19 years, 6 months ago) by skrll
Branch: ktrace-lwp
Changes since 1.112.2.2: +185 -55 lines
Diff to previous 1.112.2.2 (colored)

Sync with HEAD

Revision 1.124 / (download) - annotate - [select for diffs], Thu Jul 1 10:03:32 2004 UTC (19 years, 8 months ago) by hannken
Branch: MAIN
Changes since 1.123: +3 -1 lines
Diff to previous 1.123 (colored)

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>

Revision 1.123 / (download) - annotate - [select for diffs], Tue May 25 14:54:58 2004 UTC (19 years, 9 months ago) by hannken
Branch: MAIN
Changes since 1.122: +3 -3 lines
Diff to previous 1.122 (colored)

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>

Revision 1.122 / (download) - annotate - [select for diffs], Sun May 2 12:21:02 2004 UTC (19 years, 9 months ago) by pk
Branch: MAIN
Changes since 1.121: +5 -1 lines
Diff to previous 1.121 (colored)

Add a mutex for mount point I/O and wait counters (i.e. the `mnt_wcnt',
`mnt_writeopcountupper' and `mnt_writeopcountlower' members).

Revision 1.121 / (download) - annotate - [select for diffs], Sat Feb 14 00:00:57 2004 UTC (20 years ago) by hannken
Branch: MAIN
CVS Tags: netbsd-2-base, netbsd-2-1-RELEASE, netbsd-2-1-RC6, netbsd-2-1-RC5, netbsd-2-1-RC4, netbsd-2-1-RC3, netbsd-2-1-RC2, netbsd-2-1-RC1, netbsd-2-1, netbsd-2-0-base, netbsd-2-0-RELEASE, netbsd-2-0-RC5, netbsd-2-0-RC4, netbsd-2-0-RC3, netbsd-2-0-RC2, netbsd-2-0-RC1, netbsd-2-0-3-RELEASE, netbsd-2-0-2-RELEASE, netbsd-2-0-1-RELEASE, netbsd-2-0, netbsd-2
Changes since 1.120: +5 -1 lines
Diff to previous 1.120 (colored)

Add a generic copy-on-write hook to add/remove functions that will be
called with every buffer written through spec_strategy().

Used by fss(4). Future file-system-internal snapshots will need them too.

Welcome to 1.6ZK

Approved by: Jason R. Thorpe <thorpej@netbsd.org>

Revision 1.120 / (download) - annotate - [select for diffs], Wed Jan 14 11:28:04 2004 UTC (20 years, 1 month ago) by yamt
Branch: MAIN
Changes since 1.119: +36 -9 lines
Diff to previous 1.119 (colored)

bump vnode hold count for page cache as well
to resolve unfairness between page cache and traditional buffer cache.
pointed by enami tsugutomo on current-users@.

Revision 1.119 / (download) - annotate - [select for diffs], Sat Jan 10 17:16:38 2004 UTC (20 years, 1 month ago) by hannken
Branch: MAIN
Changes since 1.118: +3 -3 lines
Diff to previous 1.118 (colored)

Allow vfs_write_suspend() to wait if the file system is already
suspending.

Move vfs_write_suspend() and vfs_write_resume() from kern/vfs_vnops.c
to kern/vfs_subr.c.

Change vnode write gating in ufs/ffs/ffs_softdep.c (from FreeBSD).

When vnodes are throttled in softdep_trackbufs() check for
file system suspension every 10 msecs to avoid a deadlock.

Revision 1.118 / (download) - annotate - [select for diffs], Tue Nov 18 18:26:18 2003 UTC (20 years, 3 months ago) by dbj
Branch: MAIN
Changes since 1.117: +2 -1 lines
Diff to previous 1.117 (colored)

add "show mount" ddb command

Revision 1.117 / (download) - annotate - [select for diffs], Wed Oct 15 11:29:01 2003 UTC (20 years, 4 months ago) by hannken
Branch: MAIN
Changes since 1.116: +99 -2 lines
Diff to previous 1.116 (colored)

Add the gating of system calls that cause modifications to the underlying
file system.
The function vfs_write_suspend stops all new write operations to a file
system, allows any file system modifying system calls already in progress
to complete, then sync's the file system to disk and returns. The
function vfs_write_resume allows the suspended write operations to
complete.

From FreeBSD with slight modifications.

Approved by: Frank van der Linden <fvdl@netbsd.org>

Revision 1.94.10.1 / (download) - annotate - [select for diffs], Thu Oct 2 09:53:41 2003 UTC (20 years, 4 months ago) by tron
Branch: netbsd-1-6
CVS Tags: netbsd-1-6-PATCH002-RELEASE, netbsd-1-6-PATCH002-RC4, netbsd-1-6-PATCH002-RC3, netbsd-1-6-PATCH002-RC2, netbsd-1-6-PATCH002-RC1, netbsd-1-6-PATCH002
Changes since 1.94: +3 -2 lines
Diff to previous 1.94 (colored) next main 1.95 (colored)

Pull up revision 1.96 (requested by junyoung in ticket #1488):
count executable image pages as executable for vm-usage purposes.
also, always do the VTEXT vs. v_writecount mutual exclusion
(which we previously skipped if the text or data segment was empty).

Revision 1.116 / (download) - annotate - [select for diffs], Thu Aug 7 16:34:23 2003 UTC (20 years, 6 months ago) by agc
Branch: MAIN
Changes since 1.115: +2 -6 lines
Diff to previous 1.115 (colored)

Move UCB-licensed code from 4-clause to 3-clause licence.

Patches provided by Joel Baker in PR 22364, verified by myself.

Revision 1.115 / (download) - annotate - [select for diffs], Wed Jul 30 12:10:59 2003 UTC (20 years, 7 months ago) by yamt
Branch: MAIN
Changes since 1.114: +1 -2 lines
Diff to previous 1.114 (colored)

eliminate v_id.

Revision 1.114 / (download) - annotate - [select for diffs], Wed Jul 30 12:09:47 2003 UTC (20 years, 7 months ago) by yamt
Branch: MAIN
Changes since 1.113: +6 -1 lines
Diff to previous 1.113 (colored)

maintain the list of namecaches attached to the vnode.
it makes vnodes freeable.

Revision 1.113 / (download) - annotate - [select for diffs], Tue Jul 8 06:49:23 2003 UTC (20 years, 7 months ago) by itojun
Branch: MAIN
Changes since 1.112: +35 -40 lines
Diff to previous 1.112 (colored)

prototype must not carry variable name

Revision 1.112.2.2 / (download) - annotate - [select for diffs], Thu Jul 3 01:32:56 2003 UTC (20 years, 7 months ago) by wrstuden
Branch: ktrace-lwp
Changes since 1.112.2.1: +2 -2 lines
Diff to previous 1.112.2.1 (colored)

LWP-ify union fs.

Note: These changes suffer from the same cnp->cn_lwp issue noted for
ufs. They will need to get fixed at the same time as ufs. The fix is to
add struct lwp * as a parameter to some VOPs.

Note also that most of the cn_lwp references used to be cn_proc references,
so if cnp->cn_lwp is bad to use, unionfs's been naughty for quite some
time.

Revision 1.112.2.1 / (download) - annotate - [select for diffs], Wed Jul 2 15:27:18 2003 UTC (20 years, 8 months ago) by darrenr
Branch: ktrace-lwp
Changes since 1.112: +10 -10 lines
Diff to previous 1.112 (colored)

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.

Revision 1.112 / (download) - annotate - [select for diffs], Sun Jun 29 22:32:30 2003 UTC (20 years, 8 months ago) by fvdl
Branch: MAIN
Branch point for: ktrace-lwp
Changes since 1.111: +10 -10 lines
Diff to previous 1.111 (colored)

Back out the lwp/ktrace changes. They contained a lot of colateral damage,
and need to be examined and discussed more.

Revision 1.111 / (download) - annotate - [select for diffs], Sun Jun 29 18:43:38 2003 UTC (20 years, 8 months ago) by thorpej
Branch: MAIN
Changes since 1.110: +2 -2 lines
Diff to previous 1.110 (colored)

Undo part of the ktrace/lwp changes.  In particular:
* Remove the "lwp *" argument that was added to vget().  Turns out
  that nothing actually used it!
* Remove the "lwp *" arguments that were added to VFS_ROOT(), VFS_VGET(),
  and VFS_FHTOVP(); all they did was pass it to vget() (which, as noted
  above, didn't use it).
* Remove all of the "lwp *" arguments to internal functions that were added
  just to appease the above.

Revision 1.110 / (download) - annotate - [select for diffs], Sun Jun 29 02:56:23 2003 UTC (20 years, 8 months ago) by thorpej
Branch: MAIN
Changes since 1.109: +2 -2 lines
Diff to previous 1.109 (colored)

Adjust to ktrace/lwp changes.

Revision 1.109 / (download) - annotate - [select for diffs], Sat Jun 28 14:22:23 2003 UTC (20 years, 8 months ago) by darrenr
Branch: MAIN
Changes since 1.108: +10 -10 lines
Diff to previous 1.108 (colored)

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

Revision 1.108 / (download) - annotate - [select for diffs], Sun Apr 6 07:02:08 2003 UTC (20 years, 10 months ago) by gmcgarry
Branch: MAIN
Changes since 1.107: +2 -2 lines
Diff to previous 1.107 (colored)

Xref vfssubr(9)

Revision 1.107 / (download) - annotate - [select for diffs], Wed Apr 2 10:39:34 2003 UTC (20 years, 11 months ago) by fvdl
Branch: MAIN
Changes since 1.106: +2 -1 lines
Diff to previous 1.106 (colored)

Add support for UFS2. UFS2 is an enhanced FFS, adding support for
64 bit block pointers, extended attribute storage, and a few
other things.

This commit does not yet include the code to manipulate the extended
storage (for e.g. ACLs), this will be done later.

Originally written by Kirk McKusick and Network Associates Laboratories for
FreeBSD.

Revision 1.106 / (download) - annotate - [select for diffs], Mon Mar 17 09:11:29 2003 UTC (20 years, 11 months ago) by jdolecek
Branch: MAIN
Changes since 1.105: +6 -1 lines
Diff to previous 1.105 (colored)

make it possible for UNION fs to be loaded via LKM - instead of
having some #ifdef UNION code in vfs_vnops.c, introduce variable
'vn_union_readdir_hook' which is set to address of appropriate
vn_readdir() hook by union filesystem when it's loaded & mounted

Revision 1.105 / (download) - annotate - [select for diffs], Mon Mar 17 09:06:40 2003 UTC (20 years, 11 months ago) by jdolecek
Branch: MAIN
Changes since 1.104: +2 -2 lines
Diff to previous 1.104 (colored)

apparently variable 'buf' in vn_readdir() shadows some global symbol,
remove from prototype

Revision 1.104 / (download) - annotate - [select for diffs], Tue Feb 25 23:01:39 2003 UTC (21 years ago) by jdolecek
Branch: MAIN
Changes since 1.103: +2 -2 lines
Diff to previous 1.103 (colored)

make iftovt_tab[] const

Revision 1.103 / (download) - annotate - [select for diffs], Wed Feb 5 21:38:43 2003 UTC (21 years ago) by pk
Branch: MAIN
Changes since 1.102: +13 -1 lines
Diff to previous 1.102 (colored)

Make the buffer cache code MP-safe.

Revision 1.102 / (download) - annotate - [select for diffs], Sat Feb 1 06:23:52 2003 UTC (21 years ago) by thorpej
Branch: MAIN
Changes since 1.101: +5 -1 lines
Diff to previous 1.101 (colored)

Add extensible malloc types, adapted from FreeBSD.  This turns
malloc types into a structure, a pointer to which is passed around,
instead of an int constant.  Allow the limit to be adjusted when the
malloc type is defined, or with a function call, as suggested by
Jonathan Stone.

Revision 1.89.2.10 / (download) - annotate - [select for diffs], Tue Jan 7 21:42:16 2003 UTC (21 years, 1 month ago) by thorpej
Branch: nathanw_sa
CVS Tags: nathanw_sa_end
Changes since 1.89.2.9: +2 -2 lines
Diff to previous 1.89.2.9 (colored) next main 1.90 (colored)

Sync with HEAD.

Revision 1.101 / (download) - annotate - [select for diffs], Mon Jan 6 20:30:39 2003 UTC (21 years, 1 month ago) by wiz
Branch: MAIN
CVS Tags: nathanw_sa_before_merge, nathanw_sa_base
Changes since 1.100: +2 -2 lines
Diff to previous 1.100 (colored)

writable, not writeable.

Revision 1.89.2.9 / (download) - annotate - [select for diffs], Mon Nov 11 22:16:44 2002 UTC (21 years, 3 months ago) by nathanw
Branch: nathanw_sa
Changes since 1.89.2.8: +55 -23 lines
Diff to previous 1.89.2.8 (colored)

Catch up to -current

Revision 1.100 / (download) - annotate - [select for diffs], Tue Oct 29 12:31:26 2002 UTC (21 years, 4 months ago) by blymn
Branch: MAIN
CVS Tags: gmcgarry_ucred_base, gmcgarry_ucred, gmcgarry_ctxsw_base, gmcgarry_ctxsw, fvdl_fs64_base
Changes since 1.99: +18 -1 lines
Diff to previous 1.99 (colored)

Added support for fingerprinted executables aka verified exec

Revision 1.99 / (download) - annotate - [select for diffs], Wed Oct 23 09:15:02 2002 UTC (21 years, 4 months ago) by jdolecek
Branch: MAIN
CVS Tags: kqueue-aftermerge
Changes since 1.98: +6 -1 lines
Diff to previous 1.98 (colored)

merge kqueue branch into -current

kqueue provides a stateful and efficient event notification framework
currently supported events include socket, file, directory, fifo,
pipe, tty and device changes, and monitoring of processes and signals

kqueue is supported by all writable filesystems in NetBSD tree
(with exception of Coda) and all device drivers supporting poll(2)

based on work done by Jonathan Lemon for FreeBSD
initial NetBSD port done by Luke Mewburn and Jason Thorpe

Revision 1.98 / (download) - annotate - [select for diffs], Wed Oct 23 06:45:51 2002 UTC (21 years, 4 months ago) by gmcgarry
Branch: MAIN
CVS Tags: kqueue-beforemerge
Changes since 1.97: +34 -24 lines
Diff to previous 1.97 (colored)

vclean() isn't part of the interface so make it local.
Sort prototypes by the interface they belong to.

Revision 1.89.2.8 / (download) - annotate - [select for diffs], Fri Oct 18 02:45:43 2002 UTC (21 years, 4 months ago) by nathanw
Branch: nathanw_sa
Changes since 1.89.2.7: +3 -10 lines
Diff to previous 1.89.2.7 (colored)

Catch up to -current.

Revision 1.97 / (download) - annotate - [select for diffs], Mon Oct 14 04:18:56 2002 UTC (21 years, 4 months ago) by gmcgarry
Branch: MAIN
Changes since 1.96: +2 -10 lines
Diff to previous 1.96 (colored)

vn_stat() can now take a struct vnode * for consistency.  Hide away
the opaque file descriptor operations.

Revision 1.96 / (download) - annotate - [select for diffs], Sat Oct 5 22:34:06 2002 UTC (21 years, 4 months ago) by chs
Branch: MAIN
Changes since 1.95: +3 -2 lines
Diff to previous 1.95 (colored)

count executable image pages as executable for vm-usage purposes.
also, always do the VTEXT vs. v_writecount mutual exclusion
(which we previously skipped if the text or data segment was empty).

Revision 1.91.2.4 / (download) - annotate - [select for diffs], Fri Sep 6 08:50:08 2002 UTC (21 years, 5 months ago) by jdolecek
Branch: kqueue
Changes since 1.91.2.3: +4 -5 lines
Diff to previous 1.91.2.3 (colored) to branchpoint 1.91 (colored) next main 1.92 (colored)

sync kqueue branch with HEAD

Revision 1.94.8.1 / (download) - annotate - [select for diffs], Thu Aug 29 00:57:01 2002 UTC (21 years, 6 months ago) by gehenna
Branch: gehenna-devsw
Changes since 1.94: +4 -5 lines
Diff to previous 1.94 (colored) next main 1.95 (colored)

catch up with -current.

Revision 1.89.2.7 / (download) - annotate - [select for diffs], Tue Aug 27 23:48:27 2002 UTC (21 years, 6 months ago) by nathanw
Branch: nathanw_sa
Changes since 1.89.2.6: +4 -5 lines
Diff to previous 1.89.2.6 (colored)

Catch up to -current.

Revision 1.95 / (download) - annotate - [select for diffs], Wed Aug 14 18:31:36 2002 UTC (21 years, 6 months ago) by soren
Branch: MAIN
CVS Tags: kqueue-base, gehenna-devsw-base
Changes since 1.94: +4 -5 lines
Diff to previous 1.94 (colored)

Remove bogus comment.

Revision 1.89.2.6 / (download) - annotate - [select for diffs], Thu Feb 28 04:15:26 2002 UTC (22 years ago) by nathanw
Branch: nathanw_sa
Changes since 1.89.2.5: +1 -1 lines
Diff to previous 1.89.2.5 (colored)

Catch up to -current.

Revision 1.89.2.5 / (download) - annotate - [select for diffs], Fri Jan 11 23:39:51 2002 UTC (22 years, 1 month ago) by nathanw
Branch: nathanw_sa
Changes since 1.89.2.4: +2 -2 lines
Diff to previous 1.89.2.4 (colored)

More catchup.

Revision 1.91.2.3 / (download) - annotate - [select for diffs], Thu Jan 10 20:04:53 2002 UTC (22 years, 1 month ago) by thorpej
Branch: kqueue
Changes since 1.91.2.2: +13 -20 lines
Diff to previous 1.91.2.2 (colored) to branchpoint 1.91 (colored)

Sync kqueue branch with -current.

Revision 1.94 / (download) - annotate - [select for diffs], Wed Jan 9 00:18:02 2002 UTC (22 years, 1 month ago) by deberg
Branch: MAIN
CVS Tags: newlock-base, newlock, netbsd-1-6-base, netbsd-1-6-RELEASE, netbsd-1-6-RC3, netbsd-1-6-RC2, netbsd-1-6-RC1, netbsd-1-6-PATCH001-RELEASE, netbsd-1-6-PATCH001-RC3, netbsd-1-6-PATCH001-RC2, netbsd-1-6-PATCH001-RC1, netbsd-1-6-PATCH001, ifpoll-base, eeh-devprop-base, eeh-devprop
Branch point for: netbsd-1-6, gehenna-devsw
Changes since 1.93: +2 -2 lines
Diff to previous 1.93 (colored)

add SMBFS

Revision 1.89.2.4 / (download) - annotate - [select for diffs], Wed Nov 14 19:18:52 2001 UTC (22 years, 3 months ago) by nathanw
Branch: nathanw_sa
Changes since 1.89.2.3: +3 -2 lines
Diff to previous 1.89.2.3 (colored)

Catch up to -current.

Revision 1.92.2.1 / (download) - annotate - [select for diffs], Mon Nov 12 21:19:42 2001 UTC (22 years, 3 months ago) by thorpej
Branch: thorpej-mips-cache
Changes since 1.92: +3 -2 lines
Diff to previous 1.92 (colored) next main 1.93 (colored)

Sync the thorpej-mips-cache branch with -current.

Revision 1.93 / (download) - annotate - [select for diffs], Tue Oct 30 15:32:04 2001 UTC (22 years, 4 months ago) by thorpej
Branch: MAIN
CVS Tags: thorpej-mips-cache-base
Changes since 1.92: +3 -2 lines
Diff to previous 1.92 (colored)

- Add a new vnode flag VEXECMAP, which indicates that a vnode has
  executable mappings.  Stop overloading VTEXT for this purpose (VTEXT
  also has another meaning).
- Rename vn_marktext() to vn_markexec(), and use it when executable
  mappings of a vnode are established.
- In places where we want to set VTEXT, set it in v_flag directly, rather
  than making a function call to do this (it no longer makes sense to
  use a function call, since we no longer overload VTEXT with VEXECMAP's
  meaning).

VEXECMAP suggested by Chuq Silvers.

Revision 1.91.4.4 / (download) - annotate - [select for diffs], Mon Oct 1 12:48:16 2001 UTC (22 years, 5 months ago) by fvdl
Branch: thorpej-devvp
Changes since 1.91.4.3: +10 -18 lines
Diff to previous 1.91.4.3 (colored) to branchpoint 1.91 (colored) next main 1.92 (colored)

Catch up with -current.

Revision 1.91.4.3 / (download) - annotate - [select for diffs], Fri Sep 28 20:37:00 2001 UTC (22 years, 5 months ago) by fvdl
Branch: thorpej-devvp
Changes since 1.91.4.2: +2 -1 lines
Diff to previous 1.91.4.2 (colored) to branchpoint 1.91 (colored)

Add flag that says "this vnode had its specinfo deallocation deferred".

Revision 1.91.4.2 / (download) - annotate - [select for diffs], Wed Sep 26 15:28:26 2001 UTC (22 years, 5 months ago) by fvdl
Branch: thorpej-devvp
Changes since 1.91.4.1: +44 -4 lines
Diff to previous 1.91.4.1 (colored) to branchpoint 1.91 (colored)

* add a VCLONED vnode flag that indicates a vnode representing a cloned
  device.
* rename REVOKEALL to REVOKEALIAS, and add a REVOKECLONE flag, to pass
  to VOP_REVOKE
* the revoke system call will revoke all aliases, as before, but not the
  clones
* vdevgone is called when detaching a device, so make it use REVOKECLONE
  to get rid of all clones as well
* clean up all uses of VOP_OPEN wrt. locking.
* add a few VOPS to spec_vnops that need to do something when it's a
  clone vnode (access and getattr)
* add a copy of the vnode vattr structure of the original 'master' vnode
  to the specinfo of a cloned vnode. could possibly redirect getattr to
  the 'master' vnode, but this has issues with revoke
* add a vdev_reassignvp function that disassociates a vnode from its
  original device, and reassociates it with the specified dev_t. to be
  used by cloning devices only, in case a new minor is allocated.
* change all direct references in drivers to v_devcookie and v_rdev
  to vdev_privdata(vp) and vdev_rdev(vp). for diagnostic purposes
  when debugging race conditions that still exist wrt. locking and
  revoking vnodes.
* make the locking state of a vnode consistent when passed to
  d_open and d_close (unlocked). locked would be better, but has
  some deadlock issues

Revision 1.89.2.3 / (download) - annotate - [select for diffs], Fri Sep 21 22:37:02 2001 UTC (22 years, 5 months ago) by nathanw
Branch: nathanw_sa
Changes since 1.89.2.2: +10 -18 lines
Diff to previous 1.89.2.2 (colored)

Catch up to -current.

Revision 1.91.4.1 / (download) - annotate - [select for diffs], Tue Sep 18 19:14:00 2001 UTC (22 years, 5 months ago) by fvdl
Branch: thorpej-devvp
Changes since 1.91: +3 -1 lines
Diff to previous 1.91 (colored)

Various changes to make cloning devices possible:

	* Add an extra argument (struct vnode **) to VOP_OPEN. If it is
	  not NULL, specfs will create a cloned (aliased) vnode during
	  the call, and return it there. The caller should release and
	  unlock the original vnode if a new vnode was returned. The
	  new vnode is returned locked.

	* Add a flag field to the cdevsw and bdevsw structures.
	  DF_CLONING indicates that it wants a new vnode for each
	  open (XXX is there a better way? devprop?)

	* If a device is cloning, always call the close entry
	  point for a VOP_CLOSE.


Also, rewrite cons.c to do the right thing with vnodes. Use VOPs
rather then direct device entry calls. Suggested by mycroft@

Light to moderate testing done an i386 system (arch doesn't matter
though, these are MI changes).

Revision 1.92 / (download) - annotate - [select for diffs], Sat Sep 15 20:36:41 2001 UTC (22 years, 5 months ago) by chs
Branch: MAIN
CVS Tags: thorpej-devvp-base3, thorpej-devvp-base2, post-chs-ubcperf
Branch point for: thorpej-mips-cache
Changes since 1.91: +10 -18 lines
Diff to previous 1.91 (colored)

a whole bunch of changes to improve performance and robustness under load:

 - remove special treatment of pager_map mappings in pmaps.  this is
   required now, since I've removed the globals that expose the address range.
   pager_map now uses pmap_kenter_pa() instead of pmap_enter(), so there's
   no longer any need to special-case it.
 - eliminate struct uvm_vnode by moving its fields into struct vnode.
 - rewrite the pageout path.  the pager is now responsible for handling the
   high-level requests instead of only getting control after a bunch of work
   has already been done on its behalf.  this will allow us to UBCify LFS,
   which needs tighter control over its pages than other filesystems do.
   writing a page to disk no longer requires making it read-only, which
   allows us to write wired pages without causing all kinds of havoc.
 - use a new PG_PAGEOUT flag to indicate that a page should be freed
   on behalf of the pagedaemon when it's unlocked.  this flag is very similar
   to PG_RELEASED, but unlike PG_RELEASED, PG_PAGEOUT can be cleared if the
   pageout fails due to eg. an indirect-block buffer being locked.
   this allows us to remove the "version" field from struct vm_page,
   and together with shrinking "loan_count" from 32 bits to 16,
   struct vm_page is now 4 bytes smaller.
 - no longer use PG_RELEASED for swap-backed pages.  if the page is busy
   because it's being paged out, we can't release the swap slot to be
   reallocated until that write is complete, but unlike with vnodes we
   don't keep a count of in-progress writes so there's no good way to
   know when the write is done.  instead, when we need to free a busy
   swap-backed page, just sleep until we can get it busy ourselves.
 - implement a fast-path for extending writes which allows us to avoid
   zeroing new pages.  this substantially reduces cpu usage.
 - encapsulate the data used by the genfs code in a struct genfs_node,
   which must be the first element of the filesystem-specific vnode data
   for filesystems which use genfs_{get,put}pages().
 - eliminate many of the UVM pagerops, since they aren't needed anymore
   now that the pager "put" operation is a higher-level operation.
 - enhance the genfs code to allow NFS to use the genfs_{get,put}pages
   instead of a modified copy.
 - clean up struct vnode by removing all the fields that used to be used by
   the vfs_cluster.c code (which we don't use anymore with UBC).
 - remove kmem_object and mb_object since they were useless.
   instead of allocating pages to these objects, we now just allocate
   pages with no object.  such pages are mapped in the kernel until they
   are freed, so we can use the mapping to find the page to free it.
   this allows us to remove splvm() protection in several places.

The sum of all these changes improves write throughput on my
decstation 5000/200 to within 1% of the rate of NetBSD 1.5
and reduces the elapsed time for "make release" of a NetBSD 1.5
source tree on my 128MB pc to 10% less than a 1.5 kernel took.

Revision 1.91.2.2 / (download) - annotate - [select for diffs], Sat Sep 8 00:40:25 2001 UTC (22 years, 5 months ago) by thorpej
Branch: kqueue
Changes since 1.91.2.1: +3 -1 lines
Diff to previous 1.91.2.1 (colored) to branchpoint 1.91 (colored)

Centralize the definition of VN_KNOTE().

Revision 1.91.2.1 / (download) - annotate - [select for diffs], Tue Jul 10 13:28:45 2001 UTC (22 years, 7 months ago) by lukem
Branch: kqueue
Changes since 1.91: +4 -1 lines
Diff to previous 1.91 (colored)

add struct klist v_klist to struct vnode, and prototype vn_kqfilter()

Revision 1.89.2.2 / (download) - annotate - [select for diffs], Thu Jun 21 20:10:00 2001 UTC (22 years, 8 months ago) by nathanw
Branch: nathanw_sa
Changes since 1.89.2.1: +2 -1 lines
Diff to previous 1.89.2.1 (colored)

Catch up to -current.

Revision 1.91 / (download) - annotate - [select for diffs], Sun Apr 29 04:23:20 2001 UTC (22 years, 10 months ago) by thorpej
Branch: MAIN
CVS Tags: thorpej-devvp-base, pre-chs-ubcperf
Branch point for: thorpej-devvp, kqueue
Changes since 1.90: +2 -1 lines
Diff to previous 1.90 (colored)

Implement page coloring, using a round-robin bucket selection
algorithm (Solaris calls this "Bin Hopping").

This implementation currently relies on MD code to define a
constant defining the number of buckets.  This will change
reasonably soon (MD code will be able to dynamically size
the bucket array).

Revision 1.65.2.5 / (download) - annotate - [select for diffs], Sat Apr 21 17:47:05 2001 UTC (22 years, 10 months ago) by bouyer
Branch: thorpej_scsipi
Changes since 1.65.2.4: +2 -2 lines
Diff to previous 1.65.2.4 (colored) to branchpoint 1.65 (colored) next main 1.66 (colored)

Sync with HEAD

Revision 1.89.2.1 / (download) - annotate - [select for diffs], Mon Apr 9 01:59:04 2001 UTC (22 years, 10 months ago) by nathanw
Branch: nathanw_sa
Changes since 1.89: +2 -2 lines
Diff to previous 1.89 (colored)

Catch up with -current.

Revision 1.90 / (download) - annotate - [select for diffs], Sat Apr 7 09:00:58 2001 UTC (22 years, 10 months ago) by jdolecek
Branch: MAIN
CVS Tags: thorpej_scsipi_nbase, thorpej_scsipi_beforemerge, thorpej_scsipi_base
Changes since 1.89: +2 -2 lines
Diff to previous 1.89 (colored)

Add new 'stat' fileop and call the stat function via f_ops rather
than directly.
For compat syscalls, also add necessary FILE_USE()/FILE_UNUSE().
Now that soo_stat() gets a proc arg, pass it on to usrreq function.

Revision 1.65.2.4 / (download) - annotate - [select for diffs], Mon Mar 12 13:32:05 2001 UTC (22 years, 11 months ago) by bouyer
Branch: thorpej_scsipi
Changes since 1.65.2.3: +158 -160 lines
Diff to previous 1.65.2.3 (colored) to branchpoint 1.65 (colored)

Sync with HEAD.

Revision 1.89 / (download) - annotate - [select for diffs], Sat Feb 24 18:10:23 2001 UTC (23 years ago) by lukem
Branch: MAIN
Branch point for: nathanw_sa
Changes since 1.88: +5 -5 lines
Diff to previous 1.88 (colored)

a bit more KNF

Revision 1.88 / (download) - annotate - [select for diffs], Sat Feb 24 18:08:27 2001 UTC (23 years ago) by lukem
Branch: MAIN
Changes since 1.87: +157 -159 lines
Diff to previous 1.87 (colored)

convert to ANSI KNF

Revision 1.87 / (download) - annotate - [select for diffs], Wed Feb 21 21:40:00 2001 UTC (23 years ago) by jdolecek
Branch: MAIN
Changes since 1.86: +2 -2 lines
Diff to previous 1.86 (colored)

make some more constant arrays 'const'

Revision 1.65.2.3 / (download) - annotate - [select for diffs], Sun Feb 11 19:17:39 2001 UTC (23 years ago) by bouyer
Branch: thorpej_scsipi
Changes since 1.65.2.2: +5 -5 lines
Diff to previous 1.65.2.2 (colored) to branchpoint 1.65 (colored)

Sync with HEAD.

Revision 1.86 / (download) - annotate - [select for diffs], Mon Jan 22 12:17:41 2001 UTC (23 years, 1 month ago) by jdolecek
Branch: MAIN
Changes since 1.85: +2 -2 lines
Diff to previous 1.85 (colored)

make filesystem vnodeop, specop, fifoop and vnodeopv_* arrays const

Revision 1.85 / (download) - annotate - [select for diffs], Thu Jan 18 20:28:23 2001 UTC (23 years, 1 month ago) by jdolecek
Branch: MAIN
Changes since 1.84: +4 -4 lines
Diff to previous 1.84 (colored)

constify

Revision 1.65.2.2 / (download) - annotate - [select for diffs], Fri Dec 8 09:19:44 2000 UTC (23 years, 2 months ago) by bouyer
Branch: thorpej_scsipi
Changes since 1.65.2.1: +15 -7 lines
Diff to previous 1.65.2.1 (colored) to branchpoint 1.65 (colored)

Sync with HEAD.

Revision 1.84 / (download) - annotate - [select for diffs], Mon Nov 27 08:39:52 2000 UTC (23 years, 3 months ago) by chs
Branch: MAIN
Changes since 1.83: +15 -7 lines
Diff to previous 1.83 (colored)

Initial integration of the Unified Buffer Cache project.

Revision 1.65.2.1 / (download) - annotate - [select for diffs], Mon Nov 20 18:11:39 2000 UTC (23 years, 3 months ago) by bouyer
Branch: thorpej_scsipi
Changes since 1.65: +49 -10 lines
Diff to previous 1.65 (colored)

Update thorpej_scsipi to -current as of a month ago

Revision 1.77.2.2 / (download) - annotate - [select for diffs], Thu Jul 27 02:46:53 2000 UTC (23 years, 7 months ago) by mycroft
Branch: netbsd-1-5
CVS Tags: netbsd-1-5-RELEASE, netbsd-1-5-PATCH003, netbsd-1-5-PATCH002, netbsd-1-5-PATCH001, netbsd-1-5-BETA2, netbsd-1-5-BETA, netbsd-1-5-ALPHA2
Changes since 1.77.2.1: +2 -1 lines
Diff to previous 1.77.2.1 (colored) to branchpoint 1.77 (colored) next main 1.78 (colored)

Approved by thorpej:
Free the syncer vnode at unmount time.

syssrc/sys/kern/vfs_syscalls.c				1.159 -> 1.160
syssrc/sys/miscfs/syncfs/sync_subr.c			1.3 -> 1.4
syssrc/sys/miscfs/syncfs/sync_vnops.c			1.2 -> 1.3
syssrc/sys/miscfs/syncfs/syncfs.h			1.3 -> 1.4
syssrc/sys/sys/vnode.h					1.82 -> 1.83

Revision 1.83 / (download) - annotate - [select for diffs], Sun Jul 9 00:59:05 2000 UTC (23 years, 7 months ago) by mycroft
Branch: MAIN
Changes since 1.82: +2 -1 lines
Diff to previous 1.82 (colored)

When unmounting, make sure to free the syncer vnode so that it can be reused.

Revision 1.77.2.1 / (download) - annotate - [select for diffs], Mon Jul 3 17:34:49 2000 UTC (23 years, 7 months ago) by fvdl
Branch: netbsd-1-5
Changes since 1.77: +2 -1 lines
Diff to previous 1.77 (colored)

pullup from trunk:

Fix a "locking against myself" problem; holding ufs_hashlock
across getnewvnode() could cause a recursive lock if it resulted in
recycling a vnode that was using softdeps.

Revision 1.82 / (download) - annotate - [select for diffs], Thu Jun 29 09:01:09 2000 UTC (23 years, 8 months ago) by mrg
Branch: MAIN
Changes since 1.81: +2 -3 lines
Diff to previous 1.81 (colored)

use <uvm/uvm_extern.h> instead of <vm/vm.h>

Revision 1.81 / (download) - annotate - [select for diffs], Tue Jun 27 23:51:51 2000 UTC (23 years, 8 months ago) by fvdl
Branch: MAIN
Changes since 1.80: +2 -2 lines
Diff to previous 1.80 (colored)

vinsheadfree -> ungetnewvnode

Revision 1.80 / (download) - annotate - [select for diffs], Tue Jun 27 23:36:06 2000 UTC (23 years, 8 months ago) by fvdl
Branch: MAIN
Changes since 1.79: +2 -1 lines
Diff to previous 1.79 (colored)

Add vinsheadfree prototype.

Revision 1.79 / (download) - annotate - [select for diffs], Mon Jun 26 15:04:52 2000 UTC (23 years, 8 months ago) by mrg
Branch: MAIN
Changes since 1.78: +1 -2 lines
Diff to previous 1.78 (colored)

remove redundant vm includes.

Revision 1.78 / (download) - annotate - [select for diffs], Mon Jun 26 14:21:16 2000 UTC (23 years, 8 months ago) by mrg
Branch: MAIN
Changes since 1.77: +2 -2 lines
Diff to previous 1.77 (colored)

remove/move more mach vm header files:

	<vm/pglist.h> -> <uvm/uvm_pglist.h>
	<vm/vm_inherit.h> -> <uvm/uvm_inherit.h>
	<vm/vm_kern.h> -> into <uvm/uvm_extern.h>
	<vm/vm_object.h> -> nothing
	<vm/vm_pager.h> -> into <uvm/uvm_pager.h>

also includes a bunch of <vm/vm_page.h> include removals (due to redudancy
with <vm/vm.h>), and a scattering of other similar headers.

Revision 1.75.2.1 / (download) - annotate - [select for diffs], Thu Jun 22 17:10:30 2000 UTC (23 years, 8 months ago) by minoura
Branch: minoura-xpg4dl
Changes since 1.75: +4 -3 lines
Diff to previous 1.75 (colored) next main 1.76 (colored)

Sync w/ netbsd-1-5-base.

Revision 1.77 / (download) - annotate - [select for diffs], Sat Jun 10 18:27:05 2000 UTC (23 years, 8 months ago) by assar
Branch: MAIN
CVS Tags: netbsd-1-5-base
Branch point for: netbsd-1-5
Changes since 1.76: +2 -2 lines
Diff to previous 1.76 (colored)

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.

Revision 1.76 / (download) - annotate - [select for diffs], Sun May 28 04:13:57 2000 UTC (23 years, 9 months ago) by mycroft
Branch: MAIN
Changes since 1.75: +3 -2 lines
Diff to previous 1.75 (colored)

Add a new function to remove extra buffers when truncating a file.  This is
more generic than the vinvalbuf(V_SAVEMETA) case, avoiding synchronous
operations when truncating to a non-zero length.

Revision 1.75 / (download) - annotate - [select for diffs], Sat May 13 23:43:12 2000 UTC (23 years, 9 months ago) by perseant
Branch: MAIN
CVS Tags: minoura-xpg4dl-base
Branch point for: minoura-xpg4dl
Changes since 1.74: +4 -1 lines
Diff to previous 1.74 (colored)

Change the sementics of the last parameter from a boolean ("waitfor") to
a set of flags ("flags").  Two flags are defined, UPDATE_WAIT and
UPDATE_DIROP.

Under the old semantics, VOP_UPDATE would block if waitfor were set,
under the assumption that directory operations should be done
synchronously.  At least LFS and FFS+softdep do not make this
assumption; FFS+softdep got around the problem by enclosing all relevant
calls to VOP_UPDATE in a "if(!DOINGSOFTDEP(vp))", while LFS simply
ignored waitfor, one of the reasons why NFS-serving an LFS filesystem
did not work properly.

Under the new semantics, the UPDATE_DIROP flag is a hint to the
fs-specific update routine that the call comes from a dirop routine, and
should be wait for, or not, accordingly.

Closes PR#8996.

Revision 1.74 / (download) - annotate - [select for diffs], Sun Apr 16 21:39:57 2000 UTC (23 years, 10 months ago) by chs
Branch: MAIN
Changes since 1.73: +2 -1 lines
Diff to previous 1.73 (colored)

limit the number of namecache entries to numvnodes rather than desiredvnodes.
getnewvnode() has been changed to virtually guarantee that we'll have more
vnodes than "desired", so previously there would always be more vnodes
than namecache entries.  this fixes PR 9792.

Revision 1.73 / (download) - annotate - [select for diffs], Tue Apr 11 04:37:51 2000 UTC (23 years, 10 months ago) by chs
Branch: MAIN
Changes since 1.72: +2 -1 lines
Diff to previous 1.72 (colored)

add a new function vn_marktext() for exec code to let others know
that the vnode is now being used as process text.

Revision 1.72 / (download) - annotate - [select for diffs], Mon Apr 10 02:22:15 2000 UTC (23 years, 10 months ago) by chs
Branch: MAIN
Changes since 1.71: +4 -1 lines
Diff to previous 1.71 (colored)

add ddb commands for printing vnodes and bufs.

Revision 1.71 / (download) - annotate - [select for diffs], Tue Mar 28 05:49:30 2000 UTC (23 years, 11 months ago) by simonb
Branch: MAIN
Changes since 1.70: +2 -3 lines
Diff to previous 1.70 (colored)

Remove duplicate declaration of vattr_null() - it's declared with the
other prototypes in this file.  Extern the declaration of mntvnode_slock.

Revision 1.70 / (download) - annotate - [select for diffs], Sun Mar 26 20:54:45 2000 UTC (23 years, 11 months ago) by kleink
Branch: MAIN
Changes since 1.69: +2 -1 lines
Diff to previous 1.69 (colored)

Merge parts of chs-ubc2 into the trunk:
Add a new type voff_t (defined as a synonym for off_t) to describe offsets
into uvm objects, and update the appropriate interfaces to use it, the
most visible effect being the ability to mmap() file offsets beyond
the range of a vaddr_t.

Originally by Chuck Silvers; blame me for problems caused by merging this
into non-UBC.

Revision 1.69 / (download) - annotate - [select for diffs], Mon Feb 14 22:00:22 2000 UTC (24 years ago) by fvdl
Branch: MAIN
Changes since 1.68: +3 -1 lines
Diff to previous 1.68 (colored)

Fixes to the softdep code from Ethan Solomita <ethan@geocast.com>.
* Fix buffer ordering when it has dependencies.
* Alleviate memory problems.
* Deal with some recursive vnode locks (sigh).
* Fix other bugs.

Revision 1.68 / (download) - annotate - [select for diffs], Thu Jan 20 19:06:14 2000 UTC (24 years, 1 month ago) by wrstuden
Branch: MAIN
CVS Tags: chs-ubc2-newbase
Changes since 1.67: +3 -2 lines
Diff to previous 1.67 (colored)

Add overlay, a layered file system which overlays itself on
the underlying fs, rather than exporting it to another part of the
directory name space.

Revision 1.65.8.1 / (download) - annotate - [select for diffs], Mon Dec 27 18:36:36 1999 UTC (24 years, 2 months ago) by wrstuden
Branch: wrstuden-devbsize
Changes since 1.65: +30 -3 lines
Diff to previous 1.65 (colored) next main 1.66 (colored)

Pull up to last week's -current.

Revision 1.67 / (download) - annotate - [select for diffs], Wed Nov 17 22:53:47 1999 UTC (24 years, 3 months ago) by kleink
Branch: MAIN
CVS Tags: wrstuden-devbsize-base, wrstuden-devbsize-19991221
Changes since 1.66: +2 -2 lines
Diff to previous 1.66 (colored)

s/completition/completion/

Revision 1.66 / (download) - annotate - [select for diffs], Mon Nov 15 18:49:13 1999 UTC (24 years, 3 months ago) by fvdl
Branch: MAIN
Changes since 1.65: +29 -2 lines
Diff to previous 1.65 (colored)

Add Kirk McKusick's soft updates code to the trunk. Not enabled by
default, as the copyright on the main file (ffs_softdep.c) is such
that is has been put into gnusrc. options SOFTDEP will pull this
in. This code also contains the trickle syncer.

Bump version number to 1.4O

Revision 1.65.4.2 / (download) - annotate - [select for diffs], Tue Oct 26 19:15:19 1999 UTC (24 years, 4 months ago) by fvdl
Branch: fvdl-softdep
Changes since 1.65.4.1: +7 -3 lines
Diff to previous 1.65.4.1 (colored) to branchpoint 1.65 (colored) next main 1.66 (colored)

Merge changes in the trickle-sync and softdep code as done by Kirk McKusick
in FreeBSD since the version that we based the branch on. Merging mostly
done by Ethan Solomita <ethan@geocast.com>.

Also, make sure the syncer thread/process isn't active when we're
unmounting a filesystem. This could wreak havoc. XXX should be done
on a per-mountpoint basis, but especially the softdep code would
end up to be a big pile of vfs_busy() calls.

Revision 1.65.4.1 / (download) - annotate - [select for diffs], Tue Oct 19 12:50:30 1999 UTC (24 years, 4 months ago) by fvdl
Branch: fvdl-softdep
Changes since 1.65: +25 -2 lines
Diff to previous 1.65 (colored)

Bring in Kirk McKusick's FFS softdep code on a branch.

Revision 1.59.2.1 / (download) - annotate - [select for diffs], Sun Oct 10 20:51:23 1999 UTC (24 years, 4 months ago) by cgd
Branch: netbsd-1-4
CVS Tags: netbsd-1-4-PATCH003, netbsd-1-4-PATCH002
Changes since 1.59: +3 -3 lines
Diff to previous 1.59 (colored) next main 1.60 (colored)

pull up rev 1.65 from trunk (requested by mycroft):
  Fix potential overflow of v_usecount and v_writecount (and panics
  resulting from this) by widening them to `long'.  Mostly affects
  systems where maxvnodes>=32768.

Revision 1.65 / (download) - annotate - [select for diffs], Fri Oct 1 21:59:05 1999 UTC (24 years, 5 months ago) by mycroft
Branch: MAIN
CVS Tags: fvdl-softdep-base, comdex-fall-1999-base, comdex-fall-1999
Branch point for: wrstuden-devbsize, thorpej_scsipi, fvdl-softdep
Changes since 1.64: +3 -3 lines
Diff to previous 1.64 (colored)

Widen v_usecount and v_writecount to long to prevent overflow.

Revision 1.64 / (download) - annotate - [select for diffs], Wed Aug 18 01:34:28 1999 UTC (24 years, 6 months ago) by wrstuden
Branch: MAIN
Changes since 1.63: +15 -15 lines
Diff to previous 1.63 (colored)

Modify VDESC_NOMAP_VPP and VDESC_VPP_WILLRELE so that they don't
overlap with VDESC_VP0_WILLUNLOCK and VDESC_VP1_WILLUNLOCK. This bug
was inherited from an old 4.4BSD import in 1994.

Revision 1.59.4.4 / (download) - annotate - [select for diffs], Wed Aug 11 05:42:52 1999 UTC (24 years, 6 months ago) by chs
Branch: chs-ubc2
Changes since 1.59.4.3: +2 -2 lines
Diff to previous 1.59.4.3 (colored) to branchpoint 1.59 (colored) next main 1.60 (colored)

VSIZENOTSET is a voff_t, not a vsize_t.

Revision 1.63 / (download) - annotate - [select for diffs], Tue Aug 3 20:19:21 1999 UTC (24 years, 6 months ago) by wrstuden
Branch: MAIN
Changes since 1.62: +4 -1 lines
Diff to previous 1.62 (colored)

Add support for fcntl(2) to generate VOP_FCNTL calls. Any fcntl
call with F_FSCTL set and F_SETFL calls generate calls to a new
fileop fo_fcntl. Add genfs_fcntl() and soo_fcntl() which return 0
for F_SETFL and EOPNOTSUPP otherwise. Have all leaf filesystems
use genfs_fcntl().

Reviewed by: thorpej
Tested by: wrstuden

Revision 1.59.4.3 / (download) - annotate - [select for diffs], Mon Aug 2 22:56:00 1999 UTC (24 years, 7 months ago) by thorpej
Branch: chs-ubc2
Changes since 1.59.4.2: +25 -4 lines
Diff to previous 1.59.4.2 (colored) to branchpoint 1.59 (colored)

Update from trunk.

Revision 1.62 / (download) - annotate - [select for diffs], Thu Jul 15 21:30:32 1999 UTC (24 years, 7 months ago) by wrstuden
Branch: MAIN
CVS Tags: chs-ubc2-base
Changes since 1.61: +2 -1 lines
Diff to previous 1.61 (colored)

Define VLAYER and make layered fs's set this flag when creating their vnodes.

getnewvnode now checks this bit, and it if's set makes sure a vnode's not
locked before removing it from the free list.

Closes PR 7954 by Alan Barrett <apb@iafrica.com>.

Revision 1.61 / (download) - annotate - [select for diffs], Wed Jul 7 23:30:03 1999 UTC (24 years, 7 months ago) by wrstuden
Branch: MAIN
Changes since 1.60: +24 -3 lines
Diff to previous 1.60 (colored)

Add struct lock to struct vnode as first step in having vnodes export a
struct lock. Will permit layered fs's to share locks with underlying
vnodes.

Also reduce the max # of vnodes passable in a VOP from 16 to 8. As the
most we pass is 4, this shoudn't be a problem. In addition to WILLRELE
flags, add WILLUNLOCK flags to indicate that the VOP will unlock the
vnode. Add WILLPUT flags (WILLUNLOCK | WILLRELE) to indicate that the
vop will vput the passed-in vnode.

Revision 1.59.4.2 / (download) - annotate - [select for diffs], Mon Jun 21 01:30:27 1999 UTC (24 years, 8 months ago) by thorpej
Branch: chs-ubc2
Changes since 1.59.4.1: +2 -2 lines
Diff to previous 1.59.4.1 (colored) to branchpoint 1.59 (colored)

Sync w/ -current.

Revision 1.59.4.1 / (download) - annotate - [select for diffs], Mon Jun 7 04:25:33 1999 UTC (24 years, 8 months ago) by chs
Branch: chs-ubc2
Changes since 1.59: +23 -7 lines
Diff to previous 1.59 (colored)

merge everything from chs-ubc branch.

Revision 1.60 / (download) - annotate - [select for diffs], Thu May 6 15:29:26 1999 UTC (24 years, 9 months ago) by christos
Branch: MAIN
Changes since 1.59: +2 -2 lines
Diff to previous 1.59 (colored)

Add NTFS related constants.

Revision 1.56.2.2 / (download) - annotate - [select for diffs], Fri Apr 30 04:25:28 1999 UTC (24 years, 10 months ago) by chs
Branch: chs-ubc
Changes since 1.56.2.1: +6 -1 lines
Diff to previous 1.56.2.1 (colored) to branchpoint 1.56 (colored) next main 1.57 (colored)

make v_numoutput an alias for v_uvm.u_nio.

Revision 1.59 / (download) - annotate - [select for diffs], Wed Mar 24 05:51:29 1999 UTC (24 years, 11 months ago) by mrg
Branch: MAIN
CVS Tags: netbsd-1-4-base, netbsd-1-4-RELEASE, netbsd-1-4-PATCH001, kame_14_19990705, kame_14_19990628, kame_141_19991130, kame
Branch point for: netbsd-1-4, chs-ubc2
Changes since 1.58: +3 -13 lines
Diff to previous 1.58 (colored)

completely remove Mach VM support.  all that is left is the all the
header files as UVM still uses (most of) these.

Revision 1.58 / (download) - annotate - [select for diffs], Mon Mar 22 17:01:55 1999 UTC (24 years, 11 months ago) by sommerfe
Branch: MAIN
Changes since 1.57: +3 -1 lines
Diff to previous 1.57 (colored)

Change namei cache to record vnode->(parent,name) entries (for directories).
Add kernel implementation of getcwd() which uses this cache, falling
back to reading the filesystem on a cache miss.
Along for the ride: add new VOP_FSYNC flag FSYNC_RECLAIM indicating
that a reclaim is being done, so only a "shallow" fsync is needed.

Revision 1.57 / (download) - annotate - [select for diffs], Wed Nov 18 20:24:59 1998 UTC (25 years, 3 months ago) by thorpej
Branch: MAIN
CVS Tags: kenh-if-detach-base, kenh-if-detach
Changes since 1.56: +2 -1 lines
Diff to previous 1.56 (colored)

Implement vdevgone(), to revoke all vnodes corresponding to the specified
type, major, (low minor...high minor).

Revision 1.56.2.1 / (download) - annotate - [select for diffs], Mon Nov 9 06:06:35 1998 UTC (25 years, 3 months ago) by chs
Branch: chs-ubc
Changes since 1.56: +41 -1 lines
Diff to previous 1.56 (colored)

initial snapshot.  lots left to do.

Revision 1.56 / (download) - annotate - [select for diffs], Sat Sep 12 15:05:47 1998 UTC (25 years, 5 months ago) by rvb
Branch: MAIN
CVS Tags: chs-ubc-base
Branch point for: chs-ubc
Changes since 1.55: +2 -2 lines
Diff to previous 1.55 (colored)

Change cfs/CFS in symbols, strings and constants to coda/CODA
to avoid fs conflicts.

Revision 1.55 / (download) - annotate - [select for diffs], Fri Aug 14 03:31:16 1998 UTC (25 years, 6 months ago) by mark
Branch: MAIN
Changes since 1.54: +2 -2 lines
Diff to previous 1.54 (colored)

Added a vnode type for filecore fs (VT_FILECORE).

Revision 1.54 / (download) - annotate - [select for diffs], Sun Aug 2 18:26:30 1998 UTC (25 years, 7 months ago) by kleink
Branch: MAIN
Changes since 1.53: +3 -2 lines
Diff to previous 1.53 (colored)

Add a new I/O flag, IO_DSYNC, which requests the operation do to synchronized
I/O data integrity completion and change IO_SYNC (synchronized I/O file
integrity completion) do inclusive-or it, since it's a superset of the former.

Revision 1.53 / (download) - annotate - [select for diffs], Tue Jul 28 18:37:47 1998 UTC (25 years, 7 months ago) by thorpej
Branch: MAIN
CVS Tags: eeh-paddr_t-base, eeh-paddr_t
Changes since 1.52: +2 -2 lines
Diff to previous 1.52 (colored)

Change the "aresid" argument of vn_rdwr() from an int * to a size_t *,
to match the new uio_resid type.

Revision 1.52 / (download) - annotate - [select for diffs], Fri Jul 24 15:18:21 1998 UTC (25 years, 7 months ago) by rvb
Branch: MAIN
Changes since 1.51: +2 -2 lines
Diff to previous 1.51 (colored)

Coda glue

Revision 1.51 / (download) - annotate - [select for diffs], Tue Jun 30 05:33:12 1998 UTC (25 years, 8 months ago) by thorpej
Branch: MAIN
Changes since 1.50: +5 -3 lines
Diff to previous 1.50 (colored)

Add two additional arguments to the fileops read and write calls, a
pointer to the offset to use, and a flags word.  Define a flag that
specifies whether or not to update the offset passed by reference.

Revision 1.50 / (download) - annotate - [select for diffs], Fri Jun 5 19:47:00 1998 UTC (25 years, 8 months ago) by kleink
Branch: MAIN
Changes since 1.49: +7 -1 lines
Diff to previous 1.49 (colored)

Define 2 flags to be passed in the `flags' argument of the fsync vnode
operator:

  * FSYNC_WAIT, which requests the synchronization operation to not return
    until completition,

  * FSYNC_DATAONLY, which is a hint: if possible, synchronize file data
    only.  If it's not feasible for a file system implementation to omit
    file status synchronization when synchronizing file data, this is ignored.

Revision 1.49 / (download) - annotate - [select for diffs], Sun Mar 1 09:35:52 1998 UTC (26 years ago) by ross
Branch: MAIN
Changes since 1.48: +15 -8 lines
Diff to previous 1.48 (colored)

Compile post-lite2 when #ifndef DIAGNOSTIC

Revision 1.48 / (download) - annotate - [select for diffs], Sun Mar 1 02:24:16 1998 UTC (26 years ago) by fvdl
Branch: MAIN
Changes since 1.47: +67 -15 lines
Diff to previous 1.47 (colored)

Merge with Lite2 + local changes

Revision 1.1.1.3 / (download) - annotate - [select for diffs] (vendor branch), Sun Mar 1 02:14:00 1998 UTC (26 years ago) by fvdl
Branch: WFJ-920714, CSRG
CVS Tags: lite-2
Changes since 1.1.1.2: +62 -22 lines
Diff to previous 1.1.1.2 (colored)

Import 4.4BSD-Lite2

Revision 1.1.1.2 / (download) - annotate - [select for diffs] (vendor branch), Sun Mar 1 02:11:15 1998 UTC (26 years ago) by fvdl
Branch: WFJ-920714, CSRG
CVS Tags: lite-1, date-03-may-96
Changes since 1.1.1.1: +269 -205 lines
Diff to previous 1.1.1.1 (colored)

Import 4.4BSD-Lite for reference

Revision 1.47 / (download) - annotate - [select for diffs], Tue Feb 10 14:08:53 1998 UTC (26 years ago) by mrg
Branch: MAIN
Changes since 1.46: +5 -1 lines
Diff to previous 1.46 (colored)

- add defopt's for UVM, UVMHIST and PMAP_NEW.
- remove unnecessary UVMHIST_DECL's.

Revision 1.46 / (download) - annotate - [select for diffs], Thu Feb 5 08:00:44 1998 UTC (26 years ago) by mrg
Branch: MAIN
Changes since 1.45: +14 -1 lines
Diff to previous 1.45 (colored)

initial import of the new virtual memory system, UVM, into -current.

UVM was written by chuck cranor <chuck@maria.wustl.edu>, with some
minor portions derived from the old Mach code.  i provided some help
getting swap and paging working, and other bug fixes/ideas.  chuck
silvers <chuq@chuq.com> also provided some other fixes.

this is the rest of the MI portion changes.

this will be KNF'd shortly.  :-)

Revision 1.45 / (download) - annotate - [select for diffs], Thu Oct 16 23:35:36 1997 UTC (26 years, 4 months ago) by christos
Branch: MAIN
CVS Tags: netbsd-1-3-base, netbsd-1-3-RELEASE, netbsd-1-3-PATCH003-CANDIDATE2, netbsd-1-3-PATCH003-CANDIDATE1, netbsd-1-3-PATCH003-CANDIDATE0, netbsd-1-3-PATCH003, netbsd-1-3-PATCH002, netbsd-1-3-PATCH001, netbsd-1-3-BETA, netbsd-1-3
Changes since 1.44: +3 -3 lines
Diff to previous 1.44 (colored)

make va_mode and va_link mode_t and link_t

Revision 1.43.4.1 / (download) - annotate - [select for diffs], Tue Oct 14 16:03:53 1997 UTC (26 years, 4 months ago) by thorpej
Branch: marc-pcmcia
Changes since 1.43: +3 -1 lines
Diff to previous 1.43 (colored) next main 1.44 (colored)

Update marc-pcmcia branch from trunk.

Revision 1.44 / (download) - annotate - [select for diffs], Fri Oct 10 02:12:30 1997 UTC (26 years, 4 months ago) by fvdl
Branch: MAIN
CVS Tags: marc-pcmcia-base
Changes since 1.43: +3 -1 lines
Diff to previous 1.43 (colored)

Add cookie field to buffer structure to be able to store 64bit offsets.
Redo NFS mounting flags; split flags into internal and public, having
2 seperate fields in the NFS mount structure. Add prototype for
vn_readdir to vnode.h

Revision 1.43 / (download) - annotate - [select for diffs], Wed Jun 11 10:40:19 1997 UTC (26 years, 8 months ago) by bouyer
Branch: MAIN
CVS Tags: thorpej-signal-base, thorpej-signal, marc-pcmcia-bp, bouyer-scsipi
Branch point for: marc-pcmcia
Changes since 1.42: +2 -2 lines
Diff to previous 1.42 (colored)

Support ext2fs.

Revision 1.42 / (download) - annotate - [select for diffs], Thu May 8 16:20:41 1997 UTC (26 years, 9 months ago) by mycroft
Branch: MAIN
Changes since 1.41: +5 -6 lines
Diff to previous 1.41 (colored)

Pass the vnode type to vaccess(), and use it when checking VEXEC.  Make sure
that the mode bits passed to vaccess() and returned by foo_getattr() contain
only permission bits.

Revision 1.41 / (download) - annotate - [select for diffs], Thu May 8 10:21:38 1997 UTC (26 years, 9 months ago) by mycroft
Branch: MAIN
Changes since 1.40: +3 -5 lines
Diff to previous 1.40 (colored)

GC VS[UG]ID and VSVTX, and add a new VLOOKUP, since the semantics are now
different from VEXEC.

Revision 1.40 / (download) - annotate - [select for diffs], Wed Jan 22 07:09:34 1997 UTC (27 years, 1 month ago) by mikel
Branch: MAIN
CVS Tags: mrg-vm-swap, is-newarp-before-merge, is-newarp-base, is-newarp
Changes since 1.39: +6 -1 lines
Diff to previous 1.39 (colored)

add multiple inclusion protection

Revision 1.39 / (download) - annotate - [select for diffs], Sat Sep 7 12:41:37 1996 UTC (27 years, 5 months ago) by mycroft
Branch: MAIN
CVS Tags: thorpej-setroot
Changes since 1.38: +2 -2 lines
Diff to previous 1.38 (colored)

Implement poll(2).

Revision 1.38 / (download) - annotate - [select for diffs], Thu Feb 29 20:59:05 1996 UTC (28 years ago) by cgd
Branch: MAIN
CVS Tags: netbsd-1-2-base, netbsd-1-2-RELEASE, netbsd-1-2-PATCH001, netbsd-1-2-BETA, netbsd-1-2
Changes since 1.37: +2 -2 lines
Diff to previous 1.37 (colored)

Do not build vnode_if.[ch] for each kernel.  Build them once, like the
various syscall sources/headers, and just compile them.  From PR 2142, OK'd
by mycroft.

Revision 1.37 / (download) - annotate - [select for diffs], Fri Feb 9 18:25:47 1996 UTC (28 years ago) by christos
Branch: MAIN
Changes since 1.36: +14 -7 lines
Diff to previous 1.36 (colored)

Filesystem prototype changes

Revision 1.36 / (download) - annotate - [select for diffs], Sun Feb 4 02:12:50 1996 UTC (28 years ago) by christos
Branch: MAIN
Changes since 1.35: +3 -4 lines
Diff to previous 1.35 (colored)

Fix some missing/wrong prototypes so that kern/* compiles again

Revision 1.35 / (download) - annotate - [select for diffs], Fri Feb 2 21:05:10 1996 UTC (28 years, 1 month ago) by mycroft
Branch: MAIN
Changes since 1.34: +2 -2 lines
Diff to previous 1.34 (colored)

Fix #includes.

Revision 1.32.2.1 / (download) - annotate - [select for diffs], Fri Feb 2 07:55:10 1996 UTC (28 years, 1 month ago) by mycroft
Branch: netbsd-1-1
Changes since 1.32: +3 -1 lines
Diff to previous 1.32 (colored) next main 1.33 (colored)

Bring in changes for mondo patch 2.

Revision 1.34 / (download) - annotate - [select for diffs], Fri Feb 2 07:50:24 1996 UTC (28 years, 1 month ago) by mycroft
Branch: MAIN
Changes since 1.33: +2 -3 lines
Diff to previous 1.33 (colored)

Do the previous change a little differently.

Revision 1.33 / (download) - annotate - [select for diffs], Tue Jan 30 20:05:43 1996 UTC (28 years, 1 month ago) by mycroft
Branch: MAIN
Changes since 1.32: +4 -1 lines
Diff to previous 1.32 (colored)

Add a vnode** argument to getvnode(), prototype it, and make it return
EBADF if the file descriptor has been revoked.

Revision 1.32 / (download) - annotate - [select for diffs], Sun Mar 26 20:25:05 1995 UTC (28 years, 11 months ago) by jtc
Branch: MAIN
CVS Tags: netbsd-1-1-base, netbsd-1-1-RELEASE, netbsd-1-1-PATCH001
Branch point for: netbsd-1-1
Changes since 1.31: +5 -5 lines
Diff to previous 1.31 (colored)

KERNEL -> _KERNEL

Revision 1.31 / (download) - annotate - [select for diffs], Sun Jan 8 22:53:35 1995 UTC (29 years, 1 month ago) by cgd
Branch: MAIN
Changes since 1.30: +3 -2 lines
Diff to previous 1.30 (colored)

light cleanup, related to spacing...

Revision 1.30 / (download) - annotate - [select for diffs], Sat Dec 24 16:44:42 1994 UTC (29 years, 2 months ago) by ws
Branch: MAIN
Changes since 1.29: +2 -1 lines
Diff to previous 1.29 (colored)

Implement and use a common access checking routine

Revision 1.29 / (download) - annotate - [select for diffs], Wed Dec 14 19:04:11 1994 UTC (29 years, 2 months ago) by mycroft
Branch: MAIN
Changes since 1.28: +2 -3 lines
Diff to previous 1.28 (colored)

Remove extra arg to vn_open().

Revision 1.28 / (download) - annotate - [select for diffs], Tue Dec 13 20:16:03 1994 UTC (29 years, 2 months ago) by mycroft
Branch: MAIN
Changes since 1.27: +4 -13 lines
Diff to previous 1.27 (colored)

Turn lease_check() into a vnode op, per CSRG.

Revision 1.27 / (download) - annotate - [select for diffs], Mon Nov 14 06:02:06 1994 UTC (29 years, 3 months ago) by christos
Branch: MAIN
Changes since 1.26: +3 -2 lines
Diff to previous 1.26 (colored)

added extra argument to vn_open

Revision 1.26 / (download) - annotate - [select for diffs], Sun Oct 30 21:50:08 1994 UTC (29 years, 4 months ago) by cgd
Branch: MAIN
Changes since 1.25: +3 -2 lines
Diff to previous 1.25 (colored)

be more careful with types, also pull in headers where necessary.

Revision 1.25 / (download) - annotate - [select for diffs], Mon Jul 4 22:26:38 1994 UTC (29 years, 8 months ago) by cgd
Branch: MAIN
CVS Tags: netbsd-1-0-base, netbsd-1-0-RELEASE, netbsd-1-0-PATCH1, netbsd-1-0-PATCH06, netbsd-1-0-PATCH05, netbsd-1-0-PATCH04, netbsd-1-0-PATCH03, netbsd-1-0-PATCH02, netbsd-1-0-PATCH0, netbsd-1-0
Changes since 1.24: +2 -3 lines
Diff to previous 1.24 (colored)

u_long to dev_t, for va_rdev

Revision 1.24 / (download) - annotate - [select for diffs], Wed Jun 29 06:46:18 1994 UTC (29 years, 8 months ago) by cgd
Branch: MAIN
Changes since 1.23: +2 -1 lines
Diff to previous 1.23 (colored)

New RCS ID's, take two.  they're more aesthecially pleasant, and use 'NetBSD'

Revision 1.23 / (download) - annotate - [select for diffs], Mon Jun 27 19:32:50 1994 UTC (29 years, 8 months ago) by cgd
Branch: MAIN
Changes since 1.22: +2 -2 lines
Diff to previous 1.22 (colored)

new standard, minimally intrusive ID format

Revision 1.22 / (download) - annotate - [select for diffs], Wed Jun 8 11:38:54 1994 UTC (29 years, 8 months ago) by mycroft
Branch: MAIN
Changes since 1.21: +242 -183 lines
Diff to previous 1.21 (colored)

Update to 4.4-Lite fs code, with local changes.

Revision 1.21 / (download) - annotate - [select for diffs], Fri May 20 06:38:11 1994 UTC (29 years, 9 months ago) by cgd
Branch: MAIN
Changes since 1.20: +10 -1 lines
Diff to previous 1.20 (colored)

dummy lease-related macros

Revision 1.20 / (download) - annotate - [select for diffs], Wed May 18 05:12:55 1994 UTC (29 years, 9 months ago) by cgd
Branch: MAIN
Changes since 1.19: +2 -2 lines
Diff to previous 1.19 (colored)

mostly-machine-indepedent switch, and changes to match.  also, hack init_main

Revision 1.19 / (download) - annotate - [select for diffs], Wed May 11 18:50:41 1994 UTC (29 years, 9 months ago) by chopps
Branch: MAIN
Changes since 1.18: +3 -2 lines
Diff to previous 1.18 (colored)

add support for adosfs.

Revision 1.18 / (download) - annotate - [select for diffs], Mon Apr 25 03:50:38 1994 UTC (29 years, 10 months ago) by cgd
Branch: MAIN
Changes since 1.17: +33 -49 lines
Diff to previous 1.17 (colored)

some prototype cleanup, eliminate/replace bogus types (e.g. quad and
u_quad) -> use better types (e.g. quad_t & u_quad_t in inodes),
some cleanup.

Revision 1.17 / (download) - annotate - [select for diffs], Thu Apr 21 07:49:24 1994 UTC (29 years, 10 months ago) by cgd
Branch: MAIN
Changes since 1.16: +7 -7 lines
Diff to previous 1.16 (colored)

Convert mount, vnode, and buf structs to use <sys/queue.h>.  Also,
some knf and structure frobbing to do along with it.

Revision 1.16.2.2 / (download) - annotate - [select for diffs], Sun Mar 27 09:10:00 1994 UTC (29 years, 11 months ago) by cgd
Branch: nvm
Changes since 1.16.2.1: +349 -0 lines
Diff to previous 1.16.2.1 (colored) to branchpoint 1.16 (colored) next main 1.17 (colored)

expand uid_t/gid_t/off_t

Revision 1.16.2.1, Sun Mar 27 09:09:59 1994 UTC (29 years, 11 months ago) by cgd
Branch: nvm
Changes since 1.16: +0 -349 lines
FILE REMOVED

file vnode.h was added on branch nvm on 1994-03-27 09:10:00 +0000

Revision 1.16 / (download) - annotate - [select for diffs], Sun Mar 27 09:09:59 1994 UTC (29 years, 11 months ago) by cgd
Branch: MAIN
CVS Tags: wnvm, nvm-base
Branch point for: nvm
Changes since 1.15: +2 -2 lines
Diff to previous 1.15 (colored)

expand uid_t/gid_t/off_t

Revision 1.15 / (download) - annotate - [select for diffs], Tue Feb 1 02:41:26 1994 UTC (30 years, 1 month ago) by deraadt
Branch: MAIN
Changes since 1.14: +3 -3 lines
Diff to previous 1.14 (colored)

sparc needs structures double aligned

Revision 1.14 / (download) - annotate - [select for diffs], Wed Dec 22 12:51:31 1993 UTC (30 years, 2 months ago) by cgd
Branch: MAIN
Changes since 1.13: +2 -2 lines
Diff to previous 1.13 (colored)

VOP_PRINT should return int; this should not have been changed (yet?)

Revision 1.13 / (download) - annotate - [select for diffs], Tue Dec 21 07:02:18 1993 UTC (30 years, 2 months ago) by cgd
Branch: MAIN
Changes since 1.12: +2 -2 lines
Diff to previous 1.12 (colored)

fix typo

Revision 1.12 / (download) - annotate - [select for diffs], Tue Dec 21 05:41:52 1993 UTC (30 years, 2 months ago) by cgd
Branch: MAIN
Changes since 1.11: +12 -6 lines
Diff to previous 1.11 (colored)

clean up vtype and vtagtype, and more

Revision 1.11.2.4 / (download) - annotate - [select for diffs], Fri Nov 26 12:01:23 1993 UTC (30 years, 3 months ago) by deraadt
Branch: magnum
Changes since 1.11.2.3: +3 -3 lines
Diff to previous 1.11.2.3 (colored) to branchpoint 1.11 (colored) next main 1.12 (colored)

ensure v_data is allocated on an alignment boundary, because the structs
that people put there may contain quad_t's.

Revision 1.11.2.3 / (download) - annotate - [select for diffs], Wed Nov 10 19:57:06 1993 UTC (30 years, 3 months ago) by mycroft
Branch: magnum
Changes since 1.11.2.2: +3 -3 lines
Diff to previous 1.11.2.2 (colored) to branchpoint 1.11 (colored)

Remove remaining references to `UNIX'.

Revision 1.11.2.2 / (download) - annotate - [select for diffs], Tue Sep 28 06:25:31 1993 UTC (30 years, 5 months ago) by deraadt
Branch: magnum
Changes since 1.11.2.1: +2 -2 lines
Diff to previous 1.11.2.1 (colored) to branchpoint 1.11 (colored)

up VN_MAXPRIVATE from 188 bytes to 192 bytes. Due to sparc
structure packing the private part of struct vnode needs to
be bigger.

Revision 1.11.2.1 / (download) - annotate - [select for diffs], Fri Sep 24 08:58:15 1993 UTC (30 years, 5 months ago) by mycroft
Branch: magnum
Changes since 1.11: +3 -14 lines
Diff to previous 1.11 (colored)

Changes from trunk.
conf.h, disk.h, disklabel.h: strategy functions return void.  dump functions
take dev, blkno, maddr, and length.
dkstat.h: Add CP_INTR.
mount.h: Make fsid_t a structure with two longs inside, now that quad is gone.
proc.h: Replace p_[us]time with p_[usi]ticks.
systm.h: Don't declare spl*() or psuedo-device attach functions.  Declare
endtsleep().  Change declaration of panic().
types.h: Replace u_quad and quad with u_quad_t and quad_t, which use the GCC
`long long' type.  Modify qaddr_t accordingly.
vnode.h: Change va_size and va_bytes to u_quad_ts.

Revision 1.11 / (download) - annotate - [select for diffs], Tue Sep 7 15:41:57 1993 UTC (30 years, 5 months ago) by ws
Branch: MAIN
CVS Tags: magnum-base
Branch point for: magnum
Changes since 1.10: +4 -3 lines
Diff to previous 1.10 (colored)

Changes to VFS readdir semantics
NFS changes for better cookie support
ISOFS changes for better Rockridge support and support for generation numbers

Revision 1.10 / (download) - annotate - [select for diffs], Tue Aug 24 12:53:51 1993 UTC (30 years, 6 months ago) by pk
Branch: MAIN
Changes since 1.9: +3 -3 lines
Diff to previous 1.9 (colored)

Added support for proc filesystem.

Revision 1.9 / (download) - annotate - [select for diffs], Mon Aug 23 05:02:28 1993 UTC (30 years, 6 months ago) by cgd
Branch: MAIN
Changes since 1.8: +2 -1 lines
Diff to previous 1.8 (colored)

changes from 0.9-ALPHA2 to 0.9-BETA

Revision 1.6.2.2 / (download) - annotate - [select for diffs], Fri Aug 20 07:17:51 1993 UTC (30 years, 6 months ago) by cgd
Branch: netbsd-0-9
CVS Tags: netbsd-0-9-patch-001, netbsd-0-9-RELEASE, netbsd-0-9-BETA
Changes since 1.6.2.1: +2 -1 lines
Diff to previous 1.6.2.1 (colored) to branchpoint 1.6 (colored) next main 1.7 (colored)

add proto for cdevvp

Revision 1.8 / (download) - annotate - [select for diffs], Sun Aug 8 12:10:05 1993 UTC (30 years, 6 months ago) by mycroft
Branch: MAIN
Changes since 1.7: +3 -2 lines
Diff to previous 1.7 (colored)

Change di_urdev and va_rdev back to u_longs for now.
(NOTE: You must completely rebuild your kernel!)

Revision 1.7 / (download) - annotate - [select for diffs], Sat Aug 7 08:12:30 1993 UTC (30 years, 6 months ago) by cgd
Branch: MAIN
Changes since 1.6: +2 -2 lines
Diff to previous 1.6 (colored)

merge in changes from netbsd-0-9-ALPHA2

Revision 1.6.2.1 / (download) - annotate - [select for diffs], Thu Aug 5 02:37:36 1993 UTC (30 years, 6 months ago) by cgd
Branch: netbsd-0-9
CVS Tags: netbsd-0-9-ALPHA2
Changes since 1.6: +2 -2 lines
Diff to previous 1.6 (colored)

more PCFS cleanups

Revision 1.6 / (download) - annotate - [select for diffs], Sun Jun 27 05:59:13 1993 UTC (30 years, 8 months ago) by andrew
Branch: MAIN
CVS Tags: netbsd-0-9-base, netbsd-0-9-ALPHA
Branch point for: netbsd-0-9
Changes since 1.5: +2 -2 lines
Diff to previous 1.5 (colored)

ANSIfications - lots of function prototyping.

Revision 1.5 / (download) - annotate - [select for diffs], Mon Jun 7 05:25:32 1993 UTC (30 years, 8 months ago) by cgd
Branch: MAIN
Changes since 1.4: +3 -2 lines
Diff to previous 1.4 (colored)

give various filesystems their own vnode types

Revision 1.4 / (download) - annotate - [select for diffs], Thu May 20 16:23:52 1993 UTC (30 years, 9 months ago) by cgd
Branch: MAIN
Changes since 1.3: +2 -1 lines
Diff to previous 1.3 (colored)

add rcs ids as necessary, and also clean up headers

Revision 1.3 / (download) - annotate - [select for diffs], Mon Apr 19 01:23:47 1993 UTC (30 years, 10 months ago) by mycroft
Branch: MAIN
Changes since 1.2: +5 -0 lines
Diff to previous 1.2 (colored)

Add consistent multiple-inclusion protection.

Revision 1.2 / (download) - annotate - [select for diffs], Fri Apr 9 19:42:03 1993 UTC (30 years, 10 months ago) by cgd
Branch: MAIN
CVS Tags: netbsd-alpha-1, netbsd-0-8
Changes since 1.1: +1 -1 lines
Diff to previous 1.1 (colored)

add support for PCFS, the MSDOS filesystem.
written by Paul Popelka (paulp@uts.amdahl.com) (patch 129)

invoke w/"options PCFS" in kernel config file.

Revision 1.1.1.1 / (download) - annotate - [select for diffs] (vendor branch), Sun Mar 21 09:45:37 1993 UTC (30 years, 11 months ago) by cgd
Branch: WFJ-920714, CSRG
CVS Tags: patchkit-0-2-2, WFJ-386bsd-01
Changes since 1.1: +0 -0 lines
Diff to previous 1.1 (colored)

initial import of 386bsd-0.1 sources

Revision 1.1 / (download) - annotate - [select for diffs], Sun Mar 21 09:45:37 1993 UTC (30 years, 11 months ago) by cgd
Branch: MAIN

Initial revision

This form allows you to request diff's between any two revisions of a file. You may select a symbolic revision name using the selection box or you may type in a numeric name using the type-in text box.




CVSweb <webmaster@jp.NetBSD.org>