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 <hul...@huawei.com>
Signed-off-by: Wei Yongjun <weiyongj...@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..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;



Reply via email to