Commit 843c04a0 authored by Linus Torvalds's avatar Linus Torvalds

Merge branch 'for-2.6.29' of git://linux-nfs.org/~bfields/linux

* 'for-2.6.29' of git://linux-nfs.org/~bfields/linux:
  nfsd: only set file_lock.fl_lmops in nfsd4_lockt if a stateowner is found
  nfsd: fix cred leak on every rpc
  nfsd: fix null dereference on error path
  nfs: note that CONFIG_SUNRPC_XPRT_RDMA turns on server side support too
  update port number in NFS/RDMA documentation
parents b00ecabf fa82a491
...@@ -251,7 +251,7 @@ NFS/RDMA Setup ...@@ -251,7 +251,7 @@ NFS/RDMA Setup
Instruct the server to listen on the RDMA transport: Instruct the server to listen on the RDMA transport:
$ echo rdma 2050 > /proc/fs/nfsd/portlist $ echo rdma 20049 > /proc/fs/nfsd/portlist
- On the client system - On the client system
...@@ -263,7 +263,7 @@ NFS/RDMA Setup ...@@ -263,7 +263,7 @@ NFS/RDMA Setup
Regardless of how the client was built (module or built-in), use this Regardless of how the client was built (module or built-in), use this
command to mount the NFS/RDMA server: command to mount the NFS/RDMA server:
$ mount -o rdma,port=2050 <IPoIB-server-name-or-address>:/<export> /mnt $ mount -o rdma,port=20049 <IPoIB-server-name-or-address>:/<export> /mnt
To verify that the mount is using RDMA, run "cat /proc/mounts" and check To verify that the mount is using RDMA, run "cat /proc/mounts" and check
the "proto" field for the given mount. the "proto" field for the given mount.
......
...@@ -49,6 +49,8 @@ int nfsd_setuser(struct svc_rqst *rqstp, struct svc_export *exp) ...@@ -49,6 +49,8 @@ int nfsd_setuser(struct svc_rqst *rqstp, struct svc_export *exp)
new->fsuid = exp->ex_anon_uid; new->fsuid = exp->ex_anon_uid;
new->fsgid = exp->ex_anon_gid; new->fsgid = exp->ex_anon_gid;
gi = groups_alloc(0); gi = groups_alloc(0);
if (!gi)
goto oom;
} else if (flags & NFSEXP_ROOTSQUASH) { } else if (flags & NFSEXP_ROOTSQUASH) {
if (!new->fsuid) if (!new->fsuid)
new->fsuid = exp->ex_anon_uid; new->fsuid = exp->ex_anon_uid;
...@@ -85,6 +87,7 @@ int nfsd_setuser(struct svc_rqst *rqstp, struct svc_export *exp) ...@@ -85,6 +87,7 @@ int nfsd_setuser(struct svc_rqst *rqstp, struct svc_export *exp)
new->cap_effective = cap_raise_nfsd_set(new->cap_effective, new->cap_effective = cap_raise_nfsd_set(new->cap_effective,
new->cap_permitted); new->cap_permitted);
put_cred(override_creds(new)); put_cred(override_creds(new));
put_cred(new);
return 0; return 0;
oom: oom:
......
...@@ -2871,7 +2871,6 @@ nfsd4_lockt(struct svc_rqst *rqstp, struct nfsd4_compound_state *cstate, ...@@ -2871,7 +2871,6 @@ nfsd4_lockt(struct svc_rqst *rqstp, struct nfsd4_compound_state *cstate,
file_lock.fl_owner = (fl_owner_t)lockt->lt_stateowner; file_lock.fl_owner = (fl_owner_t)lockt->lt_stateowner;
file_lock.fl_pid = current->tgid; file_lock.fl_pid = current->tgid;
file_lock.fl_flags = FL_POSIX; file_lock.fl_flags = FL_POSIX;
file_lock.fl_lmops = &nfsd_posix_mng_ops;
file_lock.fl_start = lockt->lt_offset; file_lock.fl_start = lockt->lt_offset;
file_lock.fl_end = last_byte_offset(lockt->lt_offset, lockt->lt_length); file_lock.fl_end = last_byte_offset(lockt->lt_offset, lockt->lt_length);
......
...@@ -9,9 +9,8 @@ config SUNRPC_XPRT_RDMA ...@@ -9,9 +9,8 @@ config SUNRPC_XPRT_RDMA
depends on SUNRPC && INFINIBAND && EXPERIMENTAL depends on SUNRPC && INFINIBAND && EXPERIMENTAL
default SUNRPC && INFINIBAND default SUNRPC && INFINIBAND
help help
This option enables an RPC client transport capability that This option allows the NFS client and server to support
allows the NFS client to mount servers via an RDMA-enabled an RDMA-enabled transport.
transport.
To compile RPC client RDMA transport support as a module, To compile RPC client RDMA transport support as a module,
choose M here: the module will be called xprtrdma. choose M here: the module will be called xprtrdma.
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment