From d5b3e63f4ebd271703882252769605440c1a8519 Mon Sep 17 00:00:00 2001 From: braam Date: Tue, 12 Aug 2003 10:22:33 +0000 Subject: [PATCH] - this contains much of the pre-create code - extensive changes to mds_open to call obd_create - important changes to the client to avoid obd_create - changes to intent locking to avoid giving a client a lock - deficiencies: - there is an open unlink problem (sanity 31). I think this was lurking and is now exposed - lstripe needs some thought; doesn't work right now - further refactoring of the object creation in mds_open desirable and forthcoming. --- lustre/mds/mds_internal.h | 1 + lustre/mds/mds_lib.c | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/lustre/mds/mds_internal.h b/lustre/mds/mds_internal.h index 6855723..0d9ef63 100644 --- a/lustre/mds/mds_internal.h +++ b/lustre/mds/mds_internal.h @@ -15,6 +15,7 @@ void mds_put_catalog(struct llog_handle *cathandle); /* mds/mds_reint.c */ +int mds_osc_connect(struct obd_device *obd, struct mds_obd *mds); void mds_commit_cb(struct obd_device *, __u64 last_rcvd, void *data, int error); int mds_finish_transno(struct mds_obd *mds, struct inode *inode, void *handle, struct ptlrpc_request *req, int rc, __u32 op_data); diff --git a/lustre/mds/mds_lib.c b/lustre/mds/mds_lib.c index ddd752a..ed495d8 100644 --- a/lustre/mds/mds_lib.c +++ b/lustre/mds/mds_lib.c @@ -60,7 +60,7 @@ void mds_pack_inode2fid(struct ll_fid *fid, struct inode *inode) /* Note that we can copy all of the fields, just some will not be "valid" */ void mds_pack_inode2body(struct mds_body *b, struct inode *inode) { - b->valid = OBD_MD_FLID | OBD_MD_FLCTIME | OBD_MD_FLUID | OBD_MD_FLGID | + b->valid |= OBD_MD_FLID | OBD_MD_FLCTIME | OBD_MD_FLUID | OBD_MD_FLGID | OBD_MD_FLTYPE | OBD_MD_FLMODE | OBD_MD_FLNLINK | OBD_MD_FLGENER; if (!S_ISREG(inode->i_mode)) -- 1.8.3.1