linux/scripts/gdb/linux
Barry Song 526940e396 scripts/gdb: add lx_current support for arm64
arm64 uses SP_EL0 to save the current task_struct address.  While running
in EL0, SP_EL0 is clobbered by userspace.  So if the upper bit is not 1
(not TTBR1), the current address is invalid.  This patch checks the upper
bit of SP_EL0, if the upper bit is 1, lx_current() of arm64 will return
the derefrence of current task.  Otherwise, lx_current() will tell users
they are running in userspace(EL0).

While arm64 is running in EL0, it is actually pointless to print current
task as the memory of kernel space is not accessible in EL0.

Link: https://lkml.kernel.org/r/20210314203444.15188-3-song.bao.hua@hisilicon.com
Signed-off-by: Barry Song <song.bao.hua@hisilicon.com>
Cc: Jan Kiszka <jan.kiszka@siemens.com>
Cc: Jonathan Corbet <corbet@lwn.net>
Cc: Kieran Bingham <kbingham@kernel.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2021-05-07 00:26:33 -07:00
..
__init__.py scripts/gdb: add empty package initialization script 2015-02-28 09:57:51 -08:00
.gitignore .gitignore: add SPDX License Identifier 2020-03-25 11:50:48 +01:00
clk.py scripts/gdb: print cached rate in lx-clk-summary 2019-05-14 19:52:52 -07:00
config.py scripts/gdb: add kernel config dumping command 2019-05-14 19:52:51 -07:00
constants.py.in scripts/gdb: fix invocation when CONFIG_COMMON_CLK is not set 2019-06-01 15:51:31 -07:00
cpus.py scripts/gdb: add lx_current support for arm64 2021-05-07 00:26:33 -07:00
device.py scripts/gdb: add helpers to find and list devices 2019-07-16 19:23:24 -07:00
dmesg.py printk: move dictionary keys to dev_printk_info 2020-09-22 11:27:48 +02:00
genpd.py PM: domains: Fix up terminology with parent/child 2020-07-09 14:24:00 +02:00
lists.py scripts/gdb: fix list_for_each 2021-02-26 09:41:05 -08:00
Makefile kbuild: use always-y instead of extra-y 2021-02-16 12:01:45 +09:00
modules.py scripts/gdb: support !CONFIG_MODULES gracefully 2016-05-23 17:04:14 -07:00
proc.py scripts/gdb/proc: add struct mount & struct super_block addr in lx-mounts command 2020-10-16 11:11:22 -07:00
rbtree.py scripts/gdb: fix python 3.8 SyntaxWarning 2020-08-12 10:58:02 -07:00
symbols.py gdb: lx-symbols: store the abspath() 2021-05-07 00:26:32 -07:00
tasks.py scripts/gdb/tasks: add headers and improve spacing format 2020-10-16 11:11:22 -07:00
timerlist.py scripts/gdb: add a timer list command 2019-05-14 19:52:52 -07:00
utils.py scripts/gdb: add utils.read_ulong() 2020-09-08 09:33:15 +02:00