ext4: Do not reserve clusters when fs doesn't support extents
authorJan Kara <jack@suse.cz>
Mon, 9 Dec 2013 02:11:59 +0000 (21:11 -0500)
committerTheodore Ts'o <tytso@mit.edu>
Mon, 9 Dec 2013 02:11:59 +0000 (21:11 -0500)
commit30fac0f75da24dd5bb43c9e911d2039a984ac815
treee8e31ec8a47149e935ceba868575c1bd6e750633
parent9105bb149bbbc555d2e11ba5166dfe7a24eae09e
ext4: Do not reserve clusters when fs doesn't support extents

When the filesystem doesn't support extents (like in ext2/3
compatibility modes), there is no need to reserve any clusters. Space
estimates for writing are exact, hole punching doesn't need new
metadata, and there are no unwritten extents to convert.

This fixes a problem when filesystem still having some free space when
accessed with a native ext2/3 driver suddently reports ENOSPC when
accessed with ext4 driver.

Reported-by: Geert Uytterhoeven <geert@linux-m68k.org>
Tested-by: Geert Uytterhoeven <geert@linux-m68k.org>
Reviewed-by: Lukas Czerner <lczerner@redhat.com>
Signed-off-by: Jan Kara <jack@suse.cz>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
Cc: stable@vger.kernel.org
fs/ext4/super.c