There is a question mark in front of the function name in the call trace log.What does the question mark imply?

Valdis Kl=?utf-8?Q?=c4=93?=tnieks valdis.kletnieks at vt.edu
Fri Jun 19 03:58:09 EDT 2020


On Fri, 19 Jun 2020 13:29:09 +0800, 孙世龙 said:

> I have never seen such a call trace log before: there is a question
> mark(i.e. symbol of "?")  in front of the function name. What does the
> question mark imply?
>
> Here is the related log:
>
> [22041.387697] Call Trace
> [22041.387711] dump_stack+0x9e/0xc8
> [22041.387718] warn_alloc+0x100/0x190
> [22041.387725] __alloc_pages_slowpath+0xb93/0xbd0
> [22041.387732] __alloc_pages_nodemask+0x26d/0x2b0
> [22041.387739] alloc_pages_current+0x6a/0xe0
> [22041.387744] kmalloc_order+0x18/0x40
> [22041.387748] kmalloc_order_trace+0x24/0xb0
> [22041.387754] __kmalloc+0x20e/0x230
> [22041.387759] ? __vmalloc_node_range+0x171/0x250
> [22041.387765] xnheap_init+0x87/0x200
> [22041.387770] ? remove_process+0xc0/0xc0
> [22041.387775] cobalt_umm_init+0x61/0xb0

There's various ways the stack unwinder for the call trace can work.
On some architectures, there is an explicit stack pointer register, and
it's saved in the stack by the 'call' opcode, so unwinding can be exact.
On other systems, an explicit stack pointer is optional (such as on x86,
where not building with one allows one more temporary register, which
can help with efficient code generation).  There, unwinds are inexact -
it basically steps through the stack and finds entries that are viable
pointers into the kernel/module executable code space.  Sometimes,
it will find what looks like a return pointer but it's not at a plausible
location in the stack entry, so it may be trash left on the stack, so
it flags it with a '?'
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 832 bytes
Desc: not available
URL: <http://lists.kernelnewbies.org/pipermail/kernelnewbies/attachments/20200619/25cb6259/attachment.sig>


More information about the Kernelnewbies mailing list