The NetBSD Project

CVS log for src/sys/kern/vfs_trans.c

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

Request diff between arbitrary revisions


Default branch: MAIN


Revision 1.70 / (download) - annotate - [select for diffs], Fri Nov 4 11:20:39 2022 UTC (15 months, 3 weeks ago) by hannken
Branch: MAIN
CVS Tags: thorpej-ifq-base, thorpej-ifq, thorpej-altq-separation-base, thorpej-altq-separation, netbsd-10-base, netbsd-10-0-RC5, netbsd-10-0-RC4, netbsd-10-0-RC3, netbsd-10-0-RC2, netbsd-10-0-RC1, netbsd-10, HEAD
Changes since 1.69: +6 -4 lines
Diff to previous 1.69 (colored)

Add a helper to set or clear lower mount and use it.
Always add a reference to the lower mount.

Ride 9.99.105

Revision 1.69 / (download) - annotate - [select for diffs], Wed Oct 26 23:39:43 2022 UTC (16 months ago) by riastradh
Branch: MAIN
Changes since 1.68: +3 -4 lines
Diff to previous 1.68 (colored)

miscfs/deadfs/deadfs.h: New home for deadfs-related externs.

XXX regen sys/kern/vnode_if.c and the others

Revision 1.68 / (download) - annotate - [select for diffs], Mon Aug 22 09:13:08 2022 UTC (18 months, 1 week ago) by hannken
Branch: MAIN
CVS Tags: bouyer-sunxi-drm-base, bouyer-sunxi-drm
Changes since 1.67: +4 -4 lines
Diff to previous 1.67 (colored)

Don't allocate lwp info for fstrans_held() and fstrans_is_owner().
If it doesn't exist we cannot hold a transaction or suspension.

Revision 1.67 / (download) - annotate - [select for diffs], Thu Aug 11 10:17:44 2022 UTC (18 months, 2 weeks ago) by hannken
Branch: MAIN
Changes since 1.66: +54 -22 lines
Diff to previous 1.66 (colored)

Finish previous, evaluate the lowest mount on first access
to "struct mount_info" and store it here so we no longer
derefence the "struct mount" from fstrans_alloc_lwp_info().

Reported-by: syzbot+5a79214d043395b550d8@syzkaller.appspotmail.com

Revision 1.66 / (download) - annotate - [select for diffs], Fri Jul 8 07:42:47 2022 UTC (19 months, 3 weeks ago) by hannken
Branch: MAIN
Changes since 1.65: +93 -95 lines
Diff to previous 1.65 (colored)

While one thread runs vgone() it is possible for another thread to grab
a "v_mount" that will be freed before it uses this mount for fstrans_start().

Add a hashtab to lookup our private mount data "fstrans_mount_info" and
use "mp" as an opaque key for lookup.

Reported-by: syzbot+54dc9ac0804a97b59bc6@syzkaller.appspotmail.com

Revision 1.65 / (download) - annotate - [select for diffs], Fri Jul 8 07:42:05 2022 UTC (19 months, 3 weeks ago) by hannken
Branch: MAIN
Changes since 1.64: +11 -5 lines
Diff to previous 1.64 (colored)

Handle IMNT_GONE on the file system we want suspended not its
lowest mount we really suspend.

Revision 1.64 / (download) - annotate - [select for diffs], Tue Jun 28 00:13:48 2022 UTC (20 months ago) by riastradh
Branch: MAIN
Changes since 1.63: +4 -3 lines
Diff to previous 1.63 (colored)

fstrans(9): KASSERT(a && b) => KASSERT(a); KASSERT(b)

No functional change intended except better diagnostics in case of
crash.

Revision 1.63 / (download) - annotate - [select for diffs], Sun May 17 19:34:07 2020 UTC (3 years, 9 months ago) by ad
Branch: MAIN
CVS Tags: thorpej-i2c-spi-conf2-base, thorpej-i2c-spi-conf2, thorpej-i2c-spi-conf-base, thorpej-i2c-spi-conf, thorpej-futex2-base, thorpej-futex2, thorpej-futex-base, thorpej-futex, thorpej-cfargs2-base, thorpej-cfargs2, thorpej-cfargs-base, thorpej-cfargs, cjep_sun2x-base1, cjep_sun2x-base, cjep_sun2x, cjep_staticlib_x-base1, cjep_staticlib_x-base, cjep_staticlib_x
Changes since 1.62: +95 -58 lines
Diff to previous 1.62 (colored)

Reorganise the locking and allocation of fstrans_lwp_info slightly, to
reduce contention.  "please go ahead" hannken@.

Revision 1.62 / (download) - annotate - [select for diffs], Wed May 13 09:21:30 2020 UTC (3 years, 9 months ago) by hannken
Branch: MAIN
Changes since 1.61: +19 -2 lines
Diff to previous 1.61 (colored)

Add operation fstrans_held(struct mount *), true if the current thread
holds a fstrans lock.

Ride 9.99.61

Revision 1.48.6.2 / (download) - annotate - [select for diffs], Mon Apr 13 08:05:04 2020 UTC (3 years, 10 months ago) by martin
Branch: phil-wifi
Changes since 1.48.6.1: +32 -27 lines
Diff to previous 1.48.6.1 (colored) to branchpoint 1.48 (colored) next main 1.49 (colored)

Mostly merge changes from HEAD upto 20200411

Revision 1.61 / (download) - annotate - [select for diffs], Mon Jun 17 08:07:27 2019 UTC (4 years, 8 months ago) by hannken
Branch: MAIN
CVS Tags: phil-wifi-20200421, phil-wifi-20200411, phil-wifi-20200406, phil-wifi-20191119, 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, is-mlppp-base, is-mlppp, bouyer-xenpvh-base2, bouyer-xenpvh-base1, bouyer-xenpvh-base, bouyer-xenpvh, ad-namecache-base3, ad-namecache-base2, ad-namecache-base1, ad-namecache-base, ad-namecache
Changes since 1.60: +32 -27 lines
Diff to previous 1.60 (colored)

Add an owner field to fstrans mount info and use it to hold
the thread currently suspending this mount.

Remove now unneeded state FSTRANS_EXCL.

It is now possible to suspend a file system from a thread
already holding fstrans locks.  Use with care ...

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

Sync with HEAD

Revision 1.60 / (download) - annotate - [select for diffs], Mon May 13 08:16:56 2019 UTC (4 years, 9 months ago) by hannken
Branch: MAIN
CVS Tags: phil-wifi-20190609
Changes since 1.59: +5 -3 lines
Diff to previous 1.59 (colored)

Walk down to the lowest mount for "fli_alias".

Address PR kern/54195 (null mounts: panic: ...).

Revision 1.59 / (download) - annotate - [select for diffs], Mon Apr 15 13:01:08 2019 UTC (4 years, 10 months ago) by hannken
Branch: MAIN
CVS Tags: isaki-audio2-base, isaki-audio2
Changes since 1.58: +16 -4 lines
Diff to previous 1.58 (colored)

Add reference counting to alias states to prevent them disappearing
while still in use.

Revision 1.58 / (download) - annotate - [select for diffs], Thu Mar 7 11:09:10 2019 UTC (4 years, 11 months ago) by hannken
Branch: MAIN
Changes since 1.57: +30 -25 lines
Diff to previous 1.57 (colored)

Change "fli_alias" to point to the corresponding "fstrans_lwp_info".

Fix fstrans_clear_lwp_info() list traversal, remove already advanced
the list pointer.

Revision 1.57 / (download) - annotate - [select for diffs], Fri Mar 1 09:02:03 2019 UTC (5 years ago) by hannken
Branch: MAIN
Changes since 1.56: +19 -25 lines
Diff to previous 1.56 (colored)

Move pointer to fstrans private data into "struct lwp".

Ride NetBSD 8.99.35

Revision 1.56 / (download) - annotate - [select for diffs], Sun Feb 24 16:11:24 2019 UTC (5 years ago) by hannken
Branch: MAIN
Changes since 1.55: +5 -5 lines
Diff to previous 1.55 (colored)

