module: Fix NULL vs IS_ERR checking for module_get_next_page
authorMiaoqian Lin <linmq006@gmail.com>
Thu, 10 Nov 2022 02:58:34 +0000 (06:58 +0400)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sat, 31 Dec 2022 12:32:10 +0000 (13:32 +0100)
[ Upstream commit 45af1d7aae7d5520d2858f8517a1342646f015db ]

The module_get_next_page() function return error pointers on error
instead of NULL.
Use IS_ERR() to check the return value to fix this.

Fixes: b1ae6dc41eaa ("module: add in-kernel support for decompressing")
Signed-off-by: Miaoqian Lin <linmq006@gmail.com>
Reviewed-by: Dmitry Torokhov <dmitry.torokhov@gmail.com
Signed-off-by: Luis Chamberlain <mcgrof@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
kernel/module/decompress.c

index c033572..720e719 100644 (file)
@@ -114,8 +114,8 @@ static ssize_t module_gzip_decompress(struct load_info *info,
        do {
                struct page *page = module_get_next_page(info);
 
-               if (!page) {
-                       retval = -ENOMEM;
+               if (IS_ERR(page)) {
+                       retval = PTR_ERR(page);
                        goto out_inflate_end;
                }
 
@@ -173,8 +173,8 @@ static ssize_t module_xz_decompress(struct load_info *info,
        do {
                struct page *page = module_get_next_page(info);
 
-               if (!page) {
-                       retval = -ENOMEM;
+               if (IS_ERR(page)) {
+                       retval = PTR_ERR(page);
                        goto out;
                }