]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
scsi: message: fusion: Mark mpt_halt_firmware() __noreturn
authorJosh Poimboeuf <jpoimboe@kernel.org>
Wed, 12 Apr 2023 23:49:40 +0000 (16:49 -0700)
committerPeter Zijlstra <peterz@infradead.org>
Fri, 14 Apr 2023 15:31:27 +0000 (17:31 +0200)
mpt_halt_firmware() doesn't return.  Mark it as such.

Fixes the following warnings:

  vmlinux.o: warning: objtool: mptscsih_abort+0x7f4: unreachable instruction
  vmlinux.o: warning: objtool: mptctl_timeout_expired+0x310: unreachable instruction

Reported-by: kernel test robot <lkp@intel.com>
Reported-by: Mark Rutland <mark.rutland@arm.com>
Debugged-by: Peter Zijlstra <peterz@infradead.org>
Signed-off-by: Josh Poimboeuf <jpoimboe@kernel.org>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Link: https://lore.kernel.org/r/d8129817423422355bf30e90dadc6764261b53e0.1681342859.git.jpoimboe@kernel.org
drivers/message/fusion/mptbase.c
drivers/message/fusion/mptbase.h
tools/objtool/check.c

index 9b3ba2df71c75b913768139272b00d232151a174..4f0afce8428da45f2dac29310cf2e2de89d32a5a 100644 (file)
@@ -6935,7 +6935,7 @@ EXPORT_SYMBOL(mpt_clear_taskmgmt_in_progress_flag);
  *     @ioc: Pointer to MPT_ADAPTER structure
  *
  **/
-void
+void __noreturn
 mpt_halt_firmware(MPT_ADAPTER *ioc)
 {
        u32      ioc_raw_state;
index 4bd0682c65d3be75727c9d414df728a50d2cfdfa..0f226cdad64f88d04d7aad156d4619ea391487bf 100644 (file)
@@ -945,7 +945,7 @@ extern int  mpt_raid_phys_disk_get_num_paths(MPT_ADAPTER *ioc,
                u8 phys_disk_num);
 extern int      mpt_set_taskmgmt_in_progress_flag(MPT_ADAPTER *ioc);
 extern void     mpt_clear_taskmgmt_in_progress_flag(MPT_ADAPTER *ioc);
-extern void     mpt_halt_firmware(MPT_ADAPTER *ioc);
+extern void __noreturn mpt_halt_firmware(MPT_ADAPTER *ioc);
 
 
 /*
index 724a63bdc412d6705769eeef2b288e6a9092c648..e1b01ea6ad1b884e715c0d6a08110804ae7fee5d 100644 (file)
@@ -219,6 +219,7 @@ static bool __dead_end_function(struct objtool_file *file, struct symbol *func,
                "lbug_with_loc",
                "machine_real_restart",
                "make_task_dead",
+               "mpt_halt_firmware",
                "nmi_panic_self_stop",
                "panic",
                "panic_smp_self_stop",