]> git.proxmox.com Git - mirror_ubuntu-eoan-kernel.git/blob - include/uapi/linux/dlm_netlink.h
License cleanup: add SPDX license identifier to uapi header files with a license
[mirror_ubuntu-eoan-kernel.git] / include / uapi / linux / dlm_netlink.h
1 /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
2 /*
3 * Copyright (C) 2007 Red Hat, Inc. All rights reserved.
4 *
5 * This copyrighted material is made available to anyone wishing to use,
6 * modify, copy, or redistribute it subject to the terms and conditions
7 * of the GNU General Public License v.2.
8 */
9
10 #ifndef _DLM_NETLINK_H
11 #define _DLM_NETLINK_H
12
13 #include <linux/types.h>
14 #include <linux/dlmconstants.h>
15
16 enum {
17 DLM_STATUS_WAITING = 1,
18 DLM_STATUS_GRANTED = 2,
19 DLM_STATUS_CONVERT = 3,
20 };
21
22 #define DLM_LOCK_DATA_VERSION 1
23
24 struct dlm_lock_data {
25 __u16 version;
26 __u32 lockspace_id;
27 int nodeid;
28 int ownpid;
29 __u32 id;
30 __u32 remid;
31 __u64 xid;
32 __s8 status;
33 __s8 grmode;
34 __s8 rqmode;
35 unsigned long timestamp;
36 int resource_namelen;
37 char resource_name[DLM_RESNAME_MAXLEN];
38 };
39
40 enum {
41 DLM_CMD_UNSPEC = 0,
42 DLM_CMD_HELLO, /* user->kernel */
43 DLM_CMD_TIMEOUT, /* kernel->user */
44 __DLM_CMD_MAX,
45 };
46
47 #define DLM_CMD_MAX (__DLM_CMD_MAX - 1)
48
49 enum {
50 DLM_TYPE_UNSPEC = 0,
51 DLM_TYPE_LOCK,
52 __DLM_TYPE_MAX,
53 };
54
55 #define DLM_TYPE_MAX (__DLM_TYPE_MAX - 1)
56
57 #define DLM_GENL_VERSION 0x1
58 #define DLM_GENL_NAME "DLM"
59
60 #endif /* _DLM_NETLINK_H */