Re: [BUG] general protection fault when reading /proc/kcore

From: David Hildenbrand
Date: Mon Aug 16 2021 - 13:49:24 EST


On 16.08.21 19:34, Jiri Olsa wrote:
hi,
I'm getting fault below when running:

# cat /proc/kallsyms | grep ksys_read
ffffffff8136d580 T ksys_read
# objdump -d --start-address=0xffffffff8136d580 --stop-address=0xffffffff8136d590 /proc/kcore

/proc/kcore: file format elf64-x86-64

Segmentation fault

any idea? config is attached

Just tried with a different config on 5.14.0-rc6+

[root@localhost ~]# cat /proc/kallsyms | grep ksys_read
ffffffff8927a800 T ksys_readahead
ffffffff89333660 T ksys_read

[root@localhost ~]# objdump -d --start-address=0xffffffff89333660 --stop-address=0xffffffff89333670

a.out: file format elf64-x86-64



The kern_addr_valid(start) seems to fault in your case, which is weird, because it merely walks the page tables. But it seems to complain about a non-canonical address 0xf887ffcbff000

Can you post your QEMU cmdline? Did you test this on other kernel versions?

Thanks!

--
Thanks,

David / dhildenb