Whamcloud - gitweb
Branch b1_8_gate
authorbobijam <bobijam>
Wed, 6 Aug 2008 02:44:43 +0000 (02:44 +0000)
committerbobijam <bobijam>
Wed, 6 Aug 2008 02:44:43 +0000 (02:44 +0000)
b=16317
o=Herb Wartens(hwartens@llnl.gov)
i=wangdi, johann

Description: exports in /proc are broken
Details    : recreate /proc entries for clients when they reconnect.

lustre/include/lprocfs_status.h

index f5fcf8d..4642feb 100644 (file)
@@ -362,11 +362,11 @@ extern void lprocfs_counter_sub(struct lprocfs_stats *stats, int idx,
 #define lprocfs_counter_decr(stats, idx) \
         lprocfs_counter_sub(stats, idx, 1)
 
-extern __s64 lprocfs_read_helper(struct lprocfs_counter *lc, 
+extern __s64 lprocfs_read_helper(struct lprocfs_counter *lc,
                                  enum lprocfs_fields_flags field);
 
-static inline __u64 lprocfs_stats_collector(struct lprocfs_stats *stats, 
-                                            int idx, 
+static inline __u64 lprocfs_stats_collector(struct lprocfs_stats *stats,
+                                            int idx,
                                             enum lprocfs_fields_flags field)
 {
         __u64 ret = 0;
@@ -379,12 +379,13 @@ static inline __u64 lprocfs_stats_collector(struct lprocfs_stats *stats,
         return ret;
 }
 
-extern struct lprocfs_stats *lprocfs_alloc_stats(unsigned int num, 
+extern struct lprocfs_stats *lprocfs_alloc_stats(unsigned int num,
                                                  enum lprocfs_stats_flags flags);
 extern void lprocfs_clear_stats(struct lprocfs_stats *stats);
 extern void lprocfs_free_stats(struct lprocfs_stats **stats);
-extern void lprocfs_init_ops_stats(int num_private_stats, 
+extern void lprocfs_init_ops_stats(int num_private_stats,
                                    struct lprocfs_stats *stats);
+extern void lprocfs_init_ldlm_stats(struct lprocfs_stats *ldlm_stats);
 extern int lprocfs_alloc_obd_stats(struct obd_device *obddev,
                                    unsigned int num_private_stats);
 extern void lprocfs_counter_init(struct lprocfs_stats *stats, int index,
@@ -433,7 +434,7 @@ extern int lprocfs_nid_stats_clear_read(char *page, char **start, off_t off,
 
 extern struct file_operations lprocfs_evict_client_fops;
 
-extern int lprocfs_seq_create(cfs_proc_dir_entry_t *parent, char *name, 
+extern int lprocfs_seq_create(cfs_proc_dir_entry_t *parent, char *name,
                               mode_t mode, struct file_operations *seq_fops,
                               void *data);
 extern int lprocfs_obd_seq_create(struct obd_device *dev, char *name,
@@ -469,7 +470,7 @@ extern int lprocfs_rd_num_exports(char *page, char **start, off_t off,
 extern int lprocfs_rd_numrefs(char *page, char **start, off_t off,
                               int count, int *eof, void *data);
 struct adaptive_timeout;
-extern int lprocfs_at_hist_helper(char *page, int count, int rc, 
+extern int lprocfs_at_hist_helper(char *page, int count, int rc,
                                   struct adaptive_timeout *at);
 extern int lprocfs_rd_timeouts(char *page, char **start, off_t off,
                                int count, int *eof, void *data);
@@ -500,7 +501,7 @@ extern int lprocfs_write_helper(const char *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_read_frac_helper(char *buffer, unsigned long count, 
+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);
@@ -540,7 +541,7 @@ extern struct rw_semaphore _lprocfs_lock;
         }                                       \
 } while(0)
 
-/* You must use these macros when you want to refer to 
+/* You must use these macros when you want to refer to
  * the import in a client obd_device for a lprocfs entry */
 #define LPROCFS_CLIMP_CHECK(obd) do {           \
         typecheck(struct obd_device *, obd);    \
@@ -554,8 +555,8 @@ extern struct rw_semaphore _lprocfs_lock;
         up_read(&(obd)->u.cli.cl_sem);
 
 
-/* write the name##_seq_show function, call LPROC_SEQ_FOPS_RO for read-only 
-  proc entries; otherwise, you will define name##_seq_write function also for 
+/* write the name##_seq_show function, call LPROC_SEQ_FOPS_RO for read-only
+  proc entries; otherwise, you will define name##_seq_write function also for
   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)                           \
@@ -655,8 +656,8 @@ static inline void lprocfs_counter_init(struct lprocfs_stats *stats,
                                         const char *name, const char *units)
 { return; }
 
-static inline __u64 lc_read_helper(struct lprocfs_counter *lc, 
-                                   enum lprocfs_fields_flags field) 
+static inline __u64 lc_read_helper(struct lprocfs_counter *lc,
+                                   enum lprocfs_fields_flags field)
 { return 0; }
 
 static inline struct lprocfs_stats* lprocfs_alloc_stats(unsigned int num,
@@ -670,9 +671,11 @@ static inline int lprocfs_register_stats(cfs_proc_dir_entry_t *root,
                                             const char *name,
                                             struct lprocfs_stats *stats)
 { return 0; }
-static inline void lprocfs_init_ops_stats(int num_private_stats, 
+static inline void lprocfs_init_ops_stats(int num_private_stats,
                                           struct lprocfs_stats *stats)
 { return; }
+static inline void lprocfs_init_ldlm_stats(struct lprocfs_stats *ldlm_stats)
+{ return; }
 static inline int lprocfs_alloc_obd_stats(struct obd_device *obddev,
                                           unsigned int num_private_stats)
 { return 0; }
@@ -740,7 +743,7 @@ static inline int lprocfs_rd_numrefs(char *page, char **start, off_t off,
                                      int count, int *eof, void *data)
 { return 0; }
 struct adaptive_timeout;
-static inline int lprocfs_at_hist_helper(char *page, int count, int rc, 
+static inline int lprocfs_at_hist_helper(char *page, int count, int rc,
                                          struct adaptive_timeout *at)
 { return 0; }
 static inline int lprocfs_rd_timeouts(char *page, char **start, off_t off,
@@ -795,7 +798,7 @@ int lprocfs_counter_write(struct file *file, const char *buffer,
                           unsigned long count, void *data) { return 0; }
 
 static inline
-__u64 lprocfs_stats_collector(struct lprocfs_stats *stats, int idx, 
+__u64 lprocfs_stats_collector(struct lprocfs_stats *stats, int idx,
                                enum lprocfs_fields_flags field)
 { return (__u64)0; }