1 /* SPDX-License-Identifier: GPL-2.0 */
2 /*
3  * Shared Memory Communications over RDMA (SMC-R) and RoCE
4  *
5  * Socket Closing
6  *
7  * Copyright IBM Corp. 2016
8  *
9  * Author(s):  Ursula Braun <ubraun@linux.vnet.ibm.com>
10  */
11 
12 #ifndef SMC_CLOSE_H
13 #define SMC_CLOSE_H
14 
15 #include <linux/workqueue.h>
16 
17 #include "smc.h"
18 
19 #define SMC_MAX_STREAM_WAIT_TIMEOUT		(2 * HZ)
20 #define SMC_CLOSE_SOCK_PUT_DELAY		HZ
21 
22 void smc_close_wake_tx_prepared(struct smc_sock *smc);
23 int smc_close_active(struct smc_sock *smc);
24 int smc_close_shutdown_write(struct smc_sock *smc);
25 void smc_close_init(struct smc_sock *smc);
26 void smc_clcsock_release(struct smc_sock *smc);
27 int smc_close_abort(struct smc_connection *conn);
28 void smc_close_active_abort(struct smc_sock *smc);
29 
30 #endif /* SMC_CLOSE_H */
31