Clear per-lwp entries whose mount is gone before the first return
from fstrans_done().

No longer leaks "struct mount" forever.

Revision 1.55 / (download) - annotate - [select for diffs], Thu Feb 21 08:52:53 2019 UTC (5 years ago) by hannken
Branch: MAIN
Changes since 1.54: +4 -3 lines
Diff to previous 1.54 (colored)

Fix bad assertion: vfs_suspend(dead_rootmount) may happen and
must return EOPNOTSUPP.

Revision 1.54 / (download) - annotate - [select for diffs], Wed Feb 20 10:09:45 2019 UTC (5 years ago) by hannken
Branch: MAIN
Changes since 1.53: +209 -129 lines
Diff to previous 1.53 (colored)

- Make the fstrans mount info part of the per-lwp state and replace
  most accesses to the mount with fstrans mount info.

- Add "fmi_gone" to be true after unmount and add a counter of
  outstanding mount infos so fstrans_clear_lwp_info() only runs
  if there may be something to do.

- Move lookup of base mounts into per-lwp state.

- Keep a list of valid mounts for DIAGNOSTIC checks.

Revision 1.53 / (download) - annotate - [select for diffs], Wed Feb 20 10:08:37 2019 UTC (5 years ago) by hannken
Branch: MAIN
Changes since 1.52: +8 -5 lines
Diff to previous 1.52 (colored)

Move fstrans_unmount() to vfs_rele(), just before it would free the mount.
Don't take a mount reference for fstrans as it gets notified about the release.

Defer the final free of the mount to fstrans_mount_dtor() when fstrans
has released all references to this mount.  Prevents the mount's memory
to be reused as a new mount before fstrans released all references.

Address PR kern/53928 modules/t_builtin:disable test case randomly fails.

Revision 1.52 / (download) - annotate - [select for diffs], Wed Feb 20 10:07:27 2019 UTC (5 years ago) by hannken
Branch: MAIN
Changes since 1.51: +27 -14 lines
Diff to previous 1.51 (colored)

Attach "mnt_transinfo" to "dead_rootmount" so every mount has a
valid "mnt_transinfo" and remove now unneeded flag IMNT_HAS_TRANS.

Run fstrans_start()/fstrans_done() on dead_rootmount if FSTRANS_DEAD_ENABLED.
Should become the default for DIAGNOSTIC in the future.

Revision 1.48.4.2 / (download) - annotate - [select for diffs], Sat Oct 20 06:58:45 2018 UTC (5 years, 4 months ago) by pgoyette
Branch: pgoyette-compat
CVS Tags: pgoyette-compat-merge-20190127
Changes since 1.48.4.1: +21 -8 lines
Diff to previous 1.48.4.1 (colored) to branchpoint 1.48 (colored) next main 1.49 (colored)

Sync with head

Revision 1.45.2.3 / (download) - annotate - [select for diffs], Tue Oct 9 09:58:08 2018 UTC (5 years, 4 months ago) by martin
Branch: netbsd-8
CVS Tags: netbsd-8-2-RELEASE, netbsd-8-1-RELEASE, netbsd-8-1-RC1
Changes since 1.45.2.2: +20 -2 lines
Diff to previous 1.45.2.2 (colored) to branchpoint 1.45 (colored) next main 1.46 (colored)

