1 /* 2 * This header was generated from the Linux kernel headers by update_headers.py, 3 * to provide necessary information from kernel to userspace, such as constants, 4 * structures, and macros, and thus, contains no copyrightable information. 5 */ 6 #ifndef _DLM_NETLINK_H 7 #define _DLM_NETLINK_H 8 #include <linux/types.h> 9 #include <linux/dlmconstants.h> 10 enum { 11 DLM_STATUS_WAITING = 1, 12 DLM_STATUS_GRANTED = 2, 13 DLM_STATUS_CONVERT = 3, 14 }; 15 #define DLM_LOCK_DATA_VERSION 1 16 struct dlm_lock_data { 17 __u16 version; 18 __u32 lockspace_id; 19 int nodeid; 20 int ownpid; 21 __u32 id; 22 __u32 remid; 23 __u64 xid; 24 __s8 status; 25 __s8 grmode; 26 __s8 rqmode; 27 unsigned long timestamp; 28 int resource_namelen; 29 char resource_name[DLM_RESNAME_MAXLEN]; 30 }; 31 enum { 32 DLM_CMD_UNSPEC = 0, 33 DLM_CMD_HELLO, 34 DLM_CMD_TIMEOUT, 35 __DLM_CMD_MAX, 36 }; 37 #define DLM_CMD_MAX (__DLM_CMD_MAX - 1) 38 enum { 39 DLM_TYPE_UNSPEC = 0, 40 DLM_TYPE_LOCK, 41 __DLM_TYPE_MAX, 42 }; 43 #define DLM_TYPE_MAX (__DLM_TYPE_MAX - 1) 44 #define DLM_GENL_VERSION 0x1 45 #define DLM_GENL_NAME "DLM" 46 #endif 47