aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux/nfs_fs_sb.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/linux/nfs_fs_sb.h')
-rw-r--r--include/linux/nfs_fs_sb.h47
1 files changed, 0 insertions, 47 deletions
diff --git a/include/linux/nfs_fs_sb.h b/include/linux/nfs_fs_sb.h
index a9e76ee1adca..6c6ed153a9b4 100644
--- a/include/linux/nfs_fs_sb.h
+++ b/include/linux/nfs_fs_sb.h
@@ -198,51 +198,4 @@ struct nfs_server {
198#define NFS_CAP_POSIX_LOCK (1U << 14) 198#define NFS_CAP_POSIX_LOCK (1U << 14)
199#define NFS_CAP_UIDGID_NOMAP (1U << 15) 199#define NFS_CAP_UIDGID_NOMAP (1U << 15)
200 200
201
202/* maximum number of slots to use */
203#define NFS4_DEF_SLOT_TABLE_SIZE (16U)
204#define NFS4_MAX_SLOT_TABLE (256U)
205#define NFS4_NO_SLOT ((u32)-1)
206
207#if IS_ENABLED(CONFIG_NFS_V4)
208
209/* Sessions */
210#define SLOT_TABLE_SZ DIV_ROUND_UP(NFS4_MAX_SLOT_TABLE, 8*sizeof(long))
211struct nfs4_slot_table {
212 struct nfs4_slot *slots; /* seqid per slot */
213 unsigned long used_slots[SLOT_TABLE_SZ]; /* used/unused bitmap */
214 spinlock_t slot_tbl_lock;
215 struct rpc_wait_queue slot_tbl_waitq; /* allocators may wait here */
216 u32 max_slots; /* # slots in table */
217 u32 highest_used_slotid; /* sent to server on each SEQ.
218 * op for dynamic resizing */
219 u32 target_max_slots; /* Set by CB_RECALL_SLOT as
220 * the new max_slots */
221 struct completion complete;
222};
223
224static inline int slot_idx(struct nfs4_slot_table *tbl, struct nfs4_slot *sp)
225{
226 return sp - tbl->slots;
227}
228
229/*
230 * Session related parameters
231 */
232struct nfs4_session {
233 struct nfs4_sessionid sess_id;
234 u32 flags;
235 unsigned long session_state;
236 u32 hash_alg;
237 u32 ssv_len;
238
239 /* The fore and back channel */
240 struct nfs4_channel_attrs fc_attrs;
241 struct nfs4_slot_table fc_slot_table;
242 struct nfs4_channel_attrs bc_attrs;
243 struct nfs4_slot_table bc_slot_table;
244 struct nfs_client *clp;
245};
246
247#endif /* CONFIG_NFS_V4 */
248#endif 201#endif