The NetBSD Project

CVS log for src/sys/sys/namei.src

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

Request diff between arbitrary revisions


Default branch: MAIN


Revision 1.64 / (download) - annotate - [select for diffs], Sat Sep 23 18:21:12 2023 UTC (6 months, 3 weeks ago) by ad
Branch: MAIN
CVS Tags: thorpej-ifq-base, thorpej-ifq, thorpej-altq-separation-base, thorpej-altq-separation, HEAD
Changes since 1.63: +4 -6 lines
Diff to previous 1.63 (colored) to selected 1.47.2.4 (colored)

Repply this change with a couple of bugs fixed:

- Do away with separate pool_cache for some kernel objects that have no special
  requirements and use the general purpose allocator instead. On one of my
  test systems this makes for a small (~1%) but repeatable reduction in system
  time during builds presumably because it decreases the kernel's cache /
  memory bandwidth footprint a little.
- vfs_lockf: cache a pointer to the uidinfo and put mutex in the data segment.

Revision 1.63 / (download) - annotate - [select for diffs], Tue Sep 12 16:17:21 2023 UTC (7 months ago) by ad
Branch: MAIN
Changes since 1.62: +6 -4 lines
Diff to previous 1.62 (colored) to selected 1.47.2.4 (colored)

Back out recent change to replace pool_cache with then general allocator.
Will return to this when I have time again.

Revision 1.62 / (download) - annotate - [select for diffs], Sun Sep 10 14:45:53 2023 UTC (7 months, 1 week ago) by ad
Branch: MAIN
Changes since 1.61: +4 -6 lines
Diff to previous 1.61 (colored) to selected 1.47.2.4 (colored)

- Do away with separate pool_cache for some kernel objects that have no special
  requirements and use the general purpose allocator instead.  On one of my
  test systems this makes for a small (~1%) but repeatable reduction in system
  time during builds presumably because it decreases the kernel's cache /
  memory bandwidth footprint a little.
- vfs_lockf: cache a pointer to the uidinfo and put mutex in the data segment.

Revision 1.61 / (download) - annotate - [select for diffs], Sat Sep 9 18:27:59 2023 UTC (7 months, 1 week ago) by ad
Branch: MAIN
Changes since 1.60: +25 -10 lines
Diff to previous 1.60 (colored) to selected 1.47.2.4 (colored)

- Shrink namecache entries to 64 bytes on 32-bit platforms and use 32-bit
  key values there for speed (remains 128 bytes & 64-bits on _LP64).
- Comments.

Revision 1.58.6.2 / (download) - annotate - [select for diffs], Sun Aug 1 22:42:44 2021 UTC (2 years, 8 months ago) by thorpej
Branch: thorpej-i2c-spi-conf
Changes since 1.58.6.1: +1 -2 lines
Diff to previous 1.58.6.1 (colored) to branchpoint 1.58 (colored) next main 1.59 (colored) to selected 1.47.2.4 (colored)

Sync with HEAD.

