Whamcloud - gitweb
LU-11765 ofd: return EAGAIN during 1st CLEANUP_ORPHAN
[fs/lustre-release.git] / lustre / ofd / ofd_internal.h
index 16d3d3d..afc210b 100644 (file)
@@ -106,7 +106,8 @@ struct ofd_seq {
        struct mutex            os_create_lock;
        atomic_t                os_refc;
        struct dt_object        *os_lastid_obj;
-       unsigned long           os_destroys_in_progress:1;
+       unsigned long           os_destroys_in_progress:1,
+                               os_last_id_synced:1;
 };
 
 struct ofd_device {
@@ -142,12 +143,14 @@ struct ofd_device {
        spinlock_t               ofd_flags_lock;
        unsigned long            ofd_raid_degraded:1,
                                 /* sync journal on writes */
-                                ofd_syncjournal:1,
+                                ofd_sync_journal:1,
                                 /* Protected by ofd_lastid_rwsem. */
                                 ofd_lastid_rebuilding:1,
                                 ofd_record_fid_accessed:1,
                                 ofd_lfsck_verify_pfid:1,
-                                ofd_skip_lfsck:1;
+                                ofd_skip_lfsck:1,
+                                /* Whether to enforce T10PI checksum of RPC */
+                                ofd_checksum_t10pi_enforce:1;
        struct seq_server_site   ofd_seq_site;
        /* the limit of SOFT_SYNC RPCs that will trigger a soft sync */
        unsigned int             ofd_soft_sync_limit;
@@ -157,6 +160,10 @@ struct ofd_device {
        struct ptlrpc_thread     ofd_inconsistency_thread;
        struct list_head         ofd_inconsistency_list;
        spinlock_t               ofd_inconsistency_lock;
+       /* Backwards compatibility */
+       struct attribute        *ofd_read_cache_enable;
+       struct attribute        *ofd_read_cache_max_filesize;
+       struct attribute        *ofd_write_cache_enable;
 };
 
 static inline struct ofd_device *ofd_dev(struct lu_device *d)
@@ -299,7 +306,7 @@ extern struct obd_ops ofd_obd_ops;
 int ofd_destroy_by_fid(const struct lu_env *env, struct ofd_device *ofd,
                       const struct lu_fid *fid, int orphan);
 int ofd_statfs(const struct lu_env *env,  struct obd_export *exp,
-              struct obd_statfs *osfs, __u64 max_age, __u32 flags);
+              struct obd_statfs *osfs, time64_t max_age, __u32 flags);
 int ofd_obd_disconnect(struct obd_export *exp);
 
 /* ofd_fs.c */
@@ -348,8 +355,8 @@ int ofd_txn_stop_cb(const struct lu_env *env, struct thandle *txn,
                    void *cookie);
 
 /* lproc_ofd.c */
+int ofd_tunables_init(struct ofd_device *ofd);
 #ifdef CONFIG_PROC_FS
-extern struct lprocfs_vars lprocfs_ofd_obd_vars[];
 void ofd_stats_counter_init(struct lprocfs_stats *stats);
 #else
 static inline void ofd_stats_counter_init(struct lprocfs_stats *stats) {}
@@ -424,9 +431,9 @@ extern struct ldlm_valblock_ops ofd_lvbo;
 /* ofd_dlm.c */
 extern struct kmem_cache *ldlm_glimpse_work_kmem;
 
-int ofd_intent_policy(struct ldlm_namespace *ns, struct ldlm_lock **lockp,
-                     void *req_cookie, enum ldlm_mode mode, __u64 flags,
-                     void *data);
+int ofd_intent_policy(const struct lu_env *env, struct ldlm_namespace *ns,
+                     struct ldlm_lock **lockp, void *req_cookie,
+                     enum ldlm_mode mode, __u64 flags, void *data);
 
 static inline struct ofd_thread_info *ofd_info(const struct lu_env *env)
 {
@@ -483,7 +490,7 @@ static inline struct ofd_thread_info *tsi2ofd_info(struct tgt_session_info *tsi)
  * sync on lock cancel if it is not enabled already. */
 static inline void ofd_slc_set(struct ofd_device *ofd)
 {
-       if (ofd->ofd_syncjournal == 1)
+       if (ofd->ofd_sync_journal == 1)
                ofd->ofd_lut.lut_sync_lock_cancel = NEVER_SYNC_ON_CANCEL;
        else if (ofd->ofd_lut.lut_sync_lock_cancel == NEVER_SYNC_ON_CANCEL)
                ofd->ofd_lut.lut_sync_lock_cancel = ALWAYS_SYNC_ON_CANCEL;