From: Peter Zijlstra <peterz@infradead.org>
To: Yun Levi <ppbuk5246@gmail.com>
Cc: jpoimboe@kernel.org,
Linux Kernel Mailing List <linux-kernel@vger.kernel.org>
Subject: Re: [Question] About UNWIND_HINT_ENTRY on entry_SYSCALL_64.
Date: Fri, 25 Nov 2022 14:06:40 +0100 [thread overview]
Message-ID: <Y4C94LluYLGcf1Wt@hirez.programming.kicks-ass.net> (raw)
In-Reply-To: <CAM7-yPTWs8J6sGjcyDrRsXu5APDHm5Kr19G500y=72=FwYCq3g@mail.gmail.com>
On Fri, Nov 25, 2022 at 07:41:46PM +0900, Yun Levi wrote:
> Hello.
>
> While I try to see the information related to ORC in vmlinux,
> I'm trying to find out ORC information related to entry_SYSCALL_64's address.
>
> For this, I've tried to take the following step:
> 1. booting the kernel with the "nokaslr" option.
> 2. Getting ORC information by "objdump orc dump vmlinux"
> 3. cat /proc/kallsyms and check the address of "entry_SYSCALL_64"
> - In my kernel, It's address .text + a00000
> 4. Find out related ORC entry gotten in step 2.
>
> But, I couldn't find the reason why entry_SYSCALL_64's orc info isn't
> encoded with end =1.
> Instead, It was encoded as INVALID ORC entry like:
>
> .text+a00000: sp:(und) bp:(und) type:call end:0
>
> IIUC, Some of the code is started with UNWIND_HINT_ENTRY or UNWIND_HINT_EMPTY,
> it should be encoded with end = 1. But it doesn't.
>
> Am I wrong?
$ readelf -Ws defconfig-build/vmlinux.o | grep entry_SYSCALL_64
178466: 0000000000000029 0 NOTYPE GLOBAL DEFAULT 18 entry_SYSCALL_64_safe_stack
188596: 0000000000000000 422 NOTYPE GLOBAL DEFAULT 18 entry_SYSCALL_64
210374: 0000000000000038 0 NOTYPE GLOBAL DEFAULT 18 entry_SYSCALL_64_after_hwframe
$ readelf -WS defconfig-build/vmlinux.o | grep "\[18\]"
[18] .entry.text PROGBITS 0000000000000000 e59f00 001838 00 AX 0 0 64
$ tools/objtool/objtool --dump=orc defconfig-build/vmlinux.o | grep ".entry.text+0"
.entry.text+0: sp:(und) bp:(und) type:call end:1
next prev parent reply other threads:[~2022-11-25 13:06 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-11-25 10:41 [Question] About UNWIND_HINT_ENTRY on entry_SYSCALL_64 Yun Levi
2022-11-25 13:06 ` Peter Zijlstra [this message]
2022-11-28 5:31 ` Yun Levi
2022-12-05 9:05 ` Yun Levi
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=Y4C94LluYLGcf1Wt@hirez.programming.kicks-ass.net \
--to=peterz@infradead.org \
--cc=jpoimboe@kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=ppbuk5246@gmail.com \
/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