diff options
author | Peter Zijlstra <peterz@infradead.org> | 2025-07-14 17:16:28 +0200 |
---|---|---|
committer | Peter Zijlstra <peterz@infradead.org> | 2025-07-14 17:16:28 +0200 |
commit | 8f2146159b3a24d4fde0479c5e19f31908419004 (patch) | |
tree | 8a456e37149a3cd12e5e8bb1a6484f8fd7ffec3d /scripts/gdb/linux/xarray.py | |
parent | 1eec89a671413ce38df9fe9e70f5130a9eb79a59 (diff) | |
parent | 36569780b0d64de283f9d6c2195fd1a43e221ee8 (diff) |
Merge branch 'tip/sched/urgent'
Avoid merge conflicts
Signed-off-by: Peter Zijlstra <peterz@infradead.org>
Diffstat (limited to 'scripts/gdb/linux/xarray.py')
-rw-r--r-- | scripts/gdb/linux/xarray.py | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/scripts/gdb/linux/xarray.py b/scripts/gdb/linux/xarray.py new file mode 100644 index 000000000000..f4477b5def75 --- /dev/null +++ b/scripts/gdb/linux/xarray.py @@ -0,0 +1,28 @@ +# SPDX-License-Identifier: GPL-2.0 +# +# Xarray helpers +# +# Copyright (c) 2025 Broadcom +# +# Authors: +# Florian Fainelli <florian.fainelli@broadcom.com> + +import gdb + +from linux import utils +from linux import constants + +def xa_is_internal(entry): + ulong_type = utils.get_ulong_type() + return ((entry.cast(ulong_type) & 3) == 2) + +def xa_mk_internal(v): + return ((v << 2) | 2) + +def xa_is_zero(entry): + ulong_type = utils.get_ulong_type() + return entry.cast(ulong_type) == xa_mk_internal(257) + +def xa_is_node(entry): + ulong_type = utils.get_ulong_type() + return xa_is_internal(entry) and (entry.cast(ulong_type) > 4096) |