summaryrefslogtreecommitdiffstats
path: root/mm
diff options
context:
space:
mode:
authorGustavo A. R. Silva <gustavo@embeddedor.com>2019-08-30 16:04:43 -0700
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2019-09-19 09:11:06 +0200
commit7c218ebc78995ab1cd8e53e1d7ed4844d4340644 (patch)
tree5823fc75544f46b936a5773f2a4b4a3174cb9af3 /mm
parent1894d857ce860cb76bd866bb5d951217034f3f6f (diff)
downloadlinux-stable-7c218ebc78995ab1cd8e53e1d7ed4844d4340644.tar.gz
linux-stable-7c218ebc78995ab1cd8e53e1d7ed4844d4340644.tar.bz2
linux-stable-7c218ebc78995ab1cd8e53e1d7ed4844d4340644.zip
mm/z3fold.c: fix lock/unlock imbalance in z3fold_page_isolate
commit 14108b9131a47ff18a3c640f583eb2d625c75c0d upstream. Fix lock/unlock imbalance by unlocking *zhdr* before return. Addresses Coverity ID 1452811 ("Missing unlock") Link: http://lkml.kernel.org/r/20190826030634.GA4379@embeddedor Fixes: d776aaa9895e ("mm/z3fold.c: fix race between migration and destruction") Signed-off-by: Gustavo A. R. Silva <gustavo@embeddedor.com> Reviewed-by: Andrew Morton <akpm@linux-foundation.org> Cc: Henry Burns <henrywolfeburns@gmail.com> Cc: Vitaly Wool <vitalywool@gmail.com> Cc: Shakeel Butt <shakeelb@google.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'mm')
-rw-r--r--mm/z3fold.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/mm/z3fold.c b/mm/z3fold.c
index 39d0a8a40e66..8374b18ebe9a 100644
--- a/mm/z3fold.c
+++ b/mm/z3fold.c
@@ -1408,6 +1408,7 @@ static bool z3fold_page_isolate(struct page *page, isolate_mode_t mode)
* should freak out.
*/
WARN(1, "Z3fold is experiencing kref problems\n");
+ z3fold_page_unlock(zhdr);
return false;
}
z3fold_page_unlock(zhdr);