| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
clustering is obsolescent technology so hardly anyone noticed. On
a DORS 32160 SCSI drive with 4 tags, read clustering makes very
little difference even for huge sequential reads. However, on a
ZIP SCSI drive with 0 tags, the minimum overhead per block is about
40 msec, so very large clusters must be used to get anywhere near
the maximum transfer rate. Using clusters consisting of 1 8K block
reduces the transfer rate to about 250K/sec. Under msdosfs, missing
read clustering is normal and a cluster size of 1 512 byte block
reduces the transfer rate to about 25K/sec.
Broken in: rev.1.18
|
| |
|
|
|
|
|
|
|
| |
where it is. The reference and lock(s) are acquired just above the
code in VREF() and relookup()."
Submitted by: Michael Hancock <michaelh@cet.co.jp>
|
|
|
|
|
|
|
| |
child of the same name.
Submitted by: Kirk Mckusick with fixes from luoqi Chen
Obtained from: Whistle test tree.
|
|
|
|
|
|
|
|
| |
formats and args to match. Fixed old printf format errors (all related;
most were hidden by calling printf indirectly).
This change somehow avoids compiler bugs for 64-bit longs on i386's,
although it increases the number of 64-bit calculations.
|
| |
|
|
|
|
|
|
|
| |
respectively. Most of the longs should probably have been
u_longs, but this changes is just to prevent warnings about
casts between pointers and integers of different sizes, not
to fix poorly chosen types.
|
| |
|
|
|
|
|
| |
Make the unallocated parts of a directry have a know state
in case we need it later.
|
|
|
|
|
|
| |
also fixes some problems with softupdates on root.
More cleanups are needed here..
Submitted by: Luoqi Chen <luoqi@watermarkgroup.com>
|
|
|
|
|
| |
confuse Soft updates..
Should solve several "dangling deps" panics.
|
|
|
|
|
|
| |
as the value in b_vp is often not really what you want.
(and needs to be frobbed). more cleanups will follow this.
Reviewed by: Bruce Evans <bde@freebsd.org>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
as possible (when the inode is reclaimed). Temporarily only do
this if option UFS_LAZYMOD configured and softupdates aren't enabled.
UFS_LAZYMOD is intentionally left out of /sys/conf/options.
This is mainly to avoid almost useless disk i/o on battery powered
machines. It's silly to write to disk (on the next sync or when the
inode becomes inactive) just because someone hit a key or something
wrote to the screen or /dev/null.
PR: 5577
Previous version reviewed by: phk
|
|
|
|
|
|
|
|
| |
in ufs_setattr() so that there is no need to pass timestamps to
UFS_UPDATE() (everything else just needs the current time). Ignore
the passed-in timestamps in UFS_UPDATE() and always call ufs_itimes()
(was: itimes()) to do the update. The timestamps are still passed
so that all the callers don't need to be changed yet.
|
| |
|
| |
|
|
|
|
|
| |
questions and also recommend linking over copying since, at this stage,
a stale copy is a real concern.
|
| |
|
|
|
|
|
| |
Makes soft updates a bit cleaner. Eliminates some warnings about
'corrupted directories' from fsck.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
that had an inode that has not yet been written to disk, when the inode of the
new file is also not yet written to disk, and your old directory entry is not
yet on disk but you need to remove it and the new name exists in memory
but has been deleted but the transaction to write the deleted name to disk
exists and has not yet been cancelled by the request to delete the non
existant name. I don't know how kirk could have missed such a glaring
problem for so long. :-) Especially since the inconsitency survived on
the disk for a whole 4 second on average before being fixed by other code.
This was not a crashing bug but just led to filesystem inconsitencies
if you crashed.
Submitted by: Kirk McKusick (mckusick@mckusick.com)
|
|
|
|
| |
Change worked out by john and kirk in consort.
|
|
|
|
|
| |
Submitted by: Kirk McKusick <mckusick@McKusick.COM>
Reviewed by: yeah right...
|
| |
|
|
|
|
|
|
| |
Kirk confirms that the original semantic was what he wanted...
(well, a very slight difference)
May fix "dangling deps" panic with soft updates.
|
|
|
|
|
|
|
|
| |
(doingdirectory && !newparent) case of ufs_rename().
rename("D1/X/", "D2/Y/") gives a wrong link count for D2.
Submitted by: Bruce Evans <bde@zeta.org.au>
Reviewed by: Kirk McKusick <mckusick@McKusick.COM>
|
|
|
|
|
|
|
|
|
|
| |
is now ignored for special files, so that mounting root with option
noatime doesn't break reporting of idle times in programs like `w'.
The problem of execessive disk updates just to stamp atimes will be
handled for special files by only writing atimes to disk when inodes
become active. This works well because special files are relatively
uncommon and their atimes are even more disposable at panic time than
regular files' atimes.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
1. mark atimes and mtimes of special files and fifos for update upon
successful completion of non-null i/o, not at the beginning of the
syscall.
2. never update file times for readonly filesystems. They were updated
for stats and closes but not for syncs. The updates were of course
only in-core and were thrown away when the inode was uncached, so
the times sometimes appeared to go backwards.
Improved comments in code related to (1) (mostly by removing them).
Unmacroized ITIMES(). The test in (2) bloated it even more. Don't
call getmicrotime() in the function version of it when we only need
the time in seconds.
|
| |
|
|
|
|
|
| |
getpages code. This happens for filesystems with 4k pages on the alpha since
the normal alpha pagesize is 8k.
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
soft updates should they desire.
|
|
|
|
| |
Includes some debugging code.
|
|
|
|
|
| |
His version 9.23 == our version 1.5 of ffs_softdep.c
His version 9.5 == our version 1.4 of softdep.c
|
| |
|
|
|
|
|
| |
Change a buffer swizzle trick to a bcopy. It would be nice if the efficient
trick could be used in the future.
|
| |
|
|\
| |
| |
| | |
which included commits to RCS files with non-trunk default branches.
|
| |
| |
| |
| | |
FreeBSD feedback.
|
|\ \
| |/
| |
| | |
which included commits to RCS files with non-trunk default branches.
|
| |
|
|
|
|
|
| |
a filesystem currently using soft updates.
Also needs a new copy of ffs_softdep.c to complete the fix.
|
|
|
|
|
|
| |
s/microruntime/microuptime/g
Reviewed by: bde
|
|
|
|
| |
Submitted by: Luoqi Chen <luoqi@chen.ml.org>
|
|
|
|
| |
Minor fix to support SLICE in MFS...
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
---------
Make callers of namei() responsible for releasing references or locks
instead of having the underlying filesystems do it. This eliminates
redundancy in all terminal filesystems and makes it possible for stacked
transport layers such as umapfs or nullfs to operate correctly.
Quality testing was done with testvn, and lat_fs from the lmbench suite.
Some NFS client testing courtesy of Patrik Kudo.
vop_mknod and vop_symlink still release the returned vpp. vop_rename
still releases 4 vnode arguments before it returns. These remaining cases
will be corrected in the next set of patches.
---------
Submitted by: Michael Hancock <michaelh@cet.co.jp>
|