<feed xmlns='http://www.w3.org/2005/Atom'>
<title>src/sys/kern/vnode_if.src, branch releng/8.3</title>
<subtitle>FreeBSD source tree</subtitle>
<id>https://cgit-dev.freebsd.org/src/atom?h=releng%2F8.3</id>
<link rel='self' href='https://cgit-dev.freebsd.org/src/atom?h=releng%2F8.3'/>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/'/>
<updated>2012-01-13T18:54:10Z</updated>
<entry>
<title>MFC 228849, 229727:</title>
<updated>2012-01-13T18:54:10Z</updated>
<author>
<name>John Baldwin</name>
<email>jhb@FreeBSD.org</email>
</author>
<published>2012-01-13T18:54:10Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=61a0dae7bc787afb3dd8f02fd1f12871f9f0c4b4'/>
<id>urn:sha1:61a0dae7bc787afb3dd8f02fd1f12871f9f0c4b4</id>
<content type='text'>
Add post-VOP hooks for VOP_DELETEEXTATTR() and VOP_SETEXTATTR() and use
these to trigger a NOTE_ATTRIB EVFILT_VNODE kevent when the extended
attributes of a vnode are changed.
</content>
</entry>
<entry>
<title>MFC 226217,227070,227341,227502:</title>
<updated>2012-01-06T19:32:39Z</updated>
<author>
<name>John Baldwin</name>
<email>jhb@FreeBSD.org</email>
</author>
<published>2012-01-06T19:32:39Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=7a1e52c923b956e1564ce043cbe2b1b80dfb1b18'/>
<id>urn:sha1:7a1e52c923b956e1564ce043cbe2b1b80dfb1b18</id>
<content type='text'>
Add the posix_fadvise(2) system call.  It is somewhat similar to
madvise(2) except that it operates on a file descriptor instead of a
memory region.  It is currently only supported on regular files.

Note that this adds a new VOP, so all filesystem modules must be
recompiled.

Approved by:	re (kib)
</content>
</entry>
<entry>
<title>MFC 220791,220793,220846,221836,226364:</title>
<updated>2011-11-16T18:33:17Z</updated>
<author>
<name>John Baldwin</name>
<email>jhb@FreeBSD.org</email>
</author>
<published>2011-11-16T18:33:17Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=0010db7bbc62a031b34706ed4e5f60549f4740fd'/>
<id>urn:sha1:0010db7bbc62a031b34706ed4e5f60549f4740fd</id>
<content type='text'>
Add the posix_fallocate(2) syscall.  The default implementation in
vop_stdallocate() is filesystem agnostic and will run as slow as a
read/write loop in userspace; however, it serves to correctly
implement the functionality for filesystems that do not implement a
VOP_ALLOCATE.

Allow VOP_ALLOCATE to be iterative, and have kern_posix_fallocate(9)
drive looping and potentially yielding.

Reviewed by:	mdf
</content>
</entry>
<entry>
<title>Add explicit struct ucred * argument for VOP_VPTOCNP, to be used by</title>
<updated>2009-06-21T19:21:01Z</updated>
<author>
<name>Konstantin Belousov</name>
<email>kib@FreeBSD.org</email>
</author>
<published>2009-06-21T19:21:01Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=c808c9632d567c38d12e8c9e59bf05abe60f5fe4'/>
<id>urn:sha1:c808c9632d567c38d12e8c9e59bf05abe60f5fe4</id>
<content type='text'>
vn_open_cred in default implementation. Valid struct ucred is needed for
audit and MAC, and curthread credentials may be wrong.

This further requires modifying the interface of vn_fullpath(9), but it
is out of scope of this change.

Reviewed by:	rwatson
</content>
</entry>
<entry>
<title>Stop asserting on exclusive locks in fsync since it can now support</title>
<updated>2009-06-11T17:06:45Z</updated>
<author>
<name>Paul Saab</name>
<email>ps@FreeBSD.org</email>
</author>
<published>2009-06-11T17:06:45Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=a03fb243dc39f3da86cf63212c38371ce4e51cc6'/>
<id>urn:sha1:a03fb243dc39f3da86cf63212c38371ce4e51cc6</id>
<content type='text'>
shared vnode locking on ZFS.

Reviewed by:	jhb
</content>
</entry>
<entry>
<title>Simply shared vnode locking and extend it to also include fsync.</title>
<updated>2009-06-08T21:23:54Z</updated>
<author>
<name>Paul Saab</name>
<email>ps@FreeBSD.org</email>
</author>
<published>2009-06-08T21:23:54Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=27bfb741a01a2eafe4cf87d015852552c77290fa'/>
<id>urn:sha1:27bfb741a01a2eafe4cf87d015852552c77290fa</id>
<content type='text'>
Also, in vop_write, no longer assert for exclusive locks on the
vnode.

