diff options
author | Patrick Caulfield <pcaulfie@redhat.com> | 2006-06-09 16:14:20 -0400 |
---|---|---|
committer | Steven Whitehouse <swhiteho@redhat.com> | 2006-06-09 16:14:20 -0400 |
commit | 22da645fd6675b7abc55cf937ddf6132f343e5b9 (patch) | |
tree | d207185431838faa4053422612512ebe30308c9c /include/linux | |
parent | 01eb7c07968fdab0cca0d2474346cff176537de8 (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.h | 11 |
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 */ |
26 | struct dlm_lock_params { | 26 | struct 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 | ||
41 | struct dlm_lspace_params { | 41 | struct 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 | ||
47 | struct dlm_write_request { | 47 | struct 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 | }; |