Commit Graph

30 Commits

Author SHA1 Message Date
thorpej
aa25de69d1 NFS performance improvement from Doug Rabson/FreeBSD:
Improve the queuing algorithms used by NFS' asynchronous i/o.  The
existing mechanism uses a global queue for some buffers and the
vp->b_dirtyblkhd queue for others.  This turns sequential writes into
randomly ordered writes to the server, affecting both read and write
performance.  The existing mechanism also copes badly with hung
servers, tending to block accesses to other servers when all the iods
are waiting for a hung server.

The new mechanism uses a queue for each mount point.  All asynchronous
i/o goes through this queue which preserves the ordering of requests.
A simple mechanism ensures that the iods are shared out fairly between
active mount points.

Reviewed/integrated/approved by Frank van der Linden <fvdl@netbsd.org>
1996-12-02 22:55:39 +00:00
christos
bcf4552fb1 revert kprintf changes 1996-10-13 01:39:03 +00:00
christos
117a51c5a5 printf -> kprintf, sprintf -> ksprintf 1996-10-10 23:31:17 +00:00
fvdl
1e8262b3d6 Don't mistake a non-async block that needs to be commited for an
interrupted write.
1996-07-02 16:03:47 +00:00
fvdl
2847784948 * Make mounts with symlinks work (needed for direct mounts with amd). PR #1917
* Never change the NQNFS flag and/or version when just doing an update mount.
  Fixes a problem that made diskless booting impossible under some
  circumstances.
1996-05-23 22:47:27 +00:00
fvdl
52d04f3b3f Make sure to clear B_NEEDCOMMIT in the right spot. Fix 'officially blessed'
by Rick Macklem. Fixes PR kern/2128.
1996-02-29 20:26:16 +00:00
fvdl
5ac7df1caf Bring in a merge of Rick Macklem's NFSv3 code from Lite2 1996-02-18 11:53:36 +00:00
christos
e4c93ec893 nfs prototype changes 1996-02-09 21:48:19 +00:00
jtc
299e1fe9df Rename struct timespec fields to conform to POSIX.1b 1996-02-01 00:31:05 +00:00
cgd
e9d17d38b5 avoid unnecessary aging of buffers. This used to make sense, when buffer
caches were much smaller, but makes little sense now, and will become more
useless as RAM (and buffer cache) sizes grow.  Suggested by Bob Baron.
1995-07-24 21:19:27 +00:00
gwr
4b284ae4ba Make call to nfs_writerpc() consistent with others. 1995-03-18 05:49:51 +00:00
mycroft
775d061b43 Add two missing brelse() calls. From Rick Macklem. 1995-01-12 12:08:23 +00:00
mycroft
69eef46dd1 Make sure readdir requests are only truncated on block boundaries. 1995-01-10 06:50:03 +00:00
mycroft
24f8e9187d Fix a problem with write-behind causing processes to be killed occasionally.
From Rick Macklem.
1994-07-20 04:16:01 +00:00
cgd
65855280c7 minor cache consistency fix 1994-07-12 21:03:14 +00:00
cgd
fccfa11af5 New RCS ID's, take two. they're more aesthecially pleasant, and use 'NetBSD' 1994-06-29 06:39:25 +00:00
pk
bccc2c3c1b straighten out diskless swap code somewhat. 1994-06-22 14:01:45 +00:00
mycroft
0d8affb278 Turn P_NOSWAP and P_PHYSIO into a hold count, as suggested by a comment. 1994-06-15 19:59:21 +00:00
mycroft
cde1d47595 Update to 4.4-Lite fs code, with local changes. 1994-06-08 11:33:09 +00:00
cgd
f42a80c7ea MIN -> min, MAX -> max 1994-05-24 02:33:03 +00:00
cgd
d071d1cf05 some prototype cleanup, eliminate/replace bogus types (e.g. quad and
u_quad) -> use better types (e.g. quad_t & u_quad_t in inodes),
some cleanup.
1994-04-25 03:49:27 +00:00
cgd
3dda0064a5 Convert mount, vnode, and buf structs to use <sys/queue.h>. Also,
some knf and structure frobbing to do along with it.
1994-04-21 07:47:31 +00:00
mycroft
95b048b53a Canonicalize all #includes. 1993-12-18 00:40:47 +00:00
jtc
f1fd37d722 Include systm.h to get prototypes (and possibly inlines) of *max functions. 1993-09-03 23:57:21 +00:00
cgd
7ecbd4b92d get rid of some more bogus changes from a week ago 1993-07-13 10:50:04 +00:00
cgd
c58c7e0a97 diskless changes made last time were hosed; were using NULL for
"no credentials" rather than NOCRED.
1993-07-13 10:04:26 +00:00
cgd
0b1df311fc changes from ws to support diskless booting... these are "OK" on inspection
and after testing...  (actually, currently, none of the changed
code is even used...)
1993-07-07 12:06:32 +00:00
andrew
112b578662 Paul Kranenburg's VM deadlock fixes. (patchkit patch 00147, part 2) 1993-06-30 03:35:07 +00:00
cgd
f4b489f71c more rcs id adding and header cleanup. i like vi macros! 1993-05-20 03:18:35 +00:00
cgd
61f282557f initial import of 386bsd-0.1 sources 1993-03-21 09:45:37 +00:00