X-Git-Url: https://git.whamcloud.com/?a=blobdiff_plain;ds=sidebyside;f=lustre%2Finclude%2Flinux%2Fobd.h;h=70574be1c7a78c4cfa662d6c70dda0ecf7f39d71;hb=3ff86cc398ec6d3ffc2aa511b5afe564da9c19e4;hp=c98e785b70cf861d4b0d82bc8bb164f6d0420e8d;hpb=3f4529794c5bced6a547e914470d509299bc5c6b;p=fs%2Flustre-release.git diff --git a/lustre/include/linux/obd.h b/lustre/include/linux/obd.h index c98e785..70574be 100644 --- a/lustre/include/linux/obd.h +++ b/lustre/include/linux/obd.h @@ -57,6 +57,8 @@ struct filter_obd { struct super_block *fo_sb; struct vfsmount *fo_vfsmnt; struct obd_run_ctxt fo_ctxt; + struct dentry *fo_dentry_O; + struct dentry *fo_dentry_O_mode[16]; spinlock_t fo_lock; __u64 fo_lastino; struct file_operations *fo_fop; @@ -72,6 +74,7 @@ struct mds_obd { char *mds_fstype; struct super_block *mds_sb; + struct super_operations *mds_sop; struct vfsmount *mds_vfsmnt; struct obd_run_ctxt mds_ctxt; struct file_operations *mds_fop; @@ -156,6 +159,11 @@ struct osc_obd { struct ptlrpc_connection *osc_conn; }; +struct lov_obd { + int lov_count; + struct obd_conn *lov_targets; +}; + /* corresponds to one of the obd's */ #define MAX_MULTI 16 struct obd_device { @@ -186,6 +194,7 @@ struct obd_device { struct echo_obd echo; struct recovd_obd recovd; struct trace_obd trace; + struct lov_obd lov; #if 0 struct raid1_obd raid1; struct snap_obd snap; @@ -194,7 +203,7 @@ struct obd_device { }; struct obd_ops { - int (*o_iocontrol)(int cmd, struct obd_conn *, int len, void *karg, + int (*o_iocontrol)(long cmd, struct obd_conn *, int len, void *karg, void *uarg); int (*o_get_info)(struct obd_conn *, obd_count keylen, void *key, obd_count *vallen, void **val); @@ -236,11 +245,11 @@ struct obd_ops { obd_id *startid, obd_gr group, void *data); int (*o_preprw)(int cmd, struct obd_conn *conn, int objcount, struct obd_ioobj *obj, - int niocount, struct niobuf *nb, - struct niobuf *res); + int niocount, struct niobuf_remote *remote, + struct niobuf_local *local); int (*o_commitrw)(int cmd, struct obd_conn *conn, int objcount, struct obd_ioobj *obj, - int niocount, struct niobuf *res); + int niocount, struct niobuf_local *local); int (*o_enqueue)(struct obd_conn *conn, struct ldlm_namespace *ns, struct ldlm_handle *parent_lock, __u64 *res_id, __u32 type, struct ldlm_extent *, __u32 mode,