aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux
diff options
context:
space:
mode:
authorPatrick Caulfield <pcaulfie@redhat.com>2006-06-09 16:14:20 -0400
committerSteven Whitehouse <swhiteho@redhat.com>2006-06-09 16:14:20 -0400
commit22da645fd6675b7abc55cf937ddf6132f343e5b9 (patch)
treed207185431838faa4053422612512ebe30308c9c /include/linux
parent01eb7c07968fdab0cca0d2474346cff176537de8 (diff)
[DLM] compat patch
Here's a patch which add 32/64 bit compat to the DLM IOs and tidies the structures for alignment. As it causes an ABI change I had few qualms about adding the extra flag for "is64bit" as it simply uses a byte that would have been padding. Cc: David Woodhouse <dwmw2@infradead.org> Signed-off-by: Patrick Caulfield <pcaulfie@redhat.com> Signed-off-by: Steven Whitehouse <swhiteho@redhat.com>
Diffstat (limited to 'include/linux')
-rw-r--r--include/linux/dlm_device.h11
1 files changed, 7 insertions, 4 deletions
diff --git a/include/linux/dlm_device.h b/include/linux/dlm_device.h
index f8ba1981aa96..2a2dd189b9fd 100644
--- a/include/linux/dlm_device.h
+++ b/include/linux/dlm_device.h
@@ -18,35 +18,37 @@
18#define DLM_USER_LVB_LEN 32 18#define DLM_USER_LVB_LEN 32
19 19
20/* Version of the device interface */ 20/* Version of the device interface */
21#define DLM_DEVICE_VERSION_MAJOR 4 21#define DLM_DEVICE_VERSION_MAJOR 5
22#define DLM_DEVICE_VERSION_MINOR 0 22#define DLM_DEVICE_VERSION_MINOR 0
23#define DLM_DEVICE_VERSION_PATCH 0 23#define DLM_DEVICE_VERSION_PATCH 0
24 24
25/* struct passed to the lock write */ 25/* struct passed to the lock write */
26struct dlm_lock_params { 26struct dlm_lock_params {
27 __u8 mode; 27 __u8 mode;
28 __u8 namelen;
28 __u16 flags; 29 __u16 flags;
29 __u32 lkid; 30 __u32 lkid;
30 __u32 parent; 31 __u32 parent;
31 __u8 namelen;
32 void __user *castparam; 32 void __user *castparam;
33 void __user *castaddr; 33 void __user *castaddr;
34 void __user *bastparam; 34 void __user *bastparam;
35 void __user *bastaddr; 35 void __user *bastaddr;
36 struct dlm_lksb __user *lksb; 36 struct dlm_lksb __user *lksb;
37 char lvb[DLM_USER_LVB_LEN]; 37 char lvb[DLM_USER_LVB_LEN];
38 char name[1]; 38 char name[0];
39}; 39};
40 40
41struct dlm_lspace_params { 41struct dlm_lspace_params {
42 __u32 flags; 42 __u32 flags;
43 __u32 minor; 43 __u32 minor;
44 char name[1]; 44 char name[0];
45}; 45};
46 46
47struct dlm_write_request { 47struct dlm_write_request {
48 __u32 version[3]; 48 __u32 version[3];
49 __u8 cmd; 49 __u8 cmd;
50 __u8 is64bit;
51 __u8 unused[2];
50 52
51 union { 53 union {
52 struct dlm_lock_params lock; 54 struct dlm_lock_params lock;
@@ -63,6 +65,7 @@ struct dlm_lock_result {
63 struct dlm_lksb __user * user_lksb; 65 struct dlm_lksb __user * user_lksb;
64 struct dlm_lksb lksb; 66 struct dlm_lksb lksb;
65 __u8 bast_mode; 67 __u8 bast_mode;
68 __u8 unused[3];
66 /* Offsets may be zero if no data is present */ 69 /* Offsets may be zero if no data is present */
67 __u32 lvb_offset; 70 __u32 lvb_offset;
68}; 71};