The NetBSD Project

CVS log for src/sys/fs/smbfs/Attic/smbfs_vfsops.c

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

Request diff between arbitrary revisions


Default branch: MAIN
Current tag: MAIN


Revision 1.110, Sat Apr 4 15:43:21 2020 UTC (4 years ago) by jdolecek
Branch: MAIN
CVS Tags: thorpej-futex-base, phil-wifi-20200421, phil-wifi-20200411, phil-wifi-20200406, cjep_sun2x-base, cjep_sun2x, cjep_staticlib_x-base1, cjep_staticlib_x-base, cjep_staticlib_x, bouyer-xenpvh-base2, bouyer-xenpvh-base1, bouyer-xenpvh-base, bouyer-xenpvh, bouyer-sunxi-drm-base, bouyer-sunxi-drm, HEAD
Changes since 1.109: +2 -2 lines
FILE REMOVED

remove SMBFS and nsmb(4) - kernel part

it's unmaintained and supports only obsolete SMB1

Revision 1.109 / (download) - annotate - [select for diffs], Mon Mar 16 21:20:10 2020 UTC (4 years, 1 month ago) by pgoyette
Branch: MAIN
Changes since 1.108: +23 -21 lines
Diff to previous 1.108 (colored)

Use the module subsystem's ability to process SYSCTL_SETUP() entries to
automate installation of sysctl nodes.

Note that there are still a number of device and pseudo-device modules
that create entries tied to individual device units, rather than to the
module itself.  These are not changed.

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

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

Revision 1.107 / (download) - annotate - [select for diffs], Fri Jan 17 20:08:08 2020 UTC (4 years, 3 months ago) by ad
Branch: MAIN
CVS Tags: ad-namecache-base2, ad-namecache-base1
Changes since 1.106: +5 -5 lines
Diff to previous 1.106 (colored)

VFS_VGET(), VFS_ROOT(), VFS_FHTOVP(): give them a "int lktype" argument, to
allow us to get shared locks (or no lock) on the returned vnode.  Matches
FreeBSD.

