diff options
| author | Linus Torvalds <torvalds@linux-foundation.org> | 2016-08-04 19:59:06 -0400 |
|---|---|---|
| committer | Linus Torvalds <torvalds@linux-foundation.org> | 2016-08-04 19:59:06 -0400 |
| commit | a71e36045e1fd5813addad2fce878d96e2827d66 (patch) | |
| tree | c71345261c6342b2d3ee2e5784148898ee59557d /include/linux/sunrpc | |
| parent | d58b0d980f0b1c27204da0e05537b606da45a07f (diff) | |
| parent | 2b11885921a48767b6ace27c481beba3b42371ce (diff) | |
Merge tag 'nfsd-4.8' of git://linux-nfs.org/~bfields/linux
Pull nfsd updates from Bruce Fields:
"Highlights:
- Trond made a change to the server's tcp logic that allows a fast
client to better take advantage of high bandwidth networks, but may
increase the risk that a single client could starve other clients;
a new sunrpc.svc_rpc_per_connection_limit parameter should help
mitigate this in the (hopefully unlikely) event this becomes a
problem in practice.
- Tom Haynes added a minimal flex-layout pnfs server, which is of no
use in production for now--don't build it unless you're doing
client testing or further server development"
* tag 'nfsd-4.8' of git://linux-nfs.org/~bfields/linux: (32 commits)
nfsd: remove some dead code in nfsd_create_locked()
nfsd: drop unnecessary MAY_EXEC check from create
nfsd: clean up bad-type check in nfsd_create_locked
nfsd: remove unnecessary positive-dentry check
nfsd: reorganize nfsd_create
nfsd: check d_can_lookup in fh_verify of directories
nfsd: remove redundant zero-length check from create
nfsd: Make creates return EEXIST instead of EACCES
SUNRPC: Detect immediate closure of accepted sockets
SUNRPC: accept() may return sockets that are still in SYN_RECV
nfsd: allow nfsd to advertise multiple layout types
nfsd: Close race between nfsd4_release_lockowner and nfsd4_lock
nfsd/blocklayout: Make sure calculate signature/designator length aligned
xfs: abstract block export operations from nfsd layouts
SUNRPC: Remove unused callback xpo_adjust_wspace()
SUNRPC: Change TCP socket space reservation
SUNRPC: Add a server side per-connection limit
SUNRPC: Micro optimisation for svc_data_ready
SUNRPC: Call the default socket callbacks instead of open coding
SUNRPC: lock the socket while detaching it
...
Diffstat (limited to 'include/linux/sunrpc')
| -rw-r--r-- | include/linux/sunrpc/cache.h | 2 | ||||
| -rw-r--r-- | include/linux/sunrpc/svc.h | 1 | ||||
| -rw-r--r-- | include/linux/sunrpc/svc_xprt.h | 2 |
3 files changed, 2 insertions, 3 deletions
diff --git a/include/linux/sunrpc/cache.h b/include/linux/sunrpc/cache.h index ed03c9f7f908..62a60eeacb0a 100644 --- a/include/linux/sunrpc/cache.h +++ b/include/linux/sunrpc/cache.h | |||
| @@ -78,8 +78,6 @@ struct cache_detail { | |||
| 78 | struct hlist_head * hash_table; | 78 | struct hlist_head * hash_table; |
| 79 | rwlock_t hash_lock; | 79 | rwlock_t hash_lock; |
| 80 | 80 | ||
| 81 | atomic_t inuse; /* active user-space update or lookup */ | ||
| 82 | |||
| 83 | char *name; | 81 | char *name; |
| 84 | void (*cache_put)(struct kref *); | 82 | void (*cache_put)(struct kref *); |
| 85 | 83 | ||
diff --git a/include/linux/sunrpc/svc.h b/include/linux/sunrpc/svc.h index 7ca44fb5b675..7321ae933867 100644 --- a/include/linux/sunrpc/svc.h +++ b/include/linux/sunrpc/svc.h | |||
| @@ -268,6 +268,7 @@ struct svc_rqst { | |||
| 268 | * cache pages */ | 268 | * cache pages */ |
| 269 | #define RQ_VICTIM (5) /* about to be shut down */ | 269 | #define RQ_VICTIM (5) /* about to be shut down */ |
| 270 | #define RQ_BUSY (6) /* request is busy */ | 270 | #define RQ_BUSY (6) /* request is busy */ |
| 271 | #define RQ_DATA (7) /* request has data */ | ||
| 271 | unsigned long rq_flags; /* flags field */ | 272 | unsigned long rq_flags; /* flags field */ |
| 272 | 273 | ||
| 273 | void * rq_argp; /* decoded arguments */ | 274 | void * rq_argp; /* decoded arguments */ |
diff --git a/include/linux/sunrpc/svc_xprt.h b/include/linux/sunrpc/svc_xprt.h index 79ba50856707..ab02a457da1f 100644 --- a/include/linux/sunrpc/svc_xprt.h +++ b/include/linux/sunrpc/svc_xprt.h | |||
| @@ -25,7 +25,6 @@ struct svc_xprt_ops { | |||
| 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 *); | ||
| 29 | }; | 28 | }; |
| 30 | 29 | ||
| 31 | struct svc_xprt_class { | 30 | struct svc_xprt_class { |
| @@ -69,6 +68,7 @@ struct svc_xprt { | |||
| 69 | 68 | ||
| 70 | struct svc_serv *xpt_server; /* service for transport */ | 69 | struct svc_serv *xpt_server; /* service for transport */ |
| 71 | atomic_t xpt_reserved; /* space on outq that is rsvd */ | 70 | atomic_t xpt_reserved; /* space on outq that is rsvd */ |
| 71 | atomic_t xpt_nr_rqsts; /* Number of requests */ | ||
| 72 | struct mutex xpt_mutex; /* to serialize sending data */ | 72 | struct mutex xpt_mutex; /* to serialize sending data */ |
| 73 | spinlock_t xpt_lock; /* protects sk_deferred | 73 | spinlock_t xpt_lock; /* protects sk_deferred |
| 74 | * and xpt_auth_cache */ | 74 | * and xpt_auth_cache */ |
