staging: erofs: fix a bug when appling cache strategy
authorGao Xiang <gaoxiang25@huawei.com>
Tue, 18 Sep 2018 14:25:36 +0000 (22:25 +0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 27 Feb 2019 09:09:01 +0000 (10:09 +0100)
commit1c9d5a47c681837ca20a39325f033d98c27277e3
tree44b9a9caeba7a8d04d89258b3f723df459e78de9
parentc375152be9dd9d6fbf6ae5ac8be337d0590f192a
staging: erofs: fix a bug when appling cache strategy

commit 0734ffbf574ee813b20899caef2fe0ed502bb783 upstream.

As described in Kconfig, the last compressed pack should be cached
for further reading for either `EROFS_FS_ZIP_CACHE_UNIPOLAR' or
`EROFS_FS_ZIP_CACHE_BIPOLAR' by design.

However, there is a bug in z_erofs_do_read_page, it will
switch `initial' to `false' at the very beginning before it decides
to cache the last compressed pack.

caching strategy should work properly after appling this patch.

Reviewed-by: Chao Yu <yuchao0@huawei.com>
Signed-off-by: Gao Xiang <gaoxiang25@huawei.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/staging/erofs/unzip_vle.c