Revision 1.106 / (download) - annotate - [select for diffs], Sat Apr 1 19:35:56 2017 UTC (7 years 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, phil-wifi-20191119, phil-wifi-20190609, 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-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, 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, netbsd-8, matt-nb8-mediatek-base, matt-nb8-mediatek, jdolecek-ncq-base, jdolecek-ncq, isaki-audio2-base, isaki-audio2, bouyer-socketcan-base1, ad-namecache-base
Branch point for: phil-wifi, ad-namecache
Changes since 1.105: +4 -2 lines
Diff to previous 1.105 (colored)

KASSERT(mutex_owned(vp->v_interlock)) in vnode iterator selector.

Revision 1.105 / (download) - annotate - [select for diffs], Fri Feb 17 08:31:24 2017 UTC (7 years, 2 months ago) by hannken
Branch: MAIN
CVS Tags: pgoyette-localcount-20170320
Changes since 1.104: +3 -3 lines
Diff to previous 1.104 (colored)

Add generic genfs_suspendctl() and use it for all file systems.
Layered file systems need work.

Revision 1.104 / (download) - annotate - [select for diffs], Sun Dec 21 10:48:53 2014 UTC (9 years, 4 months ago) by hannken
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, nick-nhusb-base-20150406, localcount-20160914, bouyer-socketcan-base
Branch point for: pgoyette-localcount, bouyer-socketcan
Changes since 1.103: +7 -14 lines
Diff to previous 1.103 (colored)

Change smbfs from hashlist to vcache.
- Use (parent_vnode, name, name_len) as key.
- Change smbfs_nget() to return a referenced but unlocked vnode and
  adapt smbfs_setroot(), smbfs_create(), smbfs_mkdir() and smbfs_lookup().

Revision 1.103 / (download) - annotate - [select for diffs], Mon Jul 14 16:29:50 2014 UTC (9 years, 9 months ago) by maxv
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.102: +3 -3 lines
Diff to previous 1.102 (colored)

smbfs depends on nsmb, so add the dependency as appropriate. Fixes
	# modload smbfs
on modular kernels, PR kern/40011, and probably system crashes.

Revision 1.102 / (download) - annotate - [select for diffs], Sun May 25 19:33:28 2014 UTC (9 years, 10 months ago) by christos
Branch: MAIN
Changes since 1.101: +4 -4 lines
Diff to previous 1.101 (colored)

use macro.

Revision 1.101 / (download) - annotate - [select for diffs], Sat May 24 16:34:03 2014 UTC (9 years, 10 months ago) by christos
Branch: MAIN
Changes since 1.100: +22 -15 lines
Diff to previous 1.100 (colored)

Introduce a selector function to the vfs vnode iterator so that we don't
need to vget() vnodes that we are not interested at, and optimize locking
a bit. Iterator changes reviewed by Hannken (thanks), the rest of the bugs
are mine.

Revision 1.100 / (download) - annotate - [select for diffs], Wed Apr 16 18:55:18 2014 UTC (10 years ago) by maxv
Branch: MAIN
CVS Tags: yamt-pagecache-base9, rmind-smpnet-nbase, rmind-smpnet-base
Changes since 1.99: +4 -2 lines
Diff to previous 1.99 (colored)

An (un)privileged user can easily make the kernel dereference a NULL
pointer.

The kernel allows 'data' to be NULL; it's the fs's responsibility to
ensure that it isn't NULL (if the fs actually needs data).

ok christos@

Revision 1.99 / (download) - annotate - [select for diffs], Sun Mar 23 15:21:15 2014 UTC (10 years ago) by hannken
Branch: MAIN
CVS Tags: riastradh-xf86-video-intel-2-7-1-pre-2-21-15
Branch point for: tls-earlyentropy
Changes since 1.98: +25 -27 lines
Diff to previous 1.98 (colored)

Change all vfsops to use C99 designated initializers.

No functional changes intended.

Revision 1.98 / (download) - annotate - [select for diffs], Mon Mar 17 09:37:09 2014 UTC (10 years, 1 month ago) by hannken
Branch: MAIN
CVS Tags: riastradh-drm2-base3
Changes since 1.97: +13 -33 lines
Diff to previous 1.97 (colored)

Change smbfs_sync() to use vfs_vnode_iterator.

Revision 1.97 / (download) - annotate - [select for diffs], Tue Feb 25 18:30:11 2014 UTC (10 years, 1 month ago) by pooka
Branch: MAIN
Changes since 1.96: +2 -7 lines
Diff to previous 1.96 (colored)

Ensure that the top level sysctl nodes (kern, vfs, net, ...) exist before
the sysctl link sets are processed, and remove redundancy.

Shaves >13kB off of an amd64 GENERIC, not to mention >1k duplicate
lines of code.

Revision 1.96 / (download) - annotate - [select for diffs], Thu Oct 17 21:04:44 2013 UTC (10 years, 6 months ago) by christos
Branch: MAIN
Changes since 1.95: +2 -4 lines
Diff to previous 1.95 (colored)

remove usused code

Revision 1.95 / (download) - annotate - [select for diffs], Fri Oct 7 09:35:05 2011 UTC (12 years, 6 months ago) by hannken
Branch: MAIN
CVS Tags: yamt-pagecache-tag8, yamt-pagecache-base8, yamt-pagecache-base7, yamt-pagecache-base6, yamt-pagecache-base5, yamt-pagecache-base4, yamt-pagecache-base3, yamt-pagecache-base2, yamt-pagecache-base, riastradh-drm2-base2, riastradh-drm2-base1, riastradh-drm2-base, riastradh-drm2, 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-4-RELEASE, netbsd-6-1-3-RELEASE, netbsd-6-1-2-RELEASE, netbsd-6-1-1-RELEASE, netbsd-6-0-RELEASE, netbsd-6-0-RC2, netbsd-6-0-RC1, 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, matt-nb6-plus-nbase, matt-nb6-plus-base, matt-nb6-plus, khorben-n900, 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, agc-symver-base, agc-symver
Branch point for: yamt-pagecache, tls-maxphys, rmind-smpnet, netbsd-6-1, netbsd-6-0, netbsd-6
Changes since 1.94: +3 -4 lines
Diff to previous 1.94 (colored)

As vnalloc() always allocates with PR_WAITOK there is no longer the need
to test its result for NULL.

Revision 1.94 / (download) - annotate - [select for diffs], Sun Jun 12 03:35:54 2011 UTC (12 years, 10 months ago) by rmind
Branch: MAIN
Changes since 1.93: +6 -6 lines
Diff to previous 1.93 (colored)

Welcome to 5.99.53!  Merge rmind-uvmplock branch:

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

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

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

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

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

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

Revision 1.93 / (download) - annotate - [select for diffs], Wed Jul 21 17:52:11 2010 UTC (13 years, 9 months ago) by hannken
Branch: MAIN
CVS Tags: yamt-nfs-mp-base11, yamt-nfs-mp-base10, uebayasi-xip-base4, uebayasi-xip-base3, uebayasi-xip-base2, rmind-uvmplock-nbase, rmind-uvmplock-base, matt-mips64-premerge-20101231, jruoho-x86intr-base, jruoho-x86intr, cherry-xenmp-base, bouyer-quota2-nbase, bouyer-quota2-base, bouyer-quota2
Branch point for: cherry-xenmp
Changes since 1.92: +3 -3 lines
Diff to previous 1.92 (colored)

Make holding v_interlock mandatory for callers of vget().

Announced some time ago on tech-kern.

Revision 1.92 / (download) - annotate - [select for diffs], Fri Jul 9 08:16:28 2010 UTC (13 years, 9 months ago) by hannken
Branch: MAIN
Changes since 1.91: +9 -4 lines
Diff to previous 1.91 (colored)

Replace vget() with vref()/vn_lock(), this node already has a reference.

Revision 1.91 / (download) - annotate - [select for diffs], Thu Jun 24 13:03:10 2010 UTC (13 years, 9 months ago) by hannken
Branch: MAIN
Changes since 1.90: +3 -3 lines
Diff to previous 1.90 (colored)

Clean up vnode lock operations pass 2:

VOP_UNLOCK(vp, flags) -> VOP_UNLOCK(vp): Remove the unneeded flags argument.

Welcome to 5.99.32.

Discussed on tech-kern.

Revision 1.90 / (download) - annotate - [select for diffs], Mon Sep 7 15:12:03 2009 UTC (14 years, 7 months ago) by njoly
Branch: MAIN
CVS Tags: yamt-nfs-mp-base9, yamt-nfs-mp-base8, uebayasi-xip-base1, uebayasi-xip-base, matt-premerge-20091211, jym-xensuspend-nbase
Branch point for: uebayasi-xip, rmind-uvmplock
Changes since 1.89: +3 -3 lines
Diff to previous 1.89 (colored)

Fix set_statvfs_info() to use UIO_SYSSPACE for fromname kernel
allocated buffer.

Revision 1.89 / (download) - annotate - [select for diffs], Mon Sep 7 12:52:53 2009 UTC (14 years, 7 months ago) by pooka
Branch: MAIN
Changes since 1.88: +16 -11 lines
Diff to previous 1.88 (colored)

set mntfromname in a less creative and historic fashion

Revision 1.88 / (download) - annotate - [select for diffs], Thu Jul 2 16:17:52 2009 UTC (14 years, 9 months ago) by njoly
Branch: MAIN
CVS Tags: yamt-nfs-mp-base7, yamt-nfs-mp-base6, jymxensuspend-base
Changes since 1.87: +12 -9 lines
Diff to previous 1.87 (colored)

Fix some panics while trying to umount a smbfs share.

Be sure that no other active vnodes remains, before trying to release
the root one. Likewise, do not destroy the smbmount specific structure
if the umount will fail (busy conditions).

No objection from pooka@.

Revision 1.87 / (download) - annotate - [select for diffs], Wed Dec 17 20:51:35 2008 UTC (15 years, 4 months ago) by cegger
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, mjf-devfs2-base, jym-xensuspend-base
Branch point for: jym-xensuspend
Changes since 1.86: +4 -5 lines
Diff to previous 1.86 (colored)

kill MALLOC and FREE macros.

Revision 1.86 / (download) - annotate - [select for diffs], Tue Dec 16 16:18:25 2008 UTC (15 years, 4 months ago) by pooka
Branch: MAIN
Changes since 1.85: +2 -8 lines
Diff to previous 1.85 (colored)

The great QUOTA purge of '08: get rid of those #ifdef QUOTA and
#include "opt_quota.h" which do exactly nothing.  Speeds up kernel
compilation by 1.375*10^-20001 seconds.  But leave the most moxious
comment in msdosfs_vfsops untouched.

Revision 1.85 / (download) - annotate - [select for diffs], Sun Sep 7 13:13:04 2008 UTC (15 years, 7 months ago) by tron
Branch: MAIN
CVS Tags: wrstuden-revivesa-base-4, wrstuden-revivesa-base-3, wrstuden-revivesa-base-2, netbsd-5-base, netbsd-5-0-RELEASE, netbsd-5-0-RC4, netbsd-5-0-RC3, netbsd-5-0-RC2, netbsd-5-0-RC1, 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, matt-mips64-base2, haad-nbase2, haad-dm-base2, haad-dm-base1, haad-dm-base, ad-audiomp2-base, ad-audiomp2
Branch point for: nick-hppapmap, netbsd-5, matt-nb5-mips64
Changes since 1.84: +2 -3 lines
Diff to previous 1.84 (colored)

Remove duplicate definition of "smbfs_node_pool".
Fix based on a patch provided by Juan RP in PR kern/39494.

Revision 1.84 / (download) - annotate - [select for diffs], Sun Jun 29 18:45:20 2008 UTC (15 years, 9 months ago) by rumble
Branch: MAIN
CVS Tags: simonb-wapbl-nbase, simonb-wapbl-base
Branch point for: haad-dm
Changes since 1.83: +2 -4 lines
Diff to previous 1.83 (colored)

In smbfs_done, do not call pool_destroy on the same pool twice in a row.
Now smbfs.kmod can be unloaded without panicking the system.

Revision 1.83 / (download) - annotate - [select for diffs], Sat Jun 28 01:34:05 2008 UTC (15 years, 9 months ago) by rumble
Branch: MAIN
Changes since 1.82: +39 -35 lines
Diff to previous 1.82 (colored)

Create sysctl entries during module initialisation and destroy them
appropriately.

Many of these file systems are now ready for modularisation.

Revision 1.82 / (download) - annotate - [select for diffs], Tue Jun 24 17:04:11 2008 UTC (15 years, 9 months ago) by cegger
Branch: MAIN
Changes since 1.81: +5 -5 lines
Diff to previous 1.81 (colored)

make this build with SMB_VNODE_DEBUG. makes i386 ALL kernel build again.

Revision 1.81 / (download) - annotate - [select for diffs], Sat May 10 02:26:09 2008 UTC (15 years, 11 months ago) by rumble
Branch: MAIN
CVS Tags: yamt-pf42-base4, yamt-pf42-base3, yamt-pf42-base2, yamt-nfs-mp-base2, wrstuden-revivesa-base-1, wrstuden-revivesa-base, hpcarm-cleanup-nbase
Branch point for: simonb-wapbl
Changes since 1.80: +19 -3 lines
Diff to previous 1.80 (colored)

Convert file systems to dynamically attach with the new module interface.
Make VFS hooks dynamic while we're here and say farewell to VFS_ATTACH and
VFS_HOOKS_ATTACH linksets.

As a consequence, most of the file systems can now be loaded as new style
modules.

Quick sanity check by ad@.

Revision 1.80 / (download) - annotate - [select for diffs], Mon May 5 17:11:17 2008 UTC (15 years, 11 months ago) by ad
Branch: MAIN
Branch point for: wrstuden-revivesa
Changes since 1.79: +5 -9 lines
Diff to previous 1.79 (colored)

- Convert hashinit() to use kmem_alloc(). The hash tables can be large
  and it's better to not have them in kmem_map.
- Convert a couple of minor items along the way to kmem_alloc().
- Fix some memory leaks.

Revision 1.79 / (download) - annotate - [select for diffs], Tue Apr 29 18:18:08 2008 UTC (15 years, 11 months ago) by ad
Branch: MAIN
Changes since 1.78: +3 -2 lines
Diff to previous 1.78 (colored)

PR kern/38057 ffs makes assuptions about devvp file system
PR kern/33406 softdeps get stuck in endless loop

Introduce VFS_FSYNC() and call it when syncing a block device, if it
has a mounted file system.

Revision 1.78 / (download) - annotate - [select for diffs], Wed Jan 30 14:08:00 2008 UTC (16 years, 2 months ago) by ad
Branch: MAIN
CVS Tags: yamt-pf42-baseX, yamt-pf42-base, yamt-nfs-mp-base, yamt-lazymbuf-base15, yamt-lazymbuf-base14, nick-net80211-sync-base, nick-net80211-sync, mjf-devfs-base, matt-armv6-nbase, keiichi-mipv6-nbase, keiichi-mipv6-base, keiichi-mipv6, hpcarm-cleanup-base, ad-socklock-base1
Branch point for: yamt-pf42, yamt-nfs-mp, mjf-devfs2
Changes since 1.77: +4 -4 lines
Diff to previous 1.77 (colored)

Replace crufty use of lockmgr.

Revision 1.77 / (download) - annotate - [select for diffs], Mon Jan 28 14:31:17 2008 UTC (16 years, 2 months ago) by dholland
Branch: MAIN
Changes since 1.76: +5 -2 lines
Diff to previous 1.76 (colored)

Fix some race conditions in rename.
Introduce a per-FS rename lock and new vfsops to manipulate it.
Get this lock while renaming. Also add another relookup() in do_sys_rename,
which is a hack to kludge around some of the worst deficiencies of
ufs_rename.
reviewed-by: pooka (and an earlier rev by ad)
posted on tech-kern with no objections.

Revision 1.76 / (download) - annotate - [select for diffs], Sat Jan 26 14:25:38 2008 UTC (16 years, 2 months ago) by ad
Branch: MAIN
Changes since 1.75: +4 -8 lines
Diff to previous 1.75 (colored)

- Fix several problems with the inode hash.
- Replace use of lockmgr().

Revision 1.75 / (download) - annotate - [select for diffs], Thu Jan 3 01:26:29 2008 UTC (16 years, 3 months ago) by pooka
Branch: MAIN
CVS Tags: matt-armv6-base, bouyer-xeni386-nbase, bouyer-xeni386-base
Changes since 1.74: +4 -4 lines
Diff to previous 1.74 (colored)

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

no functional change
ad ok

Revision 1.74 / (download) - annotate - [select for diffs], Wed Jan 2 11:48:45 2008 UTC (16 years, 3 months ago) by ad
Branch: MAIN
Changes since 1.73: +24 -23 lines
Diff to previous 1.73 (colored)

Merge vmlocking2 to head.

Revision 1.73 / (download) - annotate - [select for diffs], Mon Nov 26 19:01:52 2007 UTC (16 years, 4 months ago) by pooka
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.72: +12 -23 lines
Diff to previous 1.72 (colored)

Remove the "struct lwp *" argument from all VFS and VOP interfaces.
The general trend is to remove it from all kernel interfaces and
this is a start.  In case the calling lwp is desired, curlwp should
be used.

quick consensus on tech-kern

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

Merge from vmlocking:

- Split vnode::v_flag into three fields, depending on field locking.
- simple_lock -> kmutex in a few places.
- Fix some simple locking problems.

Revision 1.71 / (download) - annotate - [select for diffs], Fri Sep 21 01:33:04 2007 UTC (16 years, 7 months ago) by rmind
Branch: MAIN
CVS Tags: yamt-x86pmap-base2, yamt-x86pmap-base
Branch point for: yamt-x86pmap
Changes since 1.70: +8 -23 lines
Diff to previous 1.70 (colored)

smbfs_mount: Fix a possible dereference, and simplify the error case.
From CID: 4556

Tested by <dan>.

Revision 1.70 / (download) - annotate - [select for diffs], Tue Jul 31 21:14:18 2007 UTC (16 years, 8 months ago) by pooka
Branch: MAIN
CVS Tags: nick-csl-alignment-base5, matt-mips64-base
Branch point for: matt-mips64, matt-armv6, jmcneill-pm
Changes since 1.69: +5 -16 lines
Diff to previous 1.69 (colored)

* nuke the nameidata parameter from VFS_MOUNT().  Nobody on tech-kern
  knew what it was supposed to be used for and wrstuden gave a go-ahead
* while rototilling, convert file systems which went easily to
  use VFS_PROTOS() instead of manually prototyping the methods

Revision 1.69 / (download) - annotate - [select for diffs], Thu Jul 26 22:57:38 2007 UTC (16 years, 8 months ago) by pooka
Branch: MAIN
CVS Tags: hpcarm-cleanup
Changes since 1.68: +3 -3 lines
Diff to previous 1.68 (colored)

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

Revision 1.68 / (download) - annotate - [select for diffs], Fri Jul 20 16:46:44 2007 UTC (16 years, 9 months ago) by pooka
Branch: MAIN
Changes since 1.67: +3 -3 lines
Diff to previous 1.67 (colored)

In sync, skip over vnodes based on if they are clean rather than
if they have pages.

Revision 1.67 / (download) - annotate - [select for diffs], Tue Jul 17 11:19:33 2007 UTC (16 years, 9 months ago) by pooka
Branch: MAIN
CVS Tags: nick-csl-alignment-base
Branch point for: nick-csl-alignment
Changes since 1.66: +3 -3 lines
Diff to previous 1.66 (colored)

Make set_statvfs_info() take a parameter for the vfs name instead
of always retrieving it from mp->mnt_op->vfs_name

christos ok

Revision 1.66 / (download) - annotate - [select for diffs], Thu Jul 12 19:35:33 2007 UTC (16 years, 9 months ago) by dsl
Branch: MAIN
Changes since 1.65: +17 -15 lines
Diff to previous 1.65 (colored)

Change the VFS_MOUNT() interface so that the 'data' buffer passed to the
fs code is a kernel buffer, pass though the length of the buffer as well.
Since the length of the userspace buffer isn'it (yet) passed through the mount
system call, add a field to the vfsops structure containing the default length.
Split sys_mount() for calls from compat code.
Ride one of the recent kernel version changes - old fs LKMs will load, but
sys_mount() will reject any attempt to use them.

Revision 1.65 / (download) - annotate - [select for diffs], Sat Jun 30 09:37:57 2007 UTC (16 years, 9 months ago) by pooka
Branch: MAIN
CVS Tags: mjf-ufs-trans-base
Changes since 1.64: +5 -11 lines
Diff to previous 1.64 (colored)

Using POOL_INIT here makes no sense, since file systems always have
an init method.  So get rid of it and #ifdef _LKM and just always
init in the init method.  Give malloc types the same treatment.
Makes file systems nicer to work with in linksetless environments
and fixes a few LKM discrepancies.

Revision 1.64 / (download) - annotate - [select for diffs], Tue Apr 3 14:18:19 2007 UTC (17 years ago) by pooka
Branch: MAIN
CVS Tags: yamt-idlelwp-base8, thorpej-atomic-base, thorpej-atomic
Changes since 1.63: +8 -2 lines
Diff to previous 1.63 (colored)

In sync, skip vnodes which have a null v_data pointer.  This is a
workaround for the problem analyzed more deeply in kern/30831.  In
short, the problem is keeping the vnode on the mount point vnode
list during reclaim.  If reclaim happens to sleep (as is a possibility
with smbfs due to calling vrele() and therefore possibly VOP_INACTIVE),
code going through the entire mountpoint vnode list will hit
half-reclaimed vnodes.

Revision 1.63 / (download) - annotate - [select for diffs], Mon Mar 12 18:18:32 2007 UTC (17 years, 1 month ago) by ad
Branch: MAIN
CVS Tags: reinoud-bufcleanup
Branch point for: mjf-ufs-trans
Changes since 1.62: +4 -4 lines
Diff to previous 1.62 (colored)

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

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

New file system suspension API to replace vn_start_write and vn_finished_write.
The suspension helpers are now put into file system specific operations.
This means every file system not supporting these helpers cannot be suspended
and therefore snapshots are no longer possible.

Implemented for file systems of type ffs.

The new API is enabled on a kernel option NEWVNGATE.  This option is
not enabled by default in any kernel config.

Presented and discussed on tech-kern with much input from
Bill Studenmund <wrstuden@netbsd.org> and YAMAMOTO Takashi <yamt@netbsd.org>.

Welcome to 4.99.9 (new vfs op vfs_suspendctl).

Revision 1.61 / (download) - annotate - [select for diffs], Sat Dec 9 16:11:51 2006 UTC (17 years, 4 months ago) by chs
Branch: MAIN
CVS Tags: yamt-splraiseipl-base5, yamt-splraiseipl-base4, yamt-splraiseipl-base3
Changes since 1.60: +4 -4 lines
Diff to previous 1.60 (colored)

a smorgasbord of improvements to vnode locking and path lookup:
 - LOCKPARENT is no longer relevant for lookup(), relookup() or VOP_LOOKUP().
   these now always return the parent vnode locked.  namei() works as before.
   lookup() and various other paths no longer acquire vnode locks in the
   wrong order via vrele().  fixes PR 32535.
   as a nice side effect, path lookup is also up to 25% faster.
 - the above allows us to get rid of PDIRUNLOCK.
 - also get rid of WANTPARENT (just use LOCKPARENT and unlock it).
 - remove an assumption in layer_node_find() that all file systems implement
   a recursive VOP_LOCK() (unionfs doesn't).
 - require that all file systems supply vfs_vptofh and vfs_fhtovp routines.
   fill in eopnotsupp() for file systems that don't support being exported
   and remove the checks for NULL.  (layerfs calls these without checking.)
 - in union_lookup1(), don't change refcounts in the ISDOTDOT case, just
   adjust which vnode is locked.  fixes PR 33374.
 - apply fixes for ufs_rename() from ufs_vnops.c rev. 1.61 to ext2fs_rename().

Revision 1.60 / (download) - annotate - [select for diffs], Thu Nov 16 01:33:37 2006 UTC (17 years, 5 months ago) by christos
Branch: MAIN
CVS Tags: netbsd-4-base
Branch point for: netbsd-4
Changes since 1.59: +9 -9 lines
Diff to previous 1.59 (colored)

__unused removal on arguments; approved by core.

Revision 1.59 / (download) - annotate - [select for diffs], Thu Nov 2 17:34:21 2006 UTC (17 years, 5 months ago) by jmmv
Branch: MAIN
Changes since 1.58: +13 -5 lines
Diff to previous 1.58 (colored)

Bring in fix from FreeBSD by tjr, 3 years and 9 months ago: Store a
reference to the parent directory's vnode instead of its smbnode to
avoid a use-after-free bug causing a panic when a smbfs mount is
forcefully unmounted.

Keep trying to flush the vnode list for the mount while some are still
busy and we are making progress towards making them not busy.  This
stops attempts to unmount idle smbfs mounts failing with EBUSY.

The easiest way to reproduce the above problem, from what I have seen is:
1) Assume /s is a smbfs mount point.
2) mount /s
3) stat /s/foo/1
4) umount /s
   Returns error because the file system is busy.
