f2fs: fix overflow due to condition check order
authorJaegeuk Kim <jaegeuk@kernel.org>
Wed, 23 Nov 2016 18:51:17 +0000 (10:51 -0800)
committerJaegeuk Kim <jaegeuk@google.com>
Mon, 25 Sep 2017 22:01:52 +0000 (15:01 -0700)
commitab6f3626a82db73b2a490804fe6591750c5b2233
tree1c87fd8eceedee47aae5e1728397011bc6c4995c
parent91d38ba8414bdbe7161d2d02eddf5e671db0024d
f2fs: fix overflow due to condition check order

commit e87f7329bbd6760c2acc4f1eb423362b08851a71 upstream.

In the last ilen case, i was already increased, resulting in accessing out-
of-boundary entry of do_replace and blkaddr.
Fix to check ilen first to exit the loop.

Fixes: 2aa8fbb9693020 ("f2fs: refactor __exchange_data_block for speed up")
Cc: stable@vger.kernel.org # 4.8+
Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org>
fs/f2fs/file.c