ext2: fix a block leak
authorAl Viro <viro@zeniv.linux.org.uk>
Thu, 17 May 2018 21:18:30 +0000 (17:18 -0400)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 25 May 2018 14:12:56 +0000 (16:12 +0200)
commit808449d2bc56bf0de49e03b6784e0986da526ea7
tree55b1e58e69f6b838c5aefc426fcff4d9b4c039f2
parentaab32922616365dc84d26972ade407f6ceb7bdff
ext2: fix a block leak

commit 5aa1437d2d9a068c0334bd7c9dafa8ec4f97f13b upstream.

open file, unlink it, then use ioctl(2) to make it immutable or
append only.  Now close it and watch the blocks *not* freed...

Immutable/append-only checks belong in ->setattr().
Note: the bug is old and backport to anything prior to 737f2e93b972
("ext2: convert to use the new truncate convention") will need
these checks lifted into ext2_setattr().

Cc: stable@kernel.org
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
fs/ext2/inode.c