diff options
author | Alexei Starovoitov <ast@kernel.org> | 2025-07-18 12:14:51 -0700 |
---|---|---|
committer | Alexei Starovoitov <ast@kernel.org> | 2025-07-18 12:15:59 -0700 |
commit | beb1097ec8bdf15e2fed3301920a719e0dd2250a (patch) | |
tree | 026a9569edbac6e1387a0cd9d7574e8b74795c05 /scripts/gdb/linux/xarray.py | |
parent | 0ee30d937c147fc14c4b49535181d437cd2fde7a (diff) | |
parent | 7abc678e308467ab60ffb8c31f4638a47ee3518c (diff) |
Merge git://git.kernel.org/pub/scm/linux/kernel/git/bpf/bpf after rc6
Cross-merge BPF and other fixes after downstream PR.
No conflicts.
Signed-off-by: Alexei Starovoitov <ast@kernel.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) |