• Lukas Czerner's avatar
    Revert "ext4: fix fsx truncate failure" · eb3544c6
    Lukas Czerner authored
    This reverts commit 189e868f.
    
    This commit reintroduces the use of ext4_block_truncate_page() in ext4
    truncate operation instead of ext4_discard_partial_page_buffers().
    
    The statement in the commit description that the truncate operation only
    zero block unaligned portion of the last page is not exactly right,
    since truncate_pagecache_range() also zeroes and invalidate the unaligned
    portion of the page. Then there is no need to zero and unmap it once more
    and ext4_block_truncate_page() was doing the right job, although we
    still need to update the buffer head containing the last block, which is
    exactly what ext4_block_truncate_page() is doing.
    
    Moreover the problem described in the commit is fixed more properly with
    commit
    
    15291164
    	jbd2: clear BH_Delay & BH_Unwritten in journal_unmap_buffer
    
    This was tested on ppc64 machine with block size of 1024 bytes without
    any problems.
    Signed-off-by: default avatarLukas Czerner <lczerner@redhat.com>
    Reviewed-by: default avatarJan Kara <jack@suse.cz>
    Signed-off-by: default avatarTheodore Ts'o <tytso@mit.edu>
    eb3544c6
inode.c 155 KB