aboutsummaryrefslogtreecommitdiffstats
path: root/arch/x86/kernel/acpi/wakeup_64.S
diff options
context:
space:
mode:
authorJosh Poimboeuf <jpoimboe@redhat.com>2021-01-21 15:29:33 -0600
committerJosh Poimboeuf <jpoimboe@redhat.com>2021-01-26 11:33:03 -0600
commitaeb818fcc94071e44203b3a36392562e5b88d9ec (patch)
treee1fb490e8c5896b4c85d0c16717b227da00ad736 /arch/x86/kernel/acpi/wakeup_64.S
parentx86/acpi: Annotate indirect branch as safe (diff)
downloadlinux-dev-aeb818fcc94071e44203b3a36392562e5b88d9ec.tar.xz
linux-dev-aeb818fcc94071e44203b3a36392562e5b88d9ec.zip
x86/acpi: Support objtool validation in wakeup_64.S
The OBJECT_FILES_NON_STANDARD annotation is used to tell objtool to ignore a file. File-level ignores won't work when validating vmlinux.o. Instead, tell objtool to ignore do_suspend_lowlevel() directly with the STACK_FRAME_NON_STANDARD annotation. Cc: "Rafael J. Wysocki" <rjw@rjwysocki.net> Cc: Len Brown <len.brown@intel.com> Cc: Pavel Machek <pavel@ucw.cz> Signed-off-by: Josh Poimboeuf <jpoimboe@redhat.com> Link: https://lore.kernel.org/r/269eda576c53bc9ecc8167c211989111013a67aa.1611263462.git.jpoimboe@redhat.com
Diffstat (limited to 'arch/x86/kernel/acpi/wakeup_64.S')
-rw-r--r--arch/x86/kernel/acpi/wakeup_64.S2
1 files changed, 2 insertions, 0 deletions
diff --git a/arch/x86/kernel/acpi/wakeup_64.S b/arch/x86/kernel/acpi/wakeup_64.S
index 9c9c66662ada..56b6865afb2a 100644
--- a/arch/x86/kernel/acpi/wakeup_64.S
+++ b/arch/x86/kernel/acpi/wakeup_64.S
@@ -1,6 +1,7 @@
/* SPDX-License-Identifier: GPL-2.0-only */
.text
#include <linux/linkage.h>
+#include <linux/objtool.h>
#include <asm/segment.h>
#include <asm/pgtable_types.h>
#include <asm/page_types.h>
@@ -128,6 +129,7 @@ SYM_FUNC_START(do_suspend_lowlevel)
FRAME_END
jmp restore_processor_state
SYM_FUNC_END(do_suspend_lowlevel)
+STACK_FRAME_NON_STANDARD do_suspend_lowlevel
.data
saved_rbp: .quad 0