binfmt_elf: replace IS_ERR() with IS_ERR_VALUE()
authorBo Liu <liubo03@inspur.com>
Tue, 15 Nov 2022 03:17:57 +0000 (22:17 -0500)
committerKees Cook <keescook@chromium.org>
Thu, 17 Nov 2022 23:05:21 +0000 (15:05 -0800)
Avoid typecasts that are needed for IS_ERR() and use IS_ERR_VALUE()
instead.

Signed-off-by: Bo Liu <liubo03@inspur.com>
Signed-off-by: Kees Cook <keescook@chromium.org>
Link: https://lore.kernel.org/r/20221115031757.2426-1-liubo03@inspur.com
fs/binfmt_elf.c

index 528e2ac..d9af34f 100644 (file)
@@ -1160,7 +1160,7 @@ out_free_interp:
                error = elf_map(bprm->file, load_bias + vaddr, elf_ppnt,
                                elf_prot, elf_flags, total_size);
                if (BAD_ADDR(error)) {
-                       retval = IS_ERR((void *)error) ?
+                       retval = IS_ERR_VALUE(error) ?
                                PTR_ERR((void*)error) : -EINVAL;
                        goto out_free_dentry;
                }
@@ -1245,7 +1245,7 @@ out_free_interp:
                                            interpreter,
                                            load_bias, interp_elf_phdata,
                                            &arch_state);
-               if (!IS_ERR((void *)elf_entry)) {
+               if (!IS_ERR_VALUE(elf_entry)) {
                        /*
                         * load_elf_interp() returns relocation
                         * adjustment
@@ -1254,7 +1254,7 @@ out_free_interp:
                        elf_entry += interp_elf_ex->e_entry;
                }
                if (BAD_ADDR(elf_entry)) {
-                       retval = IS_ERR((void *)elf_entry) ?
+                       retval = IS_ERR_VALUE(elf_entry) ?
                                        (int)elf_entry : -EINVAL;
                        goto out_free_dentry;
                }