Reviewed by:	jhb, kmacy, jeffr
</content>
</entry>
<entry>
<title>Add VOP_ACCESSX, which can be used to query for newly added V*</title>
<updated>2009-05-30T13:59:05Z</updated>
<author>
<name>Edward Tomasz Napierala</name>
<email>trasz@FreeBSD.org</email>
</author>
<published>2009-05-30T13:59:05Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=c97fcdba57c93d1309c7e67efb4bbcac2433a8d3'/>
<id>urn:sha1:c97fcdba57c93d1309c7e67efb4bbcac2433a8d3</id>
<content type='text'>
permissions, such as VWRITE_ACL.  For a filsystems that don't
implement it, there is a default implementation, which works
as a wrapper around VOP_ACCESS.

Reviewed by:	rwatson@
</content>
</entry>
<entry>
<title>Remove VOP_LEASE and supporting functions.  This hasn't been used since</title>
<updated>2009-04-10T10:52:19Z</updated>
<author>
<name>Robert Watson</name>
<email>rwatson@FreeBSD.org</email>
</author>
<published>2009-04-10T10:52:19Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=885868cd8f34658a50b376ff06df3c4990666c17'/>
<id>urn:sha1:885868cd8f34658a50b376ff06df3c4990666c17</id>
<content type='text'>
the removal of NQNFS, but was left in in case it was required for NFSv4.
Since our new NFSv4 client and server can't use it for their
requirements, GC the old mechanism, as well as other unused lease-
related code and interfaces.

Due to its impact on kernel programming and binary interfaces, this
change should not be MFC'd.

Proposed by:    jeff
Reviewed by:    jeff
Discussed with: rmacklem, zach loafman @ isilon
</content>
</entry>
<entry>
<title>Add a new internal mount flag (MNTK_EXTENDED_SHARED) to indicate that a</title>
<updated>2009-03-11T14:13:47Z</updated>
<author>
<name>John Baldwin</name>
<email>jhb@FreeBSD.org</email>
</author>
<published>2009-03-11T14:13:47Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=33fc3625121c0a2e309693635441dfe29f7d902b'/>
<id>urn:sha1:33fc3625121c0a2e309693635441dfe29f7d902b</id>
<content type='text'>
filesystem supports additional operations using shared vnode locks.
Currently this is used to enable shared locks for open() and close() of
read-only file descriptors.
- When an ISOPEN namei() request is performed with LOCKSHARED, use a
  shared vnode lock for the leaf vnode only if the mount point has the
  extended shared flag set.
- Set LOCKSHARED in vn_open_cred() for requests that specify O_RDONLY but
  not O_CREAT.
- Use a shared vnode lock around VOP_CLOSE() if the file was opened with
  O_RDONLY and the mountpoint has the extended shared flag set.
- Adjust md(4) to upgrade the vnode lock on the vnode it gets back from
  vn_open() since it now may only have a shared vnode lock.
- Don't enable shared vnode locks on FIFO vnodes in ZFS and UFS since
  FIFO's require exclusive vnode locks for their open() and close()
  routines.  (My recent MPSAFE patches for UDF and cd9660 already included
  this change.)
- Enable extended shared operations on UFS, cd9660, and UDF.

Submitted by:	ups
Reviewed by:	pjd (ZFS bits)
MFC after:	1 month
</content>
</entry>
<entry>
<title>Move the VA_MARKATIME flag for VOP_SETATTR() out into its own VOP:</title>
<updated>2009-01-21T14:42:00Z</updated>
<author>
<name>John Baldwin</name>
<email>jhb@FreeBSD.org</email>
</author>
<published>2009-01-21T14:42:00Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=beace176493de44276a2f4e22add8e1acc8f4f96'/>
<id>urn:sha1:beace176493de44276a2f4e22add8e1acc8f4f96</id>
<content type='text'>
VOP_MARKATIME() since unlike the rest of VOP_SETATTR(), VA_MARKATIME
can be performed while holding a shared vnode lock (the same functionality
is done internally by VOP_READ which can run with a shared vnode lock).
Add missing locking of the vnode interlock to the ufs implementation and
remove a special note and test from the NFS client about not supporting the
feature.

Inspired by:	ups
Tested by:	pho
</content>
</entry>
</feed>
