Whamcloud - gitweb
- this contains much of the pre-create code
authorbraam <braam>
Tue, 12 Aug 2003 10:22:33 +0000 (10:22 +0000)
committerbraam <braam>
Tue, 12 Aug 2003 10:22:33 +0000 (10:22 +0000)
  - 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
lustre/mds/mds_lib.c

index 6855723..0d9ef63 100644 (file)
@@ -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);
index ddd752a..ed495d8 100644 (file)
@@ -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))