From: Jiri Slaby <jslaby@suse.cz>
To: Borislav Petkov <bp@alien8.de>
Cc: tglx@linutronix.de, mingo@redhat.com, hpa@zytor.com,
x86@kernel.org, linux-arch@vger.kernel.org,
linux-kernel@vger.kernel.org
Subject: Asm & local labels for functions [was: [PATCH v8 05/28] x86/asm: annotate local pseudo-functions]
Date: Wed, 28 Aug 2019 13:47:23 +0200 [thread overview]
Message-ID: <c5e0f683-796c-f552-0c3b-8a1105446200@suse.cz> (raw)
In-Reply-To: <20190815160719.GI15313@zn.tnic>
On 15. 08. 19, 18:07, Borislav Petkov wrote:
> --- a/arch/x86/kernel/head_64.S
> +++ b/arch/x86/kernel/head_64.S
> @@ -283,7 +283,7 @@ ENTRY(early_idt_handler_array)
> UNWIND_HINT_IRET_REGS offset=8
> .endif
> pushq $i # 72(%rsp) Vector number
> - jmp early_idt_handler_common
> + jmp .Learly_idt_handler_common
> UNWIND_HINT_IRET_REGS
> i = i + 1
> .fill early_idt_handler_array + i*EARLY_IDT_HANDLER_SIZE - ., 1, 0xcc
> @@ -291,7 +291,7 @@ ENTRY(early_idt_handler_array)
> UNWIND_HINT_IRET_REGS offset=16
> END(early_idt_handler_array)
>
> -SYM_CODE_START_LOCAL(early_idt_handler_common)
> +SYM_CODE_START_LOCAL(.Learly_idt_handler_common)
> /*
> * The stack is the hardware frame, an error code or zero, and the
> * vector number.
> @@ -333,7 +333,7 @@ SYM_CODE_START_LOCAL(early_idt_handler_common)
> 20:
> decl early_recursion_flag(%rip)
> jmp restore_regs_and_return_to_kernel
> -SYM_CODE_END(early_idt_handler_common)
> +SYM_CODE_END(.Learly_idt_handler_common)
...
> All except this one can be local labels and be removed from vmlinux'
> symtable:
>
> $ readelf -a vmlinux | grep -E "(bad_(gs|(get|put)_user)|bogus_64_magic|early_idt_handler_common|verify_cpu)"
> 45: ffffffff810000e0 241 FUNC LOCAL DEFAULT 1 verify_cpu
> $
Thanks for all the review hints.
Let's start with this one: do you really want me to get rid of (local)
symbols like this? It would make backtraces completely misleading as the
unwinder would put a name of the previous function (or some garbage,
depending on unwinder) into the backtrace...
thanks,
--
js
suse labs
next prev parent reply other threads:[~2019-08-28 11:47 UTC|newest]
Thread overview: 44+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-08-08 10:38 [PATCH v8 00/28] New macros for assembler symbols Jiri Slaby
2019-08-08 10:38 ` [PATCH v8 01/28] linkage: new " Jiri Slaby
2019-08-12 17:06 ` Borislav Petkov
2019-08-29 10:48 ` Jiri Slaby
2019-08-08 10:38 ` [PATCH v8 02/28] x86/asm/suspend: use SYM_DATA for data Jiri Slaby
2019-08-13 16:40 ` Borislav Petkov
2019-08-08 10:38 ` [PATCH v8 03/28] x86/asm: annotate relocate_kernel Jiri Slaby
2019-08-15 8:37 ` Borislav Petkov
2019-08-08 10:38 ` [PATCH v8 04/28] x86/asm/entry: annotate THUNKs Jiri Slaby
2019-08-15 12:43 ` Borislav Petkov
2019-09-06 7:43 ` Jiri Slaby
2019-08-08 10:38 ` [PATCH v8 05/28] x86/asm: annotate local pseudo-functions Jiri Slaby
2019-08-15 16:07 ` Borislav Petkov
2019-08-28 11:47 ` Jiri Slaby [this message]
2019-08-28 12:24 ` Asm & local labels for functions [was: [PATCH v8 05/28] x86/asm: annotate local pseudo-functions] Borislav Petkov
2019-08-08 10:38 ` [PATCH v8 06/28] x86/asm/crypto: annotate local functions Jiri Slaby
2019-08-17 9:17 ` Borislav Petkov
2019-09-05 10:59 ` Jiri Slaby
2019-08-08 10:38 ` [PATCH v8 07/28] x86/boot/compressed: " Jiri Slaby
2019-08-19 14:44 ` Borislav Petkov
2019-08-08 10:38 ` [PATCH v8 08/28] x86/uaccess: annotate local function Jiri Slaby
2019-08-19 14:47 ` Borislav Petkov
2019-08-08 10:38 ` [PATCH v8 09/28] x86/asm: annotate aliases Jiri Slaby
2019-08-08 10:38 ` [PATCH v8 10/28] x86/asm/entry: annotate interrupt symbols properly Jiri Slaby
2019-08-19 14:56 ` Borislav Petkov
2019-08-08 10:38 ` [PATCH v8 11/28] x86/asm/head: annotate data appropriatelly Jiri Slaby
2019-08-20 16:24 ` Borislav Petkov
2019-08-08 10:38 ` [PATCH v8 12/28] x86/boot/compressed: " Jiri Slaby
2019-08-08 10:38 ` [PATCH v8 13/28] um: " Jiri Slaby
2019-08-08 10:38 ` [PATCH v8 14/28] xen/pvh: " Jiri Slaby
2019-08-08 10:38 ` [PATCH v8 15/28] x86/asm/purgatory: start using annotations Jiri Slaby
2019-08-08 10:38 ` [PATCH v8 16/28] x86/asm: do not annotate functions by GLOBAL Jiri Slaby
2019-08-08 10:38 ` [PATCH v8 17/28] x86/asm: use SYM_INNER_LABEL instead of GLOBAL Jiri Slaby
2019-08-08 10:38 ` [PATCH v8 18/28] x86/asm/realmode: use SYM_DATA_* " Jiri Slaby
2019-08-08 10:38 ` [PATCH v8 19/28] x86/asm: kill the last GLOBAL user and remove the macro Jiri Slaby
2019-08-08 10:38 ` [PATCH v8 20/28] x86/asm: make some functions local Jiri Slaby
2019-08-08 10:38 ` [PATCH v8 21/28] x86/asm/ftrace: mark function_hook as function Jiri Slaby
2019-08-08 10:38 ` [PATCH v8 22/28] x86_64/asm: add ENDs to some functions and relabel with SYM_CODE_* Jiri Slaby
2019-08-08 10:38 ` [PATCH v8 23/28] x86_64/asm: change all ENTRY+END to SYM_CODE_* Jiri Slaby
2019-08-08 10:38 ` [PATCH v8 24/28] x86_64/asm: change all ENTRY+ENDPROC to SYM_FUNC_* Jiri Slaby
2019-08-08 10:38 ` [PATCH v8 25/28] x86_32/asm: add ENDs to some functions and relabel with SYM_CODE_* Jiri Slaby
2019-08-08 10:38 ` [PATCH v8 26/28] x86_32/asm: change all ENTRY+END to SYM_CODE_* Jiri Slaby
2019-08-08 10:38 ` [PATCH v8 27/28] x86_32/asm: change all ENTRY+ENDPROC to SYM_FUNC_* Jiri Slaby
2019-08-08 10:38 ` [PATCH v8 28/28] x86/asm: replace WEAK uses by SYM_INNER_LABEL_ALIGN Jiri Slaby
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=c5e0f683-796c-f552-0c3b-8a1105446200@suse.cz \
--to=jslaby@suse.cz \
--cc=bp@alien8.de \
--cc=hpa@zytor.com \
--cc=linux-arch@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@redhat.com \
--cc=tglx@linutronix.de \
--cc=x86@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).