<feed xmlns='http://www.w3.org/2005/Atom'>
<title>src/sys/gnu/ext2fs/ext2_readwrite.c, branch releng/4.9</title>
<subtitle>FreeBSD source tree</subtitle>
<id>https://cgit-dev.freebsd.org/src/atom?h=releng%2F4.9</id>
<link rel='self' href='https://cgit-dev.freebsd.org/src/atom?h=releng%2F4.9'/>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/'/>
<updated>2000-12-22T18:44:34Z</updated>
<entry>
<title>MFC ufs_readwrite.c 1.72, ext2_readwrite.c 1.20.  Fix a data-consistency</title>
<updated>2000-12-22T18:44:34Z</updated>
<author>
<name>Matthew Dillon</name>
<email>dillon@FreeBSD.org</email>
</author>
<published>2000-12-22T18:44:34Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=07a766574c95a0cb982a1d7bb8fea2c368817c50'/>
<id>urn:sha1:07a766574c95a0cb982a1d7bb8fea2c368817c50</id>
<content type='text'>
race between write() and mmap().  I know this will slow write-appends
down a bit and I am researching a better solution, but the race needs to
be fixed now.
</content>
</entry>
<entry>
<title>    MFC sequential write detection heuristic.  This extends the sequential</title>
<updated>2000-04-26T20:36:36Z</updated>
<author>
<name>Matthew Dillon</name>
<email>dillon@FreeBSD.org</email>
</author>
<published>2000-04-26T20:36:36Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=383c30fcec1be155ab8d940f710d575da74c2980'/>
<id>urn:sha1:383c30fcec1be155ab8d940f710d575da74c2980</id>
<content type='text'>
    read heuristic to also cover sequential writes, causing write-behind
    to be used only for the sequential write case.  This solves a number of
    performance issues with random writes to medium sized files using
    large block sizes, as occurs with DBM files.
</content>
</entry>
<entry>
<title>    More removals of vnode-&gt;v_lastr, replaced by preexisting seqcount</title>
<updated>1999-09-20T23:27:58Z</updated>
<author>
<name>Matthew Dillon</name>
<email>dillon@FreeBSD.org</email>
</author>
<published>1999-09-20T23:27:58Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=67ddfcaf69ec8773d5cf21c391988cf619366ab9'/>
<id>urn:sha1:67ddfcaf69ec8773d5cf21c391988cf619366ab9</id>
<content type='text'>
    heuristic to detect sequential operation.

    VM-related forced clustering code removed from ufs in preparation for a
    commit to vm/vm_fault.c that does it more generally.

Reviewed by: David Greenman &lt;dg@root.com&gt;, Alan Cox &lt;alc@cs.rice.edu&gt;
</content>
</entry>
<entry>
<title>Don't set IN_ACCESS for requests to read 0 bytes or for unsuccessful reads.</title>
<updated>1999-07-25T02:56:17Z</updated>
<author>
<name>Bruce Evans</name>
<email>bde@FreeBSD.org</email>
</author>
<published>1999-07-25T02:56:17Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=2ac6e746550841e7f6a297bf85e7546b95b43e65'/>
<id>urn:sha1:2ac6e746550841e7f6a297bf85e7546b95b43e65</id>
<content type='text'>
Translated from: similar fixes in ufs_readwrite.c rev.1.61.  Things
are simpler (but annoyingly different) here because there are no
vm optimisations.
</content>
</entry>
<entry>
<title>Don't pass unused unused timestamp args to UFS_UPDATE() or waste</title>
<updated>1999-01-07T16:14:19Z</updated>
<author>
<name>Bruce Evans</name>
<email>bde@FreeBSD.org</email>
</author>
<published>1999-01-07T16:14:19Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=de5d1ba57c28dfa4306ca8977a764aba654bd5e6'/>
<id>urn:sha1:de5d1ba57c28dfa4306ca8977a764aba654bd5e6</id>
<content type='text'>
time initializing them.  This almost finishes centralizing (in-core)
timestamp updates in ufs_itimes().
</content>
</entry>
<entry>
<title>Catch a few corner cases where FreeBSD differs enough from BSD 4.4 to</title>
<updated>1998-07-08T01:04:33Z</updated>
<author>
<name>Julian Elischer</name>
<email>julian@FreeBSD.org</email>
</author>
<published>1998-07-08T01:04:33Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=6deaf84b1fb56f29ac8bae22e9313aa71d86444f'/>
<id>urn:sha1:6deaf84b1fb56f29ac8bae22e9313aa71d86444f</id>
<content type='text'>
confuse Soft updates..
Should solve several "dangling deps" panics.
</content>
</entry>
<entry>
<title>Eradicate the variable "time" from the kernel, using various measures.</title>
<updated>1998-03-30T09:56:58Z</updated>
<author>
<name>Poul-Henning Kamp</name>
<email>phk@FreeBSD.org</email>
</author>
<published>1998-03-30T09:56:58Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=227ee8a188f0f8da52dabd7c2c13748a2578efce'/>
<id>urn:sha1:227ee8a188f0f8da52dabd7c2c13748a2578efce</id>
<content type='text'>
"time" wasn't a atomic variable, so splfoo() protection were needed
around any access to it, unless you just wanted the seconds part.

