Whamcloud - gitweb
- moved dir entries are deleted from the original dir (master object)
authoralex <alex>
Fri, 11 Jun 2004 15:08:41 +0000 (15:08 +0000)
committeralex <alex>
Fri, 11 Jun 2004 15:08:41 +0000 (15:08 +0000)
commit11a4ea796e0edea3db95642ff5ef19be2817b244
tree88cbdf0db687cb8e36b82c39ba9818b500115ee3
parente44e9b278432a1df83482b1cd83b2081fabe94dc
- moved dir entries are deleted from the original dir (master object)
- unlink for splitted dir has been implemented. it uses IT_UNLINK to check
  dir's emptiness and works as following: unlink requests comes to mds holding
  dir; mds recognizes splitted dir and issues LCK_EX with IT_UNLINK intent.
  each slave object is checked and locked. if all the slaves and master object
  are empty, then mds unlinks them and unlocks slave objects
- lmv_enqueue() handles splitted dir properly: issues given lock for each object
- lmv_unlink() handles splitted dir properly: unlinks each slave object
- mds_lock_slave_objs(), mds_unlock_slave_objs() and mds_unlink_slave_objs()
  have been introduced to implement splitted dir unlink
- mds_lock_and_check_slave() is IT_UNLINK handler on mds side
- mds_reint_unlink() sets MDS_MODE_REPLAY on "drop nlink" request in replay case
- mds_reint_unlink() recognizes MDS_MODE_DONT_LOCK and doesn't try to lock
  slave object being removed (it gets locked during earlier)
- minor cleanups in lmv to avoid needless debug messages
- sanity-lmv.sh has been added
lustre/include/linux/lustre_idl.h
lustre/lmv/lmv_obd.c
lustre/lvfs/fsfilt_smfs.c
lustre/mdc/mdc_locks.c
lustre/mds/handler.c
lustre/mds/mds_internal.h
lustre/mds/mds_lmv.c
lustre/mds/mds_reint.c
lustre/tests/sanity-lmv.sh [new file with mode: 0644]