Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
dlm_device.h
Go to the documentation of this file.
1 /******************************************************************************
2 *******************************************************************************
3 **
4 ** Copyright (C) Sistina Software, Inc. 1997-2003 All rights reserved.
5 ** Copyright (C) 2004-2007 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 _LINUX_DLM_DEVICE_H
15 #define _LINUX_DLM_DEVICE_H
16 
17 /* This is the device interface for dlm, most users will use a library
18  * interface.
19  */
20 
21 #include <linux/dlm.h>
22 #include <linux/types.h>
23 
24 #define DLM_USER_LVB_LEN 32
25 
26 /* Version of the device interface */
27 #define DLM_DEVICE_VERSION_MAJOR 6
28 #define DLM_DEVICE_VERSION_MINOR 0
29 #define DLM_DEVICE_VERSION_PATCH 1
30 
31 /* struct passed to the lock write */
45  struct dlm_lksb __user *lksb;
47  char name[0];
48 };
49 
53  char name[0];
54 };
55 
59 };
60 
66 
67  union {
71  } i;
72 };
73 
76 };
77 
78 /* struct read from the "device" fd,
79  consists mainly of userspace pointers for the library to use */
80 
87  struct dlm_lksb lksb;
90  /* Offsets may be zero if no data is present */
92 };
93 
94 /* Commands passed to the device */
95 #define DLM_USER_LOCK 1
96 #define DLM_USER_UNLOCK 2
97 #define DLM_USER_QUERY 3
98 #define DLM_USER_CREATE_LOCKSPACE 4
99 #define DLM_USER_REMOVE_LOCKSPACE 5
100 #define DLM_USER_PURGE 6
101 #define DLM_USER_DEADLOCK 7
102 
103 /* Lockspace flags */
104 #define DLM_USER_LSFLG_AUTOFREE 1
105 #define DLM_USER_LSFLG_FORCEFREE 2
106 
107 #endif
108