Whamcloud - gitweb
LU-5557 mdt: track reint operations in MDS service stats
[fs/lustre-release.git] / lustre / include / lprocfs_status.h
index 1786c45..4e992e6 100644 (file)
@@ -351,7 +351,7 @@ enum {
 
 #define PTLRPC_FIRST_CNTR PTLRPC_REQWAIT_CNTR
 
-enum {
+enum lprocfs_extra_opc {
         LDLM_GLIMPSE_ENQUEUE = 0,
         LDLM_PLAIN_ENQUEUE,
         LDLM_EXTENT_ENQUEUE,
@@ -371,7 +371,7 @@ enum {
 
 #define EXTRA_FIRST_OPC LDLM_GLIMPSE_ENQUEUE
 /* class_obd.c */
-extern cfs_proc_dir_entry_t *proc_lustre_root;
+extern struct proc_dir_entry *proc_lustre_root;
 
 struct obd_device;
 struct obd_histogram;
@@ -588,7 +588,7 @@ extern void lprocfs_free_md_stats(struct obd_device *obddev);
 struct obd_export;
 struct nid_stat;
 extern int lprocfs_add_clear_entry(struct obd_device * obd,
-                                   cfs_proc_dir_entry_t *entry);
+                                  struct proc_dir_entry *entry);
 #ifdef HAVE_SERVER_SUPPORT
 extern int lprocfs_exp_setup(struct obd_export *exp,
                              lnet_nid_t *peer_nid, int *newnid);
@@ -599,9 +599,6 @@ static inline int lprocfs_exp_cleanup(struct obd_export *exp)
 #endif
 extern struct proc_dir_entry *
 lprocfs_add_simple(struct proc_dir_entry *root, char *name,
-#ifndef HAVE_ONLY_PROCFS_SEQ
-                  read_proc_t *read_proc, write_proc_t *write_proc,
-#endif
                   void *data, const struct file_operations *fops);
 extern struct proc_dir_entry *
 lprocfs_add_symlink(const char *name, struct proc_dir_entry *parent,
@@ -613,35 +610,35 @@ lprocfs_nid_stats_clear_seq_write(struct file *file, const char *buffer,
                                        size_t count, loff_t *off);
 extern int lprocfs_nid_stats_clear_seq_show(struct seq_file *file, void *data);
 #endif
-extern int lprocfs_register_stats(cfs_proc_dir_entry_t *root, const char *name,
+extern int lprocfs_register_stats(struct proc_dir_entry *root, const char *name,
                                   struct lprocfs_stats *stats);
 
 /* lprocfs_status.c */
 #ifndef HAVE_ONLY_PROCFS_SEQ
-extern int lprocfs_add_vars(cfs_proc_dir_entry_t *root,
+extern int lprocfs_add_vars(struct proc_dir_entry *root,
                             struct lprocfs_vars *var,
                             void *data);
 
-extern cfs_proc_dir_entry_t *lprocfs_register(const char *name,
-                                             cfs_proc_dir_entry_t *parent,
+extern struct proc_dir_entry *lprocfs_register(const char *name,
+                                             struct proc_dir_entry *parent,
                                              struct lprocfs_vars *list,
                                              void *data);
 #endif
-extern int lprocfs_seq_add_vars(cfs_proc_dir_entry_t *root,
+extern int lprocfs_seq_add_vars(struct proc_dir_entry *root,
                                struct lprocfs_seq_vars *var,
                                void *data);
 
-extern cfs_proc_dir_entry_t *
-lprocfs_seq_register(const char *name, cfs_proc_dir_entry_t *parent,
+extern struct proc_dir_entry *
+lprocfs_seq_register(const char *name, struct proc_dir_entry *parent,
                     struct lprocfs_seq_vars *list, void *data);
-extern void lprocfs_remove(cfs_proc_dir_entry_t **root);
+extern void lprocfs_remove(struct proc_dir_entry **root);
 extern void lprocfs_remove_proc_entry(const char *name,
                                       struct proc_dir_entry *parent);
 #ifndef HAVE_ONLY_PROCFS_SEQ
 extern void lprocfs_try_remove_proc_entry(const char *name,
                                          struct proc_dir_entry *parent);
 
-extern cfs_proc_dir_entry_t *lprocfs_srch(cfs_proc_dir_entry_t *root,
+extern struct proc_dir_entry *lprocfs_srch(struct proc_dir_entry *root,
                                           const char *name);
 #endif
 extern int lprocfs_obd_setup(struct obd_device *dev);
@@ -661,12 +658,14 @@ extern int lprocfs_obd_seq_create(struct obd_device *dev, const char *name,
 /* Generic callbacks */
 extern int lprocfs_u64_seq_show(struct seq_file *m, void *data);
 extern int lprocfs_atomic_seq_show(struct seq_file *m, void *data);
-extern ssize_t lprocfs_atomic_seq_write(struct file *file, const char *buffer,
+extern ssize_t lprocfs_atomic_seq_write(struct file *file,
+                                       const char __user *buffer,
                                        size_t count, loff_t *off);
 extern int lprocfs_uint_seq_show(struct seq_file *m, void *data);
-extern ssize_t lprocfs_uint_seq_write(struct file *file, const char *buffer,
+extern ssize_t lprocfs_uint_seq_write(struct file *file,
+                                     const char __user *buffer,
                                      size_t count, loff_t *off);
-extern int lprocfs_wr_uint(struct file *file, const char *buffer,
+extern int lprocfs_wr_uint(struct file *file, const char __user *buffer,
                           unsigned long count, void *data);
 extern int lprocfs_uuid_seq_show(struct seq_file *m, void *data);
 extern int lprocfs_name_seq_show(struct seq_file *m, void *data);
@@ -700,7 +699,7 @@ extern ssize_t
 lprocfs_ping_seq_write(struct file *file, const char *buffer,
                       size_t count, loff_t *off);
 extern ssize_t
-lprocfs_import_seq_write(struct file *file, const char *buffer,
+lprocfs_import_seq_write(struct file *file, const char __user *buffer,
                         size_t count, loff_t *off);
 extern int lprocfs_pinger_recov_seq_show(struct seq_file *m, void *data);
 extern ssize_t
@@ -715,16 +714,17 @@ extern int lprocfs_kbytesavail_seq_show(struct seq_file *m, void *data);
 extern int lprocfs_filestotal_seq_show(struct seq_file *m, void *data);
 extern int lprocfs_filesfree_seq_show(struct seq_file *m, void *data);
 
-extern int lprocfs_write_helper(const char *buffer, unsigned long count,
+extern int lprocfs_write_helper(const char __user *buffer, unsigned long count,
                                 int *val);
-extern int lprocfs_write_frac_helper(const char *buffer, unsigned long count,
-                                     int *val, int mult);
+extern int lprocfs_write_frac_helper(const char __user *buffer,
+                                    unsigned long count,
+                                    int *val, int mult);
 extern int lprocfs_seq_read_frac_helper(struct seq_file *m, long val, int mult);
 extern int lprocfs_read_frac_helper(char *buffer, unsigned long count,
                                     long val, int mult);
-extern int lprocfs_write_u64_helper(const char *buffer, unsigned long count,
-                                    __u64 *val);
-extern int lprocfs_write_frac_u64_helper(const char *buffer,
+extern int lprocfs_write_u64_helper(const char __user *buffer,
+                                   unsigned long count, __u64 *val);
+extern int lprocfs_write_frac_u64_helper(const char __user *buffer,
                                          unsigned long count,
                                          __u64 *val, int mult);
 char *lprocfs_find_named_value(const char *buffer, const char *name,
@@ -750,8 +750,8 @@ ssize_t
 lprocfs_ir_factor_seq_write(struct file *file, const char *buffer,
                                size_t count, loff_t *off);
 #endif
-extern int lprocfs_single_release(cfs_inode_t *, struct file *);
-extern int lprocfs_seq_release(cfs_inode_t *, struct file *);
+extern int lprocfs_single_release(struct inode *, struct file *);
+extern int lprocfs_seq_release(struct inode *, struct file *);
 
 /* You must use these macros when you want to refer to
  * the import in a client obd_device for a lprocfs entry */
@@ -771,7 +771,7 @@ extern int lprocfs_seq_release(cfs_inode_t *, struct file *);
   a read-write proc entry, and then call LPROC_SEQ_SEQ instead. Finally,
   call lprocfs_obd_seq_create(obd, filename, 0444, &name#_fops, data); */
 #define __LPROC_SEQ_FOPS(name, custom_seq_write)                       \
-static int name##_single_open(cfs_inode_t *inode, struct file *file)   \
+static int name##_single_open(struct inode *inode, struct file *file)  \
 {                                                                      \
        LPROCFS_ENTRY_CHECK(PDE(inode));                                \
        return single_open(file, name##_seq_show, PDE_DATA(inode));     \
@@ -801,7 +801,8 @@ struct file_operations name##_fops = {                                      \
                return lprocfs_##type##_seq_show(m, m->private);        \
        }                                                               \
        static ssize_t name##_##type##_seq_write(struct file *file,     \
-                       const char *buffer, size_t count, loff_t *off)  \
+                       const char __user *buffer, size_t count,        \
+                       loff_t *off)                                    \
        {                                                               \
                struct seq_file *seq = file->private_data;              \
                return lprocfs_##type##_seq_write(file, buffer,         \
@@ -811,11 +812,12 @@ struct file_operations name##_fops = {                                    \
 
 #define LPROC_SEQ_FOPS_WO_TYPE(name, type)                             \
        static ssize_t name##_##type##_write(struct file *file,         \
-                       const char *buffer, size_t count, loff_t *off)  \
+                       const char __user *buffer, size_t count,        \
+                       loff_t *off)                                    \
        {                                                               \
-               return lprocfs_##type##_seq_write(file, buffer, count, off);    \
+               return lprocfs_##type##_seq_write(file, buffer, count, off);\
        }                                                               \
-       static int name##_##type##_open(cfs_inode_t *inode, struct file *file)  \
+       static int name##_##type##_open(struct inode *inode, struct file *file)\
        {                                                               \
                return single_open(file, NULL, PDE_DATA(inode));        \
        }                                                               \
@@ -857,9 +859,9 @@ lprocfs_obd_max_pages_per_rpc_seq_write(struct file *file, const char *buffer,
                                       size_t count, loff_t *off);
 
 struct root_squash_info;
-int lprocfs_wr_root_squash(const char *buffer, unsigned long count,
+int lprocfs_wr_root_squash(const char __user *buffer, unsigned long count,
                           struct root_squash_info *squash, char *name);
-int lprocfs_wr_nosquash_nids(const char *buffer, unsigned long count,
+int lprocfs_wr_nosquash_nids(const char __user *buffer, unsigned long count,
                             struct root_squash_info *squash, char *name);
 
 /* all quota proc functions */
@@ -955,7 +957,7 @@ static inline void lprocfs_clear_stats(struct lprocfs_stats *stats)
 { return; }
 static inline void lprocfs_free_stats(struct lprocfs_stats **stats)
 { return; }
-static inline int lprocfs_register_stats(cfs_proc_dir_entry_t *root,
+static inline int lprocfs_register_stats(struct proc_dir_entry *root,
                                          const char *name,
                                          struct lprocfs_stats *stats)
 { return 0; }
@@ -999,9 +1001,6 @@ static inline int lprocfs_exp_cleanup(struct obd_export *exp)
 { return 0; }
 static inline struct proc_dir_entry *
 lprocfs_add_simple(struct proc_dir_entry *root, char *name,
-#ifndef HAVE_ONLY_PROCFS_SEQ
-                  read_proc_t *read_proc, write_proc_t *write_proc,
-#endif
                   void *data, const struct file_operations *fops)
 {return 0; }
 static inline struct proc_dir_entry *
@@ -1009,24 +1008,24 @@ lprocfs_add_symlink(const char *name, struct proc_dir_entry *parent,
                     const char *format, ...)
 {return NULL; }
 #ifndef HAVE_ONLY_PROCFS_SEQ
-static inline cfs_proc_dir_entry_t *
-lprocfs_register(const char *name, cfs_proc_dir_entry_t *parent,
+static inline struct proc_dir_entry *
+lprocfs_register(const char *name, struct proc_dir_entry *parent,
                 struct lprocfs_vars *list, void *data)
 { return NULL; }
-static inline int lprocfs_add_vars(cfs_proc_dir_entry_t *root,
+static inline int lprocfs_add_vars(struct proc_dir_entry *root,
                                    struct lprocfs_vars *var,
                                    void *data)
 { return 0; }
 #endif
-static inline int lprocfs_seq_add_vars(cfs_proc_dir_entry_t *root,
+static inline int lprocfs_seq_add_vars(struct proc_dir_entry *root,
                                       struct lprocfs_seq_vars *var,
                                       void *data)
 { return 0; }
-static inline cfs_proc_dir_entry_t *
-lprocfs_seq_register(const char *name, cfs_proc_dir_entry_t *parent,
+static inline struct proc_dir_entry *
+lprocfs_seq_register(const char *name, struct proc_dir_entry *parent,
                     struct lprocfs_seq_vars *list, void *data)
 { return NULL; }
-static inline void lprocfs_remove(cfs_proc_dir_entry_t **root)
+static inline void lprocfs_remove(struct proc_dir_entry **root)
 { return; }
 static inline void lprocfs_remove_proc_entry(const char *name,
                                              struct proc_dir_entry *parent)
@@ -1035,7 +1034,7 @@ static inline void lprocfs_remove_proc_entry(const char *name,
 static inline void lprocfs_try_remove_proc_entry(const char *name,
                                                 struct proc_dir_entry *parent)
 { return; }
-static inline cfs_proc_dir_entry_t *lprocfs_srch(cfs_proc_dir_entry_t *head,
+static inline struct proc_dir_entry *lprocfs_srch(struct proc_dir_entry *head,
                                                  const char *name)
 { return 0; }
 #endif
@@ -1078,18 +1077,18 @@ lprocfs_evict_client_seq_write(struct file *file, const char *buffer,
 { return 0; }
 #endif
 static inline ssize_t
-lprocfs_ping_seq_write(struct file *file, const char *buffer,
+lprocfs_ping_seq_write(struct file *file, const char __user *buffer,
                       size_t count, loff_t *off)
 { return 0; }
 static inline ssize_t
-lprocfs_import_seq_write(struct file *file, const char *buffer,
+lprocfs_import_seq_write(struct file *file, const char __user *buffer,
                         size_t count, loff_t *off)
 { return 0; }
 static inline int
 lprocfs_pinger_recov_seq_show(struct seq_file *m, void *data)
 { return 0; }
 static inline ssize_t
-lprocfs_pinger_recov_seq_write(struct file *file, const char *buffer,
+lprocfs_pinger_recov_seq_write(struct file *file, const char __user *buffer,
                               size_t count, loff_t *off)
 { return 0; }