5) Shutdown the machine: panic in smbfs_reclaim because vrele
   accesses already-released memory.

Revision 1.58 / (download) - annotate - [select for diffs], Wed Oct 25 22:01:54 2006 UTC (17 years, 5 months ago) by reinoud
Branch: MAIN
Changes since 1.57: +3 -3 lines
Diff to previous 1.57 (colored)

Revisit mnt_vnodelist TAILQ patch. Remove all suspicious TAILQ_FOREACH()
loops where vnodes can get removed or added during the loops. This could
lead to panic's on unmount since nodes are skipped or otherwise
TAILQ_NEXT(0xdeadbeef, ...) was dereferenced.

Revision 1.57 / (download) - annotate - [select for diffs], Sun Oct 22 00:03:33 2006 UTC (17 years, 6 months ago) by reinoud
Branch: MAIN
CVS Tags: yamt-splraiseipl-base2
Changes since 1.56: +9 -4 lines
Diff to previous 1.56 (colored)

Return the TAILQ_FOREACH to an explicit `for' loop since in the loop vnodes
can be removed.

Revision 1.56 / (download) - annotate - [select for diffs], Fri Oct 20 18:58:12 2006 UTC (17 years, 6 months ago) by reinoud
Branch: MAIN
Changes since 1.55: +4 -5 lines
Diff to previous 1.55 (colored)

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

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

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

Revision 1.55 / (download) - annotate - [select for diffs], Thu Oct 12 01:32:14 2006 UTC (17 years, 6 months ago) by christos
Branch: MAIN
Changes since 1.54: +9 -14 lines
Diff to previous 1.54 (colored)

- sprinkle __unused on function decls.
- fix a couple of unused bugs
- no more -Wno-unused for i386

Revision 1.54 / (download) - annotate - [select for diffs], Sun Sep 3 05:28:40 2006 UTC (17 years, 7 months ago) by christos
Branch: MAIN
CVS Tags: yamt-splraiseipl-base, yamt-pdpolicy-base9, yamt-pdpolicy-base8, rpaulo-netinet-merge-pcb-base
Branch point for: yamt-splraiseipl, newlock2
Changes since 1.53: +4 -2 lines
Diff to previous 1.53 (colored)

add missing initializer

Revision 1.53 / (download) - annotate - [select for diffs], Sun Jul 23 22:06:10 2006 UTC (17 years, 9 months ago) by ad
Branch: MAIN
CVS Tags: yamt-pdpolicy-base7, abandoned-netbsd-4-base, abandoned-netbsd-4
Changes since 1.52: +6 -6 lines
Diff to previous 1.52 (colored)

Use the LWP cached credentials where sane.

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

integrate kauth.

Revision 1.51 / (download) - annotate - [select for diffs], Sun Dec 11 12:24:29 2005 UTC (18 years, 4 months ago) by christos
Branch: MAIN
CVS Tags: yamt-uio_vmspace-base5, yamt-uio_vmspace, yamt-pdpolicy-base4, yamt-pdpolicy-base3, yamt-pdpolicy-base2, yamt-pdpolicy-base, peter-altq-base, elad-kernelauth-base
Branch point for: yamt-pdpolicy, simonb-timecounters, rpaulo-netinet-merge-pcb, peter-altq, elad-kernelauth
Changes since 1.50: +25 -30 lines
Diff to previous 1.50 (colored)

merge ktrace-lwp.

Revision 1.50 / (download) - annotate - [select for diffs], Fri Sep 23 12:10:32 2005 UTC (18 years, 7 months ago) by jmmv
Branch: MAIN
CVS Tags: yamt-vop-base3, yamt-vop-base2, yamt-vop-base, yamt-vop, yamt-readahead-pervnode, yamt-readahead-perfile, yamt-readahead-base3, yamt-readahead-base2, yamt-readahead-base, yamt-readahead, thorpej-vnode-attr-base, thorpej-vnode-attr, ktrace-lwp-base
Changes since 1.49: +4 -30 lines
Diff to previous 1.49 (colored)

Apply the NFS exports list rototill patch:

- Remove all NFS related stuff from file system specific code.
- Drop the vfs_checkexp hook and generalize it in the new nfs_check_export
  function, thus removing redundancy from all file systems.
- Move all NFS export-related stuff from kern/vfs_subr.c to the new
  file sys/nfs/nfs_export.c.  The former was becoming large and its code
  is always compiled, regardless of the build options.  Using the latter,
  the code is only compiled in when NFSSERVER is enabled.  While doing this,
  also make some functions in nfs_subs.c conditional to NFSSERVER.
- Add a new command in nfssvc(2), called NFSSVC_SETEXPORTSLIST, that takes a
  path and a set of export entries.  At the moment it can only clear the
  exports list or append entries, one by one, but it is done in a way that
  allows setting the whole set of entries atomically in the future (see the
  comment in mountd_set_exports_list or in doc/TODO).
- Change mountd(8) to use the nfssvc(2) system call instead of mount(2) so
  that it becomes file system agnostic.  In fact, all this whole thing was
  done to remove a 'XXX' block from this utility!
- Change the mount*, newfs and fsck* userland utilities to not deal with NFS
  exports initialization; done internally by the kernel when initializing
  the NFS support for each file system.
- Implement an interface for VFS (called VFS hooks) so that several kernel
  subsystems can run arbitrary code upon receipt of specific VFS events.
  At the moment, this only provides support for unmount and is used to
  destroy NFS exports lists from the file systems being unmounted, though it
  has room for extension.

Thanks go to yamt@, chs@, thorpej@, wrstuden@ and others for their comments
and advice in the development of this patch.

Revision 1.49 / (download) - annotate - [select for diffs], Mon Jun 20 02:49:19 2005 UTC (18 years, 10 months ago) by atatat
Branch: MAIN
Branch point for: yamt-lazymbuf
Changes since 1.48: +3 -3 lines
Diff to previous 1.48 (colored)

Change the rest of the sysctl subsystem to use const consistently.
The __UNCONST macro is now used only where necessary and the RW macros
are gone.  Most of the changes here are consumers of the
sysctl_createv(9) interface that now takes a pair of const pointers
which used not to be.

Revision 1.48 / (download) - annotate - [select for diffs], Tue Mar 29 02:41:05 2005 UTC (19 years ago) by thorpej
Branch: MAIN
CVS Tags: kent-audio2-base
Changes since 1.47: +3 -2 lines
Diff to previous 1.47 (colored)

- Define a VFS_ATTACH() macro that places a reference to a vfsops structure
  into the "vfsops" link set.
- Use VFS_ATTACH() where vfsops are declared for individual file systems.
- In vfsinit(), traverse the "vfsops" link set, rather than vfs_list_initial[].

Revision 1.47 / (download) - annotate - [select for diffs], Sat Feb 26 22:58:55 2005 UTC (19 years, 1 month ago) by perry
Branch: MAIN
CVS Tags: yamt-km-base4, yamt-km-base3, netbsd-3-base, netbsd-3-1-RELEASE, netbsd-3-1-RC4, netbsd-3-1-RC3, netbsd-3-1-RC2, netbsd-3-1-RC1, netbsd-3-1-1-RELEASE, netbsd-3-1, netbsd-3-0-RELEASE, netbsd-3-0-RC6, netbsd-3-0-RC5, netbsd-3-0-RC4, netbsd-3-0-RC3, netbsd-3-0-RC2, netbsd-3-0-RC1, netbsd-3-0-3-RELEASE, netbsd-3-0-2-RELEASE, netbsd-3-0-1-RELEASE, netbsd-3-0
Branch point for: netbsd-3
Changes since 1.46: +5 -5 lines
Diff to previous 1.46 (colored)

nuke trailing whitespace

Revision 1.46 / (download) - annotate - [select for diffs], Sun Jan 2 16:08:28 2005 UTC (19 years, 3 months ago) by thorpej
Branch: MAIN
CVS Tags: yamt-km-base2, yamt-km-base, kent-audio1-beforemerge
Branch point for: yamt-km, kent-audio2
Changes since 1.45: +3 -2 lines
Diff to previous 1.45 (colored)

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

From FreeBSD.

Revision 1.45 / (download) - annotate - [select for diffs], Mon Sep 13 19:25:48 2004 UTC (19 years, 7 months ago) by jdolecek
Branch: MAIN
CVS Tags: kent-audio1-base, kent-audio1
Changes since 1.44: +4 -4 lines
Diff to previous 1.44 (colored)

set mp->mnt_stat.f_namemax on filesystem mount for use by statvfs, and use
the value for also pathconf(_PC_NAME_MAX) to keep the two in sync

Revision 1.44 / (download) - annotate - [select for diffs], Sat Jun 5 07:36:25 2004 UTC (19 years, 10 months ago) by jdolecek
Branch: MAIN
Changes since 1.43: +4 -6 lines
Diff to previous 1.43 (colored)

unify the statvfs-reporting related code to single smbfs_smb_statvfs routine
for easier maintenance; the decision to use either
SMB_TRANS2_QUERY_FS_INFORMATION or SMB_COM_QUERY_INFORMATION_DISK
is done inside it, the code for populating struct statvfs with values
is shared

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

Add ffs internal snapshots. Written by Marshall Kirk McKusick for FreeBSD.

- Not enabled by default. Needs kernel option FFS_SNAPSHOT.
- Change parameters of ffs_blkfree.
- Let the copy-on-write functions return an error so spec_strategy
    may fail if the copy-on-write fails.
- Change genfs_*lock*() to use vp->v_vnlock instead of &vp->v_lock.
- Add flag B_METAONLY to VOP_BALLOC to return indirect block buffer.
- Add a function ffs_checkfreefile needed for snapshot creation.
- Add special handling of snapshot files:
    Snapshots may not be opened for writing and the attributes are read-only.
    Use the mtime as the time this snapshot was taken.
    Deny mtime updates for snapshot files.
- Add function transferlockers to transfer any waiting processes from
  one lock to another.
- Add vfsop VFS_SNAPSHOT to take a snapshot and make it accessible through
  a vnode.
- Add snapshot support to ls, fsck_ffs and dump.

Welcome to 2.0F.

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

Revision 1.42 / (download) - annotate - [select for diffs], Tue May 25 04:44:44 2004 UTC (19 years, 11 months ago) by atatat
Branch: MAIN
Changes since 1.41: +6 -4 lines
Diff to previous 1.41 (colored)

Sysctl descriptions under vfs subtree

Revision 1.41 / (download) - annotate - [select for diffs], Thu May 20 05:39:34 2004 UTC (19 years, 11 months ago) by atatat
Branch: MAIN
Changes since 1.40: +5 -2 lines
Diff to previous 1.40 (colored)

Explicitly call pool_init() (and pool_destroy()) when being built as
an _LKM.

This adds pools to the list of things that lkms must do manually
because they're set up with link sets.  Not that there's anything
wrong with link sets, but that we need to try harder to remember that
lkms are second class citizens.  Of a sort.

Revision 1.40 / (download) - annotate - [select for diffs], Tue May 4 13:26:58 2004 UTC (19 years, 11 months ago) by jrf
Branch: MAIN
Changes since 1.39: +3 -3 lines
Diff to previous 1.39 (colored)

Remove caddr_t inlines. Approved by christos@NetBSD.org.

Revision 1.39 / (download) - annotate - [select for diffs], Tue Apr 27 17:37:30 2004 UTC (19 years, 11 months ago) by jrf
Branch: MAIN
Changes since 1.38: +4 -4 lines
Diff to previous 1.38 (colored)

First pass for some caddr_t removal and changes to get rid of it where we
no longer use and/or need it

	- removed casts from unionfs, deadfs and fdesc
	  (there are more to hunt down still)
	- changed vfs_quotactl args argumet from caddr_t to void *
	- changed vfs_quotactl structures/callers to reflect the api change

Compiled fine and ran for about a day. Approved/reviewed by
christos@netbsd.org and gimpy@netbsd.org.

Revision 1.38 / (download) - annotate - [select for diffs], Mon Apr 26 20:38:22 2004 UTC (19 years, 11 months ago) by christos
Branch: MAIN
Changes since 1.37: +3 -3 lines
Diff to previous 1.37 (colored)

fix compile error (thanks Juan RP)

Revision 1.37 / (download) - annotate - [select for diffs], Mon Apr 26 17:08:34 2004 UTC (19 years, 11 months ago) by christos
Branch: MAIN
Changes since 1.36: +5 -2 lines
Diff to previous 1.36 (colored)

fill namemax

Revision 1.36 / (download) - annotate - [select for diffs], Sun Apr 25 16:42:41 2004 UTC (19 years, 11 months ago) by simonb
Branch: MAIN
Changes since 1.35: +4 -6 lines
Diff to previous 1.35 (colored)

Initialise (most) pools from a link set instead of explicit calls
to pool_init.  Untouched pools are ones that either in arch-specific
code, or aren't initialiased during initial system startup.

 Convert struct session, ucred and lockf to pools.

Revision 1.35 / (download) - annotate - [select for diffs], Wed Apr 21 01:05:38 2004 UTC (20 years ago) by christos
Branch: MAIN
Changes since 1.34: +11 -12 lines
Diff to previous 1.34 (colored)

Replace the statfs() family of system calls with statvfs().
Retain binary compatibility.

Revision 1.34 / (download) - annotate - [select for diffs], Wed Mar 24 15:34:52 2004 UTC (20 years, 1 month ago) by atatat
Branch: MAIN
CVS Tags: netbsd-2-0-base
Branch point for: netbsd-2-0
Changes since 1.33: +14 -10 lines
Diff to previous 1.33 (colored)

Tango on sysctl_createv() and flags.  The flags have all been renamed,
and sysctl_createv() now uses more arguments.

Revision 1.33 / (download) - annotate - [select for diffs], Sun Mar 21 13:43:46 2004 UTC (20 years, 1 month ago) by jdolecek
Branch: MAIN
Changes since 1.32: +3 -5 lines
Diff to previous 1.32 (colored)

use SMBVDEBUG() instead of #ifdef SMB_VNODE_DEBUG

Revision 1.32 / (download) - annotate - [select for diffs], Thu Dec 4 19:38:23 2003 UTC (20 years, 4 months ago) by atatat
Branch: MAIN
Changes since 1.31: +22 -4 lines
Diff to previous 1.31 (colored)

Dynamic sysctl.

Gone are the old kern_sysctl(), cpu_sysctl(), hw_sysctl(),
vfs_sysctl(), etc, routines, along with sysctl_int() et al.  Now all
nodes are registered with the tree, and nodes can be added (or
removed) easily, and I/O to and from the tree is handled generically.

Since the nodes are registered with the tree, the mapping from name to
number (and back again) can now be discovered, instead of having to be
hard coded.  Adding new nodes to the tree is likewise much simpler --
the new infrastructure handles almost all the work for simple types,
and just about anything else can be done with a small helper function.

All existing nodes are where they were before (numerically speaking),
so all existing consumers of sysctl information should notice no
difference.

PS - I'm sorry, but there's a distinct lack of documentation at the
moment.  I'm working on sysctl(3/8/9) right now, and I promise to
watch out for buses.

Revision 1.31 / (download) - annotate - [select for diffs], Sun Jun 29 22:31:13 2003 UTC (20 years, 9 months ago) by fvdl
Branch: MAIN
Branch point for: ktrace-lwp
Changes since 1.30: +31 -26 lines
Diff to previous 1.30 (colored)

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

Revision 1.30 / (download) - annotate - [select for diffs], Sun Jun 29 18:43:25 2003 UTC (20 years, 9 months ago) by thorpej
Branch: MAIN
Changes since 1.29: +10 -12 lines
Diff to previous 1.29 (colored)

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

Revision 1.29 / (download) - annotate - [select for diffs], Sun Jun 29 12:17:21 2003 UTC (20 years, 9 months ago) by martin
Branch: MAIN
Changes since 1.28: +3 -3 lines
Diff to previous 1.28 (colored)

Fix a few small glitches (struct proc -> struct lwp)

Revision 1.28 / (download) - annotate - [select for diffs], Sat Jun 28 14:21:51 2003 UTC (20 years, 9 months ago) by darrenr
Branch: MAIN
Changes since 1.27: +35 -38 lines
Diff to previous 1.27 (colored)

Pass lwp pointers throughtout the kernel, as required, so that the lwpid can
be inserted into ktrace records.  The general change has been to replace
"struct proc *" with "struct lwp *" in various function prototypes, pass
the lwp through and use l_proc to get the process pointer when needed.

Bump the kernel rev up to 1.6V

Revision 1.27 / (download) - annotate - [select for diffs], Mon Jun 23 15:25:55 2003 UTC (20 years, 10 months ago) by martin
Branch: MAIN
Changes since 1.26: +4 -2 lines
Diff to previous 1.26 (colored)

#ifdef _KERNEL_OPT police

Revision 1.26 / (download) - annotate - [select for diffs], Mon Jun 23 11:02:03 2003 UTC (20 years, 10 months ago) by martin
Branch: MAIN
Changes since 1.25: +4 -2 lines
Diff to previous 1.25 (colored)

Make sure to include opt_foo.h if a defflag option FOO is used.

Revision 1.25 / (download) - annotate - [select for diffs], Wed Apr 16 21:44:20 2003 UTC (21 years ago) by christos
Branch: MAIN
Changes since 1.24: +8 -18 lines
Diff to previous 1.24 (colored)

PR/1796: John Kohl: statfs misbehaves under chrooted environments.

- Under chroot it displays only the visible filesystems with appropriate paths.
- The statfs f_mntonname gets adjusted to contain the real path from root.
- While was there, fixed a bug in ext2fs, locking problems with vfs_getfsstat(),
  and factored out some of the vfsop statfs() code to copy_statfs_info(). This
  fixes the problem where some filesystems forgot to set fsid.
- Made coda look more like a normal fs.

Revision 1.24 / (download) - annotate - [select for diffs], Tue Apr 8 16:26:31 2003 UTC (21 years ago) by jdolecek
Branch: MAIN
Changes since 1.23: +4 -2 lines
Diff to previous 1.23 (colored)

attach/detach also malloc type M_SMBFSHASH ('oops')

Revision 1.23 / (download) - annotate - [select for diffs], Wed Apr 2 16:26:53 2003 UTC (21 years ago) by jdolecek
Branch: MAIN
Changes since 1.22: +15 -2 lines
Diff to previous 1.22 (colored)

when loaded via LKM, need to malloc_type_{attach|detach} used malloc
types on load/unload appropriately
XXX this should really be automated somehow

Revision 1.22 / (download) - annotate - [select for diffs], Wed Feb 26 20:21:40 2003 UTC (21 years, 1 month ago) by jdolecek
Branch: MAIN
Changes since 1.21: +27 -17 lines
Diff to previous 1.21 (colored)

Don't try to reacquire root vnode if vflush() in smbfs_unmount() fails.
This is potentially fragile, since the vnode may have been reclaimed
in vflush(), and used by different filesystem. This wouldn't actually
happen due to n_parent link to parent directory, but better safe
than sorry.

Since sm_root is only and strictly cache to speed up VFS_ROOT(),
it can be acquired/dropped any time. Rearrange code to not
require sm_root set, and change smbfs_root() back to set
sm_root if it's not set yet. smbfs_unmount() now only vrele()s
the root vnode if sm_root is set, and doesn't try reacquire it
if vflush() fails.

problem with vref() after vflush() pointed out by Bill Studenmund

Revision 1.21 / (download) - annotate - [select for diffs], Wed Feb 26 18:16:37 2003 UTC (21 years, 1 month ago) by jdolecek
Branch: MAIN
Changes since 1.20: +32 -23 lines
Diff to previous 1.20 (colored)

split the part of smbfs_root() which sets sm_root to separate function
smbfs_setroot()
remove pointless if() and MNT_LOCAL flag handling in smbfs_unmount()
turn the check for non-null sm_root to KASSERT() in smbfs_statfs()
adjust some comments

Revision 1.20 / (download) - annotate - [select for diffs], Tue Feb 25 23:57:27 2003 UTC (21 years, 1 month ago) by jdolecek
Branch: MAIN
Changes since 1.19: +3 -3 lines
Diff to previous 1.19 (colored)

smbfs_sync(): need to explicitly ignore VNON vnodes (e.g. syncer vnode)

Revision 1.19 / (download) - annotate - [select for diffs], Tue Feb 25 22:17:20 2003 UTC (21 years, 1 month ago) by jdolecek
Branch: MAIN
Changes since 1.18: +24 -12 lines
Diff to previous 1.18 (colored)

make smbfs_sync() look more like sync routines for other fs, particularily:
* lock/unlock mntvnode_slock and vnode interlock appropriately
* use LK_NOWAIT for vget()
* adjust the check for vnode being dirty to check fs-private 'modified' flag,
  and drop waitfor/VOP_ISLOCKED() check

Revision 1.18 / (download) - annotate - [select for diffs], Tue Feb 25 09:09:31 2003 UTC (21 years, 1 month ago) by jdolecek
Branch: MAIN
Changes since 1.17: +4 -1 lines
Diff to previous 1.17 (colored)

add __KERNEL_RCSID()

Revision 1.17 / (download) - annotate - [select for diffs], Mon Feb 24 18:41:04 2003 UTC (21 years, 1 month ago) by jdolecek
Branch: MAIN
Changes since 1.16: +18 -14 lines
Diff to previous 1.16 (colored)

use pool to allocate memory for smbfs nodes
rename smbfs_uninit() to smbfs_done()
some whitespace fixes + use FREE() (not free()) for MALLOC()ed memory

Revision 1.16 / (download) - annotate - [select for diffs], Mon Feb 24 09:57:31 2003 UTC (21 years, 1 month ago) by jdolecek
Branch: MAIN
Changes since 1.15: +6 -3 lines
Diff to previous 1.15 (colored)

update for changed locking requirements for smb_share_put()

Revision 1.15 / (download) - annotate - [select for diffs], Mon Feb 24 09:30:43 2003 UTC (21 years, 1 month ago) by jdolecek
Branch: MAIN
Changes since 1.14: +1 -4 lines
Diff to previous 1.14 (colored)

SMBERROR() purge - replace with KASSERT()s, panic or remove altogether
as appropriate

Revision 1.14 / (download) - annotate - [select for diffs], Sun Feb 23 22:31:17 2003 UTC (21 years, 2 months ago) by jdolecek
Branch: MAIN
Changes since 1.13: +2 -2 lines
Diff to previous 1.13 (colored)

change smbfs_args:
* g/c unused members 'mount_point', 'root_path', which only take space
* rename 'dev' to 'dev_fd' to more closely match what it is
* add 'export' member to avoid changing this again if ever smbfs would
  be made exportable

bump SMBFS_VERMIN - ABI/API change; mount_smbfs needs to be recompiled
to work again

Revision 1.13 / (download) - annotate - [select for diffs], Sun Feb 23 22:20:05 2003 UTC (21 years, 2 months ago) by jdolecek
Branch: MAIN
Changes since 1.12: +3 -3 lines
Diff to previous 1.12 (colored)

put the printf about version mismatch inside #ifdef SMB_VNODE_DEBUG
do not touch sm_args.mount_point[]

Revision 1.12 / (download) - annotate - [select for diffs], Sun Feb 23 21:27:33 2003 UTC (21 years, 2 months ago) by jdolecek
Branch: MAIN
Changes since 1.11: +3 -4 lines
Diff to previous 1.11 (colored)

KASSERT() smp->sm_root is nonnull in unmount
g/c unneeded variable in smbfs_root()

Revision 1.11 / (download) - annotate - [select for diffs], Sun Feb 23 19:30:13 2003 UTC (21 years, 2 months ago) by jdolecek
Branch: MAIN
Changes since 1.10: +1 -8 lines
Diff to previous 1.10 (colored)

g/c smbfs_pbuf_freecnt, it's not used (it was not even declared on NetBSD)

Revision 1.10 / (download) - annotate - [select for diffs], Sun Feb 23 18:47:10 2003 UTC (21 years, 2 months ago) by jdolecek
Branch: MAIN
Changes since 1.9: +1 -4 lines
Diff to previous 1.9 (colored)

g/c smbfs_debuglevel, it's not used anywhere
pointed out by Krister Walfridsson

Revision 1.9 / (download) - annotate - [select for diffs], Tue Feb 18 19:40:36 2003 UTC (21 years, 2 months ago) by jdolecek
Branch: MAIN
Changes since 1.8: +17 -10 lines
Diff to previous 1.8 (colored)

vrele() the reference to root vnode before calling vflush() in smbfs_unmount(),
so that the filesystem wouldn't appear as busy when it's not, and vref()
it back if the vflush() fails

LK_DRAIN sm_hashlock before freeing the smbmount struct

g/c one meaningless check in smbfs_root()

Revision 1.8 / (download) - annotate - [select for diffs], Tue Feb 18 10:27:17 2003 UTC (21 years, 2 months ago) by jdolecek
Branch: MAIN
Changes since 1.7: +7 -14 lines
Diff to previous 1.7 (colored)

couple cosmetic changes:
* g/c superfluous printfs
* use vcp on one more place
* don't need to check result of allocation with M_WAITOK
* just exlicitly return (0) on the success path, rather than return (error)

Revision 1.7 / (download) - annotate - [select for diffs], Sun Feb 16 19:35:16 2003 UTC (21 years, 2 months ago) by jdolecek
Branch: MAIN
Changes since 1.6: +18 -59 lines
Diff to previous 1.6 (colored)

g/c SMBFS_USEZONE and some other redundant code
terminate the check if options SMB was included
remove the #ifndef FB_CURRENT around f_mntonname; FB_CURRENT used to be defined
  in netsmb headers, and this caused f_mntonname to not be initialized
terminate the messy code setting f_mntfromname, and use snprintf() instead

Revision 1.6 / (download) - annotate - [select for diffs], Sat Feb 1 21:02:03 2003 UTC (21 years, 2 months ago) by erh
Branch: MAIN
Changes since 1.5: +5 -1 lines
Diff to previous 1.5 (colored)

Wrap the smbfs_pbuf_freecnt var in #ifndef NetBSD since it's entirely unused.

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

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

Revision 1.4 / (download) - annotate - [select for diffs], Sat Sep 21 18:11:56 2002 UTC (21 years, 7 months ago) by christos
Branch: MAIN
CVS Tags: nathanw_sa_before_merge, nathanw_sa_base, kqueue-beforemerge, kqueue-base, kqueue-aftermerge, gmcgarry_ucred_base, gmcgarry_ucred, gmcgarry_ctxsw_base, gmcgarry_ctxsw, fvdl_fs64_base
Changes since 1.3: +7 -1 lines
Diff to previous 1.3 (colored)

MNT_GETARGS support

Revision 1.3 / (download) - annotate - [select for diffs], Tue Jul 30 07:40:08 2002 UTC (21 years, 8 months ago) by soren
Branch: MAIN
CVS Tags: gehenna-devsw-base
Changes since 1.2: +3 -3 lines
Diff to previous 1.2 (colored)

Die, qaddr_t, die! - mnt_data in struct mount is already effectively
a void *, so stop pretending otherwise.

Revision 1.2 / (download) - annotate - [select for diffs], Wed Jan 9 17:43:29 2002 UTC (22 years, 3 months ago) by deberg
Branch: MAIN
CVS Tags: newlock-base, newlock, netbsd-1-6-base, netbsd-1-6-RELEASE, netbsd-1-6-RC3, netbsd-1-6-RC2, netbsd-1-6-RC1, netbsd-1-6-PATCH002-RELEASE, netbsd-1-6-PATCH002-RC4, netbsd-1-6-PATCH002-RC3, netbsd-1-6-PATCH002-RC2, netbsd-1-6-PATCH002-RC1, netbsd-1-6-PATCH002, netbsd-1-6-PATCH001-RELEASE, netbsd-1-6-PATCH001-RC3, netbsd-1-6-PATCH001-RC2, netbsd-1-6-PATCH001-RC1, netbsd-1-6-PATCH001, netbsd-1-6, ifpoll-base, eeh-devprop-base, eeh-devprop
Branch point for: nathanw_sa, kqueue, gehenna-devsw
Changes since 1.1: +99 -116 lines
Diff to previous 1.1 (colored)

netbsd changes

Revision 1.1 / (download) - annotate - [select for diffs], Wed Jan 9 17:25:35 2002 UTC (22 years, 3 months ago) by deberg
Branch: MAIN

Initial revision

This form allows you to request diff's between any two revisions of a file. You may select a symbolic revision name using the selection box or you may type in a numeric name using the type-in text box.




CVSweb <webmaster@jp.NetBSD.org>