]> git.kernelconcepts.de Git - karo-tx-linux.git/blob - fs/dlm/config.h
Merge remote-tracking branch 'dlm/next'
[karo-tx-linux.git] / fs / dlm / config.h
1 /******************************************************************************
2 *******************************************************************************
3 **
4 **  Copyright (C) Sistina Software, Inc.  1997-2003  All rights reserved.
5 **  Copyright (C) 2004-2011 Red Hat, Inc.  All rights reserved.
6 **
7 **  This copyrighted material is made available to anyone wishing to use,
8 **  modify, copy, or redistribute it subject to the terms and conditions
9 **  of the GNU General Public License v.2.
10 **
11 *******************************************************************************
12 ******************************************************************************/
13
14 #ifndef __CONFIG_DOT_H__
15 #define __CONFIG_DOT_H__
16
17 struct dlm_config_node {
18         int nodeid;
19         int weight;
20         int new;
21         uint32_t comm_seq;
22 };
23
24 #define DLM_MAX_ADDR_COUNT 3
25
26 struct dlm_config_info {
27         int ci_tcp_port;
28         int ci_buffer_size;
29         int ci_rsbtbl_size;
30         int ci_recover_timer;
31         int ci_toss_secs;
32         int ci_scan_secs;
33         int ci_log_debug;
34         int ci_protocol;
35         int ci_timewarn_cs;
36         int ci_waitwarn_us;
37         int ci_new_rsb_count;
38         int ci_recover_callbacks;
39         char ci_cluster_name[DLM_LOCKSPACE_LEN];
40 };
41
42 extern struct dlm_config_info dlm_config;
43
44 int dlm_config_init(void);
45 void dlm_config_exit(void);
46 int dlm_config_nodes(char *lsname, struct dlm_config_node **nodes_out,
47                      int *count_out);
48 int dlm_comm_seq(int nodeid, uint32_t *seq);
49 int dlm_our_nodeid(void);
50 int dlm_our_addr(struct sockaddr_storage *addr, int num);
51
52 #endif                          /* __CONFIG_DOT_H__ */
53