Most uses of time.tv_sec now uses the new variable time_second instead.

gettime() changed to getmicrotime(0.

Remove a couple of unneeded splfoo() protections, the new getmicrotime()
is atomic, (until Bruce sets a breakpoint in it).

A couple of places needed random data, so use read_random() instead
of mucking about with time which isn't random.

Add a new nfs_curusec() function.

Mark a couple of bogosities involving the now disappeard time variable.

Update ffs_update() to avoid the weird "== &amp;time" checks, by fixing the
one remaining call that passwd &amp;time as args.

Change profiling in ncr.c to use ticks instead of time.  Resolution is
the same.

Add new function "tvtohz()" to avoid the bogus "splfoo(), add time, call
hzto() which subtracts time" sequences.

Reviewed by:	bde
</content>
</entry>
<entry>
<title>Removed __FreeBSD__ ifdefs.</title>
<updated>1997-12-02T10:39:42Z</updated>
<author>
<name>Bruce Evans</name>
<email>bde@FreeBSD.org</email>
</author>
<published>1997-12-02T10:39:42Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=2f169e4b76deb797ac0fd9d61b341cab6faa64f4'/>
<id>urn:sha1:2f169e4b76deb797ac0fd9d61b341cab6faa64f4</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Another VFS cleanup "kilo commit"</title>
<updated>1997-10-16T20:32:40Z</updated>
<author>
<name>Poul-Henning Kamp</name>
<email>phk@FreeBSD.org</email>
</author>
<published>1997-10-16T20:32:40Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=987f56967882129aef9aa431bee66fae50394ea5'/>
<id>urn:sha1:987f56967882129aef9aa431bee66fae50394ea5</id>
<content type='text'>
1.  Remove VOP_UPDATE, it is (also) an UFS/{FFS,LFS,EXT2FS,MFS}
    intereface function, and now lives in the ufsmount structure.

2.  Remove VOP_SEEK, it was unused.

3.  Add mode default vops:

    VOP_ADVLOCK          vop_einval
    VOP_CLOSE            vop_null
    VOP_FSYNC            vop_null
    VOP_IOCTL            vop_enotty
    VOP_MMAP             vop_einval
    VOP_OPEN             vop_null
    VOP_PATHCONF         vop_einval
    VOP_READLINK         vop_einval
    VOP_REALLOCBLKS      vop_eopnotsupp

    And remove identical functionality from filesystems

4.   Add vop_stdpathconf, which returns the canonical stuff.  Use
     it in the filesystems.  (XXX: It's probably wrong that specfs
     and fifofs sets this vop, shouldn't it come from the "host"
     filesystem, for instance ufs or cd9660 ?)

5.   Try to make system wide VOP functions have vop_* names.

6.   Initialize the um_* vectors in LFS.

(Recompile your LKMS!!!)
</content>
</entry>
<entry>
<title>VFS mega cleanup commit (x/N)</title>
<updated>1997-10-16T10:50:27Z</updated>
<author>
<name>Poul-Henning Kamp</name>
<email>phk@FreeBSD.org</email>
</author>
<published>1997-10-16T10:50:27Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=cec0f20ce75cb0da74afcd4d65a9795fd0864604'/>
<id>urn:sha1:cec0f20ce75cb0da74afcd4d65a9795fd0864604</id>
<content type='text'>
1.  Add new file "sys/kern/vfs_default.c" where default actions for
    VOPs go. Implement proper defaults for ABORTOP, BWRITE, LEASE,
    POLL, REVOKE and STRATEGY.  Various stuff spread over the entire
    tree belongs here.

2.  Change VOP_BLKATOFF to a normal function in cd9660.

3.  Kill VOP_BLKATOFF, VOP_TRUNCATE, VOP_VFREE, VOP_VALLOC.  These
    are private interface functions between UFS and the underlying
    storage manager layer (FFS/LFS/MFS/EXT2FS).  The functions now
    live in struct ufsmount instead.

4.  Remove a kludge of VOP_ functions in all filesystems, that did
    nothing but obscure the simplicity and break the expandability.
    If a filesystem doesn't implement VOP_FOO, it shouldn't have an
    entry for it in its vnops table.  The system will try to DTRT
    if it is not implemented.  There are still some cruft left, but
    the bulk of it is done.

5.  Fix another VCALL in vfs_cache.c (thanks Bruce!)
</content>
</entry>
</feed>
