jmmv
86e1067af8
Set va_type to VLNK before calling VOP_SYMLINK to match the change in the
...
vfs_syscalls.c file. Pointed out by yamt@.
2005-09-06 09:36:28 +00:00
yamt
b247716cf3
as we now have 64bit ino_t, no need to truncate nfsv3 fileids.
2005-08-19 12:47:23 +00:00
yamt
437ecc32b5
fix some simple bugs in the 64bit ino_t changes.
...
- edp -> dp
- * -> +
2005-08-19 10:08:48 +00:00
christos
50f8955b6e
64 bit inode changes.
2005-08-19 02:04:03 +00:00
onoe
5c08c84474
Fix mbuf leak in nfssvc_nfsd().
2005-08-03 06:25:11 +00:00
yamt
d5c148af81
use a correct credential for readlink. discussed on source-changes@.
2005-07-21 10:39:46 +00:00
yamt
445a39080e
nfs_doio_read: revert readlink part of 1.129 and 1.130 because they were wrong.
2005-07-21 10:37:36 +00:00
christos
d9a0117f1e
Back to using curproc in the VLNK case when uiop->uio_procp == NULL,
...
and explain why we need to.
2005-07-07 14:26:37 +00:00
christos
c7f5a1fb60
1. use p = uio->uio_procp consistently and eliminate suspicious uses
...
of curproc (where uio->uio_procp should be used?). Don't do this
for nfs_commit(), because yamt says it is possibly wrong.
2. nfs_doio() does not use struct proc; remove it and the code to compute it.
3. use copyin_proc() and copyout_proc() instead of copyin() and copyout().
4. check return of copyout_proc(). and mark return from copyin_proc() XXX
5. Eliminate check p == curproc assertion check from nfs_write;
nfs_read does not have it and we might be called in a different
process context anyway (PR 20138).
2005-07-07 02:05:03 +00:00
yamt
44d128fa8e
- constify genfs_ops.
...
- use member designators.
2005-06-28 09:30:37 +00:00
atatat
420d91208b
Properly fix the constipated lossage wrt -Wcast-qual and the sysctl
...
code. I know it's not the prettiest code, but it seems to work rather
well in spite of itself.
2005-06-09 02:19:59 +00:00
christos
e7c15fae96
- sprinkle const
...
- avoid shadowed variables
- mark bad const use with XXXUNCONST
2005-05-29 20:58:13 +00:00
yamt
9cb572b112
nfsrv_mknod: reject device numbers which we can't handle.
2005-05-18 12:57:34 +00:00
christos
362a4a0bd5
Yes, it was a cool trick >20 years ago to use "0123456789abcdef"[a] to
...
implement, xtoa(), but I think defining the samestring 50 times is a bit
too much. Defined HEXDIGITS and hexdigits in subr_prf.c and use it...
2005-05-17 04:14:57 +00:00
yamt
c5544c42b5
nfsrv_rcv: don't do so_receive from socket upcall context.
...
while there's little benefits, it complicates locking and confuses
flow control.
2005-03-29 09:22:35 +00:00
thorpej
e633e8b61b
- Define a VFS_ATTACH() macro that places a reference to a vfsops structure
...
into the "vfsops" link set.
- Use VFS_ATTACH() where vfsops are declared for individual file systems.
- In vfsinit(), traverse the "vfsops" link set, rather than vfs_list_initial[].
2005-03-29 02:41:05 +00:00
perry
bcfcddbac1
nuke trailing whitespace
2005-02-26 22:31:44 +00:00
yamt
12ee5f9c3a
nfs_namei: return EACCES for empty filenames as rfc1813 says.
2005-01-28 10:12:23 +00:00
yamt
2520660990
nfs_clearcommit: don't attempt to clear commit info (n_pushlo, etc)
...
unless the vnode is of VREG. union members used to keep commit info
are used for other purposes in the case of !VREG.
2005-01-28 10:11:31 +00:00
yamt
f1661c75d1
- simplify nfs_bio.c rev.1.126
...
- add an assertion.
no functional changes.
2005-01-27 12:46:42 +00:00
yamt
cf56f2b873
keep directory eof cache when inactivating vnode
...
because there's no reason to throw it away.
(fix an unintended side effect of nfs_subs.c rev.1.144.)
2005-01-27 11:33:26 +00:00
yamt
407a63dc34
nfs_bioread:
...
- if a buffer is still empty after successful nfs_doio, it implies EOF.
- don't cache blocks beyond EOF.
2005-01-27 11:29:25 +00:00
yamt
f6e331ee7c
nfs_readdirrpc, nfs_readdirplusrpc:
...
avoid infinite loops when getting readdir response without
any entries or eof. PR/28971.
2005-01-26 10:33:54 +00:00
yamt
72d6e88acf
handle a really empty directory, which doesn't have even the dot entry.
2005-01-26 10:30:58 +00:00
yamt
a7b5d8f567
nfs_check_wccdata: comment.
2005-01-25 12:20:32 +00:00
yamt
de3e729ad9
s/time/mono_time/ for n_attrstamp and n_accstamp. (parts of) PR/25641.
2005-01-21 14:31:29 +00:00
yamt
fc08656a20
implement inaccurate mtime/ctime detection.
...
namely, if mtime or ctime are same between pre_op_attr and post_op_attr
when we expected them to be changed, don't trust the server.
2005-01-19 16:22:19 +00:00
chs
8975a0856f
adjust the UBC mapping code to support non-vnode uvm_objects.
...
this means we can no longer look at the vnode size to determine how many
pages to request in a fault, which is good since for NFS the size can change
out from under us on the server anyway. there's also a new flag UBC_UNMAP
for ubc_release(), so that the file system code can make the decision about
whether to cache mappings for files being used as executables.
2005-01-09 16:42:43 +00:00
yamt
e5bd47dc3c
invalidate cache if filesize is changed besides our activity
...
because it means that we're out of sync with the server.
2005-01-09 01:32:32 +00:00
yamt
68c071389c
nfs_lookup: check n_nctime for positive entries as well to improve
...
cache consistency.
2005-01-08 03:12:30 +00:00
yamt
f80647ef1e
nfs_loadattrcache: invalidate access cache when ctime is changed.
2005-01-06 11:52:44 +00:00
thorpej
1c95472d01
Add the system call and VFS infrastructure for file system extended
...
attributes.
From FreeBSD.
2005-01-02 16:08:28 +00:00
yamt
f4221aaaf6
revive spec vop_bwrite as it's needed for block devices.
...
PR/28684 from Jukka Salmi.
2004-12-17 03:31:20 +00:00
yamt
ee344f939f
redirect some VOPs which shouldn't be used for nfs
...
to genfs_badop (ie. panic).
2004-12-14 09:15:23 +00:00
yamt
e3ed5def47
- centerize code to invalidate stale cache.
...
- don't ignore errors when invalidating buffers in nfs_open.
2004-12-14 09:13:13 +00:00
bouyer
0f82537ed4
The macro used for static server address is NFS_BOOTSTATIC_SERVADDR, not
...
NFS_BOOTSTATIC_SADDR. From Xen source distribution.
XXX NFS_BOOTSTATIC* doesn't seem to be documented anywhere ...
2004-12-12 16:24:14 +00:00
yamt
8cd5f554ba
nfsrv_commit: make cnt unsigned so that very large commit requests can be
...
handled properly.
2004-12-09 02:18:45 +00:00
yamt
2bc7120ab8
when calling create-type VOP, make sure that va_mode is set
...
even when a client doesn't specify it.
(most filesystems get confused if va_mode is VNOVAL.)
2004-12-09 01:48:22 +00:00
yamt
f11ea18093
nfsrv_read: fall back to copying when fail to loan pages.
...
(i forgot to commit this with uvm_loan.c rev.1.51.)
2004-12-04 08:07:52 +00:00
yamt
a9fa9f0745
since daddr_t is 64-bit these days, simply use nfs directory cookies
...
as buffer cache indexes. regress/sys/fs/getdents is now supposed to work.
fix PR/27112.
2004-10-26 04:34:46 +00:00
yamt
20a0770136
remove #if 0'ed out definition of VA_EXCLUSIVE.
2004-10-26 00:58:54 +00:00
yamt
3d250e0476
remove an unused macro, NMOD.
2004-10-26 00:27:07 +00:00
yamt
94223b8ff0
nfs_enterdircache: initialize dc_flags of a newly allocated dircache entry.
...
provided by Greg Oster.
2004-10-03 10:51:28 +00:00
yamt
31c025d90c
nfs_readdirrpc, nfs_readdirplusrpc:
...
don't expose kernel garbage data to userland.
2004-10-03 10:17:33 +00:00
yamt
6b8cd53946
nfs_writerpc: fix PHOLD leak on error.
2004-10-01 01:08:01 +00:00
yamt
77b63b73b8
g/c NFSMINOFF, which is unused and identical with MRESETDATA.
2004-09-29 11:24:28 +00:00
yamt
ac65f2420a
nfs_readdirplusrpc: fix spurious EBUSYs.
2004-09-23 10:46:44 +00:00
skrll
f7155e40f6
There's no need to pass a proc value when using UIO_SYSSPACE with
...
vn_rdwr(9) and uiomove(9).
OK'd by Jason Thorpe
2004-09-17 14:11:20 +00:00
yamt
e11d5e7c46
fix access-after-free bugs in dircache code by refcounting nfsdircache.
...
PR/26864.
2004-09-15 09:50:56 +00:00
yamt
4fd5a025bf
nfs_request: a workaround for servers doing "maproot".
...
for i/o requests which are expected not to fail due to permission
to mimic unix file open semantics (READ, WRITE, COMMIT),
try two credentials. namely, the file owner's one and open time one.
remember which credential worked in per-file basis and try it first
next time to minimize number of retries.
ideas from Chuck Silvers. PR/23716 and PR/24987.
2004-08-24 20:09:44 +00:00