#
73fcda93 |
| 06-Aug-2022 |
andvar <andvar@NetBSD.org> |
s/blity/bility/ in various words, mainly in comments.
|
#
b9c1fd7f |
| 16-May-2020 |
christos <christos@NetBSD.org> |
Add ACL support for FFS. From FreeBSD.
|
#
80d1f210 |
| 04-Apr-2020 |
ad <ad@NetBSD.org> |
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 lo
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.
show more ...
|
#
55604c17 |
| 14-Mar-2020 |
ad <ad@NetBSD.org> |
- Hide the details of SPCF_SHOULDYIELD and related behind a couple of small functions: preempt_point() and preempt_needed().
- preempt(): if the LWP has exceeded its timeslice in kernel, strip it
- Hide the details of SPCF_SHOULDYIELD and related behind a couple of small functions: preempt_point() and preempt_needed().
- preempt(): if the LWP has exceeded its timeslice in kernel, strip it of any priority boost gained earlier from blocking.
show more ...
|
#
49ff8e9f |
| 23-Aug-2016 |
christos <christos@NetBSD.org> |
KNF, no functional change
|
#
e3d764d8 |
| 19-Aug-2016 |
jdolecek <jdolecek@NetBSD.org> |
fix bug introduced in rev 1.82 of ext2fs_lookup.c, when ext2fs_add_entry() was introduced splitting code from ext2fs_direnter() - code used incorrect new entry size, leading to incomplete entry copy
fix bug introduced in rev 1.82 of ext2fs_lookup.c, when ext2fs_add_entry() was introduced splitting code from ext2fs_direnter() - code used incorrect new entry size, leading to incomplete entry copy or buffer overflow; fixed by passing the right size from ext2fs_direnter()
show more ...
|
#
c3945f51 |
| 14-Aug-2016 |
jdolecek <jdolecek@NetBSD.org> |
when converting on-disk direntry, only use the on-disk filetype if the feature flag is present
|
#
069a1ad8 |
| 14-Aug-2016 |
jdolecek <jdolecek@NetBSD.org> |
switch code to use the EXT2_HAS_{COMPAT|ROCOMPAT|INCOMPAT}_FEATURE() macros instead of open coding the checks
|
#
eb3adad9 |
| 13-Aug-2016 |
christos <christos@NetBSD.org> |
KNF, no functional changes...
|
#
f6c8453e |
| 13-Aug-2016 |
christos <christos@NetBSD.org> |
sync with hrishi's git
|
#
0f54035f |
| 09-Aug-2016 |
christos <christos@NetBSD.org> |
merge missing function.
|
#
518446bd |
| 06-Aug-2016 |
jdolecek <jdolecek@NetBSD.org> |
actually pass the d_type from the on-disk directory entry to the lookup results
|
#
df4d55db |
| 24-Jun-2016 |
christos <christos@NetBSD.org> |
GSoC 2016 (Hrishikesh Goyal): Htree index support from FreeBSD
|
#
44024e78 |
| 12-Jan-2016 |
riastradh <riastradh@NetBSD.org> |
Use buffer cache, not page cache, to expand directories in ext2fs.
Candidate fix for PR kern/50607, PR port-evbmips/50059.
Formerly VOP_WRITE-->ext2fs_write would automatically dispatch to this cod
Use buffer cache, not page cache, to expand directories in ext2fs.
Candidate fix for PR kern/50607, PR port-evbmips/50059.
Formerly VOP_WRITE-->ext2fs_write would automatically dispatch to this code path for writes to directories, but I broke that in ext2fs_lookup.c rev. 1.78 when disentangling page-cached and buffer-cached writes.
This was not a problem in ufs, and I didn't notice it in ext2fs, because ufs consistently used buffercache(9) directly instead of using VOP_WRITE sometimes as ext2fs did.
show more ...
|
#
4cd06e7d |
| 27-Mar-2015 |
riastradh <riastradh@NetBSD.org> |
Disentangle buffer-cached I/O from page-cached I/O in UFS.
Page-cached I/O is used for regular files, and is initiated by VFS users such as userland and NFS.
Buffer-cached I/O is used for directori
Disentangle buffer-cached I/O from page-cached I/O in UFS.
Page-cached I/O is used for regular files, and is initiated by VFS users such as userland and NFS.
Buffer-cached I/O is used for directories and symlinks, and is issued only internally by UFS.
New UFS routine ufs_bufio replaces vn_rdwr for internal use. ufs_bufio is implemented by new UFS operations uo_bufrd/uo_bufwr, which sit in ufs_readwrite.c alongside the VOP_READ/VOP_WRITE implementations.
I preserved the code as much as possible and will leave further simplification for future commits. I kept the ulfs_readwrite.c copypasta close to ufs_readwrite.c in case we ever want to merge them back; likewise ext2fs_readwrite.c.
No externally visible semantic change. All atf fs tests still pass.
show more ...
|
#
dd435019 |
| 03-Jun-2014 |
joerg <joerg@NetBSD.org> |
Introduce two helper functions to centralise the namecache statistics in vfs_cache.c. Use consistent locking around the per-cpu data.
|
#
33ae6171 |
| 25-May-2014 |
hannken <hannken@NetBSD.org> |
Remove ext2fs_checkpath(). It is a relic from the pre-genfs_rename era.
|
#
cd35d2d8 |
| 08-May-2014 |
hannken <hannken@NetBSD.org> |
Add a global vnode cache:
- vcache_get() retrieves a referenced and initialised vnode / fs node pair. - vcache_remove() removes a vnode / fs node pair from the cache.
On cache miss vcache_get() cal
Add a global vnode cache:
- vcache_get() retrieves a referenced and initialised vnode / fs node pair. - vcache_remove() removes a vnode / fs node pair from the cache.
On cache miss vcache_get() calls new vfs operation vfs_loadvnode() to initialise a vnode / fs node pair. This call is guaranteed exclusive, no other thread will try to load this vnode / fs node pair.
Convert ufs/ext2fs, ufs/ffs and ufs/mfs to use this interface.
Remove now unused ufs/ufs_ihash
Discussed on tech-kern.
Welcome to 6.99.41
show more ...
|
#
55cd8e93 |
| 07-Feb-2014 |
hannken <hannken@NetBSD.org> |
Change vnode operation lookup to return the resulting vnode *vpp unlocked. Change cache_lookup() to return an unlocked vnode.
Discussed on tech-kern@
Welcome to 6.99.31
|
#
d8eae7d2 |
| 22-Jan-2013 |
dholland <dholland@NetBSD.org> |
Stuff UFS_ in front of a few of ufs's symbols to reduce namespace pollution. Specifically: ROOTINO -> UFS_ROOTINO WINO -> UFS_WINO NXADDR -> UFS_NXADDR NDADDR -> UFS_NDADDR NIADDR -> U
Stuff UFS_ in front of a few of ufs's symbols to reduce namespace pollution. Specifically: ROOTINO -> UFS_ROOTINO WINO -> UFS_WINO NXADDR -> UFS_NXADDR NDADDR -> UFS_NDADDR NIADDR -> UFS_NIADDR MAXSYMLINKLEN -> UFS_MAXSYMLINKLEN MAXSYMLINKLEN_UFS[12] -> UFS[12]_MAXSYMLINKLEN (for consistency)
Sort out ext2fs's misuse of NDADDR and NIADDR; fortunately, these have the same values in ext2fs and ffs.
No functional change intended.
show more ...
|
#
4f57bdf7 |
| 05-Nov-2012 |
dholland <dholland@NetBSD.org> |
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
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.
show more ...
|
#
30abb3ae |
| 05-Nov-2012 |
dholland <dholland@NetBSD.org> |
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 stru
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.
show more ...
|
#
02d4ccc5 |
| 22-Jul-2012 |
rmind <rmind@NetBSD.org> |
Move some the test for MAKEENTRY into the cache_enter(9). Make some variables in vfs_cache.c static, __read_mostly, etc.
No objection on tech-kern@.
|
#
224a2f36 |
| 16-Mar-2012 |
hannken <hannken@NetBSD.org> |
Fix last commit that broke lookup for dot with op DELETE.
Reviewed by: David Holland <dholland@netbsd.org>
|
#
bd26c726 |
| 13-Mar-2012 |
elad <elad@NetBSD.org> |
Replace the remaining KAUTH_GENERIC_ISSUSER authorization calls with something meaningful. All relevant documentation has been updated or written.
Most of these changes were brought up in the follow
Replace the remaining KAUTH_GENERIC_ISSUSER authorization calls with something meaningful. All relevant documentation has been updated or written.
Most of these changes were brought up in the following messages:
http://mail-index.netbsd.org/tech-kern/2012/01/18/msg012490.html http://mail-index.netbsd.org/tech-kern/2012/01/19/msg012502.html http://mail-index.netbsd.org/tech-kern/2012/02/17/msg012728.html
Thanks to christos, manu, njoly, and jmmv for input.
Huge thanks to pgoyette for spinning these changes through some build cycles and ATF.
show more ...
|