Revision 1.60 / (download) - annotate - [select for diffs], Tue Jun 29 22:39:21 2021 UTC (2 years, 9 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, netbsd-10-base, netbsd-10-0-RELEASE, netbsd-10-0-RC6, netbsd-10-0-RC5, netbsd-10-0-RC4, netbsd-10-0-RC3, netbsd-10-0-RC2, netbsd-10-0-RC1, netbsd-10, bouyer-sunxi-drm-base, bouyer-sunxi-drm
Changes since 1.59: +1 -2 lines
Diff to previous 1.59 (colored) to selected 1.47.2.4 (colored)

Now remove cn_consume from struct componentname.

This change requires a kernel bump.

Note though that I'm not going to version the VOP_LOOKUP args
structure (or any other args structure) as code that doesn't touch
cn_consume doesn't need attention and code that does will fail on it
without further intervention.

Revision 1.41.6.1 / (download) - annotate - [select for diffs], Mon Jun 21 14:55:15 2021 UTC (2 years, 9 months ago) by martin
Branch: netbsd-8
Changes since 1.41: +3 -2 lines
Diff to previous 1.41 (colored) next main 1.42 (colored) to selected 1.47.2.4 (colored)

Pull up following revision(s) (requested by dholland in ticket #1685):

	sys/sys/namei.src: revision 1.59	(via patch)
	sys/kern/vfs_vnops.c: revision 1.215
	sys/kern/vfs_lookup.c: revision 1.226

Add a new namei flag NONEXCLHACK for open with O_CREAT and not O_EXCL.
This case needs to be distinguished from the other CREATE operations
because it is supposed to successfully return (and open) the target if
it exists. In the case where that target is the root, or a mount
point, such that there's no parent dir, "real" CREATE operations fail,
but O_CREAT without O_EXCL needs to succeed.

So (a) add the flag, (b) test for it in namei in the situation
described above, (c) set it in open under the appropriate
circumstances, and (d) because this can result in namei returning
ni_dvp of NULL, cope with that case.

Should get into -9 and maybe even -8, because it was prompted by
issues with 3rd-party code. The use of a flag (vs. adding an
additional nameiop, which would be more appropriate) was deliberate to
make the patch small and noninvasive.

Revision 1.42.2.1 / (download) - annotate - [select for diffs], Mon Jun 21 14:50:57 2021 UTC (2 years, 9 months ago) by martin
Branch: netbsd-9
CVS Tags: netbsd-9-3-RELEASE
Changes since 1.42: +3 -2 lines
Diff to previous 1.42 (colored) next main 1.43 (colored) to selected 1.47.2.4 (colored)

Pull up following revision(s) (requested by dholland in ticket #1296):

	sys/sys/namei.src: revision 1.59	(via patch)
	sys/kern/vfs_vnops.c: revision 1.215
	sys/kern/vfs_lookup.c: revision 1.226

Add a new namei flag NONEXCLHACK for open with O_CREAT and not O_EXCL.
This case needs to be distinguished from the other CREATE operations
because it is supposed to successfully return (and open) the target if
it exists. In the case where that target is the root, or a mount
point, such that there's no parent dir, "real" CREATE operations fail,
but O_CREAT without O_EXCL needs to succeed.

So (a) add the flag, (b) test for it in namei in the situation
described above, (c) set it in open under the appropriate
circumstances, and (d) because this can result in namei returning
ni_dvp of NULL, cope with that case.

Should get into -9 and maybe even -8, because it was prompted by
issues with 3rd-party code. The use of a flag (vs. adding an
additional nameiop, which would be more appropriate) was deliberate to
make the patch small and noninvasive.

Revision 1.58.6.1 / (download) - annotate - [select for diffs], Thu Jun 17 04:46:36 2021 UTC (2 years, 10 months ago) by thorpej
Branch: thorpej-i2c-spi-conf
Changes since 1.58: +3 -2 lines
Diff to previous 1.58 (colored) to selected 1.47.2.4 (colored)

Sync w/ HEAD.

Revision 1.59 / (download) - annotate - [select for diffs], Wed Jun 16 01:51:57 2021 UTC (2 years, 10 months ago) by dholland
Branch: MAIN
Changes since 1.58: +3 -2 lines
Diff to previous 1.58 (colored) to selected 1.47.2.4 (colored)

Add a new namei flag NONEXCLHACK for open with O_CREAT and not O_EXCL.

This case needs to be distinguished from the other CREATE operations
because it is supposed to successfully return (and open) the target if
it exists. In the case where that target is the root, or a mount
point, such that there's no parent dir, "real" CREATE operations fail,
but O_CREAT without O_EXCL needs to succeed.

So (a) add the flag, (b) test for it in namei in the situation
described above, (c) set it in open under the appropriate
circumstances, and (d) because this can result in namei returning
ni_dvp of NULL, cope with that case.

Should get into -9 and maybe even -8, because it was prompted by
issues with 3rd-party code. The use of a flag (vs. adding an
additional nameiop, which would be more appropriate) was deliberate to
make the patch small and noninvasive.

Revision 1.58 / (download) - annotate - [select for diffs], Sat May 30 20:16:14 2020 UTC (3 years, 10 months ago) by ad
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.57: +4 -1 lines
Diff to previous 1.57 (colored) to selected 1.47.2.4 (colored)

A couple of small changes to lookup that cut 5-10% system time from
"build.sh release" on my test system:

- Crossing mount points during lookup is slow because the set up for, and
  act of doing VFS_ROOT() is quite involved.  Use the name cache to help
  with this.  Cache an "impossible" zero-length name with covered vnodes,
  that points to the root of the file system mounted there.  Use it to cross
  mounts.  When cache_purge() is called on either of the vnodes involved the
  cache entry will disappear.  All of the needed calls for that are already
  in place (vnode reclaim, unmount, etc).

- In lookup_fastforward(), if the the last component has been found and the
  parent directory (searchdir) is not going to be returned, then don't get a
  reference to it.

Revision 1.57 / (download) - annotate - [select for diffs], Wed May 27 02:03:30 2020 UTC (3 years, 10 months ago) by rin
Branch: MAIN
Changes since 1.56: +2 -2 lines
Diff to previous 1.56 (colored) to selected 1.47.2.4 (colored)

Fix typo.

Revision 1.56 / (download) - annotate - [select for diffs], Tue May 26 22:05:52 2020 UTC (3 years, 10 months ago) by ad
Branch: MAIN
Changes since 1.55: +4 -3 lines
Diff to previous 1.55 (colored) to selected 1.47.2.4 (colored)

Catch up after recent ACL changes

Revision 1.55 / (download) - annotate - [select for diffs], Sat May 16 18:31:53 2020 UTC (3 years, 11 months ago) by christos
Branch: MAIN
Changes since 1.54: +2 -2 lines
Diff to previous 1.54 (colored) to selected 1.47.2.4 (colored)

Add ACL support for FFS. From FreeBSD.

Revision 1.54 / (download) - annotate - [select for diffs], Tue May 12 23:17:41 2020 UTC (3 years, 11 months ago) by ad
Branch: MAIN
Changes since 1.53: +2 -2 lines
Diff to previous 1.53 (colored) to selected 1.47.2.4 (colored)

cache_enter_id(): give it a boolean parameter to indicate whether the cached
identity is valid.

Revision 1.41.14.2 / (download) - annotate - [select for diffs], Mon Apr 13 08:05:20 2020 UTC (4 years ago) by martin
Branch: phil-wifi
Changes since 1.41.14.1: +52 -44 lines
Diff to previous 1.41.14.1 (colored) to branchpoint 1.41 (colored) next main 1.42 (colored) to selected 1.47.2.4 (colored)

Mostly merge changes from HEAD upto 20200411

Revision 1.53 / (download) - annotate - [select for diffs], Sat Apr 4 20:49:31 2020 UTC (4 years ago) by ad
Branch: MAIN
CVS Tags: phil-wifi-20200421, phil-wifi-20200411, phil-wifi-20200406, bouyer-xenpvh-base2, bouyer-xenpvh-base1, bouyer-xenpvh-base, bouyer-xenpvh
Changes since 1.52: +13 -14 lines
Diff to previous 1.52 (colored) to selected 1.47.2.4 (colored)

Merge the remaining changes from the ad-namecache branch, affecting namei()
and getcwd():

- push vnode locking back as far as possible.
- do most lookups directly in the namecache, avoiding vnode locks & refs.
- don't block new refs to vnodes across VOP_INACTIVE().
- get shared locks for VOP_LOOKUP() if the file system supports it.
- correct lock types for VOP_ACCESS() / VOP_GETATTR() in a few places.

Possible future enhancements:

- make the lookups lockless.
- support dotdot lookups by being lockless and inferring absence of chroot.
- maybe make it work for layered file systems.
- avoid vnode references at the root & cwd.

Revision 1.52 / (download) - annotate - [select for diffs], Mon Mar 23 23:28:11 2020 UTC (4 years ago) by ad
Branch: MAIN
Changes since 1.51: +5 -6 lines
Diff to previous 1.51 (colored) to selected 1.47.2.4 (colored)

Update comments

Revision 1.51 / (download) - annotate - [select for diffs], Mon Mar 23 18:41:40 2020 UTC (4 years ago) by ad
Branch: MAIN
Changes since 1.50: +1 -2 lines
Diff to previous 1.50 (colored) to selected 1.47.2.4 (colored)

- Deal with (rare) hash collisions by using memcmp() to partition further.
- Adjust some comments.

Revision 1.50 / (download) - annotate - [select for diffs], Mon Mar 23 18:33:43 2020 UTC (4 years ago) by ad
Branch: MAIN
Changes since 1.49: +3 -3 lines
Diff to previous 1.49 (colored) to selected 1.47.2.4 (colored)

Pacify a syzbot complaint about bit shifting.

Reported-by: syzbot+dd5df915b2cd2f3f3da5@syzkaller.appspotmail.com

Revision 1.49 / (download) - annotate - [select for diffs], Sun Mar 22 14:38:37 2020 UTC (4 years ago) by ad
Branch: MAIN
Changes since 1.48: +41 -29 lines
Diff to previous 1.48 (colored) to selected 1.47.2.4 (colored)

Merge vfs_cache.c from the ad-namecache branch.  With this the namecache
index becomes per-directory (initially, a red-black tree).  The remaining
changes on the branch to namei()/getcwd() will be merged in the future.

Revision 1.47.2.8 / (download) - annotate - [select for diffs], Sat Mar 21 22:04:17 2020 UTC (4 years ago) by ad
Branch: ad-namecache
Changes since 1.47.2.7: +5 -4 lines
Diff to previous 1.47.2.7 (colored) to branchpoint 1.47 (colored) next main 1.48 (colored) to selected 1.47.2.4 (colored)

Move nc_key up, so cache_lookup_entry() only needs to touch one cache line
at each step.

Revision 1.47.2.7 / (download) - annotate - [select for diffs], Wed Mar 4 20:21:05 2020 UTC (4 years, 1 month ago) by ad
Branch: ad-namecache
Changes since 1.47.2.6: +2 -3 lines
Diff to previous 1.47.2.6 (colored) to branchpoint 1.47 (colored) to selected 1.47.2.4 (colored)

Fix a comment.

Revision 1.47.2.6 / (download) - annotate - [select for diffs], Fri Jan 24 16:48:59 2020 UTC (4 years, 2 months ago) by ad
Branch: ad-namecache
Changes since 1.47.2.5: +4 -8 lines
Diff to previous 1.47.2.5 (colored) to branchpoint 1.47 (colored) to selected 1.47.2.4 (colored)

- Put all the namecache stuff back into vnode_impl_t.
- Tidy vfs_cache.c up, finish the comments.
- Finalise how ID information is entered to the cache.
- Handle very small/old systems.

Revision 1.47.2.5 / (download) - annotate - [select for diffs], Sun Jan 19 21:19:25 2020 UTC (4 years, 3 months ago) by ad
Branch: ad-namecache
Changes since 1.47.2.4: +10 -6 lines
Diff to previous 1.47.2.4 (colored) to branchpoint 1.47 (colored)

- Add a LOCKSHARED flag to namei (matching FreeBSD) indicating that we want
  the leaf locked with LK_SHARED.

- Add an IMNT_SHRLOOKUP flag to struct mount indicating that the file
  system can do VOP_LOOKUP() with an shared lock.  If it encounters
  something tricky, VOP_LOOKUP() is free to return ENOLCK and namei() will
  retry the lookup with an exclusive lock.  If the file system has this flag
  set, namei() will try with shared locks for all of the "read only"
  lookups, i.e. nameiop=LOOKUP or !ISLASTCN.

- vfs_getcwd: only take vnode locks when really needed, take shared locks if
  possible, and where the namecache has identify info for the directories,
  do it all in the namecache.

- vfs_lookup: when crossing mountpoints take only a shared lock on the
  covered vnode; don't need anything else.

Revision 1.47.2.4 / (download) - annotate - [selected], Fri Jan 17 22:26:26 2020 UTC (4 years, 3 months ago) by ad
Branch: ad-namecache
Changes since 1.47.2.3: +21 -8 lines
Diff to previous 1.47.2.3 (colored) to branchpoint 1.47 (colored)

vfs_lookup:

- Do the easy component name lookups directly in the namecache without
  taking vnode locks nor vnode references (between the start and the leaf /
  parent), which seems to largely solve the lock contention problem with
  namei().  It needs support from the file system, which has to tell the
  name cache about directory permissions (only ffs and tmpfs tried so far),
  and I'm not sure how or if it can work with layered file systems yet.
  Work in progress.

vfs_cache:

- Make the rbtree operations more efficient: inline the lookup, and key on a
  64-bit hash value (32 bits plus 16 bits length) rather than names.

- Take namecache stuff out of vnode_impl, and take the rwlocks, and put them
  all together an an nchnode struct which is mapped 1:1: with vnodes.  Saves
  memory and nicer cache profile.

- Add a routine to help vfs_lookup do its easy component name lookups.

- Report some more stats.

- Tidy up the file a bit.

Revision 1.47.2.3 / (download) - annotate - [select for diffs], Tue Jan 14 11:07:40 2020 UTC (4 years, 3 months ago) by ad
Branch: ad-namecache
Changes since 1.47.2.2: +6 -5 lines
Diff to previous 1.47.2.2 (colored) to branchpoint 1.47 (colored) to selected 1.47.2.4 (colored)

namecache:

This is working better than expected.  It seems to cut system time for
build.sh by ~10% on my test machine and joerg@ is seeing better results with
pbulk.  Improve it a bit more without changing the basic idea:

- Split cache_list_lock into a per-vnode rwlock for reverse lookup, and a
  lightly contended global lock on LRU state (cache_lru_lock),

- For LRU replacement, imitate the VM system's page replacement algorithm.
  This eliminates the writebacks to struct namecache (to track time of last
  hit).

- Dynamically allocate the per-directory lock, preparing the way for having
  a "struct nchdir" or similar which could contain stuff like different
  structures for lookup, cached info to do the equivalent of VOP_ACCESS() in
  cache, and so on.

Revision 1.47.2.2 / (download) - annotate - [select for diffs], Mon Jan 13 08:51:06 2020 UTC (4 years, 3 months ago) by ad
Branch: ad-namecache
Changes since 1.47.2.1: +3 -2 lines
Diff to previous 1.47.2.1 (colored) to branchpoint 1.47 (colored) to selected 1.47.2.4 (colored)

Make the per-directory lock a rwlock.

Revision 1.48 / (download) - annotate - [select for diffs], Wed Jan 8 12:04:56 2020 UTC (4 years, 3 months ago) by ad
Branch: MAIN
CVS Tags: is-mlppp-base, is-mlppp, ad-namecache-base3, ad-namecache-base2, ad-namecache-base1
Changes since 1.47: +2 -2 lines
Diff to previous 1.47 (colored) to selected 1.47.2.4 (colored)

- options NAMECACHE_ENTER_REVERSE is no more.

- Partially sort the list of per-vnode namecache entries by using a TAILQ.
  Put the real name to the head, and put dot and dotdot to the tail so that
  cache_lookup_reverse() doesn't have to consider them.

Revision 1.47.2.1 / (download) - annotate - [select for diffs], Wed Jan 8 11:02:16 2020 UTC (4 years, 3 months ago) by ad
Branch: ad-namecache
Changes since 1.47: +26 -28 lines
Diff to previous 1.47 (colored) to selected 1.47.2.4 (colored)

Redo the namecache to focus on per-directory data structures, removing the
huge hashtable and nasty locking scheme.

Initially this uses rbtrees (because that's what's there).  The intent is
experiment with other data structures.

Revision 1.47 / (download) - annotate - [select for diffs], Mon Jan 6 11:22:33 2020 UTC (4 years, 3 months ago) by ad
Branch: MAIN
CVS Tags: ad-namecache-base
Branch point for: ad-namecache
Changes since 1.46: +1 -2 lines
Diff to previous 1.46 (colored) to selected 1.47.2.4 (colored)

Kill ncvhashtbl.  It uses 64MB on my computer to map: vp -> vp (lol!).

Revision 1.46 / (download) - annotate - [select for diffs], Sun Dec 1 18:31:19 2019 UTC (4 years, 4 months ago) by ad
Branch: MAIN
Changes since 1.45: +4 -5 lines
Diff to previous 1.45 (colored) to selected 1.47.2.4 (colored)

Back out previous temporarily - seeing unusual lookup failures.  Will
come back to it.

Revision 1.45 / (download) - annotate - [select for diffs], Sun Dec 1 13:45:42 2019 UTC (4 years, 4 months ago) by ad
Branch: MAIN
Changes since 1.44: +2 -2 lines
Diff to previous 1.44 (colored) to selected 1.47.2.4 (colored)

Make nc_hittime volatile to defeat compiler cleverness.

Revision 1.44 / (download) - annotate - [select for diffs], Sun Dec 1 13:39:53 2019 UTC (4 years, 4 months ago) by ad
Branch: MAIN
Changes since 1.43: +4 -3 lines
Diff to previous 1.43 (colored) to selected 1.47.2.4 (colored)

namecache changes:

- Delete the per-entry lock, and borrow the associated vnode's v_interlock
  instead.  We need to acquire it during lookup anyway.  We can revisit this
  in the future but for now it's a stepping stone, and works within the
  quite limited context of what we have (BSD namecache/lookup design).

- Implement an idea that Mateusz Guzik (mjg@FreeBSD.org) gave me.  In
  cache_reclaim(), we don't need to lock out all of the CPUs to garbage
  collect entries.  All we need to do is observe their locks unheld at least
  once: then we know they are not in the critical section, and no longer
  have visibility of the entries about to be garbage collected.

- The above makes it safe for sysctl to take only namecache_lock to get stats,
  and we can remove all the crap dealing with per-CPU locks.

- For lockstat, make namecache_lock a static now we have __cacheline_aligned.

- Avoid false sharing - don't write back to nc_hittime unless it has changed.
  Put a a comment in place explaining this.  Pretty sure this was there in
  2008/2009 but someone removed it (understandably, the code looks weird).

- Use a mutex to protect the garbage collection queue instead of atomics, and
  adjust the low water mark up so that cache_reclaim() isn't doing so much
  work at once.

Revision 1.43 / (download) - annotate - [select for diffs], Fri Sep 13 13:58:53 2019 UTC (4 years, 7 months ago) by christos
Branch: MAIN
CVS Tags: phil-wifi-20191119
Changes since 1.42: +17 -17 lines
Diff to previous 1.42 (colored) to selected 1.47.2.4 (colored)

- make nc_nlen short since we can now accommodate more than len 256 names.
- reorder the struct to have the lists first for performance
- put name last and make it variable length
- add an assert to make sure we don't waster space
- bump the size we can store in the pool a little because we have more space
  now because of alignment.

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

Sync with HEAD

Revision 1.42 / (download) - annotate - [select for diffs], Mon Jun 3 06:04:21 2019 UTC (4 years, 10 months ago) by msaitoh
Branch: MAIN
CVS Tags: phil-wifi-20190609, netbsd-9-base, netbsd-9-2-RELEASE, netbsd-9-1-RELEASE, netbsd-9-0-RELEASE, netbsd-9-0-RC2, netbsd-9-0-RC1
Branch point for: netbsd-9
Changes since 1.41: +2 -2 lines
Diff to previous 1.41 (colored) to selected 1.47.2.4 (colored)

 Fix typo in comment (s/seperate/separate/).

Revision 1.25.8.3 / (download) - annotate - [select for diffs], Sun Dec 3 11:39:20 2017 UTC (6 years, 4 months ago) by jdolecek
Branch: tls-maxphys
Changes since 1.25.8.2: +73 -66 lines
Diff to previous 1.25.8.2 (colored) to branchpoint 1.25 (colored) next main 1.26 (colored) to selected 1.47.2.4 (colored)

update from HEAD

Revision 1.33.4.3 / (download) - annotate - [select for diffs], Mon Aug 28 17:53:16 2017 UTC (6 years, 7 months ago) by skrll
Branch: nick-nhusb
Changes since 1.33.4.2: +27 -18 lines
Diff to previous 1.33.4.2 (colored) to branchpoint 1.33 (colored) next main 1.34 (colored) to selected 1.47.2.4 (colored)

Sync with HEAD

Revision 1.37.2.2 / (download) - annotate - [select for diffs], Wed Apr 26 02:53:31 2017 UTC (6 years, 11 months ago) by pgoyette
Branch: pgoyette-localcount
Changes since 1.37.2.1: +2 -2 lines
Diff to previous 1.37.2.1 (colored) to branchpoint 1.37 (colored) next main 1.38 (colored) to selected 1.47.2.4 (colored)

Sync with HEAD

Revision 1.37.4.1 / (download) - annotate - [select for diffs], Fri Apr 21 16:54:08 2017 UTC (6 years, 11 months ago) by bouyer
Branch: bouyer-socketcan
Changes since 1.37: +27 -18 lines
Diff to previous 1.37 (colored) next main 1.38 (colored) to selected 1.47.2.4 (colored)

Sync with HEAD

Revision 1.41 / (download) - annotate - [select for diffs], Tue Mar 21 10:20:12 2017 UTC (7 years, 1 month ago) by riastradh
Branch: MAIN
CVS Tags: tls-maxphys-base-20171202, prg-localcount2-base3, prg-localcount2-base2, prg-localcount2-base1, prg-localcount2-base, prg-localcount2, phil-wifi-base, pgoyette-localcount-20170426, pgoyette-compat-merge-20190127, pgoyette-compat-base, pgoyette-compat-20190127, pgoyette-compat-20190118, 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, pgoyette-compat-0415, pgoyette-compat-0407, pgoyette-compat-0330, pgoyette-compat-0322, pgoyette-compat-0315, pgoyette-compat, perseant-stdc-iso10646-base, perseant-stdc-iso10646, nick-nhusb-base-20170825, netbsd-8-base, 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, jdolecek-ncq-base, jdolecek-ncq, isaki-audio2-base, isaki-audio2, bouyer-socketcan-base1
Branch point for: phil-wifi, netbsd-8
Changes since 1.40: +2 -2 lines
Diff to previous 1.40 (colored) to selected 1.47.2.4 (colored)

Tiny fix for namecache locking rules.

Revision 1.37.2.1 / (download) - annotate - [select for diffs], Mon Mar 20 06:57:53 2017 UTC (7 years, 1 month ago) by pgoyette
Branch: pgoyette-localcount
Changes since 1.37: +27 -18 lines
Diff to previous 1.37 (colored) to selected 1.47.2.4 (colored)

Sync with HEAD

Revision 1.40 / (download) - annotate - [select for diffs], Sun Mar 19 10:21:02 2017 UTC (7 years, 1 month ago) by riastradh
Branch: MAIN
CVS Tags: pgoyette-localcount-20170320
Changes since 1.39: +5 -3 lines
Diff to previous 1.39 (colored) to selected 1.47.2.4 (colored)

Fix locking comments.

Forgot to save my Emacs buffer before last commit.

Revision 1.39 / (download) - annotate - [select for diffs], Sat Mar 18 21:03:28 2017 UTC (7 years, 1 month ago) by riastradh
Branch: MAIN
Changes since 1.38: +23 -16 lines
Diff to previous 1.38 (colored) to selected 1.47.2.4 (colored)

Rework namecache locking commentary.

- Annotate struct namecache declaration in namei.src/namei.h.
- Bulleted lists, not walls of texts.
- Identify lock order too.
- Note subtle exceptions.

Revision 1.38 / (download) - annotate - [select for diffs], Sat Mar 18 19:43:31 2017 UTC (7 years, 1 month ago) by riastradh
Branch: MAIN
Changes since 1.37: +3 -3 lines
Diff to previous 1.37 (colored) to selected 1.47.2.4 (colored)

Make cache_lookup return bool for clarity.

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

Sync with HEAD

Revision 1.37 / (download) - annotate - [select for diffs], Tue Apr 21 03:18:21 2015 UTC (9 years ago) by riastradh
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, nick-nhusb-base-20150606, localcount-20160914, bouyer-socketcan-base
Branch point for: pgoyette-localcount, bouyer-socketcan
Changes since 1.36: +2 -2 lines
Diff to previous 1.36 (colored) to selected 1.47.2.4 (colored)

Cull unused INRENAME and INRELOOKUP from PARAMASK.

Revision 1.36 / (download) - annotate - [select for diffs], Tue Apr 21 03:16:30 2015 UTC (9 years ago) by riastradh
Branch: MAIN
Changes since 1.35: +1 -3 lines
Diff to previous 1.35 (colored) to selected 1.47.2.4 (colored)

Cull unused INRENAME and INRELOOKUP.

Revision 1.33.4.1 / (download) - annotate - [select for diffs], Mon Apr 6 15:18:32 2015 UTC (9 years ago) by skrll
Branch: nick-nhusb
Changes since 1.33: +47 -47 lines
Diff to previous 1.33 (colored) to selected 1.47.2.4 (colored)

Sync with HEAD

Revision 1.35 / (download) - annotate - [select for diffs], Fri Jan 16 21:38:26 2015 UTC (9 years, 3 months ago) by dennis
Branch: MAIN
CVS Tags: nick-nhusb-base-20150406
Changes since 1.34: +24 -17 lines
Diff to previous 1.34 (colored) to selected 1.47.2.4 (colored)

Don't nest structure definitions.

This modification was made directly to sys/sys/namei.h (1.90) but
was inadvertently lost as a result of the previous revision here.
Restore the lost change here instead.

Revision 1.34 / (download) - annotate - [select for diffs], Wed Dec 24 19:50:04 2014 UTC (9 years, 3 months ago) by dennis
Branch: MAIN
Changes since 1.33: +24 -31 lines
Diff to previous 1.33 (colored) to selected 1.47.2.4 (colored)

Update struct nchstats to 64 bit counters on all machines.
Remove the now-redundant struct nchstats_sysctl. Containerize
structure member names with a macro to eliminate cut-and-paste.

Revision 1.25.8.2 / (download) - annotate - [select for diffs], Wed Aug 20 00:04:44 2014 UTC (9 years, 8 months ago) by tls
Branch: tls-maxphys
Changes since 1.25.8.1: +16 -1 lines
Diff to previous 1.25.8.1 (colored) to branchpoint 1.25 (colored) to selected 1.47.2.4 (colored)

Rebase to HEAD as of a few days ago.

Revision 1.31.10.1 / (download) - annotate - [select for diffs], Sun Aug 10 06:56:54 2014 UTC (9 years, 8 months ago) by tls
Branch: tls-earlyentropy
Changes since 1.31: +16 -1 lines
Diff to previous 1.31 (colored) next main 1.32 (colored) to selected 1.47.2.4 (colored)

Rebase.

Revision 1.33 / (download) - annotate - [select for diffs], Tue Jun 3 21:16:15 2014 UTC (9 years, 10 months ago) by joerg
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.32: +14 -1 lines
Diff to previous 1.32 (colored) to selected 1.47.2.4 (colored)

Provide sysctl for namecache statistics.

Revision 1.32 / (download) - annotate - [select for diffs], Tue Jun 3 19:30:29 2014 UTC (9 years, 10 months ago) by joerg
Branch: MAIN
Changes since 1.31: +3 -1 lines
Diff to previous 1.31 (colored) to selected 1.47.2.4 (colored)

Introduce two helper functions to centralise the namecache statistics
in vfs_cache.c. Use consistent locking around the per-cpu data.

Revision 1.24.4.3 / (download) - annotate - [select for diffs], Wed Jan 16 05:33:53 2013 UTC (11 years, 3 months ago) by yamt
Branch: yamt-pagecache
CVS Tags: yamt-pagecache-tag8
Changes since 1.24.4.2: +21 -14 lines
Diff to previous 1.24.4.2 (colored) to branchpoint 1.24 (colored) next main 1.25 (colored) to selected 1.47.2.4 (colored)

sync with (a bit old) head

Revision 1.25.8.1 / (download) - annotate - [select for diffs], Tue Nov 20 03:02:51 2012 UTC (11 years, 5 months ago) by tls
Branch: tls-maxphys
Changes since 1.25: +29 -12 lines
Diff to previous 1.25 (colored) to selected 1.47.2.4 (colored)

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

Revision 1.31 / (download) - annotate - [select for diffs], Sun Nov 18 18:25:08 2012 UTC (11 years, 5 months ago) by dholland
Branch: MAIN
CVS Tags: yamt-pagecache-base9, yamt-pagecache-base8, yamt-pagecache-base7, rmind-smpnet-nbase, rmind-smpnet-base, rmind-smpnet, riastradh-xf86-video-intel-2-7-1-pre-2-21-15, riastradh-drm2-base3, riastradh-drm2-base2, riastradh-drm2-base1, riastradh-drm2-base, riastradh-drm2, khorben-n900, agc-symver-base, agc-symver
Branch point for: tls-earlyentropy
Changes since 1.30: +10 -4 lines
Diff to previous 1.30 (colored) to selected 1.47.2.4 (colored)

Apply manu's change to namei.h correctly.

Revision 1.30 / (download) - annotate - [select for diffs], Mon Nov 5 19:06:26 2012 UTC (11 years, 5 months ago) by dholland
Branch: MAIN
Changes since 1.29: +4 -4 lines
Diff to previous 1.29 (colored) to selected 1.47.2.4 (colored)

Rename the new ni_startdir (the slot used to hold the starting point
for openat() and friends) to ni_atdir to avoid confusion with a
previously existing (and, alas, still documented) ni_startdir field
that meant something else entirely.

Revision 1.29 / (download) - annotate - [select for diffs], Mon Nov 5 17:27:37 2012 UTC (11 years, 5 months ago) by dholland
Branch: MAIN
Changes since 1.28: +7 -6 lines
Diff to previous 1.28 (colored) to selected 1.47.2.4 (colored)

Excise struct componentname from the namecache.

This uglifies the interface, because several operations need to be
passed the namei flags and cache_lookup also needs for the time being
to be passed cnp->cn_nameiop. Nonetheless, it's a net benefit.

The glop should be able to go away eventually but requires structural
cleanup elsewhere first.

This change requires a kernel bump.

Revision 1.28 / (download) - annotate - [select for diffs], Mon Nov 5 17:24:09 2012 UTC (11 years, 5 months ago) by dholland
Branch: MAIN
Changes since 1.27: +5 -5 lines
Diff to previous 1.27 (colored) to selected 1.47.2.4 (colored)

Disentangle the namecache from the internals of namei.

 - Move the namecache's hash computation to inside the namecache code,
instead of being spread out all over the place. Remove cn_hash from
struct componentname and delete all uses of it.

 - It is no longer necessary (if it ever was) for cache_lookup and
cache_lookup_raw to clear MAKEENTRY from cnp->cn_flags for the cases
that cache_enter already checks for.

 - Rearrange the interface of cache_lookup (and cache_lookup_raw) to
make it somewhat simpler, to exclude certain nonexistent error
conditions, and (most importantly) to make it not require write access
to cnp->cn_flags.

This change requires a kernel bump.

Revision 1.24.4.2 / (download) - annotate - [select for diffs], Tue Oct 30 17:22:57 2012 UTC (11 years, 5 months ago) by yamt
Branch: yamt-pagecache
Changes since 1.24.4.1: +12 -2 lines
Diff to previous 1.24.4.1 (colored) to branchpoint 1.24 (colored) to selected 1.47.2.4 (colored)

sync with head

Revision 1.27 / (download) - annotate - [select for diffs], Sat Oct 13 17:46:50 2012 UTC (11 years, 6 months ago) by dholland
Branch: MAIN
CVS Tags: yamt-pagecache-base6
Changes since 1.26: +5 -5 lines
Diff to previous 1.26 (colored) to selected 1.47.2.4 (colored)

Replace hack implementation of NDAT() for "nameiat" with a proper one.
(This change requires a kernel bump.)

Revision 1.26 / (download) - annotate - [select for diffs], Mon Oct 8 23:43:33 2012 UTC (11 years, 6 months ago) by dholland
Branch: MAIN
Changes since 1.25: +13 -3 lines
Diff to previous 1.25 (colored) to selected 1.47.2.4 (colored)

Add namei-level support for openat() and friends. The way you do it is
by calling NDAT(&nd, dirvp) after NDINIT().

Right now the implementation is vile and unspeakable to avoid changing
the kernel ABI; this way we can get openat() and friends into 6.1. I
will rectify the mess and bump the kernel once things are working.

Revision 1.24.4.1 / (download) - annotate - [select for diffs], Tue Apr 17 00:08:52 2012 UTC (12 years ago) by yamt
Branch: yamt-pagecache
Changes since 1.24: +3 -2 lines
Diff to previous 1.24 (colored) to selected 1.47.2.4 (colored)

sync with head

Revision 1.25 / (download) - annotate - [select for diffs], Fri Nov 25 16:51:43 2011 UTC (12 years, 4 months ago) by dholland
Branch: MAIN
CVS Tags: 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.24: +3 -2 lines
Diff to previous 1.24 (colored) to selected 1.47.2.4 (colored)

Revert revs. 1.78/1.79 of namei.h and apply the change to namei.src instead.
(hi christos)

Revision 1.22.2.1 / (download) - annotate - [select for diffs], Mon Jun 6 09:10:12 2011 UTC (12 years, 10 months ago) by jruoho
Branch: jruoho-x86intr
Changes since 1.22: +3 -5 lines
Diff to previous 1.22 (colored) next main 1.23 (colored) to selected 1.47.2.4 (colored)

Sync with HEAD.

Revision 1.14.4.3 / (download) - annotate - [select for diffs], Tue May 31 03:05:12 2011 UTC (12 years, 10 months ago) by rmind
Branch: rmind-uvmplock
Changes since 1.14.4.2: +1 -2 lines
Diff to previous 1.14.4.2 (colored) to branchpoint 1.14 (colored) next main 1.15 (colored) to selected 1.47.2.4 (colored)

sync with head

Revision 1.24 / (download) - annotate - [select for diffs], Sun Apr 24 18:46:24 2011 UTC (12 years, 11 months ago) by rmind
Branch: MAIN
CVS Tags: yamt-pagecache-base3, yamt-pagecache-base2, yamt-pagecache-base, rmind-uvmplock-nbase, rmind-uvmplock-base, jmcneill-audiomp3-base, jmcneill-audiomp3, cherry-xenmp-base, cherry-xenmp
Branch point for: yamt-pagecache
Changes since 1.23: +2 -3 lines
Diff to previous 1.23 (colored) to selected 1.47.2.4 (colored)

- Replace few malloc(9) uses with kmem(9).
- Rename buf_malloc() to buf_alloc(), fix comments.
- Remove some unnecessary inclusions.

Revision 1.14.4.2 / (download) - annotate - [select for diffs], Thu Apr 21 01:42:19 2011 UTC (13 years ago) by rmind
Branch: rmind-uvmplock
Changes since 1.14.4.1: +1 -2 lines
Diff to previous 1.14.4.1 (colored) to branchpoint 1.14 (colored) to selected 1.47.2.4 (colored)

sync with head

Revision 1.23 / (download) - annotate - [select for diffs], Mon Apr 18 00:40:54 2011 UTC (13 years ago) by dholland
Branch: MAIN
Changes since 1.22: +2 -3 lines
Diff to previous 1.22 (colored) to selected 1.47.2.4 (colored)

ISSYMLINK is now only referenced inside vfs_lookup.c, and not needed
there, so get rid of it.

Revision 1.14.4.1 / (download) - annotate - [select for diffs], Sat Mar 5 20:56:24 2011 UTC (13 years, 1 month ago) by rmind
Branch: rmind-uvmplock
Changes since 1.14: +45 -25 lines
Diff to previous 1.14 (colored) to selected 1.47.2.4 (colored)

sync with head

Revision 1.22 / (download) - annotate - [select for diffs], Fri Jan 7 11:25:10 2011 UTC (13 years, 3 months ago) by pooka
Branch: MAIN
CVS Tags: uebayasi-xip-base7, jruoho-x86intr-base, bouyer-quota2-nbase, bouyer-quota2-base, bouyer-quota2
Branch point for: jruoho-x86intr
Changes since 1.21: +2 -2 lines
Diff to previous 1.21 (colored) to selected 1.47.2.4 (colored)

fix PARAMASK

Revision 1.21 / (download) - annotate - [select for diffs], Sun Jan 2 05:12:33 2011 UTC (13 years, 3 months ago) by dholland
Branch: MAIN
CVS Tags: matt-mips64-premerge-20101231
Changes since 1.20: +2 -8 lines
Diff to previous 1.20 (colored) to selected 1.47.2.4 (colored)

Remove remaining references to SAVESTART.

Revision 1.20 / (download) - annotate - [select for diffs], Sun Jan 2 05:09:30 2011 UTC (13 years, 3 months ago) by dholland
Branch: MAIN
Changes since 1.19: +2 -2 lines
Diff to previous 1.19 (colored) to selected 1.47.2.4 (colored)

Remove the special refcount behavior (adding an extra reference to the
parent dir) associated with SAVESTART in relookup().

Check all call sites to make sure that SAVESTART wasn't set while
calling relookup(); if it was, adjust the refcount behavior. Remove
related references to SAVESTART.

The only code that was reaching the extra ref was msdosfs_rename,
where the refcount behavior was already fairly broken and/or gross;
repair it.

Add a dummy 4th argument to relookup to make sure code that hasn't
been inspected won't compile. (This will go away next time the
relookup semantics change, which they will.)

Revision 1.19 / (download) - annotate - [select for diffs], Sun Jan 2 05:04:58 2011 UTC (13 years, 3 months ago) by dholland
Branch: MAIN
Changes since 1.18: +3 -2 lines
Diff to previous 1.18 (colored) to selected 1.47.2.4 (colored)

Add an INRELOOKUP namei flag. Sigh. (We don't need more namei flags.)

However, because of a protocol deficiency puffs relies on being able
to keep track of VOP_LOOKUP calls by inspecting their contents, and
this at least allows it to use something vaguely principled instead of
making wild guesses based on whether SAVESTART is set.

Update libp2k to use INRELOOKUP instead of SAVESTART.

Revision 1.18 / (download) - annotate - [select for diffs], Sun Jan 2 05:01:20 2011 UTC (13 years, 3 months ago) by dholland
Branch: MAIN
Changes since 1.17: +2 -3 lines
Diff to previous 1.17 (colored) to selected 1.47.2.4 (colored)

Remove unused nameidata field ni_startdir.

Revision 1.17 / (download) - annotate - [select for diffs], Tue Nov 30 10:43:01 2010 UTC (13 years, 4 months ago) by dholland
Branch: MAIN
Changes since 1.16: +5 -13 lines
Diff to previous 1.16 (colored) to selected 1.47.2.4 (colored)

Abolish the SAVENAME and HASBUF flags. There is now always a buffer,
so the path in a struct componentname is now always valid during VOP
calls.

Revision 1.16 / (download) - annotate - [select for diffs], Tue Nov 30 10:29:57 2010 UTC (13 years, 4 months ago) by dholland
Branch: MAIN
Changes since 1.15: +9 -4 lines
Diff to previous 1.15 (colored) to selected 1.47.2.4 (colored)

Abolish struct componentname's cn_pnbuf. Use the path buffer in the
pathbuf object passed to namei as work space instead. (For now a pnbuf
pointer appears in struct nameidata, to support certain unclean things
that haven't been fixed yet, but it will be going away in the future.)

This removes the need for the SAVENAME and HASBUF namei flags.

Revision 1.15 / (download) - annotate - [select for diffs], Fri Nov 19 06:44:34 2010 UTC (13 years, 5 months ago) by dholland
Branch: MAIN
Changes since 1.14: +35 -6 lines
Diff to previous 1.14 (colored) to selected 1.47.2.4 (colored)

Introduce struct pathbuf. This is an abstraction to hold a pathname
and the metadata required to interpret it. Callers of namei must now
create a pathbuf and pass it to NDINIT (instead of a string and a
uio_seg), then destroy the pathbuf after the namei session is
complete.

Update all namei call sites accordingly. Add a pathbuf(9) man page and
update namei(9).

The pathbuf interface also now appears in a couple of related
additional places that were passing string/uio_seg pairs that were
later fed into NDINIT. Update other call sites accordingly.

Revision 1.8.14.1.4.1 / (download) - annotate - [select for diffs], Wed Apr 21 00:28:24 2010 UTC (14 years ago) by matt
Branch: matt-nb5-mips64
CVS Tags: matt-nb5-mips64-premerge-20101231, matt-nb5-mips64-k15
Changes since 1.8.14.1: +3 -2 lines
Diff to previous 1.8.14.1 (colored) next main 1.8.14.2 (colored) to selected 1.47.2.4 (colored)

sync to netbsd-5

Revision 1.8.4.3 / (download) - annotate - [select for diffs], Thu Mar 11 15:04:42 2010 UTC (14 years, 1 month ago) by yamt
Branch: yamt-nfs-mp
Changes since 1.8.4.2: +5 -3 lines
Diff to previous 1.8.4.2 (colored) to branchpoint 1.8 (colored) next main 1.9 (colored) to selected 1.47.2.4 (colored)

sync with head

Revision 1.8.14.2 / (download) - annotate - [select for diffs], Sun Feb 14 13:27:45 2010 UTC (14 years, 2 months ago) by bouyer
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.8.14.1: +3 -2 lines
Diff to previous 1.8.14.1 (colored) to branchpoint 1.8 (colored) next main 1.9 (colored) to selected 1.47.2.4 (colored)

Pull up following revision(s) (requested by pooka in ticket #1289):
	sys/sys/namei.src: revision 1.14
	sys/kern/vfs_syscalls.c: revision 1.401
	sys/nfs/nfs_serv.c: revision 1.149
	sys/sys/namei.h: regen
Define namei flag INRENAME and set it if a lookup operation is part
of rename.  This helps with building better asserts for rename in
the DELETE lookup ... the RENAME lookup is quite obviously a part
of rename.

Revision 1.14 / (download) - annotate - [select for diffs], Wed Dec 23 01:09:24 2009 UTC (14 years, 3 months ago) by pooka
Branch: MAIN
CVS Tags: yamt-nfs-mp-base9, yamt-nfs-mp-base11, yamt-nfs-mp-base10, uebayasi-xip-base6, uebayasi-xip-base5, uebayasi-xip-base4, uebayasi-xip-base3, uebayasi-xip-base2, uebayasi-xip-base1, uebayasi-xip-base, uebayasi-xip
Branch point for: rmind-uvmplock
Changes since 1.13: +3 -2 lines
Diff to previous 1.13 (colored) to selected 1.47.2.4 (colored)

Define namei flag INRENAME and set it if a lookup operation is part
of rename.  This helps with building better asserts for rename in
the DELETE lookup ... the RENAME lookup is quite obviously a part
of rename.

Revision 1.13 / (download) - annotate - [select for diffs], Sun Sep 27 17:23:54 2009 UTC (14 years, 6 months ago) by dholland
Branch: MAIN
CVS Tags: matt-premerge-20091211, jym-xensuspend-nbase
Changes since 1.12: +2 -2 lines
Diff to previous 1.12 (colored) to selected 1.47.2.4 (colored)

Move a big wodge of symlink-following code from nfsd to inside
lookup_for_nfsd(). This code is, or at least should be, the same as
the regular symlink-following code plus an extra flag nfsd needs.

The two lots of code can/will be merged in the future.

Revision 1.12 / (download) - annotate - [select for diffs], Sun Sep 27 17:19:07 2009 UTC (14 years, 6 months ago) by dholland
Branch: MAIN
Changes since 1.11: +3 -2 lines
Diff to previous 1.11 (colored) to selected 1.47.2.4 (colored)

Rename lookup() to lookup_for_nfsd(), to make it clear just whose
private backdoor entry point this is.

Also, clone the lookup_for_nfsd() entry point as
lookup_for_nfsd_index(), for use by a different call site in nfsd that
does different unclean things with nameidata.

Revision 1.9.4.2 / (download) - annotate - [select for diffs], Thu Jul 23 23:32:56 2009 UTC (14 years, 8 months ago) by jym
Branch: jym-xensuspend
Changes since 1.9.4.1: +31 -1 lines
Diff to previous 1.9.4.1 (colored) to branchpoint 1.9 (colored) next main 1.10 (colored) to selected 1.47.2.4 (colored)

Sync with HEAD.

Revision 1.8.4.2 / (download) - annotate - [select for diffs], Sat Jul 18 14:53:27 2009 UTC (14 years, 9 months ago) by yamt
Branch: yamt-nfs-mp
Changes since 1.8.4.1: +31 -1 lines
Diff to previous 1.8.4.1 (colored) to branchpoint 1.8 (colored) to selected 1.47.2.4 (colored)

sync with head.

Revision 1.11 / (download) - annotate - [select for diffs], Mon Jun 29 05:00:14 2009 UTC (14 years, 9 months ago) by dholland
Branch: MAIN
CVS Tags: yamt-nfs-mp-base8, yamt-nfs-mp-base7, yamt-nfs-mp-base6, jymxensuspend-base
Changes since 1.10: +31 -1 lines
Diff to previous 1.10 (colored) to selected 1.47.2.4 (colored)

Add namei_simple_kernel and namei_simple_user. These provide the common
case functionality of namei in a simple package with only a couple flags.

A substantial majority of the namei call sites in the kernel can use
this interface; this will isolate those areas from the changes arising
as the internals of namei are fumigated.

Revision 1.9.4.1 / (download) - annotate - [select for diffs], Wed May 13 17:23:03 2009 UTC (14 years, 11 months ago) by jym
Branch: jym-xensuspend
Changes since 1.9: +13 -10 lines
Diff to previous 1.9 (colored) to selected 1.47.2.4 (colored)

Sync with HEAD.

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

Revision 1.8.4.1 / (download) - annotate - [select for diffs], Mon May 4 08:14:35 2009 UTC (14 years, 11 months ago) by yamt
Branch: yamt-nfs-mp
Changes since 1.8: +13 -9 lines
Diff to previous 1.8 (colored) to selected 1.47.2.4 (colored)

sync with head.

Revision 1.8.12.2 / (download) - annotate - [select for diffs], Tue Mar 3 18:34:31 2009 UTC (15 years, 1 month ago) by skrll
Branch: nick-hppapmap
Changes since 1.8.12.1: +13 -10 lines
Diff to previous 1.8.12.1 (colored) to branchpoint 1.8 (colored) next main 1.9 (colored) to selected 1.47.2.4 (colored)

Sync with HEAD.

Revision 1.10 / (download) - annotate - [select for diffs], Wed Feb 11 00:19:11 2009 UTC (15 years, 2 months ago) by enami
Branch: MAIN
CVS Tags: yamt-nfs-mp-base5, yamt-nfs-mp-base4, yamt-nfs-mp-base3, nick-hppapmap-base4, nick-hppapmap-base3, nick-hppapmap-base2, nick-hppapmap-base, jym-xensuspend-base
Changes since 1.9: +13 -10 lines
Diff to previous 1.9 (colored) to selected 1.47.2.4 (colored)

Make module (auto)loading under chroot envrionment actually work:
- NOCHROOT flag must be assigned to different bit from TRYEMULROOT
  since the code expected to be executed is in the else clase of
  if (flags & TRYEMULROOT).
- Necessary variables aren't set.

Revision 1.8.12.1 / (download) - annotate - [select for diffs], Mon Jan 19 13:20:30 2009 UTC (15 years, 3 months ago) by skrll
Branch: nick-hppapmap
Changes since 1.8: +2 -1 lines
Diff to previous 1.8 (colored) to selected 1.47.2.4 (colored)

Sync with HEAD.

Revision 1.6.12.2 / (download) - annotate - [select for diffs], Sat Jan 17 13:29:40 2009 UTC (15 years, 3 months ago) by mjf
Branch: mjf-devfs2
Changes since 1.6.12.1: +1 -0 lines
Diff to previous 1.6.12.1 (colored) to branchpoint 1.6 (colored) next main 1.7 (colored) to selected 1.47.2.4 (colored)

Sync with HEAD.

Revision 1.8.10.1 / (download) - annotate - [select for diffs], Sat Dec 13 01:15:35 2008 UTC (15 years, 4 months ago) by haad
Branch: haad-dm
Changes since 1.8: +2 -1 lines
Diff to previous 1.8 (colored) next main 1.9 (colored) to selected 1.47.2.4 (colored)

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

Revision 1.8.14.1 / (download) - annotate - [select for diffs], Wed Dec 10 21:26:56 2008 UTC (15 years, 4 months ago) by snj
Branch: netbsd-5
CVS Tags: netbsd-5-0-RELEASE, netbsd-5-0-RC4, netbsd-5-0-RC3, netbsd-5-0-RC2, netbsd-5-0-RC1, netbsd-5-0-2-RELEASE, netbsd-5-0-1-RELEASE, netbsd-5-0, 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.8: +2 -1 lines
Diff to previous 1.8 (colored) to selected 1.47.2.4 (colored)

Pull up following revision(s) (requested by tsutsui in ticket #76):
	sys/sys/namei.src: revision 1.9
Add NOCHROOT from namei.h (hi ad)

Revision 1.9 / (download) - annotate - [select for diffs], Mon Nov 17 07:20:37 2008 UTC (15 years, 5 months ago) by pooka
Branch: MAIN
CVS Tags: mjf-devfs2-base, haad-nbase2, haad-dm-base2, haad-dm-base, ad-audiomp2-base, ad-audiomp2
Branch point for: jym-xensuspend
Changes since 1.8: +2 -1 lines
Diff to previous 1.8 (colored) to selected 1.47.2.4 (colored)

Add NOCHROOT from namei.h (hi ad)

Revision 1.6.12.1 / (download) - annotate - [select for diffs], Mon Jun 2 13:24:33 2008 UTC (15 years, 10 months ago) by mjf
Branch: mjf-devfs2
Changes since 1.6: +20 -6 lines
Diff to previous 1.6 (colored) to selected 1.47.2.4 (colored)

Sync with HEAD.

Revision 1.8 / (download) - annotate - [select for diffs], Fri Apr 11 15:51:25 2008 UTC (16 years ago) by ad
Branch: MAIN
CVS Tags: yamt-pf42-baseX, yamt-pf42-base4, yamt-pf42-base3, yamt-pf42-base2, yamt-pf42-base, yamt-pf42, yamt-nfs-mp-base2, yamt-nfs-mp-base, wrstuden-revivesa-base-4, wrstuden-revivesa-base-3, wrstuden-revivesa-base-2, wrstuden-revivesa-base-1, wrstuden-revivesa-base, wrstuden-revivesa, simonb-wapbl-nbase, simonb-wapbl-base, simonb-wapbl, netbsd-5-base, matt-mips64-base2, hpcarm-cleanup-nbase, haad-dm-base1
Branch point for: yamt-nfs-mp, nick-hppapmap, netbsd-5, haad-dm
Changes since 1.7: +3 -2 lines
Diff to previous 1.7 (colored) to selected 1.47.2.4 (colored)

Only include sys/kauth.h if _KERNEL.

Revision 1.7 / (download) - annotate - [select for diffs], Fri Apr 11 15:25:24 2008 UTC (16 years ago) by ad
Branch: MAIN
Changes since 1.6: +19 -6 lines
Diff to previous 1.6 (colored) to selected 1.47.2.4 (colored)

Restructure the name cache code to eliminate most lock contention
resulting from forward lookups. Discussed on tech-kern@.

Revision 1.3.6.4 / (download) - annotate - [select for diffs], Mon Jan 21 09:47:54 2008 UTC (16 years, 3 months ago) by yamt
Branch: yamt-lazymbuf
Changes since 1.3.6.3: +5 -7 lines
Diff to previous 1.3.6.3 (colored) to branchpoint 1.3 (colored) next main 1.4 (colored) to selected 1.47.2.4 (colored)

sync with head

Revision 1.3.2.1 / (download) - annotate - [select for diffs], Wed Jan 9 01:58:13 2008 UTC (16 years, 3 months ago) by matt
Branch: matt-armv6
Changes since 1.3: +8 -10 lines
Diff to previous 1.3 (colored) next main 1.4 (colored) to selected 1.47.2.4 (colored)

sync with HEAD

Revision 1.3.12.2 / (download) - annotate - [select for diffs], Thu Dec 27 00:46:41 2007 UTC (16 years, 3 months ago) by mjf
Branch: mjf-devfs
Changes since 1.3.12.1: +5 -7 lines
Diff to previous 1.3.12.1 (colored) to branchpoint 1.3 (colored) next main 1.4 (colored) to selected 1.47.2.4 (colored)

Sync with HEAD.

Revision 1.5.2.1 / (download) - annotate - [select for diffs], Wed Dec 26 19:57:54 2007 UTC (16 years, 3 months ago) by ad
Branch: vmlocking2
Changes since 1.5: +5 -7 lines
Diff to previous 1.5 (colored) next main 1.6 (colored) to selected 1.47.2.4 (colored)

Sync with head.

Revision 1.1.2.5 / (download) - annotate - [select for diffs], Sun Dec 9 19:38:48 2007 UTC (16 years, 4 months ago) by jmcneill
Branch: jmcneill-pm
Changes since 1.1.2.4: +5 -7 lines
Diff to previous 1.1.2.4 (colored) next main 1.2 (colored) to selected 1.47.2.4 (colored)

Sync with HEAD.

Revision 1.6 / (download) - annotate - [select for diffs], Sat Dec 8 19:29:52 2007 UTC (16 years, 4 months ago) by pooka
Branch: MAIN
CVS Tags: yamt-lazymbuf-base15, yamt-lazymbuf-base14, yamt-kmem-base3, yamt-kmem-base2, yamt-kmem-base, yamt-kmem, vmlocking2-base3, nick-net80211-sync-base, nick-net80211-sync, mjf-devfs-base, matt-armv6-nbase, matt-armv6-base, keiichi-mipv6-nbase, keiichi-mipv6-base, keiichi-mipv6, jmcneill-pm-base, hpcarm-cleanup-base, cube-autoconf-base, cube-autoconf, bouyer-xeni386-nbase, bouyer-xeni386-merge1, bouyer-xeni386-base, bouyer-xeni386, ad-socklock-base1
Branch point for: mjf-devfs2
Changes since 1.5: +5 -7 lines
Diff to previous 1.5 (colored) to selected 1.47.2.4 (colored)

Remove cn_lwp from struct componentname.  curlwp should be used
from on.  The NDINIT() macro no longer takes the lwp parameter and
associates the credentials of the calling thread with the namei
structure.

Revision 1.3.12.1 / (download) - annotate - [select for diffs], Sat Dec 8 18:21:34 2007 UTC (16 years, 4 months ago) by mjf
Branch: mjf-devfs
Changes since 1.3: +5 -5 lines
Diff to previous 1.3 (colored) to selected 1.47.2.4 (colored)

Sync with HEAD.

Revision 1.3.6.3 / (download) - annotate - [select for diffs], Fri Dec 7 17:34:56 2007 UTC (16 years, 4 months ago) by yamt
Branch: yamt-lazymbuf
Changes since 1.3.6.2: +5 -5 lines
Diff to previous 1.3.6.2 (colored) to branchpoint 1.3 (colored) to selected 1.47.2.4 (colored)

sync with head

Revision 1.1.2.4 / (download) - annotate - [select for diffs], Tue Nov 27 19:39:13 2007 UTC (16 years, 4 months ago) by joerg
Branch: jmcneill-pm
Changes since 1.1.2.3: +5 -5 lines
Diff to previous 1.1.2.3 (colored) to selected 1.47.2.4 (colored)

Sync with HEAD. amd64 Xen support needs testing.

Revision 1.5 / (download) - annotate - [select for diffs], Tue Nov 27 15:52:26 2007 UTC (16 years, 4 months ago) by pooka
Branch: MAIN
CVS Tags: vmlocking2-base2, vmlocking2-base1, vmlocking-nbase, reinoud-bufcleanup-nbase, reinoud-bufcleanup-base
Branch point for: vmlocking2
Changes since 1.4: +2 -1 lines
Diff to previous 1.4 (colored) to selected 1.47.2.4 (colored)

Do some dynamic analysis for the next few days: KASSERT that
l == curlwp in NDINIT

Revision 1.4 / (download) - annotate - [select for diffs], Tue Nov 27 15:27:30 2007 UTC (16 years, 4 months ago) by pooka
Branch: MAIN
Changes since 1.3: +4 -5 lines
Diff to previous 1.3 (colored) to selected 1.47.2.4 (colored)

pull in rev 1.54 of namei.h

Revision 1.1.4.3 / (download) - annotate - [select for diffs], Tue Oct 9 13:45:10 2007 UTC (16 years, 6 months ago) by ad
Branch: vmlocking
Changes since 1.1.4.2: +14 -14 lines
Diff to previous 1.1.4.2 (colored) next main 1.2 (colored) to selected 1.47.2.4 (colored)

Sync with head.

Revision 1.1.2.3 / (download) - annotate - [select for diffs], Mon Sep 3 16:49:13 2007 UTC (16 years, 7 months ago) by jmcneill
Branch: jmcneill-pm
Changes since 1.1.2.2: +14 -14 lines
Diff to previous 1.1.2.2 (colored) to selected 1.47.2.4 (colored)

Sync with HEAD.

Revision 1.3.6.2 / (download) - annotate - [select for diffs], Mon Sep 3 14:46:30 2007 UTC (16 years, 7 months ago) by yamt
Branch: yamt-lazymbuf
Changes since 1.3.6.1: +224 -0 lines
Diff to previous 1.3.6.1 (colored) to branchpoint 1.3 (colored) to selected 1.47.2.4 (colored)

sync with head.

Revision 1.3.4.2 / (download) - annotate - [select for diffs], Mon Sep 3 10:24:01 2007 UTC (16 years, 7 months ago) by skrll
Branch: nick-csl-alignment
Changes since 1.3.4.1: +224 -0 lines
Diff to previous 1.3.4.1 (colored) to branchpoint 1.3 (colored) next main 1.4 (colored) to selected 1.47.2.4 (colored)

Sync with HEAD.

Revision 1.3.6.1, Wed Aug 22 17:49:40 2007 UTC (16 years, 8 months ago) by yamt
Branch: yamt-lazymbuf
Changes since 1.3: +0 -224 lines
FILE REMOVED

file namei.src was added on branch yamt-lazymbuf on 2007-09-03 14:46:30 +0000

Revision 1.3.4.1, Wed Aug 22 17:49:40 2007 UTC (16 years, 8 months ago) by skrll
Branch: nick-csl-alignment
Changes since 1.3: +0 -224 lines
FILE REMOVED

file namei.src was added on branch nick-csl-alignment on 2007-09-03 10:24:01 +0000

Revision 1.3 / (download) - annotate - [select for diffs], Wed Aug 22 17:49:40 2007 UTC (16 years, 8 months ago) by pooka
Branch: MAIN
CVS Tags: yamt-x86pmap-base4, yamt-x86pmap-base3, yamt-x86pmap-base2, yamt-x86pmap-base, yamt-x86pmap, vmlocking-base, nick-csl-alignment-base5, matt-armv6-prevmlocking, jmcneill-base, bouyer-xenamd64-base2, bouyer-xenamd64-base, bouyer-xenamd64
Branch point for: yamt-lazymbuf, nick-csl-alignment, mjf-devfs, matt-armv6
Changes since 1.2: +13 -13 lines
Diff to previous 1.2 (colored) to selected 1.47.2.4 (colored)

Modernize struct nameidata types: long -> int32 or size_t,
depending on the case.

Revision 1.2 / (download) - annotate - [select for diffs], Wed Aug 22 15:38:46 2007 UTC (16 years, 8 months ago) by pooka
Branch: MAIN
Changes since 1.1: +2 -2 lines
Diff to previous 1.1 (colored) to selected 1.47.2.4 (colored)

update PARAMASK to match reality

Revision 1.1.4.2 / (download) - annotate - [select for diffs], Mon Aug 20 22:07:39 2007 UTC (16 years, 8 months ago) by ad
Branch: vmlocking
Changes since 1.1.4.1: +224 -0 lines
Diff to previous 1.1.4.1 (colored) to selected 1.47.2.4 (colored)

Sync with HEAD.

Revision 1.1.2.2 / (download) - annotate - [select for diffs], Thu Aug 16 11:03:55 2007 UTC (16 years, 8 months ago) by jmcneill
Branch: jmcneill-pm
Changes since 1.1.2.1: +224 -0 lines
Diff to previous 1.1.2.1 (colored) to selected 1.47.2.4 (colored)

Sync with HEAD.

Revision 1.1.4.1, Wed Aug 15 14:08:11 2007 UTC (16 years, 8 months ago) by ad
Branch: vmlocking
Changes since 1.1: +0 -224 lines
FILE REMOVED

file namei.src was added on branch vmlocking on 2007-08-20 22:07:39 +0000

Revision 1.1.2.1, Wed Aug 15 14:08:11 2007 UTC (16 years, 8 months ago) by jmcneill
Branch: jmcneill-pm
Changes since 1.1: +0 -224 lines
FILE REMOVED

file namei.src was added on branch jmcneill-pm on 2007-08-16 11:03:55 +0000

Revision 1.1 / (download) - annotate - [select for diffs], Wed Aug 15 14:08:11 2007 UTC (16 years, 8 months ago) by pooka
Branch: MAIN
Branch point for: vmlocking, jmcneill-pm
Diff to selected 1.47.2.4 (colored)

Autogenerate namei.h from namei.src to get duplicate values for some
less-than-optimally namespaced macros (e.g. LOOKUP -> NAMEI_LOOKUP).

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>