GNU Linux-libre 6.1.86-gnu
[releases.git] / fs / dlm / lockspace.h
1 /* SPDX-License-Identifier: GPL-2.0-only */
2 /******************************************************************************
3 *******************************************************************************
4 **
5 **  Copyright (C) Sistina Software, Inc.  1997-2003  All rights reserved.
6 **  Copyright (C) 2004-2005 Red Hat, Inc.  All rights reserved.
7 **
8 **
9 *******************************************************************************
10 ******************************************************************************/
11
12 #ifndef __LOCKSPACE_DOT_H__
13 #define __LOCKSPACE_DOT_H__
14
15 /* DLM_LSFL_FS
16  *   The lockspace user is in the kernel (i.e. filesystem).  Enables
17  *   direct bast/cast callbacks.
18  *
19  * internal lockspace flag - will be removed in future
20  */
21 #define DLM_LSFL_FS     0x00000004
22
23 int dlm_lockspace_init(void);
24 void dlm_lockspace_exit(void);
25 struct dlm_ls *dlm_find_lockspace_global(uint32_t id);
26 struct dlm_ls *dlm_find_lockspace_local(void *id);
27 struct dlm_ls *dlm_find_lockspace_device(int minor);
28 void dlm_put_lockspace(struct dlm_ls *ls);
29 void dlm_stop_lockspaces(void);
30 int dlm_new_user_lockspace(const char *name, const char *cluster,
31                            uint32_t flags, int lvblen,
32                            const struct dlm_lockspace_ops *ops,
33                            void *ops_arg, int *ops_result,
34                            dlm_lockspace_t **lockspace);
35
36 #endif                          /* __LOCKSPACE_DOT_H__ */
37