The NetBSD Project

CVS log for src/external/cddl/osnet/dist/uts/common/fs/zfs/zfs_vfsops.c

[BACK] Up to [cvs.NetBSD.org] / src / external / cddl / osnet / dist / uts / common / fs / zfs

Request diff between arbitrary revisions


Default branch: MAIN


Revision 1.30 / (download) - annotate - [select for diffs], Tue Nov 30 12:37:38 2021 UTC (2 years, 4 months ago) by simonb
Branch: MAIN
CVS Tags: 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, HEAD
Changes since 1.29: +2 -0 lines
Diff to previous 1.29 (colored)

In zfs_statvfs(), set f_bresvd and f_fresvd to 0.  Fixes random kernel
accounting suspend/resumes with erroneous values leaking out.

Note: no userland leakage as statvfs(2) handler memset 0's the buffer.

XXX: Should be fixed with a memset in VFS_STATVFS().

Revision 1.29 / (download) - annotate - [select for diffs], Thu Aug 27 09:57:33 2020 UTC (3 years, 7 months ago) by hannken
Branch: MAIN
CVS Tags: cjep_sun2x-base1, cjep_sun2x-base, cjep_sun2x, cjep_staticlib_x-base1, cjep_staticlib_x-base, cjep_staticlib_x
Changes since 1.28: +2 -2 lines
Diff to previous 1.28 (colored)

Enable NCLOOKUP for ZFS.

Revision 1.28 / (download) - annotate - [select for diffs], Tue May 26 08:39:27 2020 UTC (3 years, 10 months ago) by hannken
Branch: MAIN
Changes since 1.27: +4 -0 lines
Diff to previous 1.27 (colored)

Replace vp->v_count with vrefcnt(vp) and
remove now unneeded "#define v_count ...".

Revision 1.16.2.4 / (download) - annotate - [select for diffs], Tue Apr 21 18:41:56 2020 UTC (3 years, 11 months ago) by martin
Branch: phil-wifi
Changes since 1.16.2.3: +1 -1 lines
Diff to previous 1.16.2.3 (colored) to branchpoint 1.16 (colored) next main 1.17 (colored)

Sync with HEAD

Revision 1.27 / (download) - annotate - [select for diffs], Mon Apr 13 19:23:17 2020 UTC (4 years ago) by ad
Branch: MAIN
CVS Tags: phil-wifi-20200421
Changes since 1.26: +1 -1 lines
Diff to previous 1.26 (colored)

Replace most uses of vp->v_usecount with a call to vrefcnt(vp), a function
that hides the details and does atomic_load_relaxed().  Signature matches
FreeBSD.

Revision 1.16.2.3 / (download) - annotate - [select for diffs], Mon Apr 13 07:56:38 2020 UTC (4 years ago) by martin
Branch: phil-wifi
Changes since 1.16.2.2: +35 -0 lines
Diff to previous 1.16.2.2 (colored) to branchpoint 1.16 (colored)

Mostly merge changes from HEAD upto 20200411

Revision 1.16.2.2 / (download) - annotate - [select for diffs], Wed Apr 8 14:04:20 2020 UTC (4 years ago) by martin
Branch: phil-wifi
Changes since 1.16.2.1: +5 -22 lines
Diff to previous 1.16.2.1 (colored) to branchpoint 1.16 (colored)

Merge changes from current as of 20200406

