Whamcloud - gitweb
LU-6245 libcfs: make libcfs_ioctl.h and lnetctl.h uapi compliant
[fs/lustre-release.git] / lustre / include / lustre_ioctl.h
index 737c144..cefbc7e 100644 (file)
@@ -23,7 +23,7 @@
  * Copyright (c) 2007, 2010, Oracle and/or its affiliates. All rights reserved.
  * Use is subject to license terms.
  *
- * Copyright (c) 2011, 2013, 2014, Intel Corporation.
+ * Copyright (c) 2011, 2015, Intel Corporation.
  */
 #ifndef LUSTRE_IOCTL_H_
 #define LUSTRE_IOCTL_H_
@@ -55,6 +55,12 @@ enum md_echo_cmd {
        ECHO_MD_ALLOC_FID       = 8, /* Get FIDs from MDT */
 };
 
+#define OBD_DEV_ID 1
+#define OBD_DEV_NAME "obd"
+#define OBD_DEV_PATH "/dev/" OBD_DEV_NAME
+#define OBD_DEV_MAJOR 10
+#define OBD_DEV_MINOR 241
+
 #define OBD_IOCTL_VERSION      0x00010004
 #define OBD_DEV_BY_DEVNAME     0xffffd0de
 #define OBD_MAX_IOCTL_BUFFER   CONFIG_LUSTRE_OBD_MAX_IOCTL_BUFFER
@@ -79,8 +85,8 @@ struct obd_ioctl_data {
        struct obdo     ioc_obdo1;
        struct obdo     ioc_obdo2;
 
-       obd_size        ioc_count;
-       obd_off         ioc_offset;
+       __u64           ioc_count;
+       __u64           ioc_offset;
        __u32           ioc_dev;
        __u32           ioc_command;
 
@@ -90,9 +96,9 @@ struct obd_ioctl_data {
 
        /* buffers the kernel will treat as user pointers */
        __u32           ioc_plen1;
-       char           *ioc_pbuf1;
+       char __user    *ioc_pbuf1;
        __u32           ioc_plen2;
-       char           *ioc_pbuf2;
+       char __user    *ioc_pbuf2;
 
        /* inline buffers for various arguments */
        __u32           ioc_inllen1;
@@ -202,8 +208,8 @@ static inline int obd_ioctl_is_invalid(struct obd_ioctl_data *data)
 
 #ifdef __KERNEL__
 
-int obd_ioctl_getdata(char **buf, int *len, void *arg);
-int obd_ioctl_popdata(void *arg, void *data, int len);
+int obd_ioctl_getdata(char **buf, int *len, void __user *arg);
+int obd_ioctl_popdata(void __user *arg, void *data, int len);
 
 static inline void obd_ioctl_freedata(char *buf, size_t len)
 {
@@ -357,8 +363,8 @@ obd_ioctl_unpack(struct obd_ioctl_data *data, char *pbuf, int max_len)
 /*     OBD_IOC_LOV_GETSTRIPE   155 LL_IOC_LOV_GETSTRIPE */
 /*     OBD_IOC_LOV_SETEA       156 LL_IOC_LOV_SETEA */
 /*     lustre/lustre_user.h    157-159 */
-#define OBD_IOC_QUOTACHECK     _IOW ('f', 160, int)
-#define OBD_IOC_POLL_QUOTACHECK        _IOR ('f', 161, struct if_quotacheck *)
+/*     OBD_IOC_QUOTACHECK      _IOW ('f', 160, int) */
+/*     OBD_IOC_POLL_QUOTACHECK _IOR ('f', 161, struct if_quotacheck *) */
 #define OBD_IOC_QUOTACTL       _IOWR('f', 162, struct if_quotactl)
 /*     lustre/lustre_user.h    163-176 */
 #define OBD_IOC_CHANGELOG_REG  _IOW ('f', 177, struct obd_ioctl_data)
@@ -369,7 +375,7 @@ obd_ioctl_unpack(struct obd_ioctl_data *data, char *pbuf, int max_len)
 /*     OBD_IOC_PARSE           _IOWR('f', 182, OBD_IOC_DATA_TYPE) */
 /*     OBD_IOC_DORECORD        _IOWR('f', 183, OBD_IOC_DATA_TYPE) */
 #define OBD_IOC_PROCESS_CFG    _IOWR('f', 184, OBD_IOC_DATA_TYPE)
-#define OBD_IOC_DUMP_LOG       _IOWR('f', 185, OBD_IOC_DATA_TYPE)
+/*     OBD_IOC_DUMP_LOG        _IOWR('f', 185, OBD_IOC_DATA_TYPE) */
 /*     OBD_IOC_CLEAR_LOG       _IOWR('f', 186, OBD_IOC_DATA_TYPE) */
 #define OBD_IOC_PARAM          _IOW ('f', 187, OBD_IOC_DATA_TYPE)
 #define OBD_IOC_POOL           _IOWR('f', 188, OBD_IOC_DATA_TYPE)
@@ -397,7 +403,7 @@ obd_ioctl_unpack(struct obd_ioctl_data *data, char *pbuf, int max_len)
 #define OBD_IOC_ECHO_ALLOC_SEQ _IOWR('f', 222, struct obd_ioctl_data)
 #define OBD_IOC_START_LFSCK    _IOWR('f', 230, OBD_IOC_DATA_TYPE)
 #define OBD_IOC_STOP_LFSCK     _IOW ('f', 231, OBD_IOC_DATA_TYPE)
-/*     lustre/lustre_user.h    240-246 */
+/*     lustre/lustre_user.h    240-249 */
 /*     LIBCFS_IOC_DEBUG_MASK   250 */
 
 #define IOC_OSC_SET_ACTIVE     _IOWR('h', 21, void *)