Messages in this thread Patch in this message | | | From | Wei Yongjun <> | Subject | [PATCH -next] mm/hmm/test: fix missing unlock on error in dmirror_migrate_finalize_and_map() | Date | Sat, 9 May 2020 03:02:25 +0000 |
| |
Add the missing unlock before return from function dmirror_migrate_finalize_and_map() in the error handling case.
Fixes: 5d5e54be8a1e ("mm/hmm/test: add selftest driver for HMM") Reported-by: Hulk Robot <hulkci@huawei.com> Signed-off-by: Wei Yongjun <weiyongjun1@huawei.com> --- lib/test_hmm.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/lib/test_hmm.c b/lib/test_hmm.c index 00bca6116f93..30462193c4ff 100644 --- a/lib/test_hmm.c +++ b/lib/test_hmm.c @@ -647,8 +647,10 @@ static int dmirror_migrate_finalize_and_map(struct migrate_vma *args, if (*dst & MIGRATE_PFN_WRITE) entry = xa_tag_pointer(entry, DPT_XA_TAG_WRITE); entry = xa_store(&dmirror->pt, pfn, entry, GFP_ATOMIC); - if (xa_is_err(entry)) + if (xa_is_err(entry)) { + mutex_unlock(&dmirror->mutex); return xa_err(entry); + } } mutex_unlock(&dmirror->mutex);
| |