16 #define NFSDDBG_FACILITY NFSDDBG_PROC
52 fh_copy(&resp->
fh, &argp->
fh);
55 return nfsd_return_attrs(nfserr, resp);
67 dprintk(
"nfsd: SETATTR %s, valid=%x, size=%ld\n",
69 argp->
attrs.ia_valid, (
long) argp->
attrs.ia_size);
71 fh_copy(&resp->
fh, &argp->
fh);
73 return nfsd_return_attrs(nfserr, resp);
88 dprintk(
"nfsd: LOOKUP %s %.*s\n",
96 return nfsd_return_dirop(nfserr, resp);
128 dprintk(
"nfsd: READ %s %d bytes at %d\n",
136 if (NFSSVC_MAXBLKSIZE_V2 < argp->
count) {
139 "oversized read request from %s (%d bytes)\n",
144 svc_reserve_auth(rqstp, (19<<2) + argp->
count + 4);
152 if (nfserr)
return nfserr;
168 unsigned long cnt = argp->
len;
170 dprintk(
"nfsd: WRITE %s %d bytes at %d\n",
179 return nfsd_return_attrs(nfserr, resp);
202 dprintk(
"nfsd: CREATE %s %.*s\n",
218 hosterr = fh_want_write(dirfhp);
226 if (IS_ERR(dchild)) {
232 if (!nfserr && !dchild->
d_inode)
245 "nfsd_proc_create: file handle not verified\n");
324 attr, type, rdev, newfhp);
326 dprintk(
"nfsd: existing %s, valid=%x, size=%ld\n",
340 fh_drop_write(dirfhp);
343 return nfsd_return_dirop(nfserr, resp);
367 dprintk(
"nfsd: RENAME %s %.*s -> \n",
406 dprintk(
"nfsd: SYMLINK %s %.*s -> %.*s\n",
416 &newfh, &argp->
attrs);
436 if (resp->
fh.fh_dentry) {
438 "nfsd_proc_mkdir: response already verified??\n");
446 return nfsd_return_dirop(nfserr, resp);
476 dprintk(
"nfsd: READDIR %s %d bytes at %d\n",
481 count = (argp->
count >> 2) - 2;
550 .pc_xdrressize =
ST+
AT,
560 .pc_xdrressize =
ST+
AT,
578 .pc_xdrressize =
ST+
FH+
AT,
615 .pc_xdrressize =
ST+
AT,
625 .pc_xdrressize =
ST+
FH+
AT,
671 .pc_xdrressize =
ST+
FH+
AT,
697 .pc_xdrressize =
ST+5,
705 .vs_proc = nfsd_procedures2,
755 for (i = 0; i <
ARRAY_SIZE(nfs_errtbl); i++) {
756 if (nfs_errtbl[i].syserr == errno)
757 return nfs_errtbl[
i].nfserr;