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:17:31 +0000 (16:17 +0200)
commit131ff238b85971c75679670be41df5feb6b6530e
tree03f9503287ce7b6ff7ded35105ee8ca20bc22834
parentea5ffcd46716fcda3da98313cffcf1ae5dcbb2c2
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