Skip to content

Commit 02c39c0

Browse files
metze-sambasmfrench
authored andcommitted
smb: smbdirect: introduce struct smbdirect_mr_io
This will be used by the client in order to maintain memory registrations. Cc: Steve French <smfrench@gmail.com> Cc: Tom Talpey <tom@talpey.com> Cc: Long Li <longli@microsoft.com> Acked-by: Namjae Jeon <linkinjeon@kernel.org> Cc: linux-cifs@vger.kernel.org Cc: samba-technical@lists.samba.org Signed-off-by: Stefan Metzmacher <metze@samba.org> Signed-off-by: Steve French <stfrench@microsoft.com>
1 parent 6c5b0f9 commit 02c39c0

File tree

1 file changed

+26
-0
lines changed

1 file changed

+26
-0
lines changed

fs/smb/common/smbdirect/smbdirect_socket.h

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -334,6 +334,32 @@ struct smbdirect_recv_io {
334334
u8 packet[];
335335
};
336336

337+
enum smbdirect_mr_state {
338+
SMBDIRECT_MR_READY,
339+
SMBDIRECT_MR_REGISTERED,
340+
SMBDIRECT_MR_INVALIDATED,
341+
SMBDIRECT_MR_ERROR
342+
};
343+
344+
struct smbdirect_mr_io {
345+
struct smbdirect_socket *socket;
346+
struct ib_cqe cqe;
347+
348+
struct list_head list;
349+
350+
enum smbdirect_mr_state state;
351+
struct ib_mr *mr;
352+
struct sg_table sgt;
353+
enum dma_data_direction dir;
354+
union {
355+
struct ib_reg_wr wr;
356+
struct ib_send_wr inv_wr;
357+
};
358+
359+
bool need_invalidate;
360+
struct completion invalidate_done;
361+
};
362+
337363
struct smbdirect_rw_io {
338364
struct smbdirect_socket *socket;
339365
struct ib_cqe cqe;

0 commit comments

Comments
 (0)