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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.