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> --- 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;