Hi, finally have some time to run some tests on recent kernels. And it appeared that fallocate interface is buggy - fallocate: result in fsck complain due to blocks beyond i_size without EOFBLOCKS_FL - punch_hole: also provoke fsck complain and even EIO due to incorrect EOFBLOCKS_FL update #LOG: #Following two patches are mostly cleanup ext4-cleanup-ext4_ext_grow_indepth-code.patch ext4-move-inode-indepth-shrink-logic-to-didicated-fu.patch # Later patches are fixes for issues. ext4-Do-not-clear-EOFBLOCKS_FL-too-soon.patch ext4-fix-punch_hole-extend-handler.patch I've also attached my temp testcase for both issues Will submit generic xfstests based on it soon. ########### TESTCASE################### #! /bin/bash ############################################################################# # dmonakhov@xxxxxxxxxx # Trivial fsstress test # TODO: Add to xfstests # Required patches # kill fsstress reliably # Message-Id: <1316357699-22692-1-git-send-email-dmonakhov@xxxxxxxxxx> # In order unresvsp to work kernel should contain following patch # Message-Id: <1316528400-1797-1-git-send-email-dmonakhov@xxxxxxxxxx> ############################################################################# # FIXES FOR ext4.git:3.1.0-rc2+ #0001-ext4-cleanup-ext4_ext_grow_indepth-code.patch #0002-ext4-move-inode-indepth-shrink-logic-to-didicated-fu.patch #0003-ext4-Do-not-clear-EOFBLOCKS_FL-too-soon.patch #0004-ext4-fix-punch_hole-extend-handler.patch ############################################################################# IMG=/dev/sdc MNT=./mnt #MNT_EXTRA_OPS="-oloop" ## Create small image #dd if=/dev/zero of=$IMG bs=1M count=1024000 mkfs.ext4 -F -b4096 $IMG 102400 mkdir -p $MNT mount -text4 $IMG $MNT $MNT_EXTRA_OPS || exit ## Run stress ~/fsstress -p8 -f fsync=0 -f sync=0 -f fdatasync=0 -f setattr=0 -f unresvsp=2 -d $MNT/TEST -n99999999 & PID=$! ## dd writers will do write/truncate => ENOSPC condition for ((i=0;i < 10;i++)) do dd if=/dev/zero of=$MNT/FILE bs=1M sleep 2 done kill $! wait $! umount $MNT fsck.ext4 -f -n $IMG -- To unsubscribe from this list: send the line "unsubscribe linux-ext4" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html