diff options
Diffstat (limited to 'include/linux/sunrpc/xprt.h')
-rw-r--r-- | include/linux/sunrpc/xprt.h | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/include/linux/sunrpc/xprt.h b/include/linux/sunrpc/xprt.h index 08afe43118f4..703af7ebf6cf 100644 --- a/include/linux/sunrpc/xprt.h +++ b/include/linux/sunrpc/xprt.h | |||
@@ -97,6 +97,12 @@ struct rpc_rqst { | |||
97 | 97 | ||
98 | unsigned long rq_xtime; /* when transmitted */ | 98 | unsigned long rq_xtime; /* when transmitted */ |
99 | int rq_ntrans; | 99 | int rq_ntrans; |
100 | |||
101 | #if defined(CONFIG_NFS_V4_1) | ||
102 | struct list_head rq_bc_list; /* Callback service list */ | ||
103 | unsigned long rq_bc_pa_state; /* Backchannel prealloc state */ | ||
104 | struct list_head rq_bc_pa_list; /* Backchannel prealloc list */ | ||
105 | #endif /* CONFIG_NFS_V4_1 */ | ||
100 | }; | 106 | }; |
101 | #define rq_svec rq_snd_buf.head | 107 | #define rq_svec rq_snd_buf.head |
102 | #define rq_slen rq_snd_buf.len | 108 | #define rq_slen rq_snd_buf.len |
@@ -174,6 +180,14 @@ struct rpc_xprt { | |||
174 | spinlock_t reserve_lock; /* lock slot table */ | 180 | spinlock_t reserve_lock; /* lock slot table */ |
175 | u32 xid; /* Next XID value to use */ | 181 | u32 xid; /* Next XID value to use */ |
176 | struct rpc_task * snd_task; /* Task blocked in send */ | 182 | struct rpc_task * snd_task; /* Task blocked in send */ |
183 | #if defined(CONFIG_NFS_V4_1) | ||
184 | struct svc_serv *bc_serv; /* The RPC service which will */ | ||
185 | /* process the callback */ | ||
186 | spinlock_t bc_pa_lock; /* Protects the preallocated | ||
187 | * items */ | ||
188 | struct list_head bc_pa_list; /* List of preallocated | ||
189 | * backchannel rpc_rqst's */ | ||
190 | #endif /* CONFIG_NFS_V4_1 */ | ||
177 | struct list_head recv; | 191 | struct list_head recv; |
178 | 192 | ||
179 | struct { | 193 | struct { |
@@ -192,6 +206,14 @@ struct rpc_xprt { | |||
192 | const char *address_strings[RPC_DISPLAY_MAX]; | 206 | const char *address_strings[RPC_DISPLAY_MAX]; |
193 | }; | 207 | }; |
194 | 208 | ||
209 | #if defined(CONFIG_NFS_V4_1) | ||
210 | /* | ||
211 | * Backchannel flags | ||
212 | */ | ||
213 | #define RPC_BC_PA_IN_USE 0x0001 /* Preallocated backchannel */ | ||
214 | /* buffer in use */ | ||
215 | #endif /* CONFIG_NFS_V4_1 */ | ||
216 | |||
195 | struct xprt_create { | 217 | struct xprt_create { |
196 | int ident; /* XPRT_TRANSPORT identifier */ | 218 | int ident; /* XPRT_TRANSPORT identifier */ |
197 | struct sockaddr * srcaddr; /* optional local address */ | 219 | struct sockaddr * srcaddr; /* optional local address */ |