From: Gustavo A. R. Silva gustavo@embeddedor.com
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
--- mm/z3fold.c | 1 + 1 file changed, 1 insertion(+)
--- a/mm/z3fold.c +++ b/mm/z3fold.c @@ -1408,6 +1408,7 @@ static bool z3fold_page_isolate(struct p * should freak out. */ WARN(1, "Z3fold is experiencing kref problems\n"); + z3fold_page_unlock(zhdr); return false; } z3fold_page_unlock(zhdr);