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