Pull up following revision(s) (requested by hannken in ticket #1052):

	sys/kern/vfs_trans.c: revision 1.51
	distrib/sets/lists/comp/mi: revision 1.2233
	share/man/man9/fstrans.9: revision 1.27
	share/man/man9/Makefile: revision 1.431
	sys/sys/fstrans.h: revision 1.12
	sys/rump/librump/rumpkern/emul.c: revision 1.187
	sys/dev/vnd.c: revision 1.266
	sys/miscfs/genfs/genfs_vfsops.c: revision 1.8

Bring back three state file system suspension:

 NORMAL -> SUSPENDING -> SUSPENDED

and add operation fstrans_start_lazy() that only blocks while SUSPENDED.

Change vndthread() support operation handle_with_rdwr() to bracket
its file system operations by fstrans_start_lazy() and fstrans_done().

PR kern/53624 (dom0 freeze on domU exit)

Revision 1.51 / (download) - annotate - [select for diffs], Fri Oct 5 09:51:55 2018 UTC (5 years, 4 months ago) by hannken
Branch: MAIN
CVS Tags: pgoyette-compat-20190127, pgoyette-compat-20190118, pgoyette-compat-1226, pgoyette-compat-1126, pgoyette-compat-1020
Changes since 1.50: +20 -2 lines
Diff to previous 1.50 (colored)

Bring back three state file system suspension:

  NORMAL -> SUSPENDING -> SUSPENDED

and add operation fstrans_start_lazy() that only blocks while SUSPENDED.

Change vndthread() support operation handle_with_rdwr() to bracket
its file system operations by fstrans_start_lazy() and fstrans_done().

PR kern/53624 (dom0 freeze on domU exit)

Revision 1.50 / (download) - annotate - [select for diffs], Fri Oct 5 01:25:38 2018 UTC (5 years, 4 months ago) by manu
Branch: MAIN
Changes since 1.49: +1 -6 lines
Diff to previous 1.49 (colored)

Back out sftchg/fstcnt deadlock workaround

The change did prevent some system freeze, but caused spurious
unmount failures reporter by bouyer@.

hannken@ is working on the right fix, see kern/53624

Revision 1.48.4.1 / (download) - annotate - [select for diffs], Sun Sep 30 01:45:55 2018 UTC (5 years, 5 months ago) by pgoyette
Branch: pgoyette-compat
Changes since 1.48: +8 -3 lines
Diff to previous 1.48 (colored)

Ssync with HEAD

Revision 1.49 / (download) - annotate - [select for diffs], Thu Sep 27 01:03:40 2018 UTC (5 years, 5 months ago) by manu
Branch: MAIN
CVS Tags: pgoyette-compat-0930
Changes since 1.48: +8 -3 lines
Diff to previous 1.48 (colored)

Work around deadlock between fstchg and fstcnt

When suspending a filesystem in fstrans_setstate(), we wait on
fstcnt for threads to finish transactions. While we do this, any
thread trying to start a filesystem transaction will wait on fstchg
in fstrans_start(), a situation which can deadlock.

The wait for fstcnt in fstrans_setstate() can be interrupted by
a signal, but the wait for fstchg in fstrans_start() cannot. Once
most processes are stuck in fstchg, it is impossible to send a
signal to the thread that waits on fstcnt, because no process
respond anymore to user input.

We fix that by adding a timeout to the wait on fstcnt in
fstrans_setstate(). This means suspending a filesystem may fail,
but it was already the case when the sleep was interupted by
a signal, hence calling function must already handle a possible
failure.

Fixes kern/53624

Revision 1.25.22.3 / (download) - annotate - [select for diffs], Sun Dec 3 11:38:45 2017 UTC (6 years, 2 months ago) by jdolecek
Branch: tls-maxphys
Changes since 1.25.22.2: +155 -70 lines
Diff to previous 1.25.22.2 (colored) to branchpoint 1.25 (colored) next main 1.26 (colored)

update from HEAD

Revision 1.31.2.3 / (download) - annotate - [select for diffs], Mon Aug 28 17:53:08 2017 UTC (6 years, 6 months ago) by skrll
Branch: nick-nhusb
Changes since 1.31.2.2: +143 -57 lines
Diff to previous 1.31.2.2 (colored) to branchpoint 1.31 (colored) next main 1.32 (colored)

Sync with HEAD

Revision 1.45.2.2 / (download) - annotate - [select for diffs], Wed Jun 21 18:24:26 2017 UTC (6 years, 8 months ago) by snj
Branch: netbsd-8
CVS Tags: netbsd-8-0-RELEASE, netbsd-8-0-RC2, netbsd-8-0-RC1, matt-nb8-mediatek-base, matt-nb8-mediatek
Changes since 1.45.2.1: +43 -18 lines
Diff to previous 1.45.2.1 (colored) to branchpoint 1.45 (colored)

Pull up following revision(s) (requested by hannken in ticket #54):
	sys/kern/vfs_trans.c: 1.47, 1.48
Clear fstrans entries whose mount is gone from the last fstrans_done() only.
--
Make the fast path of fstrans_get_lwp_info() "static inline".

Revision 1.48 / (download) - annotate - [select for diffs], Sun Jun 18 14:00:17 2017 UTC (6 years, 8 months ago) by hannken
Branch: MAIN
CVS Tags: tls-maxphys-base-20171202, phil-wifi-base, pgoyette-compat-base, pgoyette-compat-0906, pgoyette-compat-0728, pgoyette-compat-0625, pgoyette-compat-0521, pgoyette-compat-0502, pgoyette-compat-0422, pgoyette-compat-0415, pgoyette-compat-0407, pgoyette-compat-0330, pgoyette-compat-0322, pgoyette-compat-0315, perseant-stdc-iso10646-base, perseant-stdc-iso10646, nick-nhusb-base-20170825
Branch point for: phil-wifi, pgoyette-compat
Changes since 1.47: +27 -16 lines
Diff to previous 1.47 (colored)

Make the fast path of fstrans_get_lwp_info() "static inline".

Revision 1.47 / (download) - annotate - [select for diffs], Sun Jun 18 13:59:45 2017 UTC (6 years, 8 months ago) by hannken
Branch: MAIN
Changes since 1.46: +29 -15 lines
Diff to previous 1.46 (colored)

Clear fstrans entries whose mount is gone from the last fstrans_done() only.

Revision 1.45.2.1 / (download) - annotate - [select for diffs], Sun Jun 4 20:35:01 2017 UTC (6 years, 8 months ago) by bouyer
Branch: netbsd-8
Changes since 1.45: +26 -13 lines
Diff to previous 1.45 (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.46 / (download) - annotate - [select for diffs], Sun Jun 4 08:05:42 2017 UTC (6 years, 8 months ago) by hannken
Branch: MAIN
Changes since 1.45: +26 -13 lines
Diff to previous 1.45 (colored)

Operations fstrans_start() and fstrans_start_nowait() now always
use FSTRANS_SHARED as lock type so remove the lock type argument.

File system state FSTRANS_SUSPENDING is now unused so remove it.

Regen vnode_if files.

Ride 8.99.1 less than a hour ago.

Revision 1.43.2.1 / (download) - annotate - [select for diffs], Thu May 11 02:58:40 2017 UTC (6 years, 9 months ago) by pgoyette
Branch: prg-localcount2
Changes since 1.43: +11 -14 lines
Diff to previous 1.43 (colored) next main 1.44 (colored)

Sync with HEAD

Revision 1.45 / (download) - annotate - [select for diffs], Sun May 7 08:24:20 2017 UTC (6 years, 9 months ago) by hannken
Branch: MAIN
CVS Tags: prg-localcount2-base3, prg-localcount2-base2, netbsd-8-base
Branch point for: netbsd-8
Changes since 1.44: +2 -7 lines
Diff to previous 1.44 (colored)

Move fstrans initialization to vfs_mountalloc().

Revision 1.44 / (download) - annotate - [select for diffs], Sun May 7 08:23:28 2017 UTC (6 years, 9 months ago) by hannken
Branch: MAIN
Changes since 1.43: +11 -9 lines
Diff to previous 1.43 (colored)

Handle the case where the mount is gone and its mnt_transinfo is NULL.

Revision 1.34.2.2 / (download) - annotate - [select for diffs], Wed Apr 26 02:53:27 2017 UTC (6 years, 10 months ago) by pgoyette
Branch: pgoyette-localcount
Changes since 1.34.2.1: +23 -12 lines
Diff to previous 1.34.2.1 (colored) to branchpoint 1.34 (colored) next main 1.35 (colored)

Sync with HEAD

Revision 1.34.4.1 / (download) - annotate - [select for diffs], Fri Apr 21 16:54:03 2017 UTC (6 years, 10 months ago) by bouyer
Branch: bouyer-socketcan
Changes since 1.34: +74 -23 lines
Diff to previous 1.34 (colored) next main 1.35 (colored)

Sync with HEAD

Revision 1.43 / (download) - annotate - [select for diffs], Mon Apr 17 08:32:01 2017 UTC (6 years, 10 months ago) by hannken
Branch: MAIN
CVS Tags: prg-localcount2-base1, prg-localcount2-base, pgoyette-localcount-20170426, bouyer-socketcan-base1
Branch point for: prg-localcount2
Changes since 1.42: +5 -4 lines
Diff to previous 1.42 (colored)

Remove unused argument "nextp" from vfs_busy() and vfs_unbusy().
Remove argument "keepref" from vfs_unbusy() and add vfs_ref() where needed.

Revision 1.42 / (download) - annotate - [select for diffs], Mon Apr 17 08:31:02 2017 UTC (6 years, 10 months ago) by hannken
Branch: MAIN
Changes since 1.41: +3 -3 lines
Diff to previous 1.41 (colored)

Add vfs_ref(mp) and vfs_rele(mp) to add or remove a reference to
struct mount.  Rename vfs_destroy(mp) to vfs_rele(mp) and replace
incrementing mp->mnt_refcnt with vfs_ref(mp).

Revision 1.41 / (download) - annotate - [select for diffs], Wed Apr 12 10:23:35 2017 UTC (6 years, 10 months ago) by hannken
Branch: MAIN
Changes since 1.40: +3 -3 lines
Diff to previous 1.40 (colored)

Switch fstrans_dump() to _mountlist_next().

Revision 1.40 / (download) - annotate - [select for diffs], Thu Mar 30 09:13:01 2017 UTC (6 years, 11 months ago) by hannken
Branch: MAIN
CVS Tags: jdolecek-ncq-base, jdolecek-ncq
Changes since 1.39: +18 -8 lines
Diff to previous 1.39 (colored)

Change _fstrans_start() to allocate per lwp info for layered file
systems to get a reference on the mount.

Set mnt_lower on successfull mount only.

Revision 1.34.2.1 / (download) - annotate - [select for diffs], Mon Mar 20 06:57:48 2017 UTC (6 years, 11 months ago) by pgoyette
Branch: pgoyette-localcount
Changes since 1.34: +59 -19 lines
Diff to previous 1.34 (colored)

Sync with HEAD

Revision 1.39 / (download) - annotate - [select for diffs], Mon Mar 6 10:11:21 2017 UTC (6 years, 11 months ago) by hannken
Branch: MAIN
CVS Tags: pgoyette-localcount-20170320
Changes since 1.38: +4 -2 lines
Diff to previous 1.38 (colored)

Always use the lowest mount for fstrans and suspend.  This way we
enter/leave or suspend/resume the stack of layered file systems as a unit.

Revision 1.38 / (download) - annotate - [select for diffs], Thu Mar 2 10:41:27 2017 UTC (6 years, 11 months ago) by hannken
Branch: MAIN
Changes since 1.37: +36 -15 lines
Diff to previous 1.37 (colored)

Add an operation to test a mount for fstrans support and use it for
_fstrans_start(), fstrans_done(), fstrans_is_owner(), vfs_suspend()
and vfs_resume().

Test for fstrans support before ASSERT_SLEEPABLE().

Revision 1.37 / (download) - annotate - [select for diffs], Thu Feb 23 11:23:22 2017 UTC (7 years ago) by hannken
Branch: MAIN
Changes since 1.36: +16 -10 lines
Diff to previous 1.36 (colored)

Test for fstrans support before trying to allocate per-thread info.

PR kern/51996 (kmem_alloc called from intr context in fstrans_get_lwp_info)

Revision 1.36 / (download) - annotate - [select for diffs], Fri Feb 17 08:25:15 2017 UTC (7 years ago) by hannken
Branch: MAIN
Changes since 1.35: +3 -7 lines
Diff to previous 1.35 (colored)

Let syncer try fstrans_start() before running VFS_SYNC() to get rid
of the syncer lock/unlock from vfs_suspend().

Revision 1.35 / (download) - annotate - [select for diffs], Fri Feb 17 08:24:07 2017 UTC (7 years ago) by hannken
Branch: MAIN
Changes since 1.34: +31 -16 lines
Diff to previous 1.34 (colored)

Protect attaching and detaching lwp_info to mount with a mutex.

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

Sync with HEAD

Revision 1.34 / (download) - annotate - [select for diffs], Mon Aug 24 22:50:32 2015 UTC (8 years, 6 months ago) by pooka
Branch: MAIN
CVS Tags: pgoyette-localcount-base, pgoyette-localcount-20170107, pgoyette-localcount-20161104, pgoyette-localcount-20160806, pgoyette-localcount-20160726, nick-nhusb-base-20170204, nick-nhusb-base-20161204, nick-nhusb-base-20161004, nick-nhusb-base-20160907, nick-nhusb-base-20160529, nick-nhusb-base-20160422, nick-nhusb-base-20160319, nick-nhusb-base-20151226, nick-nhusb-base-20150921, localcount-20160914, bouyer-socketcan-base
Branch point for: pgoyette-localcount, bouyer-socketcan
Changes since 1.33: +4 -2 lines
Diff to previous 1.33 (colored)

to garnish, dust with _KERNEL_OPT

Revision 1.31.2.1 / (download) - annotate - [select for diffs], Sat Jun 6 14:40:22 2015 UTC (8 years, 8 months ago) by skrll
Branch: nick-nhusb
Changes since 1.31: +4 -7 lines
Diff to previous 1.31 (colored)

Sync with HEAD

Revision 1.33 / (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.32: +2 -3 lines
Diff to previous 1.32 (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.32 / (download) - annotate - [select for diffs], Tue Apr 21 10:54:52 2015 UTC (8 years, 10 months ago) by pooka
Branch: MAIN
Changes since 1.31: +4 -6 lines
Diff to previous 1.31 (colored)

Don't check if constant-sized KM_SLEEP allocations succeeded.

Revision 1.31 / (download) - annotate - [select for diffs], Fri Sep 5 05:57:21 2014 UTC (9 years, 5 months ago) by matt
Branch: MAIN
CVS Tags: nick-nhusb-base-20150406, nick-nhusb-base
Branch point for: nick-nhusb
Changes since 1.30: +14 -14 lines
Diff to previous 1.30 (colored)

Don't next structure and enum definitions.
Don't use C++ keywords new, try, class, private, etc.

Revision 1.25.22.2 / (download) - annotate - [select for diffs], Wed Aug 20 00:04:29 2014 UTC (9 years, 6 months ago) by tls
Branch: tls-maxphys
Changes since 1.25.22.1: +24 -14 lines
Diff to previous 1.25.22.1 (colored) to branchpoint 1.25 (colored)

Rebase to HEAD as of a few days ago.

Revision 1.29.2.1 / (download) - annotate - [select for diffs], Sun Aug 10 06:55:58 2014 UTC (9 years, 6 months ago) by tls
Branch: tls-earlyentropy
Changes since 1.29: +20 -10 lines
Diff to previous 1.29 (colored) next main 1.30 (colored)

Rebase.

Revision 1.25.12.2 / (download) - annotate - [select for diffs], Thu May 22 11:41:04 2014 UTC (9 years, 9 months ago) by yamt
Branch: yamt-pagecache
Changes since 1.25.12.1: +24 -14 lines
Diff to previous 1.25.12.1 (colored) to branchpoint 1.25 (colored) next main 1.26 (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.26.2.1 / (download) - annotate - [select for diffs], Sun May 18 17:46:08 2014 UTC (9 years, 9 months ago) by rmind
Branch: rmind-smpnet
Changes since 1.26: +24 -14 lines
Diff to previous 1.26 (colored) next main 1.27 (colored)

sync with head

Revision 1.30 / (download) - annotate - [select for diffs], Tue Apr 15 09:50:45 2014 UTC (9 years, 10 months ago) by hannken
Branch: MAIN
CVS Tags: yamt-pagecache-base9, tls-maxphys-base, tls-earlyentropy-base, rmind-smpnet-nbase, rmind-smpnet-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
Changes since 1.29: +20 -10 lines
Diff to previous 1.29 (colored)

Fix a deadlock where one thread exits, enters fstrans_lwp_dtor()
and wants fstrans_lock.  This thread holds the proc_lock.
Another thread holds fstrans_lock and runs pserialize_perform().
As the first thread holds the proc_lock, timeouts are blocked and
the second thread blocks forever in kpause().

Change fstrans_lwp_dtor() to invalidate, but not free its info
structs.  No need to take fstrans_lock.

Change fstrans_get_lwp_info() to reuse invalidated info before
trying to allocate a new one.

Revision 1.29 / (download) - annotate - [select for diffs], Sat Nov 23 13:35:36 2013 UTC (10 years, 3 months ago) by christos
Branch: MAIN
CVS Tags: riastradh-xf86-video-intel-2-7-1-pre-2-21-15, riastradh-drm2-base3
Branch point for: tls-earlyentropy
Changes since 1.28: +3 -3 lines
Diff to previous 1.28 (colored)

change the mountlist CIRCLEQ into a TAILQ

Revision 1.28 / (download) - annotate - [select for diffs], Fri Oct 25 20:38:10 2013 UTC (10 years, 4 months ago) by martin
Branch: MAIN
Changes since 1.27: +4 -4 lines
Diff to previous 1.27 (colored)

Mark diagnostic-only variables

Revision 1.27 / (download) - annotate - [select for diffs], Mon Sep 30 18:58:00 2013 UTC (10 years, 5 months ago) by hannken
Branch: MAIN
Changes since 1.26: +3 -3 lines
Diff to previous 1.26 (colored)

Replace macro v_specmountpoint with two functions spec_node_getmountedfs()
and spec_node_setmountedfs() to manage the file system mounted on a device.
Assert the device is a block device.

Welcome to 6.99.24

Discussed on tech-kern@ some time ago.

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

Revision 1.25.22.1 / (download) - annotate - [select for diffs], Mon Feb 25 00:29:57 2013 UTC (11 years ago) by tls
Branch: tls-maxphys
Changes since 1.25: +461 -229 lines
Diff to previous 1.25 (colored)

resync with head

Revision 1.25.12.1 / (download) - annotate - [select for diffs], Wed Jan 23 00:06:23 2013 UTC (11 years, 1 month ago) by yamt
Branch: yamt-pagecache
CVS Tags: yamt-pagecache-tag8
Changes since 1.25: +461 -229 lines
Diff to previous 1.25 (colored)

sync with head

Revision 1.26 / (download) - annotate - [select for diffs], Mon Jan 21 09:14:01 2013 UTC (11 years, 1 month ago) by hannken
Branch: MAIN
CVS Tags: yamt-pagecache-base8, 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.25: +461 -229 lines
Diff to previous 1.25 (colored)

Replace the rwlock based implementation with passive serialization
from pserialize(9) and mutex / condvar.

The fast paths (fstrans_start/fstrans_done on a file system not
suspended or suspending and fscow_run with no change pending) now
run without locks or other atomic operations.  Suspension and cow
handler insertion and removal is done with mutex / condvars.

The API remains unchanged.

Revision 1.23.6.1.2.1 / (download) - annotate - [select for diffs], Wed Apr 21 00:28:19 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.23.6.1: +2 -2 lines
Diff to previous 1.23.6.1 (colored) next main 1.24 (colored)

sync to netbsd-5

Revision 1.23.6.1 / (download) - annotate - [select for diffs], Wed Jul 1 22:39:28 2009 UTC (14 years, 8 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.23: +3 -3 lines
Diff to previous 1.23 (colored) next main 1.24 (colored)

Pull up following revision(s) (requested by rmind in ticket #838):
	sys/kern/init_sysctl.c: revision 1.162
	sys/kern/vfs_trans.c: revision 1.25
don't forget to skip marker processes.

Revision 1.23.4.1 / (download) - annotate - [select for diffs], Wed Jul 1 22:39:20 2009 UTC (14 years, 8 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.23: +3 -3 lines
Diff to previous 1.23 (colored) next main 1.24 (colored)

Pull up following revision(s) (requested by rmind in ticket #838):
	sys/kern/init_sysctl.c: revision 1.162
	sys/kern/vfs_trans.c: revision 1.25
don't forget to skip marker processes.

Revision 1.18.4.3 / (download) - annotate - [select for diffs], Sat May 16 10:41:49 2009 UTC (14 years, 9 months ago) by yamt
Branch: yamt-nfs-mp
Changes since 1.18.4.2: +3 -3 lines
Diff to previous 1.18.4.2 (colored) to branchpoint 1.18 (colored) next main 1.19 (colored)

sync with head

Revision 1.24.4.1 / (download) - annotate - [select for diffs], Wed May 13 17:21:58 2009 UTC (14 years, 9 months ago) by jym
Branch: jym-xensuspend
Changes since 1.24: +3 -3 lines
Diff to previous 1.24 (colored) next main 1.25 (colored)

Sync with HEAD.

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

Revision 1.25 / (download) - annotate - [select for diffs], Tue May 12 11:42:12 2009 UTC (14 years, 9 months ago) by yamt
Branch: MAIN
CVS Tags: yamt-pagecache-base7, yamt-pagecache-base6, yamt-pagecache-base5, yamt-pagecache-base4, yamt-pagecache-base3, yamt-pagecache-base2, yamt-pagecache-base, yamt-nfs-mp-base9, yamt-nfs-mp-base8, yamt-nfs-mp-base7, yamt-nfs-mp-base6, yamt-nfs-mp-base5, yamt-nfs-mp-base4, yamt-nfs-mp-base11, yamt-nfs-mp-base10, uebayasi-xip-base4, uebayasi-xip-base3, uebayasi-xip-base2, uebayasi-xip-base1, uebayasi-xip-base, uebayasi-xip, rmind-uvmplock-nbase, rmind-uvmplock-base, rmind-uvmplock, 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-premerge-20091211, matt-nb6-plus-nbase, matt-nb6-plus-base, matt-nb6-plus, matt-mips64-premerge-20101231, jymxensuspend-base, jym-xensuspend-nbase, jym-xensuspend-base, jruoho-x86intr-base, jruoho-x86intr, 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, jmcneill-audiomp3-base, jmcneill-audiomp3, cherry-xenmp-base, cherry-xenmp, bouyer-quota2-nbase, bouyer-quota2-base, bouyer-quota2
Branch point for: yamt-pagecache, tls-maxphys
Changes since 1.24: +3 -3 lines
Diff to previous 1.24 (colored)

don't forget to skip marker processes.

Revision 1.18.4.2 / (download) - annotate - [select for diffs], Mon May 4 08:13:49 2009 UTC (14 years, 9 months ago) by yamt
Branch: yamt-nfs-mp
Changes since 1.18.4.1: +78 -46 lines
Diff to previous 1.18.4.1 (colored) to branchpoint 1.18 (colored)

sync with head.

Revision 1.23.2.1 / (download) - annotate - [select for diffs], Mon Jan 19 13:19:40 2009 UTC (15 years, 1 month ago) by skrll
Branch: nick-hppapmap
Changes since 1.23: +3 -2 lines
Diff to previous 1.23 (colored) next main 1.24 (colored)

Sync with HEAD.

Revision 1.17.6.5 / (download) - annotate - [select for diffs], Sat Jan 17 13:29:21 2009 UTC (15 years, 1 month ago) by mjf
Branch: mjf-devfs2
Changes since 1.17.6.4: +1 -0 lines
Diff to previous 1.17.6.4 (colored) to branchpoint 1.17 (colored) next main 1.18 (colored)

Sync with HEAD.

Revision 1.22.2.2 / (download) - annotate - [select for diffs], Sat Dec 13 01:15:09 2008 UTC (15 years, 2 months ago) by haad
Branch: haad-dm
Changes since 1.22.2.1: +3 -2 lines
Diff to previous 1.22.2.1 (colored) to branchpoint 1.22 (colored) next main 1.23 (colored)

Update haad-dm branch to haad-dm-base2.

Revision 1.24 / (download) - annotate - [select for diffs], Sun Nov 16 19:34:29 2008 UTC (15 years, 3 months ago) by pooka
Branch: MAIN
CVS Tags: yamt-nfs-mp-base3, nick-hppapmap-base4, nick-hppapmap-base3, nick-hppapmap-base2, nick-hppapmap-base, mjf-devfs2-base, haad-nbase2, haad-dm-base2, haad-dm-base, ad-audiomp2-base, ad-audiomp2
Branch point for: jym-xensuspend
Changes since 1.23: +3 -2 lines
Diff to previous 1.23 (colored)

more <sys/buf.h> police

Revision 1.22.2.1 / (download) - annotate - [select for diffs], Sun Oct 19 22:17:29 2008 UTC (15 years, 4 months ago) by haad
Branch: haad-dm
Changes since 1.22: +9 -3 lines
Diff to previous 1.22 (colored)

Sync with HEAD.

Revision 1.17.6.4 / (download) - annotate - [select for diffs], Sun Sep 28 10:40:54 2008 UTC (15 years, 5 months ago) by mjf
Branch: mjf-devfs2
Changes since 1.17.6.3: +7 -1 lines
Diff to previous 1.17.6.3 (colored) to branchpoint 1.17 (colored)

Sync with HEAD.

Revision 1.19.2.3 / (download) - annotate - [select for diffs], Wed Sep 24 16:38:57 2008 UTC (15 years, 5 months ago) by wrstuden
Branch: wrstuden-revivesa
Changes since 1.19.2.2: +9 -3 lines
Diff to previous 1.19.2.2 (colored) to branchpoint 1.19 (colored) next main 1.20 (colored)

Merge in changes between wrstuden-revivesa-base-2 and
wrstuden-revivesa-base-3.

Revision 1.19.2.2 / (download) - annotate - [select for diffs], Thu Sep 18 04:31:45 2008 UTC (15 years, 5 months ago) by wrstuden
Branch: wrstuden-revivesa
Changes since 1.19.2.1: +7 -7 lines
Diff to previous 1.19.2.1 (colored) to branchpoint 1.19 (colored)

Sync with wrstuden-revivesa-base-2.

Revision 1.23 / (download) - annotate - [select for diffs], Wed Sep 17 14:49:25 2008 UTC (15 years, 5 months ago) by hannken
Branch: MAIN
CVS Tags: wrstuden-revivesa-base-4, wrstuden-revivesa-base-3, 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-dm-base1
Branch point for: nick-hppapmap, netbsd-5-0, netbsd-5
Changes since 1.22: +9 -3 lines
Diff to previous 1.22 (colored)

Replace the fss unmount hook with a vfs_hook.

fssvar.h:       struct device * -> device_t.
fss.c:          establish unmount hook on first attach, remove on last detach.
vfs_syscalls.c: remove the call of fss_umount_hook().
vfs_trans.c:    destroy cow handlers on unmount as fstrans_unmount() will be
                called before vfs_hooks.

Revision 1.17.6.3 / (download) - annotate - [select for diffs], Sun Jun 29 09:33:15 2008 UTC (15 years, 8 months ago) by mjf
Branch: mjf-devfs2
Changes since 1.17.6.2: +5 -5 lines
Diff to previous 1.17.6.2 (colored) to branchpoint 1.17 (colored)

Sync with HEAD.

Revision 1.21.2.1 / (download) - annotate - [select for diffs], Fri Jun 27 15:11:39 2008 UTC (15 years, 8 months ago) by simonb
Branch: simonb-wapbl
Changes since 1.21: +7 -7 lines
Diff to previous 1.21 (colored) next main 1.22 (colored)

Sync with head.

Revision 1.22 / (download) - annotate - [select for diffs], Tue Jun 24 18:50:30 2008 UTC (15 years, 8 months ago) by ad
Branch: MAIN
CVS Tags: wrstuden-revivesa-base-2, simonb-wapbl-nbase, simonb-wapbl-base
Branch point for: haad-dm
Changes since 1.21: +7 -7 lines
Diff to previous 1.21 (colored)

Use pool_cache.

Revision 1.19.2.1 / (download) - annotate - [select for diffs], Mon Jun 23 04:31:52 2008 UTC (15 years, 8 months ago) by wrstuden
Branch: wrstuden-revivesa
Changes since 1.19: +66 -41 lines
Diff to previous 1.19 (colored)

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

Revision 1.17.6.2 / (download) - annotate - [select for diffs], Mon Jun 2 13:24:15 2008 UTC (15 years, 9 months ago) by mjf
Branch: mjf-devfs2
Changes since 1.17.6.1: +64 -46 lines
Diff to previous 1.17.6.1 (colored) to branchpoint 1.17 (colored)

Sync with HEAD.

Revision 1.18.2.1 / (download) - annotate - [select for diffs], Sun May 18 12:35:12 2008 UTC (15 years, 9 months ago) by yamt
Branch: yamt-pf42
Changes since 1.18: +66 -48 lines
Diff to previous 1.18 (colored) next main 1.19 (colored)

sync with head.

Revision 1.21 / (download) - annotate - [select for diffs], Fri May 16 14:08:56 2008 UTC (15 years, 9 months ago) by hannken
Branch: MAIN
CVS Tags: yamt-pf42-base4, yamt-pf42-base3, yamt-pf42-base2, wrstuden-revivesa-base-1, wrstuden-revivesa-base, hpcarm-cleanup-nbase
Branch point for: simonb-wapbl
Changes since 1.20: +2 -4 lines
Diff to previous 1.20 (colored)

Remove a bad assertion from last commit.
Non bufcache buffers may have BC_BUSY unset.

Revision 1.20 / (download) - annotate - [select for diffs], Fri May 16 09:01:56 2008 UTC (15 years, 9 months ago) by hannken
Branch: MAIN
Changes since 1.19: +68 -41 lines
Diff to previous 1.19 (colored)

Fscow_run() may recurse into itself.
Take care by adding a per-lwp recursion counter.

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

sync with head.

Revision 1.19 / (download) - annotate - [select for diffs], Mon Apr 28 20:24:05 2008 UTC (15 years, 10 months ago) by martin
Branch: MAIN
CVS Tags: yamt-nfs-mp-base2
Branch point for: wrstuden-revivesa
Changes since 1.18: +2 -9 lines
Diff to previous 1.18 (colored)

Remove clause 3 and 4 from TNF licenses

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

Sync with HEAD.

Revision 1.17.2.1 / (download) - annotate - [select for diffs], Mon Mar 24 07:16:15 2008 UTC (15 years, 11 months ago) by keiichi
Branch: keiichi-mipv6
Changes since 1.17: +3 -3 lines
Diff to previous 1.17 (colored) next main 1.18 (colored)

sync with head.

Revision 1.11.6.3 / (download) - annotate - [select for diffs], Sun Mar 23 02:05:02 2008 UTC (15 years, 11 months ago) by matt
Branch: matt-armv6
Changes since 1.11.6.2: +6 -9 lines
Diff to previous 1.11.6.2 (colored) to branchpoint 1.11 (colored) next main 1.12 (colored)

sync with HEAD

Revision 1.5.4.8 / (download) - annotate - [select for diffs], Mon Mar 17 09:15:34 2008 UTC (15 years, 11 months ago) by yamt
Branch: yamt-lazymbuf
Changes since 1.5.4.7: +3 -3 lines
Diff to previous 1.5.4.7 (colored) to branchpoint 1.5 (colored) next main 1.6 (colored)

sync with head.

Revision 1.18 / (download) - annotate - [select for diffs], Mon Mar 17 08:27:50 2008 UTC (15 years, 11 months ago) by yamt
Branch: MAIN
CVS Tags: yamt-pf42-baseX, yamt-pf42-base, yamt-nfs-mp-base, yamt-lazymbuf-base15, yamt-lazymbuf-base14, matt-armv6-nbase, keiichi-mipv6-nbase, keiichi-mipv6-base, ad-socklock-base1
Branch point for: yamt-pf42, yamt-nfs-mp
Changes since 1.17: +3 -3 lines
Diff to previous 1.17 (colored)

- simplify ASSERT_SLEEPABLE.
- move it from proc.h to systm.h.
- add some more checks.
- make it a little more lkm friendly.

Revision 1.14.4.2 / (download) - annotate - [select for diffs], Mon Feb 18 21:06:48 2008 UTC (16 years ago) by mjf
Branch: mjf-devfs
Changes since 1.14.4.1: +69 -124 lines
Diff to previous 1.14.4.1 (colored) to branchpoint 1.14 (colored) next main 1.15 (colored)

Sync with HEAD.

Revision 1.5.4.7 / (download) - annotate - [select for diffs], Mon Feb 4 09:24:24 2008 UTC (16 years ago) by yamt
Branch: yamt-lazymbuf
Changes since 1.5.4.6: +5 -8 lines
Diff to previous 1.5.4.6 (colored) to branchpoint 1.5 (colored)

sync with head.

Revision 1.17 / (download) - annotate - [select for diffs], Sat Feb 2 16:51:34 2008 UTC (16 years ago) by hannken
Branch: MAIN
CVS Tags: nick-net80211-sync-base, nick-net80211-sync, mjf-devfs-base, hpcarm-cleanup-base
Branch point for: mjf-devfs2, keiichi-mipv6
Changes since 1.16: +5 -8 lines
Diff to previous 1.16 (colored)

BO_COWDONE -> B_COWDONE: this flag is tested/modified from the thread owning
the buffer and therefore needs no protection by a mutex.

Ok: Andrew Doran <ad@netbsd.org>

Revision 1.5.4.6 / (download) - annotate - [select for diffs], Mon Jan 21 09:46:34 2008 UTC (16 years, 1 month ago) by yamt
Branch: yamt-lazymbuf
Changes since 1.5.4.5: +73 -125 lines
Diff to previous 1.5.4.5 (colored) to branchpoint 1.5 (colored)

sync with head

Revision 1.11.6.2 / (download) - annotate - [select for diffs], Wed Jan 9 01:56:32 2008 UTC (16 years, 1 month ago) by matt
Branch: matt-armv6
Changes since 1.11.6.1: +82 -127 lines
Diff to previous 1.11.6.1 (colored) to branchpoint 1.11 (colored)

sync with HEAD

Revision 1.15.6.1 / (download) - annotate - [select for diffs], Wed Jan 2 21:56:25 2008 UTC (16 years, 2 months ago) by bouyer
Branch: bouyer-xeni386
CVS Tags: bouyer-xeni386-merge1
Changes since 1.15: +73 -125 lines
Diff to previous 1.15 (colored) next main 1.16 (colored)

Sync with HEAD

Revision 1.16 / (download) - annotate - [select for diffs], Wed Jan 2 11:48:57 2008 UTC (16 years, 2 months ago) by ad
Branch: MAIN
CVS Tags: matt-armv6-base, bouyer-xeni386-nbase, bouyer-xeni386-base
Changes since 1.15: +73 -125 lines
Diff to previous 1.15 (colored)

Merge vmlocking2 to head.

Revision 1.14.4.1 / (download) - annotate - [select for diffs], Sat Dec 8 18:20:45 2007 UTC (16 years, 2 months ago) by mjf
Branch: mjf-devfs
Changes since 1.14: +17 -10 lines
Diff to previous 1.14 (colored)

Sync with HEAD.

Revision 1.5.4.5 / (download) - annotate - [select for diffs], Fri Dec 7 17:33:24 2007 UTC (16 years, 2 months ago) by yamt
Branch: yamt-lazymbuf
Changes since 1.5.4.4: +17 -10 lines
Diff to previous 1.5.4.4 (colored) to branchpoint 1.5 (colored)

sync with head

Revision 1.15.2.1 / (download) - annotate - [select for diffs], Tue Dec 4 13:03:22 2007 UTC (16 years, 2 months ago) by ad
Branch: vmlocking2
Changes since 1.15: +73 -125 lines
Diff to previous 1.15 (colored) next main 1.16 (colored)

Pull the vmlocking changes into a new branch.

Revision 1.11.4.2 / (download) - annotate - [select for diffs], Mon Dec 3 16:15:00 2007 UTC (16 years, 2 months ago) by joerg
Branch: jmcneill-pm
Changes since 1.11.4.1: +17 -10 lines
Diff to previous 1.11.4.1 (colored) to branchpoint 1.11 (colored) next main 1.12 (colored)

Sync with HEAD.

Revision 1.15 / (download) - annotate - [select for diffs], Sun Dec 2 13:56:16 2007 UTC (16 years, 3 months ago) by hannken
Branch: MAIN
CVS Tags: yamt-kmem-base3, yamt-kmem-base2, yamt-kmem-base, yamt-kmem, vmlocking2-base3, 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.14: +17 -10 lines
Diff to previous 1.14 (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.5.8.9 / (download) - annotate - [select for diffs], Sun Nov 11 14:48:06 2007 UTC (16 years, 3 months ago) by hannken
Branch: vmlocking
Changes since 1.5.8.8: +42 -48 lines
Diff to previous 1.5.8.8 (colored) to branchpoint 1.5 (colored) next main 1.6 (colored)

Add fstrans_mount() to explicitly allocate fstrans_info.
Replace remaining malloc() to kmem_alloc() in vfs_trans.c.

Ok: Andrew Doran <ad@netbsd.org>

Revision 1.5.8.8 / (download) - annotate - [select for diffs], Wed Nov 7 08:22:12 2007 UTC (16 years, 3 months ago) by hannken
Branch: vmlocking
Changes since 1.5.8.7: +31 -60 lines
Diff to previous 1.5.8.7 (colored) to branchpoint 1.5 (colored)

Merge struct fscow_mount_info into struct fstrans_mount_info.

Ok: Andrew Doran <ad@netbsd.org>

Revision 1.11.6.1 / (download) - annotate - [select for diffs], Tue Nov 6 23:32:51 2007 UTC (16 years, 3 months ago) by matt
Branch: matt-armv6
CVS Tags: matt-armv6-prevmlocking
Changes since 1.11: +133 -2 lines
Diff to previous 1.11 (colored)

sync with HEAD

Revision 1.5.4.4 / (download) - annotate - [select for diffs], Sat Oct 27 11:35:42 2007 UTC (16 years, 4 months ago) by yamt
Branch: yamt-lazymbuf
Changes since 1.5.4.3: +133 -2 lines
Diff to previous 1.5.4.3 (colored) to branchpoint 1.5 (colored)

sync with head.

Revision 1.11.4.1 / (download) - annotate - [select for diffs], Fri Oct 26 15:48:48 2007 UTC (16 years, 4 months ago) by joerg
Branch: jmcneill-pm
Changes since 1.11: +133 -2 lines
Diff to previous 1.11 (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.11.8.1 / (download) - annotate - [select for diffs], Sun Oct 14 11:48:51 2007 UTC (16 years, 4 months ago) by yamt
Branch: yamt-x86pmap
Changes since 1.11: +133 -2 lines
Diff to previous 1.11 (colored) next main 1.12 (colored)

sync with head.

Revision 1.5.8.7 / (download) - annotate - [select for diffs], Tue Oct 9 15:22:23 2007 UTC (16 years, 4 months ago) by ad
Branch: vmlocking
Changes since 1.5.8.6: +3 -17 lines
Diff to previous 1.5.8.6 (colored) to branchpoint 1.5 (colored)

Sync with head.

Revision 1.5.8.6 / (download) - annotate - [select for diffs], Tue Oct 9 13:44:33 2007 UTC (16 years, 4 months ago) by ad
Branch: vmlocking
Changes since 1.5.8.5: +131 -2 lines
Diff to previous 1.5.8.5 (colored) to branchpoint 1.5 (colored)

Sync with head.

Revision 1.5.8.5 / (download) - annotate - [select for diffs], Mon Oct 8 20:28:11 2007 UTC (16 years, 4 months ago) by ad
Branch: vmlocking
Changes since 1.5.8.4: +12 -16 lines
Diff to previous 1.5.8.4 (colored) to branchpoint 1.5 (colored)

Don't use the 'specificdata' system to store per-mountpoint information
on transactions. It causes a massive amount of lock contention during
I/O. Instead use an opaque pointer in struct mount. (This change is
imcomplete but I am clearing out my tree.)

Revision 1.14 / (download) - annotate - [select for diffs], Mon Oct 8 09:09:47 2007 UTC (16 years, 4 months ago) by hannken
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.13: +4 -2 lines
Diff to previous 1.13 (colored)

fscow_run(): Check for NULL mount and don't run the cow handler in this case.

Revision 1.13 / (download) - annotate - [select for diffs], Sun Oct 7 14:48:38 2007 UTC (16 years, 4 months ago) by hannken
Branch: MAIN
Changes since 1.12: +2 -3 lines
Diff to previous 1.12 (colored)

Remove an include committed by accident.

From Chris Ross via current-users.

Revision 1.12 / (download) - annotate - [select for diffs], Sun Oct 7 13:39:03 2007 UTC (16 years, 4 months ago) by hannken
Branch: MAIN
Changes since 1.11: +132 -2 lines
Diff to previous 1.11 (colored)

Update the file system copy-on-write handler.

- Instead of hooking the handler on the specdev of a mounted file system
  hook directly on the `struct mount'.

- Rename from `vn_cow_*' to `fscow_*' and move to `kern/vfs_trans.c'.  Use
  `mount_*specific' instead of clobbering `struct mount' or `struct specinfo'.

- Replace the hand-made reader/writer lock with a krwlock.

- Keep `vn_cow_*' functions and mark as obsolete.

- Welcome to NetBSD 4.99.32 - `struct specinfo' changed size.

Reviewed by: Jason Thorpe <thorpej@netbsd.org>

Revision 1.5.4.3 / (download) - annotate - [select for diffs], Mon Sep 3 14:41:24 2007 UTC (16 years, 5 months ago) by yamt
Branch: yamt-lazymbuf
Changes since 1.5.4.2: +40 -51 lines
Diff to previous 1.5.4.2 (colored) to branchpoint 1.5 (colored)

sync with head.

Revision 1.5.8.4 / (download) - annotate - [select for diffs], Mon Aug 20 21:27:45 2007 UTC (16 years, 6 months ago) by ad
Branch: vmlocking
Changes since 1.5.8.3: +2 -12 lines
Diff to previous 1.5.8.3 (colored) to branchpoint 1.5 (colored)

Sync with HEAD.

Revision 1.10.2.1 / (download) - annotate - [select for diffs], Wed Aug 15 13:49:25 2007 UTC (16 years, 6 months ago) by skrll
Branch: nick-csl-alignment
Changes since 1.10: +2 -12 lines
Diff to previous 1.10 (colored) next main 1.11 (colored)

Sync with HEAD.

Revision 1.11.10.2 / (download) - annotate - [select for diffs], Thu Jul 26 22:57:37 2007 UTC (16 years, 7 months ago) by pooka
Branch: matt-mips64
Changes since 1.11.10.1: +478 -0 lines
Diff to previous 1.11.10.1 (colored) to branchpoint 1.11 (colored) next main 1.12 (colored)

Use eopnotsupp() instead of vfs_stdsuspendctl() and retire the latter.

Revision 1.11.10.1, Thu Jul 26 22:57:36 2007 UTC (16 years, 7 months ago) by pooka
Branch: matt-mips64
Changes since 1.11: +0 -478 lines
FILE REMOVED

file vfs_trans.c was added on branch matt-mips64 on 2007-07-26 22:57:37 +0000

Revision 1.11 / (download) - annotate - [select for diffs], Thu Jul 26 22:57:36 2007 UTC (16 years, 7 months ago) by pooka
Branch: MAIN
CVS Tags: yamt-x86pmap-base2, yamt-x86pmap-base, nick-csl-alignment-base5, matt-mips64-base, hpcarm-cleanup
Branch point for: yamt-x86pmap, matt-mips64, matt-armv6, jmcneill-pm
Changes since 1.10: +2 -12 lines
Diff to previous 1.10 (colored)

Use eopnotsupp() instead of vfs_stdsuspendctl() and retire the latter.

Revision 1.6.2.1 / (download) - annotate - [select for diffs], Wed Jul 11 20:10:25 2007 UTC (16 years, 7 months ago) by mjf
Branch: mjf-ufs-trans
Changes since 1.6: +39 -40 lines
Diff to previous 1.6 (colored) next main 1.7 (colored)

Sync with head.

Revision 1.10 / (download) - annotate - [select for diffs], Mon Jul 9 21:10:58 2007 UTC (16 years, 7 months ago) by ad
Branch: MAIN
CVS Tags: nick-csl-alignment-base, mjf-ufs-trans-base
Branch point for: nick-csl-alignment
Changes since 1.9: +3 -2 lines
Diff to previous 1.9 (colored)

Merge some of the less invasive changes from the vmlocking branch:

- kthread, callout, devsw API changes
- select()/poll() improvements
- miscellaneous MT safety improvements

Revision 1.5.8.3 / (download) - annotate - [select for diffs], Fri Jun 8 14:17:30 2007 UTC (16 years, 8 months ago) by ad
Branch: vmlocking
Changes since 1.5.8.2: +32 -35 lines
Diff to previous 1.5.8.2 (colored) to branchpoint 1.5 (colored)

Sync with head.

Revision 1.5.2.2 / (download) - annotate - [select for diffs], Thu May 17 13:41:49 2007 UTC (16 years, 9 months ago) by yamt
Branch: yamt-idlelwp
Changes since 1.5.2.1: +32 -35 lines
Diff to previous 1.5.2.1 (colored) to branchpoint 1.5 (colored) next main 1.6 (colored)

sync with head.

Revision 1.9 / (download) - annotate - [select for diffs], Thu May 17 07:26:22 2007 UTC (16 years, 9 months ago) by hannken
Branch: MAIN
CVS Tags: yamt-idlelwp-base8
Changes since 1.8: +5 -8 lines
Diff to previous 1.8 (colored)

Fstrans_start() always returns zero, so change its type to void.

Revision 1.8 / (download) - annotate - [select for diffs], Wed May 16 16:11:56 2007 UTC (16 years, 9 months ago) by hannken
Branch: MAIN
Changes since 1.7: +29 -29 lines
Diff to previous 1.7 (colored)

Use rwlock for fmi_shared_lock and fmi_lazy_lock.

Ok: Andrew Doran <ad@netbsd.org>

Revision 1.5.8.2 / (download) - annotate - [select for diffs], Thu Apr 5 21:57:50 2007 UTC (16 years, 10 months ago) by ad
Branch: vmlocking
Changes since 1.5.8.1: +3 -2 lines
Diff to previous 1.5.8.1 (colored) to branchpoint 1.5 (colored)

Compile fixes.

Revision 1.5.2.1 / (download) - annotate - [select for diffs], Sat Mar 24 14:56:07 2007 UTC (16 years, 11 months ago) by yamt
Branch: yamt-idlelwp
Changes since 1.5: +9 -8 lines
Diff to previous 1.5 (colored)

sync with head.

Revision 1.5.8.1 / (download) - annotate - [select for diffs], Tue Mar 13 16:52:00 2007 UTC (16 years, 11 months ago) by ad
Branch: vmlocking
Changes since 1.5: +9 -8 lines
Diff to previous 1.5 (colored)

Sync with head.

Revision 1.7 / (download) - annotate - [select for diffs], Mon Mar 12 21:33:08 2007 UTC (16 years, 11 months ago) by ad
Branch: MAIN
CVS Tags: thorpej-atomic-base, thorpej-atomic, reinoud-bufcleanup
Changes since 1.6: +8 -7 lines
Diff to previous 1.6 (colored)

Use mutexes/condvars.

Revision 1.6 / (download) - annotate - [select for diffs], Mon Mar 12 18:18:35 2007 UTC (16 years, 11 months ago) by ad
Branch: MAIN
Branch point for: mjf-ufs-trans
Changes since 1.5: +3 -3 lines
Diff to previous 1.5 (colored)

Pass an ipl argument to pool_init/POOL_INIT to be used when initializing
the pool's lock.

Revision 1.5.4.2 / (download) - annotate - [select for diffs], Mon Feb 26 09:11:24 2007 UTC (17 years ago) by yamt
Branch: yamt-lazymbuf
Changes since 1.5.4.1: +489 -0 lines
Diff to previous 1.5.4.1 (colored) to branchpoint 1.5 (colored)

sync with head.

Revision 1.5.4.1, Fri Feb 16 17:24:00 2007 UTC (17 years ago) by yamt
Branch: yamt-lazymbuf
Changes since 1.5: +0 -489 lines
FILE REMOVED

file vfs_trans.c was added on branch yamt-lazymbuf on 2007-02-26 09:11:24 +0000

Revision 1.5 / (download) - annotate - [select for diffs], Fri Feb 16 17:24:00 2007 UTC (17 years ago) by hannken
Branch: MAIN
CVS Tags: ad-audiomp-base, ad-audiomp
Branch point for: yamt-lazymbuf, yamt-idlelwp, vmlocking
Changes since 1.4: +2 -43 lines
Diff to previous 1.4 (colored)

Make fstrans(9) the default helper for file system suspension.
Replaces the now obsolete vn_start_write()/vn_finished_write().

Revision 1.4 / (download) - annotate - [select for diffs], Thu Feb 15 15:40:53 2007 UTC (17 years ago) by ad
Branch: MAIN
Changes since 1.3: +13 -13 lines
Diff to previous 1.3 (colored)

Replace some uses of lockmgr() / simplelocks.

Revision 1.3 / (download) - annotate - [select for diffs], Sat Feb 10 15:51:02 2007 UTC (17 years ago) by hannken
Branch: MAIN
Changes since 1.2: +5 -5 lines
Diff to previous 1.2 (colored)

newlock2: syncer_lock is now a mutex.

Revision 1.2.2.2 / (download) - annotate - [select for diffs], Thu Feb 1 08:48:41 2007 UTC (17 years, 1 month ago) by ad
Branch: newlock2
Changes since 1.2.2.1: +530 -0 lines
Diff to previous 1.2.2.1 (colored) to branchpoint 1.2 (colored) next main 1.3 (colored)

Sync with head.

Revision 1.2.2.1, Mon Jan 29 15:42:50 2007 UTC (17 years, 1 month ago) by ad
Branch: newlock2
Changes since 1.2: +0 -530 lines
FILE REMOVED

file vfs_trans.c was added on branch newlock2 on 2007-02-01 08:48:41 +0000

Revision 1.2 / (download) - annotate - [select for diffs], Mon Jan 29 15:42:50 2007 UTC (17 years, 1 month ago) by hannken
Branch: MAIN
CVS Tags: post-newlock2-merge, newlock2-nbase, newlock2-base
Branch point for: newlock2
Changes since 1.1: +35 -35 lines
Diff to previous 1.1 (colored)

Change fstrans enum types to upper case.
No functional change.

From Antti Kantee <pooka@netbsd.org>

Revision 1.1 / (download) - annotate - [select for diffs], Fri Jan 19 14:49:10 2007 UTC (17 years, 1 month ago) by hannken
Branch: MAIN

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

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>