yamt
85d0052723
workaround for UBC limit.
...
while our nfsd announces MAXBSIZE as wtmax for tcp,
VOP_GETPAGES of filesystems that uses genfs_getpages can't
handle >= MAX_READ_AHEAD(16) pages at once.
therefore, depending on PAGE_SIZE of the machine and file offset of
a read request, we can't VOP_GETPAGES the range at once.
2003-05-29 15:18:14 +00:00
yamt
d36494e29b
fix a memory leak bug that i introduced in rev.1.167.
...
patch provided by enami tsugutomo on current-users.
2003-05-27 14:41:06 +00:00
yamt
a340c1b544
when a result of NFSv3 READLINK is too long for us,
...
return ENAMETOOLONG rather than EBADRPC.
(it's our implementation limit, not protocol limit.)
2003-05-26 13:34:38 +00:00
yamt
9c1b2d7aa2
make duplicated codes to a function, nfsrv_sockalloc.
2003-05-26 13:30:07 +00:00
yamt
c8ad6cc17b
interlock for NFLUSHINPROG/NFLUSHWANT.
2003-05-22 15:59:24 +00:00
yamt
85b757c497
poolify nfsrv_descript.
2003-05-22 14:16:23 +00:00
yamt
a423954d74
indent (nfssvc_nfsd)
2003-05-22 14:14:41 +00:00
yamt
b24da550a0
avoid double free with xlatecookie.
2003-05-22 14:14:02 +00:00
yamt
ead5df5837
interlock for nfs_rcvlock.
2003-05-22 14:11:50 +00:00
yamt
78fe726a6f
- use FREE not free for MALLOC'ed memory.
...
- remove unneeded caddr_t casts.
2003-05-21 14:41:26 +00:00
yamt
132782522f
simplelock for nfsd request cache.
2003-05-21 14:13:34 +00:00
yamt
a055ad0f6a
- KNF.
...
- remove unneeded casts.
2003-05-21 13:56:21 +00:00
yamt
8ee3b648b4
poolify nfsd request cache.
2003-05-21 13:55:28 +00:00
yamt
75fa9b73b5
indent.
2003-05-21 13:53:18 +00:00
yamt
08bf5aae7b
remove local definitions of TRUE and FALSE.
2003-05-21 13:50:54 +00:00
yamt
db8b252c5e
indent
2003-05-21 13:31:04 +00:00
yamt
ddd5ced644
eliminate memcpy in the common and easy case of write.
2003-05-21 13:27:19 +00:00
yamt
4811ccb6a0
correct a KASSERT.
2003-05-16 17:16:05 +00:00
yamt
19bdd5d1e5
acquire vmobjlock when touch pg->flags.
2003-05-15 14:34:06 +00:00
yamt
de31ef25cd
simple lock for nfs iod.
2003-05-07 16:18:53 +00:00
yamt
a4ae58105f
indent.
2003-05-07 16:18:17 +00:00
yamt
8a4e0a8444
use hashdone to free hashinit'ed memory.
2003-05-07 13:16:35 +00:00
yamt
c573c77372
- indent.
...
- fix a comment typo (mus -> must)
- remove an unneeded caddr_t cast.
2003-05-07 13:10:44 +00:00
yamt
469a401cf5
remove nfsm_srvstrsiz as it's no longer used.
2003-05-06 13:52:36 +00:00
yamt
6f30440f90
keep things not needed by userland in #ifdef _KERNEL.
...
(e.g. prototypes for in-kernel functions)
2003-05-05 13:21:00 +00:00
yamt
777190167d
fix handling of the case that readsize == 0.
2003-05-04 11:40:22 +00:00
yamt
ca9e55bd66
use uvm page loanout mechanism for nfsd READ procedure processing.
...
reviewed by Frank van der Linden and Chuck Silvers.
tested by Wojciech Puchar.
2003-05-03 18:36:26 +00:00
yamt
92a566bbbd
tweak nfsm_adj to pay attention to read only mbufs.
2003-05-03 18:07:42 +00:00
yamt
3698fcc62e
- check page's offset in the object as well. (pointed by Chuck Silvers.)
...
- remove false assertion.
2003-05-03 17:27:20 +00:00
yamt
455e4333eb
- if writerpc ends with a stable result, no need to commit them anymore.
...
- add comments.
2003-05-03 16:46:39 +00:00
yamt
a74480a1a6
more comment.
2003-05-03 16:35:22 +00:00
yamt
8c5ba805e5
better handling of write verifier change.
2003-05-03 16:28:57 +00:00
drochner
9e95dcb696
Change some subordinate functions to take a "struct nfsnode" argument
...
instead of "struct vnode". This saves a number of pointer dereferences;
it sums up to about half a kB for me. And it paves the way for future
fixes.
While cleaning up, eliminate a write-only member of "struct nfsreq"
and a pointless assignment in the NFS_V2_ONLY case.
2003-04-24 21:21:04 +00:00
yamt
8178e19cb6
fix a use of an uninitialized variable.
2003-04-18 15:19:02 +00:00
christos
80ecd573c0
PR/1796: John Kohl: statfs misbehaves under chrooted environments.
...
- Under chroot it displays only the visible filesystems with appropriate paths.
- The statfs f_mntonname gets adjusted to contain the real path from root.
- While was there, fixed a bug in ext2fs, locking problems with vfs_getfsstat(),
and factored out some of the vfsop statfs() code to copy_statfs_info(). This
fixes the problem where some filesystems forgot to set fsid.
- Made coda look more like a normal fs.
2003-04-16 21:44:18 +00:00
yamt
503590c138
sync a comment with reality.
2003-04-16 14:51:55 +00:00
yamt
0012a58814
fix indent.
2003-04-15 13:51:11 +00:00
yamt
63de87c34b
remove line-wrapping that is no longer needed.
2003-04-15 13:48:40 +00:00
yamt
dcf4c9093f
fix a typo in the previous.
2003-04-12 14:41:28 +00:00
yamt
1505b097fa
set b_resid correctly.
2003-04-12 14:38:57 +00:00
yamt
9ad479d8c2
split nfs_doio to nfs_doio_{phys,read,write} to avoid too deep indents.
2003-04-12 14:26:58 +00:00
yamt
043759a005
- do FILESYNC writes if we're freeing the page or the page doesn't
...
belong to us. otherwise, data will be lost on server crash.
- use b_bcount instead of b_bufsize to determine
how many pages we should deal with.
based on a patch from Chuck Silvers.
discussed on tech-kern.
2003-04-12 06:53:09 +00:00
yamt
65e3d14a8a
rename a very confusing variable name.
...
(must_commit -> stalewriteverf)
2003-04-09 14:30:30 +00:00
yamt
b90af31ce6
when commit failed and fall to write, re-set 'off' and 'cnt'
...
because it can be changed in 'needcommit' path.
2003-04-09 14:27:58 +00:00
yamt
2cca2b5641
update a comment to follow the previous change.
2003-04-09 14:24:32 +00:00
yamt
9b96b4ab78
make per-iod datas together.
2003-04-09 14:22:33 +00:00
yamt
0dff798bde
rename nm_verf to nm_writeverf because it's confusing with nm_verf{str,len}.
2003-04-09 14:21:24 +00:00
yamt
d16c4c058f
return rtmax bytes if we get READ requests larger than rtmax.
2003-04-03 15:19:12 +00:00
yamt
8cc1df8614
use m_copydata and m_split instead of similar inlined ones.
2003-04-03 15:14:51 +00:00
yamt
a14f444335
use queue manipulation macros.
2003-04-02 15:14:19 +00:00