Skip to content

Symbols offset lookup ends too soon #63

@Tey

Description

@Tey

Some symbols on the imx6 kernel I'm playing with are located very far in the memory:

# cat /proc/kallsyms | grep -v '\[' | tail
c157c5a8 B uevent_helper
c157c6a8 b backtrace_flag
c157c6ac B radix_tree_node_cachep
ffff1004 t vector_rst
ffff1020 t vector_irq
ffff10a0 t vector_dabt
ffff1120 t vector_pabt
ffff11a0 t vector_und
ffff1220 t vector_addrexcptn
ffff1240 T vector_fiq

The symbols location is stored as an offset from the first symbol (located at 0xc0008000), so for instance, the offset for vector_rst is 0x3ffe9004. But the "vmlinux.py" script expects the symbols offset to be below 0x08000000, so the offsets lookup ends at radix_tree_node_cachep and the script fails afterwards when trying to extract the offsets base and the number of symbols, because the real end of the symbols array has not been found.

I fixed it by removing the check against 0x08000000, but maybe there is a better solution.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions