#
9bd16971 |
| 04-Mar-1995 |
David Greenman <dg@FreeBSD.org> |
Added some more of John's "anti-chatter" fixes - set the page activation count to 0 after activating the page; the previous behavior biased the pages too high in some cases.
Submitted by: John Dyson
|
#
22470903 |
| 03-Mar-1995 |
David Greenman <dg@FreeBSD.org> |
Fixes from John Dyson to work around vnode lock hang. Basically, remove the VOP_BMAP calls, and add one to bdwrite.
Submitted by: John Dyson
|
#
fde2cdc4 |
| 01-Mar-1995 |
David Greenman <dg@FreeBSD.org> |
Various changes from John and myself that do the following:
New functions create - vm_object_pip_wakeup and pagedaemon_wakeup that are used to reduce the actual number of wakeups. New function vm_pa
Various changes from John and myself that do the following:
New functions create - vm_object_pip_wakeup and pagedaemon_wakeup that are used to reduce the actual number of wakeups. New function vm_page_protect which is used in conjuction with some new page flags to reduce the number of calls to pmap_page_protect. Minor changes to reduce unnecessary spl nesting. Rewrote vm_page_alloc() to improve readability. Various other mostly cosmetic changes.
show more ...
|
#
44941008 |
| 25-Feb-1995 |
David Greenman <dg@FreeBSD.org> |
Fixed thrashing buffer problem.
Submitted by: John Dyson
|
#
701d4580 |
| 22-Feb-1995 |
David Greenman <dg@FreeBSD.org> |
Added some code to make sure that buffers associated with directories and metadata aren't thrashed by regular file I/O. Added mechanism to limit the amount of outstanding I/O on a given vnode. Pageda
Added some code to make sure that buffers associated with directories and metadata aren't thrashed by regular file I/O. Added mechanism to limit the amount of outstanding I/O on a given vnode. Pagedaemon wakeup policy changed to skew priority a little in favor of file caching. Slight code reorganization to improve clarity. Added a few more comments.
Submitted by: John Dyson
show more ...
|
#
7a539444 |
| 22-Feb-1995 |
David Greenman <dg@FreeBSD.org> |
Only do object paging_in_progress wakeups if someone is waiting on this condition. Added some comments.
Submitted by: John Dyson
|
#
0e655886 |
| 18-Feb-1995 |
David Greenman <dg@FreeBSD.org> |
Only clear B_VMIO in brelse() - a bunch of special processing is required whenever this happens, and that wasn't occurring in some cases.
|
#
b82c50c4 |
| 03-Feb-1995 |
David Greenman <dg@FreeBSD.org> |
Make B_NOCACHE and B_INVAL buffers work correctly - throw away the data in the page cache.
Submitted by: John Dyson
|
#
6a1c735d |
| 26-Jan-1995 |
David Greenman <dg@FreeBSD.org> |
Fix problem with freeing busy pages reported by Nick Sayer.
Submitted by: John Dyson
|
#
9532143a |
| 24-Jan-1995 |
David Greenman <dg@FreeBSD.org> |
Fixed a variety of deadlock and panic bugs, removed the bypass code, and implemented the ability to limit bufferspace by memory consumed. (vfs_bio.c) Fixed recently introduced bugs that caused extra
Fixed a variety of deadlock and panic bugs, removed the bypass code, and implemented the ability to limit bufferspace by memory consumed. (vfs_bio.c) Fixed recently introduced bugs that caused extra I/O to happen in some cases. (vfs_cluster.c)
Submitted by: John Dyson
show more ...
|
#
60efec1d |
| 21-Jan-1995 |
Andrey A. Chernov <ache@FreeBSD.org> |
Restore original fix from ohki, not check m for NULL it is already done in the code above. Submitted by: ohki@gssm.otsuka.tsukuba.ac.jp
|
#
f76c8e8c |
| 21-Jan-1995 |
Andrey A. Chernov <ache@FreeBSD.org> |
Change if (m->valid == 0) to if (m && m->valid == 0)
|
#
fc042b69 |
| 20-Jan-1995 |
Bill Paul <wpaul@FreeBSD.org> |
Submitted by: ohki@gssm.otsuka.tsukuba.ac.jp When using cp to copy a file under the following circumstanes:
- original file in on an NFS filesystem - destination file is on the same NFS filesystem -
Submitted by: ohki@gssm.otsuka.tsukuba.ac.jp When using cp to copy a file under the following circumstanes:
- original file in on an NFS filesystem - destination file is on the same NFS filesystem - the file is less than 8Mbytes in size - the file is larger than 65536 bytes in size
the cp process can get frozen in device-wait and never wake up (cp uses mmap() in this case). A small change to allocbuf() fixes this.
show more ...
|
#
761dd667 |
| 15-Jan-1995 |
David Greenman <dg@FreeBSD.org> |
Attempt to close a hole using splhigh/splx. There still appears to be a serious one in the same area that I don't have time to fix.
|
#
c3d05da5 |
| 11-Jan-1995 |
David Greenman <dg@FreeBSD.org> |
MFS doesn't bother to associate a struct mount with the vnode...so work around this by not trying to cluster this type of I/O.
Submitted by: John Dyson
|
#
5943df83 |
| 10-Jan-1995 |
David Greenman <dg@FreeBSD.org> |
PG_FAKE is no longer used - so don't bother to clear it.
|
#
480dff54 |
| 10-Jan-1995 |
David Greenman <dg@FreeBSD.org> |
Fixed some formatting weirdness that I overlooked in the previous commit.
|
#
0d94caff |
| 09-Jan-1995 |
David Greenman <dg@FreeBSD.org> |
These changes embody the support of the fully coherent merged VM buffer cache, much higher filesystem I/O performance, and much better paging performance. It represents the culmination of over 6 mont
These changes embody the support of the fully coherent merged VM buffer cache, much higher filesystem I/O performance, and much better paging performance. It represents the culmination of over 6 months of R&D.
The majority of the merged VM/cache work is by John Dyson.
The following highlights the most significant changes. Additionally, there are (mostly minor) changes to the various filesystem modules (nfs, msdosfs, etc) to support the new VM/buffer scheme.
vfs_bio.c: Significant rewrite of most of vfs_bio to support the merged VM buffer cache scheme. The scheme is almost fully compatible with the old filesystem interface. Significant improvement in the number of opportunities for write clustering.
vfs_cluster.c, vfs_subr.c Upgrade and performance enhancements in vfs layer code to support merged VM/buffer cache. Fixup of vfs_cluster to eliminate the bogus pagemove stuff.
vm_object.c: Yet more improvements in the collapse code. Elimination of some windows that can cause list corruption.
vm_pageout.c: Fixed it, it really works better now. Somehow in 2.0, some "enhancements" broke the code. This code has been reworked from the ground-up.
vm_fault.c, vm_page.c, pmap.c, vm_object.c Support for small-block filesystems with merged VM/buffer cache scheme.
pmap.c vm_map.c Dynamic kernel VM size, now we dont have to pre-allocate excessive numbers of kernel PTs.
vm_glue.c Much simpler and more effective swapping code. No more gratuitous swapping.
proc.h Fixed the problem that the p_lock flag was not being cleared on a fork.
swap_pager.c, vnode_pager.c Removal of old vfs_bio cruft to support the past pseudo-coherency. Now the code doesn't need it anymore.
machdep.c Changes to better support the parameter values for the merged VM/buffer cache scheme.
machdep.c, kern_exec.c, vm_glue.c Implemented a seperate submap for temporary exec string space and another one to contain process upages. This eliminates all map fragmentation problems that previously existed.
ffs_inode.c, ufs_inode.c, ufs_readwrite.c Changes for merged VM/buffer cache. Add "bypass" support for sneaking in on busy buffers.
Submitted by: John Dyson and David Greenman
show more ...
|
Revision tags: release/2.0 |
|
#
e03b612d |
| 23-Oct-1994 |
David Greenman <dg@FreeBSD.org> |
Only VM_WAIT if curproc != pageproc. A deadlock can occur otherwise.
Submitted by: John Dyson
|
#
08d7d166 |
| 18-Oct-1994 |
David Greenman <dg@FreeBSD.org> |
Removed references to bclnlist which we don't use/support/need.
|
#
8e58bf68 |
| 05-Oct-1994 |
David Greenman <dg@FreeBSD.org> |
Stuff object into v_vmdata rather than pager. Not important which at the moment, but will be in the future. Other changes mostly cosmetic, but are made for future VMIO considerations.
Submitted by:
Stuff object into v_vmdata rather than pager. Not important which at the moment, but will be in the future. Other changes mostly cosmetic, but are made for future VMIO considerations.
Submitted by: John Dyson
show more ...
|
#
91b1e285 |
| 04-Oct-1994 |
David Greenman <dg@FreeBSD.org> |
Commented out anti-paging code as it was found to be the cause of a buffer deadlock.
|
#
bb56ec4a |
| 25-Sep-1994 |
Poul-Henning Kamp <phk@FreeBSD.org> |
While in the real world, I had a bad case of being swapped out for a lot of cycles. While waiting there I added a lot of the extra ()'s I have, (I have never used LISP to any extent). So I compiled
While in the real world, I had a bad case of being swapped out for a lot of cycles. While waiting there I added a lot of the extra ()'s I have, (I have never used LISP to any extent). So I compiled the kernel with -Wall and shut up a lot of "suggest you add ()'s", removed a bunch of unused var's and added a couple of declarations here and there. Having a lap-top is highly recommended. My kernel still runs, yell at me if you kernel breaks.
show more ...
|
#
9aba88bf |
| 31-Aug-1994 |
David Greenman <dg@FreeBSD.org> |
Rather than exclude bounce buffers support with NOBOUNCE, include it with BOUNCE_BUFFERS. This is more intuitive, and is better for future multiplatform support. Added BOUNCE_BUFFERS option to the GE
Rather than exclude bounce buffers support with NOBOUNCE, include it with BOUNCE_BUFFERS. This is more intuitive, and is better for future multiplatform support. Added BOUNCE_BUFFERS option to the GENERIC and LINT kernel config files.
show more ...
|
#
e66defe8 |
| 30-Aug-1994 |
David Greenman <dg@FreeBSD.org> |
Changed to reclaim memory from other buffers to eliminate memory thrashing.
Submitted by: John Dyson
|