Whamcloud - gitweb
- fixes, comments and cleanups:
authoryury <yury>
Wed, 2 Nov 2005 13:14:18 +0000 (13:14 +0000)
committeryury <yury>
Wed, 2 Nov 2005 13:14:18 +0000 (13:14 +0000)
commit2a209cc7a6002711bf7ba57afe21a6aa489ed2b6
tree241e9d842c43adeabdac0bcefc96d90b05daea23
parent347167e110e13d8a1afdaa8df7fe94b6ea7f7ee5
- fixes, comments and cleanups:

  - fixed test 34c from sanity.sh. It has two sub-bugs:

   (1) when reg file is created by mknod and did not open as reg file, it has no lsm and has no OST object. I nthis case truncate path should set i_size into inode on MDS. This ws done correctly, but i_size was not returned corectly to client after that as mds_reint_setattr() had bug with setting body->valid |= SIZE for that case (comment added).
   (2) later, in the same test, when file was opened and lsm created, MDS sent setattr RPC to OST to pass its inode attrs. As there was o_flags set to CROW, filter_setattr_internal() was confused and called fsfilt_iocontrol() instead of fsfilt_setattr(). Thus inode size was not set correctly and 0 was returned to client whereas MDS inode size should have been returned instead.

  - in filter_preprw_read() more fixes about handling unexisting object. No -ENOENT should be returned and everythign should be done like object exists, but its size is 0 (thanks to Niu for catching this out).
lustre/llite/rw.c
lustre/mds/mds_reint.c
lustre/obdclass/obdo.c
lustre/obdfilter/filter.c
lustre/obdfilter/filter_io.c