Commit edb3d07e authored by Borislav Petkov's avatar Borislav Petkov
Browse files

x86/mce: Mark mce_timed_out() noinstr



Fixes

  vmlinux.o: warning: objtool: do_machine_check()+0x482: call to mce_timed_out() leaves .noinstr.text section

Signed-off-by: default avatarBorislav Petkov <bp@suse.de>
Link: https://lore.kernel.org/r/20211208111343.8130-12-bp@alien8.de
parent 75581a20
Loading
Loading
Loading
Loading
+13 −3
Original line number Diff line number Diff line
@@ -883,8 +883,13 @@ static cpumask_t mce_missing_cpus = CPU_MASK_ALL;
/*
 * Check if a timeout waiting for other CPUs happened.
 */
static int mce_timed_out(u64 *t, const char *msg)
static noinstr int mce_timed_out(u64 *t, const char *msg)
{
	int ret = 0;

	/* Enable instrumentation around calls to external facilities */
	instrumentation_begin();

	/*
	 * The others already did panic for some reason.
	 * Bail out like in a timeout.
@@ -903,12 +908,17 @@ static int mce_timed_out(u64 *t, const char *msg)
					 cpumask_pr_args(&mce_missing_cpus));
			mce_panic(msg, NULL, NULL);
		}
		return 1;
		ret = 1;
		goto out;
	}
	*t -= SPINUNIT;

out:
	touch_nmi_watchdog();
	return 0;

	instrumentation_end();

	return ret;
}

/*