From: Alexey Dobriyan list_del() hardly can fail, so checking for return value is pointless (and current code always return 0). Nobody really cared that return value anyway. Signed-off-by: Alexey Dobriyan Signed-off-by: Andrew Morton --- arch/ia64/ia32/binfmt_elf32.c | 2 +- fs/exec.c | 3 +-- include/linux/binfmts.h | 2 +- 3 files changed, 3 insertions(+), 4 deletions(-) diff -puN arch/ia64/ia32/binfmt_elf32.c~make-unregister_binfmt-return-void arch/ia64/ia32/binfmt_elf32.c --- a/arch/ia64/ia32/binfmt_elf32.c~make-unregister_binfmt-return-void +++ a/arch/ia64/ia32/binfmt_elf32.c @@ -240,7 +240,7 @@ static int __init check_elf32_binfmt(voi { if (cpu_uses_ia32el()) { printk("Please use IA-32 EL for executing IA-32 binaries\n"); - return unregister_binfmt(&elf_format); + unregister_binfmt(&elf_format); } return 0; } diff -puN fs/exec.c~make-unregister_binfmt-return-void fs/exec.c --- a/fs/exec.c~make-unregister_binfmt-return-void +++ a/fs/exec.c @@ -82,12 +82,11 @@ int register_binfmt(struct linux_binfmt EXPORT_SYMBOL(register_binfmt); -int unregister_binfmt(struct linux_binfmt * fmt) +void unregister_binfmt(struct linux_binfmt * fmt) { write_lock(&binfmt_lock); list_del(&fmt->lh); write_unlock(&binfmt_lock); - return 0; } EXPORT_SYMBOL(unregister_binfmt); diff -puN include/linux/binfmts.h~make-unregister_binfmt-return-void include/linux/binfmts.h --- a/include/linux/binfmts.h~make-unregister_binfmt-return-void +++ a/include/linux/binfmts.h @@ -74,7 +74,7 @@ struct linux_binfmt { }; extern int register_binfmt(struct linux_binfmt *); -extern int unregister_binfmt(struct linux_binfmt *); +extern void unregister_binfmt(struct linux_binfmt *); extern int prepare_binprm(struct linux_binprm *); extern int __must_check remove_arg_zero(struct linux_binprm *); _