Revision 1.26 / (download) - annotate - [select for diffs], Fri Jan 17 20:08:06 2020 UTC (4 years, 3 months ago) by ad
Branch: MAIN
CVS Tags: phil-wifi-20200411, phil-wifi-20200406, is-mlppp-base, is-mlppp
Changes since 1.25: +5 -22 lines
Diff to previous 1.25 (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.25 / (download) - annotate - [select for diffs], Wed Aug 7 20:45:53 2019 UTC (4 years, 8 months ago) by maya
Branch: MAIN
CVS Tags: phil-wifi-20191119
Changes since 1.24: +3 -0 lines
Diff to previous 1.24 (colored)

validate the length of args (like other filesystems)

ok riastradh

Revision 1.24 / (download) - annotate - [select for diffs], Mon Jun 17 08:09:57 2019 UTC (4 years, 10 months ago) by hannken
Branch: MAIN
CVS Tags: 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
Changes since 1.23: +32 -0 lines
Diff to previous 1.23 (colored)

Add native vfs_suspend()/vfs_resume() before and after
zfs_suspend_fs()/zfs_resume_fs() and get rid of dead "z_sa_hdl == NULL"
znodes before vfs_resume() to keep the vnode cache consistent.

Live rollback should work now.

PR port-xen/54273 ("zpool create pool xbd2" panics DOMU kernel)

Revision 1.16.2.1 / (download) - annotate - [select for diffs], Mon Jun 10 21:52:02 2019 UTC (4 years, 10 months ago) by christos
Branch: phil-wifi
Changes since 1.16: +201 -23 lines
Diff to previous 1.16 (colored)

Sync with HEAD

Revision 1.23 / (download) - annotate - [select for diffs], Wed May 22 08:45:32 2019 UTC (4 years, 10 months ago) by hannken
Branch: MAIN
CVS Tags: phil-wifi-20190609
Changes since 1.22: +11 -1 lines
Diff to previous 1.22 (colored)

Enable the zvol minor management to create and remove device nodes.

Revision 1.22 / (download) - annotate - [select for diffs], Mon Apr 15 12:59:38 2019 UTC (5 years ago) by hannken
Branch: MAIN
Changes since 1.21: +4 -0 lines
Diff to previous 1.21 (colored)

Add support for fifos, character and block devices.

Revision 1.21 / (download) - annotate - [select for diffs], Mon Mar 18 09:22:14 2019 UTC (5 years, 1 month ago) by hannken
Branch: MAIN
Changes since 1.20: +171 -16 lines
Diff to previous 1.20 (colored)

Make ZFS exportable by NFS, implement zfsctl_vptofh(),
zfs_netbsd_vptofh() and zfs_netbsd_fhtovp().

Undo changes to now completely unused zfs_fhtovp().

Revision 1.20 / (download) - annotate - [select for diffs], Mon Mar 18 09:20:58 2019 UTC (5 years, 1 month ago) by hannken
Branch: MAIN
Changes since 1.19: +5 -4 lines
Diff to previous 1.19 (colored)

Set "mnt_stat.f_fsid" and "mnt_stat.f_fsidx" from the objset guid
like FreeBSD and Illumos do.

Use "f_fsid" for "va_fsid" and cheat NFSD to export snapshots under
".zfs" by setting these snaphots "f_fsidx" to the parents "f_fsidx".

Revision 1.19 / (download) - annotate - [select for diffs], Tue Feb 5 09:54:36 2019 UTC (5 years, 2 months ago) by hannken
Branch: MAIN
Changes since 1.18: +9 -1 lines
Diff to previous 1.18 (colored)

Prepare the implementation of the ZFS control directory ".zfs".

- Move the stub routines from zfs_stub.c to zfs_ctldir.c and
  remove now empty file zfs_stub.c

- Add stub routines for zfsctl_loadvnode() to initialize control
  nodes and zfsctl_snapshot() to retrieve ".zfs/snapshot".

- Add an initial vnode operations vector for control nodes.

- Implement lookup into ".zfs" and lookup ".." from ".zfs/snapshot/<snap>".

- Change nodeid of mounted snapshots to the snapshot object id.

- Respect "-u" flag to "zfs rename <snapshot> ...".

Revision 1.15.10.3 / (download) - annotate - [select for diffs], Fri Jan 18 08:48:44 2019 UTC (5 years, 2 months ago) by pgoyette
Branch: pgoyette-compat
CVS Tags: pgoyette-compat-merge-20190127
Changes since 1.15.10.2: +1 -0 lines
Diff to previous 1.15.10.2 (colored) to branchpoint 1.15 (colored) next main 1.16 (colored)

Synch with HEAD

Revision 1.18 / (download) - annotate - [select for diffs], Tue Jan 1 10:08:01 2019 UTC (5 years, 3 months ago) by hannken
Branch: MAIN
CVS Tags: pgoyette-compat-20190127, pgoyette-compat-20190118
Changes since 1.17: +1 -0 lines
Diff to previous 1.17 (colored)

Cannot hold zfs object across call to vcache_get() as it might
deadlock with another reclaim.

Add vfs operation zfs_newvnode() to create a new zfs node and
hold the zfs object in zfs_loadvnode() and zfs_newvnode() only.

Revision 1.15.10.2 / (download) - annotate - [select for diffs], Sun Sep 30 01:45:29 2018 UTC (5 years, 6 months ago) by pgoyette
Branch: pgoyette-compat
Changes since 1.15.10.1: +0 -1 lines
Diff to previous 1.15.10.1 (colored) to branchpoint 1.15 (colored)

Ssync with HEAD

Revision 1.17 / (download) - annotate - [select for diffs], Sun Sep 16 06:09:01 2018 UTC (5 years, 7 months ago) by martin
Branch: MAIN
CVS Tags: pgoyette-compat-1226, pgoyette-compat-1126, pgoyette-compat-1020, pgoyette-compat-0930
Changes since 1.16: +0 -1 lines
Diff to previous 1.16 (colored)

Do not initialize .vfs_fhtovp twice

Revision 1.15.10.1 / (download) - annotate - [select for diffs], Mon Jun 25 07:25:21 2018 UTC (5 years, 9 months ago) by pgoyette
Branch: pgoyette-compat
Changes since 1.15: +1091 -669 lines
Diff to previous 1.15 (colored)

Sync with HEAD

Revision 1.16 / (download) - annotate - [select for diffs], Mon May 28 21:05:07 2018 UTC (5 years, 10 months ago) by chs
Branch: MAIN
CVS Tags: phil-wifi-base, pgoyette-compat-0906, pgoyette-compat-0728, pgoyette-compat-0625
Branch point for: phil-wifi
Changes since 1.15: +1091 -669 lines
Diff to previous 1.15 (colored)

merge a new version of the CDDL dtrace and ZFS code.
this changes the upstream vendor from OpenSolaris to FreeBSD,
and this version is based on FreeBSD svn r315983.

in addition to the 10 years of improvements from upstream,
this version also has these NetBSD-specific enhancements:
 - dtrace FBT probes can now be placed in kernel modules.
 - ZFS now supports mmap().

Revision 1.1.1.3 / (download) - annotate - [select for diffs] (vendor branch), Mon May 28 20:52:59 2018 UTC (5 years, 10 months ago) by chs
Branch: sun, FreeBSD
CVS Tags: CDDL-FreeBSD-r315983
Changes since 1.1.1.2: +854 -539 lines
Diff to previous 1.1.1.2 (colored)

import new CDDL dtrace and ZFS code from FreeBSD svn r315983.

Revision 1.14.4.1 / (download) - annotate - [select for diffs], Fri Apr 21 16:52:40 2017 UTC (6 years, 11 months ago) by bouyer
Branch: bouyer-socketcan
Changes since 1.14: +1 -0 lines
Diff to previous 1.14 (colored) next main 1.15 (colored)

Sync with HEAD

Revision 1.14.2.1 / (download) - annotate - [select for diffs], Mon Mar 20 06:56:29 2017 UTC (7 years ago) by pgoyette
Branch: pgoyette-localcount
Changes since 1.14: +1 -0 lines
Diff to previous 1.14 (colored) next main 1.15 (colored)

Sync with HEAD

Revision 1.15 / (download) - annotate - [select for diffs], Fri Feb 17 08:31:23 2017 UTC (7 years, 2 months ago) by hannken
Branch: MAIN
CVS Tags: prg-localcount2-base3, prg-localcount2-base2, prg-localcount2-base1, prg-localcount2-base, prg-localcount2, pgoyette-localcount-20170426, pgoyette-localcount-20170320, pgoyette-compat-base, pgoyette-compat-0521, pgoyette-compat-0502, pgoyette-compat-0422, pgoyette-compat-0415, pgoyette-compat-0407, pgoyette-compat-0330, pgoyette-compat-0322, pgoyette-compat-0315, perseant-stdc-iso10646-base, perseant-stdc-iso10646, 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, bouyer-socketcan-base1
Branch point for: pgoyette-compat
Changes since 1.14: +1 -0 lines
Diff to previous 1.14 (colored)

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

Revision 1.14 / (download) - annotate - [select for diffs], Fri Dec 5 09:13:32 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, localcount-20160914, bouyer-socketcan-base
Branch point for: pgoyette-localcount, bouyer-socketcan
Changes since 1.13: +1 -0 lines
Diff to previous 1.13 (colored)

Change zfs to vcache.
- zfs_loadvnode() is based on zfs_zget() plus zfs_znode_alloc().

Revision 1.7.6.2 / (download) - annotate - [select for diffs], Tue Aug 19 23:52:22 2014 UTC (9 years, 8 months ago) by tls
Branch: tls-maxphys
Changes since 1.7.6.1: +34 -57 lines
Diff to previous 1.7.6.1 (colored) to branchpoint 1.7 (colored) next main 1.8 (colored)

Rebase to HEAD as of a few days ago.

Revision 1.10.2.1 / (download) - annotate - [select for diffs], Sun Aug 10 06:50:28 2014 UTC (9 years, 8 months ago) by tls
Branch: tls-earlyentropy
Changes since 1.10: +22 -17 lines
Diff to previous 1.10 (colored) next main 1.11 (colored)

Rebase.

Revision 1.13 / (download) - annotate - [select for diffs], Sat May 24 16:34:03 2014 UTC (9 years, 10 months ago) by christos
Branch: MAIN
CVS Tags: tls-maxphys-base, tls-earlyentropy-base, netbsd-7-nhusb-base-20170116, netbsd-7-nhusb-base, netbsd-7-nhusb, netbsd-7-base, netbsd-7-2-RELEASE, netbsd-7-1-RELEASE, netbsd-7-1-RC2, netbsd-7-1-RC1, netbsd-7-1-2-RELEASE, netbsd-7-1-1-RELEASE, netbsd-7-1, netbsd-7-0-RELEASE, netbsd-7-0-RC3, netbsd-7-0-RC2, netbsd-7-0-RC1, netbsd-7-0-2-RELEASE, netbsd-7-0-1-RELEASE, netbsd-7-0, netbsd-7
Changes since 1.12: +16 -10 lines
Diff to previous 1.12 (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.6.2.3 / (download) - annotate - [select for diffs], Thu May 22 14:01:23 2014 UTC (9 years, 10 months ago) by yamt
Branch: yamt-pagecache
Changes since 1.6.2.2: +21 -50 lines
Diff to previous 1.6.2.2 (colored) to branchpoint 1.6 (colored) next main 1.7 (colored)

sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs.  ("Protocol error: too many arguments")

Revision 1.7.10.1 / (download) - annotate - [select for diffs], Mon Apr 21 10:17:49 2014 UTC (9 years, 11 months ago) by bouyer
Branch: netbsd-6-1
CVS Tags: netbsd-6-1-5-RELEASE
Changes since 1.7: +3 -0 lines
Diff to previous 1.7 (colored) next main 1.8 (colored)

Pull up following revision(s) (requested by maxv in ticket #1050):
	sys/ufs/chfs/chfs_vfsops.c: revision 1.11
	sys/fs/unionfs/unionfs_vfsops.c: revision 1.13
	sys/fs/nilfs/nilfs_vfsops.c: revision 1.16
	sys/ufs/mfs/mfs_vfsops.c: revision 1.107
	sys/fs/sysvbfs/sysvbfs_vfsops.c: revision 1.43
	sys/ufs/ffs/ffs_vfsops.c: revision 1.297
	sys/kern/vfs_syscalls.c: revision 1.478
	sys/kern/vfs_syscalls.c: revision 1.479
	sys/fs/puffs/puffs_vfsops.c: revision 1.110
	sys/fs/cd9660/cd9660_vfsops.c: revision 1.84
	sys/nfs/nfs_vfsops.c: revision 1.227
	sys/fs/v7fs/v7fs_vfsops.c: revision 1.10
	sys/ufs/ext2fs/ext2fs_vfsops.c: revision 1.180
	sys/miscfs/umapfs/umap_vfsops.c: revision 1.92
	sys/fs/filecorefs/filecore_vfsops.c: revision 1.76
	sys/miscfs/nullfs/null_vfsops.c: revision 1.88
	sys/fs/ptyfs/ptyfs_vfsops.c: revision 1.50
	sys/coda/coda_vfsops.c: revision 1.81
	sys/ufs/lfs/lfs_vfsops.c: revision 1.321
	sys/fs/tmpfs/tmpfs_vfsops.c: revision 1.59
	sys/fs/hfs/hfs_vfsops.c: revision 1.31
	sys/miscfs/overlay/overlay_vfsops.c: revision 1.61
	sys/fs/union/union_vfsops.c: revision 1.72
	sys/fs/ntfs/ntfs_vfsops.c: revision 1.94
	sys/kern/vfs_syscalls.c: revision 1.480
	sys/fs/efs/efs_vfsops.c: revision 1.25
	sys/kern/vfs_syscalls.c: revision 1.482
	sys/fs/msdosfs/msdosfs_vfsops.c: revision 1.107
	external/cddl/osnet/dist/uts/common/fs/zfs/zfs_vfsops.c: revision 1.12
	sys/miscfs/procfs/procfs_vfsops.c: revision 1.91
	sys/fs/smbfs/smbfs_vfsops.c: revision 1.100
	sys/fs/adosfs/advfsops.c: revision 1.70
	sys/fs/udf/udf_vfsops.c: revision 1.67
Limit check for 'data_len'. Otherwise a (un)privileged user can easily
panic the system by passing a huge size.
ok christos@
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@
Some fs's - like kernfs - set their vfs_min_mount_data to zero. Add a check
to prevent an (un)privileged user from requesting a zero-sized allocation
(and thus a panic).
This thing is totally buggy: 'data_len' is modified by the fs, so calling
kmem_free with it while its value has changed since the kmem_alloc is far
from being a good idea.
If the kernel figures out that something mismatches, it will panic
(typically with kernfs).

Revision 1.7.8.1 / (download) - annotate - [select for diffs], Mon Apr 21 10:15:37 2014 UTC (9 years, 11 months ago) by bouyer
Branch: netbsd-6-0
CVS Tags: netbsd-6-0-6-RELEASE
Changes since 1.7: +3 -0 lines
Diff to previous 1.7 (colored) next main 1.8 (colored)

Pull up following revision(s) (requested by maxv in ticket #1050):
	sys/ufs/chfs/chfs_vfsops.c: revision 1.11
	sys/fs/unionfs/unionfs_vfsops.c: revision 1.13
	sys/fs/nilfs/nilfs_vfsops.c: revision 1.16
	sys/ufs/mfs/mfs_vfsops.c: revision 1.107
	sys/fs/sysvbfs/sysvbfs_vfsops.c: revision 1.43
	sys/ufs/ffs/ffs_vfsops.c: revision 1.297
	sys/kern/vfs_syscalls.c: revision 1.478
	sys/kern/vfs_syscalls.c: revision 1.479
	sys/fs/puffs/puffs_vfsops.c: revision 1.110
	sys/fs/cd9660/cd9660_vfsops.c: revision 1.84
	sys/nfs/nfs_vfsops.c: revision 1.227
	sys/fs/v7fs/v7fs_vfsops.c: revision 1.10
	sys/ufs/ext2fs/ext2fs_vfsops.c: revision 1.180
	sys/miscfs/umapfs/umap_vfsops.c: revision 1.92
	sys/fs/filecorefs/filecore_vfsops.c: revision 1.76
	sys/miscfs/nullfs/null_vfsops.c: revision 1.88
	sys/fs/ptyfs/ptyfs_vfsops.c: revision 1.50
	sys/coda/coda_vfsops.c: revision 1.81
	sys/ufs/lfs/lfs_vfsops.c: revision 1.321
	sys/fs/tmpfs/tmpfs_vfsops.c: revision 1.59
	sys/fs/hfs/hfs_vfsops.c: revision 1.31
	sys/miscfs/overlay/overlay_vfsops.c: revision 1.61
	sys/fs/union/union_vfsops.c: revision 1.72
	sys/fs/ntfs/ntfs_vfsops.c: revision 1.94
	sys/kern/vfs_syscalls.c: revision 1.480
	sys/fs/efs/efs_vfsops.c: revision 1.25
	sys/kern/vfs_syscalls.c: revision 1.482
	sys/fs/msdosfs/msdosfs_vfsops.c: revision 1.107
	external/cddl/osnet/dist/uts/common/fs/zfs/zfs_vfsops.c: revision 1.12
	sys/miscfs/procfs/procfs_vfsops.c: revision 1.91
	sys/fs/smbfs/smbfs_vfsops.c: revision 1.100
	sys/fs/adosfs/advfsops.c: revision 1.70
	sys/fs/udf/udf_vfsops.c: revision 1.67
Limit check for 'data_len'. Otherwise a (un)privileged user can easily
panic the system by passing a huge size.
ok christos@
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@
Some fs's - like kernfs - set their vfs_min_mount_data to zero. Add a check
to prevent an (un)privileged user from requesting a zero-sized allocation
(and thus a panic).
This thing is totally buggy: 'data_len' is modified by the fs, so calling
kmem_free with it while its value has changed since the kmem_alloc is far
from being a good idea.
If the kernel figures out that something mismatches, it will panic
(typically with kernfs).

Revision 1.7.2.1 / (download) - annotate - [select for diffs], Mon Apr 21 10:14:19 2014 UTC (9 years, 11 months ago) by bouyer
Branch: netbsd-6
Changes since 1.7: +3 -0 lines
Diff to previous 1.7 (colored) next main 1.8 (colored)

Pull up following revision(s) (requested by maxv in ticket #1050):
	sys/ufs/chfs/chfs_vfsops.c: revision 1.11
	sys/fs/unionfs/unionfs_vfsops.c: revision 1.13
	sys/fs/nilfs/nilfs_vfsops.c: revision 1.16
	sys/ufs/mfs/mfs_vfsops.c: revision 1.107
	sys/fs/sysvbfs/sysvbfs_vfsops.c: revision 1.43
	sys/ufs/ffs/ffs_vfsops.c: revision 1.297
	sys/kern/vfs_syscalls.c: revision 1.478
	sys/kern/vfs_syscalls.c: revision 1.479
	sys/fs/puffs/puffs_vfsops.c: revision 1.110
	sys/fs/cd9660/cd9660_vfsops.c: revision 1.84
	sys/nfs/nfs_vfsops.c: revision 1.227
	sys/fs/v7fs/v7fs_vfsops.c: revision 1.10
	sys/ufs/ext2fs/ext2fs_vfsops.c: revision 1.180
	sys/miscfs/umapfs/umap_vfsops.c: revision 1.92
	sys/fs/filecorefs/filecore_vfsops.c: revision 1.76
	sys/miscfs/nullfs/null_vfsops.c: revision 1.88
	sys/fs/ptyfs/ptyfs_vfsops.c: revision 1.50
	sys/coda/coda_vfsops.c: revision 1.81
	sys/ufs/lfs/lfs_vfsops.c: revision 1.321
	sys/fs/tmpfs/tmpfs_vfsops.c: revision 1.59
	sys/fs/hfs/hfs_vfsops.c: revision 1.31
	sys/miscfs/overlay/overlay_vfsops.c: revision 1.61
	sys/fs/union/union_vfsops.c: revision 1.72
	sys/fs/ntfs/ntfs_vfsops.c: revision 1.94
	sys/kern/vfs_syscalls.c: revision 1.480
	sys/fs/efs/efs_vfsops.c: revision 1.25
	sys/kern/vfs_syscalls.c: revision 1.482
	sys/fs/msdosfs/msdosfs_vfsops.c: revision 1.107
	external/cddl/osnet/dist/uts/common/fs/zfs/zfs_vfsops.c: revision 1.12
	sys/miscfs/procfs/procfs_vfsops.c: revision 1.91
	sys/fs/smbfs/smbfs_vfsops.c: revision 1.100
	sys/fs/adosfs/advfsops.c: revision 1.70
	sys/fs/udf/udf_vfsops.c: revision 1.67
Limit check for 'data_len'. Otherwise a (un)privileged user can easily
panic the system by passing a huge size.
ok christos@
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@
Some fs's - like kernfs - set their vfs_min_mount_data to zero. Add a check
to prevent an (un)privileged user from requesting a zero-sized allocation
(and thus a panic).
This thing is totally buggy: 'data_len' is modified by the fs, so calling
kmem_free with it while its value has changed since the kmem_alloc is far
from being a good idea.
If the kernel figures out that something mismatches, it will panic
(typically with kernfs).

Revision 1.12 / (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
Changes since 1.11: +3 -0 lines
Diff to previous 1.11 (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.11 / (download) - annotate - [select for diffs], Wed Apr 9 22:40:32 2014 UTC (10 years ago) by riastradh
Branch: MAIN
Changes since 1.10: +3 -7 lines
Diff to previous 1.10 (colored)

Try vflush, which may fail, before we mark the file system mounted.

Revision 1.10 / (download) - annotate - [select for diffs], Thu Mar 27 15:50:48 2014 UTC (10 years ago) by christos
Branch: MAIN
CVS Tags: riastradh-xf86-video-intel-2-7-1-pre-2-21-15
Branch point for: tls-earlyentropy
Changes since 1.9: +5 -5 lines
Diff to previous 1.9 (colored)

kill sprintf

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

Change zfs_sync() to use vfs_vnode_iterator.

Revision 1.7.6.1 / (download) - annotate - [select for diffs], Tue Nov 20 02:58:12 2012 UTC (11 years, 4 months ago) by tls
Branch: tls-maxphys
Changes since 1.7: +4 -0 lines
Diff to previous 1.7 (colored)

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

Revision 1.6.2.2 / (download) - annotate - [select for diffs], Tue Oct 30 18:56:37 2012 UTC (11 years, 5 months ago) by yamt
Branch: yamt-pagecache
CVS Tags: yamt-pagecache-tag8
Changes since 1.6.2.1: +4 -0 lines
Diff to previous 1.6.2.1 (colored) to branchpoint 1.6 (colored)

sync with head

Revision 1.8 / (download) - annotate - [select for diffs], Mon Oct 15 23:08:19 2012 UTC (11 years, 6 months ago) by riastradh
Branch: MAIN
CVS Tags: yamt-pagecache-base8, yamt-pagecache-base7, yamt-pagecache-base6, riastradh-drm2-base2, riastradh-drm2-base1, riastradh-drm2-base, riastradh-drm2, agc-symver-base, agc-symver
Changes since 1.7: +4 -0 lines
Diff to previous 1.7 (colored)

Fix various issues in zfs life cycle, locking, and vop protocol.

- Restore some zfs locking and unlocking that got lost randomly.

- Enable use of the BSD vnode lock.  Lock order: all BSD vnode locks
are taken before all zfs internal locks.  There remains an issue with
O_EXCL, to be solved later (famous last words).  KASSERT the locking
scheme up the wazoo.

- Take our cruft out of zfs_lookup and move it to zfs_netbsd_lookup.
Restore much of the way zfs_lookup looked to make merging future
versions easier.  Disable use of the namecache for now because its
locking dance is too scary to contemplate.

- Implement BSD semantics for rename, to appease our tests.  This is
a provisional kludge; eventually we need VOP_RENAME to take a flag
specifying whether to use BSD semantics or POSIX semantics.

- Simplify zfs_netbsd_reclaim and make it work.  Now that getnewvnode
never tries to vclean anything itself, we need not worry about
recursion of ZFS_OBJ_MUTEX locks.

- Clarify and fix genfs node initialization and destruction.

zfs passes most of our atf vfs tests now, including the rename races.

Still to do:

- fix the impedance mismatch between our permissions model and zfs's;
- fix O_EXCL (nontrivial);
- throw dirconc at it and see how badly it explodes;
- find why zpool sometimes wedges itself during mkfs; and
- find why pool caches sometimes seem to get corrupted.

Revision 1.6.2.1 / (download) - annotate - [select for diffs], Tue Apr 17 00:04:09 2012 UTC (12 years ago) by yamt
Branch: yamt-pagecache
Changes since 1.6: +5 -5 lines
Diff to previous 1.6 (colored)

sync with head

Revision 1.7 / (download) - annotate - [select for diffs], Sun Nov 20 02:54:25 2011 UTC (12 years, 5 months ago) by christos
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-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
Branch point for: tls-maxphys, netbsd-6-1, netbsd-6-0, netbsd-6
Changes since 1.6: +5 -5 lines
Diff to previous 1.6 (colored)

enough with the compile time warnings.

Revision 1.6 / (download) - annotate - [select for diffs], Fri Oct 7 09:35:04 2011 UTC (12 years, 6 months ago) by hannken
Branch: MAIN
CVS Tags: yamt-pagecache-base3, yamt-pagecache-base2, yamt-pagecache-base
Branch point for: yamt-pagecache
Changes since 1.5: +2 -4 lines
Diff to previous 1.5 (colored)

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

Revision 1.5 / (download) - annotate - [select for diffs], Wed Jul 21 17:52:09 2010 UTC (13 years, 9 months ago) by hannken
Branch: MAIN
CVS Tags: matt-mips64-premerge-20101231, cherry-xenmp-base, cherry-xenmp, bouyer-quota2-nbase, bouyer-quota2-base, bouyer-quota2
Changes since 1.4: +1 -1 lines
Diff to previous 1.4 (colored)

Make holding v_interlock mandatory for callers of vget().

Announced some time ago on tech-kern.

Revision 1.4 / (download) - annotate - [select for diffs], Sat Feb 27 23:43:53 2010 UTC (14 years, 1 month ago) by haad
Branch: MAIN
Changes since 1.3: +674 -120 lines
Diff to previous 1.3 (colored)

Merge NetBSD local changes to new zfs version 22 sources.

Revision 1.1.1.2 / (download) - annotate - [select for diffs] (vendor branch), Sat Feb 27 22:31:28 2010 UTC (14 years, 1 month ago) by haad
Branch: sun, FreeBSD
CVS Tags: osnet-20100224
Changes since 1.1.1.1: +666 -117 lines
Diff to previous 1.1.1.1 (colored)

Import new Opensolaris sources for zfs/dtrace.

Opensolaris mercurial changeset: 11751:58c0c8f4305f

Revision 1.3 / (download) - annotate - [select for diffs], Mon Aug 10 22:38:02 2009 UTC (14 years, 8 months ago) by haad
Branch: MAIN
CVS Tags: matt-premerge-20091211, darran-pre-netbsd, darran-pre-freebsd, darran-pre-dtrace
Changes since 1.2: +0 -3 lines
Diff to previous 1.2 (colored)

Add some NetBSD fixes which I have forgot to commit during first round.
With these patches I can build solaris and zfs module again.

Revision 1.2 / (download) - annotate - [select for diffs], Fri Aug 7 20:16:45 2009 UTC (14 years, 8 months ago) by haad
Branch: MAIN
Changes since 1.1: +302 -85 lines
Diff to previous 1.1 (colored)

Add NetBSD specific changes to OpenSolaris code. These changes were made
by Andrew Doran and me. Thank you Andrew for your great help.

Oked by core@ and ad@.

Revision 1.1.1.1 / (download) - annotate - [select for diffs] (vendor branch), Fri Aug 7 18:33:28 2009 UTC (14 years, 8 months ago) by haad
Branch: sun, FreeBSD
CVS Tags: osnet-20081117
Changes since 1.1: +0 -0 lines
Diff to previous 1.1 (colored)

Import Opensolaris source code used with zfs port. Zfs code si from date 
200811.

Revision 1.1 / (download) - annotate - [select for diffs], Fri Aug 7 18:33:28 2009 UTC (14 years, 8 months ago) by haad
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>