martin
d505b18964
Make sure to include opt_foo.h if a defflag option FOO is used.
2003-06-23 11:00:59 +00:00
yamt
9c329a66d1
rework zero padding of rpc reply.
...
- for READ procedure, don't send back more bytes than requested.
- don't have doubtful assumptions on mbuf chain structure.
- rename a function (nfsm_adj -> nfs_zeropad) to avoid confusion as
the semantics of the function was changed.
2003-06-09 13:10:31 +00:00
yamt
bcf2e4f22f
fix a problem in 'protected' case of writerpc.
...
retransmitted mbufs can survive even after requests themselves
finished. so, before unbusy pages, make sure that mbufs referring them
go away.
pointed by enami tsugutomo on port-mips.
2003-06-03 14:27:48 +00:00
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