/* just a sum of the loi/lop pending numbers to be exported by /proc */
atomic_t cl_pending_w_pages;
atomic_t cl_pending_r_pages;
- __u32 cl_max_pages_per_rpc;
- __u32 cl_max_rpcs_in_flight;
- __u32 cl_short_io_bytes;
+ u32 cl_max_pages_per_rpc;
+ u32 cl_max_rpcs_in_flight;
+ u32 cl_max_short_io_bytes;
struct obd_histogram cl_read_rpc_hist;
struct obd_histogram cl_write_rpc_hist;
struct obd_histogram cl_read_page_hist;
int connected;
int max_easize;
int max_def_easize;
+ u32 lmv_statfs_start;
- __u32 tgts_size; /* size of tgts array */
+ u32 tgts_size; /* size of tgts array */
struct lmv_tgt_desc **tgts;
- int lmv_statfs_start;
-
struct obd_connect_data conn_data;
struct kobject *lmv_tgts_kobj;
};
+/* Minimum sector size is 512 */
+#define MAX_GUARD_NUMBER (PAGE_SIZE / 512)
+
struct niobuf_local {
__u64 lnb_file_offset;
__u32 lnb_page_offset;
int lnb_rc;
struct page *lnb_page;
void *lnb_data;
+ __u16 lnb_guards[MAX_GUARD_NUMBER];
+ __u16 lnb_guard_rpc:1;
+ __u16 lnb_guard_disk:1;
};
struct tgt_thread_big_cache {
s64 op_mod_time;
const char *op_name;
size_t op_namelen;
+ struct rw_semaphore *op_mea1_sem;
+ struct rw_semaphore *op_mea2_sem;
struct lmv_stripe_md *op_mea1;
struct lmv_stripe_md *op_mea2;
__u32 op_suppgids[2];