History

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

Pull nfsd updates from Bruce Fields: "This includes a major rewrite of the NFSv4 state code, which has always depended on a single mutex. As an example, open creates are no longer serialized, fixing a performance regression on NFSv3->NFSv4 upgrades. Thanks to Jeff, Trond, and Benny, and to Christoph for review. Also some RDMA fixes from Chuck Lever and Steve Wise, and miscellaneous fixes from Kinglong Mee and others" * 'for-3.17' of git://linux-nfs.org/~bfields/linux: (167 commits) svcrdma: remove rdma_create_qp() failure recovery logic nfsd: add some comments to the nfsd4 object definitions nfsd: remove the client_mutex and the nfs4_lock/unlock_state wrappers nfsd: remove nfs4_lock_state: nfs4_state_shutdown_net nfsd: remove nfs4_lock_state: nfs4_laundromat nfsd: Remove nfs4_lock_state(): reclaim_complete() nfsd: Remove nfs4_lock_state(): setclientid, setclientid_confirm, renew nfsd: Remove nfs4_lock_state(): exchange_id, create/destroy_session() nfsd: Remove nfs4_lock_state(): nfsd4_open and nfsd4_open_confirm nfsd: Remove nfs4_lock_state(): nfsd4_delegreturn() nfsd: Remove nfs4_lock_state(): nfsd4_open_downgrade + nfsd4_close nfsd: Remove nfs4_lock_state(): nfsd4_lock/locku/lockt() nfsd: Remove nfs4_lock_state(): nfsd4_release_lockowner nfsd: Remove nfs4_lock_state(): nfsd4_test_stateid/nfsd4_free_stateid nfsd: Remove nfs4_lock_state(): nfs4_preprocess_stateid_op() nfsd: remove old fault injection infrastructure nfsd: add more granular locking to *_delegations fault injectors nfsd: add more granular locking to forget_openowners fault injector nfsd: add more granular locking to forget_locks fault injector nfsd: add a list_head arg to nfsd_foreach_client_lock ...

Linus Torvalds committed 12 years ago

Commit 0d10c2c2 parents 023f78b d1e458f39 files · +2751 −1468Browse files

Showing the changes to include/linux (4 of 39 files). Show all

Unified · Split

4 files
  1. include/linux/cred.h +9 −0
  2. include/linux/sunrpc/svc.h +2 −2
  3. include/linux/sunrpc/svc_rdma.h +1 −2
  4. include/linux/sunrpc/svc_xprt.h +2 −0
include/linux/cred.h+9−0
@@ -258,6 +258,15 @@ static inline void put_cred(const struct cred *_cred) · 257 unmodified lines
258#define current_cred() \258#define current_cred() \
259 rcu_dereference_protected(current->cred, 1)259 rcu_dereference_protected(current->cred, 1)
260 260
261/**
262 * current_real_cred - Access the current task's objective credentials
263 *
264 * Access the objective credentials of the current task. RCU-safe,
265 * since nobody else can modify it.
266 */
267#define current_real_cred() \
268 rcu_dereference_protected(current->real_cred, 1)
269
261/**270/**
262 * __task_cred - Access a task's objective credentials271 * __task_cred - Access a task's objective credentials
263 * @task: The task to query272 * @task: The task to query
include/linux/sunrpc/svc.h+2−2
@@ -236,7 +236,7 @@ struct svc_rqst { · 235 unmodified lines
236 struct svc_cred rq_cred; /* auth info */236 struct svc_cred rq_cred; /* auth info */
237 void * rq_xprt_ctxt; /* transport specific context ptr */237 void * rq_xprt_ctxt; /* transport specific context ptr */
238 struct svc_deferred_req*rq_deferred; /* deferred request we are replaying */238 struct svc_deferred_req*rq_deferred; /* deferred request we are replaying */
239 int rq_usedeferral; /* use deferral */239 bool rq_usedeferral; /* use deferral */
240 240
241 size_t rq_xprt_hlen; /* xprt header len */241 size_t rq_xprt_hlen; /* xprt header len */
242 struct xdr_buf rq_arg;242 struct xdr_buf rq_arg;
@@ -277,7 +277,7 @@ struct svc_rqst { · 34 unmodified lines
277 struct auth_domain * rq_gssclient; /* "gss/"-style peer info */277 struct auth_domain * rq_gssclient; /* "gss/"-style peer info */
278 int rq_cachetype;278 int rq_cachetype;
279 struct svc_cacherep * rq_cacherep; /* cache info */279 struct svc_cacherep * rq_cacherep; /* cache info */
280 int rq_splice_ok; /* turned off in gss privacy280 bool rq_splice_ok; /* turned off in gss privacy
281 * to prevent encrypting page281 * to prevent encrypting page
282 * cache pages */282 * cache pages */
283 wait_queue_head_t rq_wait; /* synchronization */283 wait_queue_head_t rq_wait; /* synchronization */
include/linux/sunrpc/svc_rdma.h+1−2
@@ -174,8 +174,7 @@ struct svcxprt_rdma { · 173 unmodified lines
174 * page size of 4k, or 32k * 2 ops / 4k = 16 outstanding RDMA_READ. */174 * page size of 4k, or 32k * 2 ops / 4k = 16 outstanding RDMA_READ. */
175#define RPCRDMA_ORD (64/4)175#define RPCRDMA_ORD (64/4)
176#define RPCRDMA_SQ_DEPTH_MULT 8176#define RPCRDMA_SQ_DEPTH_MULT 8
177#define RPCRDMA_MAX_THREADS 16177#define RPCRDMA_MAX_REQUESTS 32
178#define RPCRDMA_MAX_REQUESTS 16
179#define RPCRDMA_MAX_REQ_SIZE 4096178#define RPCRDMA_MAX_REQ_SIZE 4096
180 179
181/* svc_rdma_marshal.c */180/* svc_rdma_marshal.c */
include/linux/sunrpc/svc_xprt.h+2−0
@@ -25,6 +25,7 @@ struct svc_xprt_ops { · 24 unmodified lines
25 void (*xpo_detach)(struct svc_xprt *);25 void (*xpo_detach)(struct svc_xprt *);
26 void (*xpo_free)(struct svc_xprt *);26 void (*xpo_free)(struct svc_xprt *);
27 int (*xpo_secure_port)(struct svc_rqst *);27 int (*xpo_secure_port)(struct svc_rqst *);
28 void (*xpo_adjust_wspace)(struct svc_xprt *);
28};29};
29 30
30struct svc_xprt_class {31struct svc_xprt_class {
@@ -33,6 +34,7 @@ struct svc_xprt_class { · 2 unmodified lines
33 struct svc_xprt_ops *xcl_ops;34 struct svc_xprt_ops *xcl_ops;
34 struct list_head xcl_list;35 struct list_head xcl_list;
35 u32 xcl_max_payload;36 u32 xcl_max_payload;
37 int xcl_ident;
36};38};
37 39
38/*40/*

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t