mirror of
git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2025-09-04 20:19:47 +08:00

This is the next step in the direction of a common smbdirect layer. Cc: Steve French <smfrench@gmail.com> Cc: Tom Talpey <tom@talpey.com> Cc: Long Li <longli@microsoft.com> Cc: Namjae Jeon <linkinjeon@kernel.org> Cc: Hyunchul Lee <hyc.lee@gmail.com> Cc: Meetakshi Setiya <meetakshisetiyaoss@gmail.com> 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>
44 lines
917 B
C
44 lines
917 B
C
/* SPDX-License-Identifier: GPL-2.0-or-later */
|
|
/*
|
|
* Copyright (c) 2025 Stefan Metzmacher
|
|
*/
|
|
|
|
#ifndef __FS_SMB_COMMON_SMBDIRECT_SMBDIRECT_SOCKET_H__
|
|
#define __FS_SMB_COMMON_SMBDIRECT_SMBDIRECT_SOCKET_H__
|
|
|
|
enum smbdirect_socket_status {
|
|
SMBDIRECT_SOCKET_CREATED,
|
|
SMBDIRECT_SOCKET_CONNECTING,
|
|
SMBDIRECT_SOCKET_CONNECTED,
|
|
SMBDIRECT_SOCKET_NEGOTIATE_FAILED,
|
|
SMBDIRECT_SOCKET_DISCONNECTING,
|
|
SMBDIRECT_SOCKET_DISCONNECTED,
|
|
SMBDIRECT_SOCKET_DESTROYED
|
|
};
|
|
|
|
struct smbdirect_socket {
|
|
enum smbdirect_socket_status status;
|
|
|
|
/* RDMA related */
|
|
struct {
|
|
struct rdma_cm_id *cm_id;
|
|
} rdma;
|
|
|
|
/* IB verbs related */
|
|
struct {
|
|
struct ib_pd *pd;
|
|
struct ib_cq *send_cq;
|
|
struct ib_cq *recv_cq;
|
|
|
|
/*
|
|
* shortcuts for rdma.cm_id->{qp,device};
|
|
*/
|
|
struct ib_qp *qp;
|
|
struct ib_device *dev;
|
|
} ib;
|
|
|
|
struct smbdirect_socket_parameters parameters;
|
|
};
|
|
|
|
#endif /* __FS_SMB_COMMON_SMBDIRECT_SMBDIRECT_SOCKET_H__ */
|