Whamcloud - gitweb
- returned back OBD_MD_FID. For many reasons its removal was wrong.
authoryury <yury>
Mon, 28 Feb 2005 19:21:46 +0000 (19:21 +0000)
committeryury <yury>
Mon, 28 Feb 2005 19:21:46 +0000 (19:21 +0000)
commitdd69b18a3364a9cd34a24b0bcf78f18652e5e6f9
tree45964a0a1756658e2e9915d44ce8c413d7d2a196
parentd396042cea7c60e2a13893631ea458eb36ab1106
- returned back OBD_MD_FID. For many reasons its removal was wrong.

- fixed declation of OBD_MD.. flags. They should be declared like the following:
#define OBD_MD_FLALL (0xffffffffffffffffLL)

to show compiller explicitly that they are 64bit value and should considered as such.

- fixed md_reint_rename(). It should first check if objects are the same then check if tgt is subdir of src because for the same inodes is_subdir() returns 1 and mds_reint_rename() for renaming object into itself it returned -EINVAL;

- added asserts in LMV checking if body->valid contains valid fid before accessing it to check if object is splitted.

- in lmv_intent.c after md_intent_lock() checking not only error code, but also disposition, because there are cases when we're interested in name which does not exist, lock is not taken and policy_res2 is cleared in mds_intent_policy(). In this case we should do nothing (especially access body->id1 in LMV), but exit. This is because body->id1 is zero and (body->valid & OBD_MD_FID) == 0 because say mds_getattr_lock() failed before filling out as inode is not found.
lustre/include/linux/lustre_idl.h
lustre/llite/llite_lib.c
lustre/lmv/lmv_intent.c
lustre/lmv/lmv_obd.c
lustre/mdc/mdc_locks.c
lustre/mds/handler.c
lustre/mds/mds_fs.c
lustre/mds/mds_internal.h
lustre/mds/mds_lib.c
lustre/mds/mds_open.c
lustre/mds/mds_reint.c