Cédric Lambert
2007-Oct-04 13:12 UTC
[Lustre-discuss] lustre e2fsck corrupts files by changing i_size
Hello, We have an IA64 cluster with 64K kernel page size and we use lustre 1.4.8.1 and e2fsprogs-1.39cfs8. We meet the following problem : 1. I Create a Lustre file system, then start this file system and mount it on a client node 2. On this client node, I copy 2 files in my /mnt/lustre 3. I umount Lustre file system on this client node then stop Lustre file system 4. I use then : /usr/lib/lustre/e2fsck /dev/OSTs-device And big surprise : for each files created on the Lustre file system, it displays the following : Pass 1: Checking inodes, blocks, and sizes Inode 163882, i_size is 199041, should be 262144. Fix? The real size of my file is 199041 ! So if I choose "Yes" to the question, This file will be corrupted. Additional info : my device Block size is 4096 I think there is an error in the test code of the phase1. What do you think ? Do I need to open a bugzilla for this very serious problem for us or do I miss something ? I tested this case with e2fsprogs-1.39-cfs8 and e2fsprogs-cfs2 and I didn''t find a ChangeLog for e2fsprogs provided by CFS. So perhaps this problem is corrected in another release ? Regards, C?dric Lambert
Andreas Dilger
2007-Oct-11 23:05 UTC
[Lustre-discuss] lustre e2fsck corrupts files by changing i_size
On Oct 04, 2007 15:12 +0200, C?dric Lambert wrote:> We have an IA64 cluster with 64K kernel page size and we use lustre > 1.4.8.1 and e2fsprogs-1.39cfs8. > We meet the following problem : > 1. I Create a Lustre file system, then start this file system and mount > it on a client node > 2. On this client node, I copy 2 files in my /mnt/lustre > 3. I umount Lustre file system on this client node then stop Lustre file > system > 4. I use then : /usr/lib/lustre/e2fsck /dev/OSTs-device > > And big surprise : for each files created on the Lustre file system, it > displays the following : > Pass 1: Checking inodes, blocks, and sizes > Inode 163882, i_size is 199041, should be 262144. Fix? > > The real size of my file is 199041 ! So if I choose "Yes" to the > question, This file will be corrupted. > > Additional info : my device Block size is 4096 > > I think there is an error in the test code of the phase1. What do you > think ? Do I need to open a bugzilla for this very serious problem for > us or do I miss something ?To follow up on this, bug 13812 was filed and a defect in e2fsck was found. This will be fixed in the upcoming e2fsprogs-1.40.2-cfs2 release. Cheers, Andreas -- Andreas Dilger Principal Software Engineer Cluster File Systems, Inc.
Apparently Analagous Threads
- e2fsck version
- Lost OSTs, remounted, now /proc/fs/lustre/obdfilter/$UUID/ is empty
- What's the correct sequence to umount multiple lustre file system
- [PATCH 1/1] OCFS2: use i_size_read() instead of direct accessing inode->i_size
- Adding OST to online Lustre with quota