+ * OST synchronization
+ */
+ cfs_spinlock_t opd_syn_lock;
+ /* unique generation, to recognize start of new records in the llog */
+ struct llog_gen opd_syn_generation;
+ /* number of changes to sync, used to wake up sync thread */
+ unsigned long opd_syn_changes;
+ /* processing of changes from previous mount is done? */
+ int opd_syn_prev_done;
+ /* found records */
+ struct ptlrpc_thread opd_syn_thread;
+ cfs_waitq_t opd_syn_waitq;
+ /* list of remotely committed rpc */
+ cfs_list_t opd_syn_committed_there;
+ /* number of changes being under sync */
+ int opd_syn_sync_in_progress;
+ /* number of RPCs in flight - flow control */
+ int opd_syn_rpc_in_flight;
+ int opd_syn_max_rpc_in_flight;
+ /* number of RPC in processing (including non-committed by OST) */
+ int opd_syn_rpc_in_progress;
+ int opd_syn_max_rpc_in_progress;
+ /* osd api's commit cb control structure */
+ struct dt_txn_callback opd_syn_txn_cb;
+ /* last used change number -- semantically similar to transno */
+ unsigned long opd_syn_last_used_id;
+ /* last committed change number -- semantically similar to
+ * last_committed */
+ unsigned long opd_syn_last_committed_id;
+ /* last processed (taken from llog) id */
+ unsigned long opd_syn_last_processed_id;
+ struct osp_id_tracker *opd_syn_tracker;
+ cfs_list_t opd_syn_ontrack;
+
+ /*