Re: [PATCH -next] mm/hmm/test: fix error return code in hmm_dmirror_init()

From: Ralph Campbell
Date: Mon May 11 2020 - 13:20:20 EST



On 5/8/20 8:02 PM, Wei Yongjun wrote:
Fix to return negative error code -ENOMEM from the alloc_page() error
handling case instead of 0, as done elsewhere in this function.

Fixes: 5d5e54be8a1e ("mm/hmm/test: add selftest driver for HMM")
Reported-by: Hulk Robot <hulkci@xxxxxxxxxx>
Signed-off-by: Wei Yongjun <weiyongjun1@xxxxxxxxxx>

Looks good, thanks!
Reviewed-by: Ralph Campbell <rcampbell@xxxxxxxxxx>

---
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..b4d9434e49e7 100644
--- a/lib/test_hmm.c
+++ b/lib/test_hmm.c
@@ -1119,8 +1119,10 @@ static int __init hmm_dmirror_init(void)
* make the code here simpler (i.e., we need a struct page for it).
*/
dmirror_zero_page = alloc_page(GFP_HIGHUSER | __GFP_ZERO);
- if (!dmirror_zero_page)
+ if (!dmirror_zero_page) {
+ ret = -ENOMEM;
goto err_chrdev;
+ }
pr_info("HMM test module loaded. This is only for testing HMM.\n");
return 0;