xref: /openbmc/linux/fs/dlm/config.h (revision 1ac731c529cd4d6adbce134754b51ff7d822b145)
12522fe45SThomas Gleixner /* SPDX-License-Identifier: GPL-2.0-only */
2e7fd4179SDavid Teigland /******************************************************************************
3e7fd4179SDavid Teigland *******************************************************************************
4e7fd4179SDavid Teigland **
5e7fd4179SDavid Teigland **  Copyright (C) Sistina Software, Inc.  1997-2003  All rights reserved.
660f98d18SDavid Teigland **  Copyright (C) 2004-2011 Red Hat, Inc.  All rights reserved.
7e7fd4179SDavid Teigland **
8e7fd4179SDavid Teigland **
9e7fd4179SDavid Teigland *******************************************************************************
10e7fd4179SDavid Teigland ******************************************************************************/
11e7fd4179SDavid Teigland 
12e7fd4179SDavid Teigland #ifndef __CONFIG_DOT_H__
13e7fd4179SDavid Teigland #define __CONFIG_DOT_H__
14e7fd4179SDavid Teigland 
15*d10a0b88SAlexander Aring #define DLM_MAX_SOCKET_BUFSIZE	4096
164798cbbfSAlexander Aring 
1760f98d18SDavid Teigland struct dlm_config_node {
1860f98d18SDavid Teigland 	int nodeid;
1960f98d18SDavid Teigland 	int weight;
2060f98d18SDavid Teigland 	int new;
2160f98d18SDavid Teigland 	uint32_t comm_seq;
2260f98d18SDavid Teigland };
2360f98d18SDavid Teigland 
24e7fd4179SDavid Teigland #define DLM_MAX_ADDR_COUNT 3
25e7fd4179SDavid Teigland 
26ac7d5d03SAlexander Aring #define DLM_PROTO_TCP	0
27ac7d5d03SAlexander Aring #define DLM_PROTO_SCTP	1
28ac7d5d03SAlexander Aring 
29e7fd4179SDavid Teigland struct dlm_config_info {
3068c817a1SDavid Teigland 	int ci_tcp_port;
3168c817a1SDavid Teigland 	int ci_buffer_size;
3268c817a1SDavid Teigland 	int ci_rsbtbl_size;
3368c817a1SDavid Teigland 	int ci_recover_timer;
3468c817a1SDavid Teigland 	int ci_toss_secs;
3568c817a1SDavid Teigland 	int ci_scan_secs;
3699fc6487SDavid Teigland 	int ci_log_debug;
37505ee528SZhilong Liu 	int ci_log_info;
386ed7257bSPatrick Caulfield 	int ci_protocol;
39a5b7ab63SAlexander Aring 	int ci_mark;
403881ac04SDavid Teigland 	int ci_new_rsb_count;
4160f98d18SDavid Teigland 	int ci_recover_callbacks;
4260f98d18SDavid Teigland 	char ci_cluster_name[DLM_LOCKSPACE_LEN];
43e7fd4179SDavid Teigland };
44e7fd4179SDavid Teigland 
45e7fd4179SDavid Teigland extern struct dlm_config_info dlm_config;
46e7fd4179SDavid Teigland 
47e7fd4179SDavid Teigland int dlm_config_init(void);
48e7fd4179SDavid Teigland void dlm_config_exit(void);
4960f98d18SDavid Teigland int dlm_config_nodes(char *lsname, struct dlm_config_node **nodes_out,
5060f98d18SDavid Teigland 		     int *count_out);
5160f98d18SDavid Teigland int dlm_comm_seq(int nodeid, uint32_t *seq);
52e7fd4179SDavid Teigland int dlm_our_nodeid(void);
53e7fd4179SDavid Teigland int dlm_our_addr(struct sockaddr_storage *addr, int num);
54e7fd4179SDavid Teigland 
55e7fd4179SDavid Teigland #endif				/* __CONFIG_DOT_H__ */
56e7fd4179SDavid Teigland 
57