sdb-debugger 0.2.2__tar.gz → 0.3.2__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/.gitignore +7 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/PKG-INFO +4 -4
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/README.md +3 -3
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/pyproject.toml +1 -1
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/sdb/__init__.py +52 -13
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/sdb/_version.py +3 -3
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/sdb/command.py +117 -67
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/sdb/commands/linux/stacks.py +117 -44
- sdb_debugger-0.3.2/sdb/commands/linux/threads.py +584 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/sdb/commands/member.py +1 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/sdb/internal/cli.py +29 -11
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/sdb/internal/repl.py +4 -1
- sdb_debugger-0.3.2/sdb/mdb_compat.py +216 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/sdb/pipeline.py +12 -3
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/sdb/target.py +25 -5
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/sdb_debugger.egg-info/PKG-INFO +4 -4
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/sdb_debugger.egg-info/SOURCES.txt +19 -5
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/linux/crashed_thread +4 -4
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/linux/crashed_thread | stacks +4 -4
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/linux/echo 0xffffa089669edc00 | stack +3 -3
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/linux/stacks -m zfs +23 -23
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/linux/stacks -m zfs -c zthr_procedure +2 -2
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/linux/threads | filter 'obj.comm == /"java/"' | stack" +25 -25
- sdb_debugger-0.3.2/tests/integration/data/regression_output/dump.201912060006/mdb_compat/arg:::cmd +3 -0
- sdb_debugger-0.3.2/tests/integration/data/regression_output/dump.201912060006/mdb_compat/bogus_nonexistent_symbol::print +3 -0
- sdb_debugger-0.3.2/tests/integration/data/regression_output/dump.201912060006/mdb_compat/jiffies::deref +3 -0
- sdb_debugger-0.3.2/tests/integration/data/regression_output/dump.201912060006/mdb_compat/spa::print::head +3 -0
- sdb_debugger-0.3.2/tests/integration/data/regression_output/dump.201912060006/mdb_compat/spa_namespace_avl::print -nr +3 -0
- sdb_debugger-0.3.2/tests/integration/data/regression_output/dump.201912060006/mdb_compat/spa_namespace_avl::walk | head 2 +4 -0
- sdb_debugger-0.3.2/tests/integration/data/regression_output/dump.201912060006/spl/addr spa_namespace_avl | walk +5 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/linux/crashed_thread +6 -6
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/linux/crashed_thread | stacks +6 -6
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/linux/stacks -c spa_sync +1 -1
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/linux/stacks -m zfs +44 -44
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/linux/stacks -m zfs -c spa_sync +1 -1
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/linux/stacks -m zfs -c zthr_procedure +3 -3
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/linux/threads | filter 'obj.comm == /"java/"' | stack" +4 -4
- sdb_debugger-0.3.2/tests/integration/data/regression_output/dump.202303131823/mdb_compat/arg:::cmd +3 -0
- sdb_debugger-0.3.2/tests/integration/data/regression_output/dump.202303131823/mdb_compat/bogus_nonexistent_symbol::print +3 -0
- sdb_debugger-0.3.2/tests/integration/data/regression_output/dump.202303131823/mdb_compat/jiffies::deref +3 -0
- sdb_debugger-0.3.2/tests/integration/data/regression_output/dump.202303131823/mdb_compat/spa::print::head +3 -0
- sdb_debugger-0.3.2/tests/integration/data/regression_output/dump.202303131823/mdb_compat/spa_namespace_avl::print -nr +3 -0
- sdb_debugger-0.3.2/tests/integration/data/regression_output/dump.202303131823/mdb_compat/spa_namespace_avl::walk | head 2 +4 -0
- sdb_debugger-0.3.2/tests/integration/data/regression_output/dump.202303131823/spl/addr spa_namespace_avl | walk +5 -0
- sdb_debugger-0.3.2/tests/integration/test_mdb_compat_generic.py +76 -0
- sdb_debugger-0.3.2/tests/unit/test_command_validation.py +116 -0
- sdb_debugger-0.3.2/tests/unit/test_mdb_compat.py +209 -0
- sdb_debugger-0.2.2/sdb/commands/linux/threads.py +0 -106
- sdb_debugger-0.2.2/tests/integration/data/regression_output/dump.201912060006/linux/stacks +0 -603
- sdb_debugger-0.2.2/tests/integration/data/regression_output/dump.201912060006/linux/stacks -a +0 -1127
- sdb_debugger-0.2.2/tests/integration/data/regression_output/dump.202303131823/linux/stacks +0 -902
- sdb_debugger-0.2.2/tests/integration/data/regression_output/dump.202303131823/linux/stacks -a +0 -1965
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/.github/scripts/clear-dump.sh +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/.github/scripts/download-dumps-from-gdrive.sh +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/.github/scripts/extract-dump.sh +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/.github/scripts/install-drgn.sh +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/.github/scripts/install-libkdumpfile.sh +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/.github/workflows/main.yml +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/.github/workflows/release.yml +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/CODE_OF_CONDUCT.md +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/LICENSE +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/assets/img/sdb-logo.jpg +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/assets/img/sdb-logo.png +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/assets/img/sdb-logo_white.png +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/debian/compat +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/debian/control +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/debian/copyright +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/debian/rules +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2/docs/internal}/PUBLISHING.md +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/requirements-dev.txt +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/requirements.txt +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/scripts/publish-to-pypi.sh +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/sdb/commands/__init__.py +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/sdb/commands/array.py +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/sdb/commands/container_of.py +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/sdb/commands/count.py +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/sdb/commands/echo.py +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/sdb/commands/exit.py +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/sdb/commands/filter.py +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/sdb/commands/head.py +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/sdb/commands/help.py +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/sdb/commands/history.py +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/sdb/commands/internal/__init__.py +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/sdb/commands/internal/fmt.py +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/sdb/commands/internal/p2.py +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/sdb/commands/internal/table.py +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/sdb/commands/internal/util.py +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/sdb/commands/linux/__init__.py +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/sdb/commands/linux/dmesg.py +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/sdb/commands/linux/internal/__init__.py +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/sdb/commands/linux/internal/slub_helpers.py +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/sdb/commands/linux/linked_lists.py +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/sdb/commands/linux/per_cpu.py +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/sdb/commands/linux/process.py +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/sdb/commands/linux/slabs.py +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/sdb/commands/linux/tree.py +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/sdb/commands/linux/vfs.py +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/sdb/commands/linux/whatis.py +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/sdb/commands/pretty_print.py +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/sdb/commands/print.py +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/sdb/commands/ptype.py +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/sdb/commands/pyfilter.py +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/sdb/commands/sizeof.py +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/sdb/commands/spl/__init__.py +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/sdb/commands/spl/avl.py +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/sdb/commands/spl/internal/__init__.py +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/sdb/commands/spl/internal/kmem_helpers.py +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/sdb/commands/spl/multilist.py +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/sdb/commands/spl/spl_kmem_caches.py +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/sdb/commands/spl/spl_list.py +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/sdb/commands/sum.py +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/sdb/commands/tail.py +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/sdb/commands/type.py +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/sdb/commands/ustacks.py +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/sdb/commands/uthreads.py +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/sdb/commands/zfs/__init__.py +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/sdb/commands/zfs/arc.py +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/sdb/commands/zfs/blkptr.py +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/sdb/commands/zfs/btree.py +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/sdb/commands/zfs/dbuf.py +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/sdb/commands/zfs/histograms.py +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/sdb/commands/zfs/internal/__init__.py +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/sdb/commands/zfs/metaslab.py +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/sdb/commands/zfs/range_tree.py +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/sdb/commands/zfs/spa.py +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/sdb/commands/zfs/vdev.py +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/sdb/commands/zfs/zfs_dbgmsg.py +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/sdb/commands/zfs/zio.py +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/sdb/error.py +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/sdb/internal/__init__.py +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/sdb/parser.py +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/sdb_debugger.egg-info/dependency_links.txt +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/sdb_debugger.egg-info/entry_points.txt +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/sdb_debugger.egg-info/requires.txt +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/sdb_debugger.egg-info/top_level.txt +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/setup.cfg +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/__init__.py +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/__init__.py +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/core/addr bogus +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/core/addr fget | deref +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/core/addr jiffies | deref +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/core/addr jiffies | deref | deref +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/core/addr spa_namespace_avl +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/core/addr spa_namespace_avl zfs_dbgmsgs | print -d +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/core/addr spa_namespace_avl | deref +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/core/addr spa_namespace_avl | deref | addr +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/core/addr spa_namespace_avl | deref | print +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/core/addr spa_namespace_avl | member avl_root->avl_child[0]->avl_child +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/core/addr spa_namespace_avl | member avl_root->avl_child[1 +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/core/addr spa_namespace_avl | member avl_root->avl_child[3] +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/core/addr spa_namespace_avl | member avl_root->avl_child[a] +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/core/addr spa_namespace_avl | member avl_root.avl_child[0].avl_child +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/core/addr spa_namespace_avl | member avl_root.avl_pcb avl_size +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/core/addr spa_namespace_avl | print +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/core/addr spa_namespace_avl | print --RAW +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/core/addr spa_namespace_avl | print -d +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/core/addr spa_namespace_avl | print -n +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/core/addr spa_namespace_avl | print -nr +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/core/addr spa_namespace_avl | print -r +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/core/echo 0x0 0x1 0x2 | filter 'obj < 1' +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/core/echo 0x0 0x1 0x2 | filter 'obj <= 1' +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/core/echo 0x0 0x1 0x2 | filter 'obj == 1' +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/core/echo 0x0 0x1 0x2 | filter 'obj > 1' +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/core/echo 0x0 0x1 0x2 | filter 'obj >= 1' +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/core/echo 0x0 | addr spa_namespace_avl | echo 0x1 | cast avl_tree_t * | member avl_root +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/core/echo 0x0 | cast int * | array 1 +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/core/echo 0x0 | cast int * | deref +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/core/echo 0x0 | cast spa_t * | member spa_name +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/core/echo 0x0 | cast void * | array 1 +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/core/echo 0x0 | filter 'obj == 0' +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/core/echo 0x0 | filter 'obj == 1' +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/core/echo 0x1 | filter 'obj == obj' +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/core/echo 0x10 | cast int * | deref +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/core/echo 0x1234 | cast dmu_recv_cookie_t * | member drc_os +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/core/echo 0xffff90cc11b28000 | deref +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/core/echo 1 | echo 2 | sum +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/core/echo 1234 | cast int | array +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/core/filter 'obj == 1' +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/core/member no_object +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/core/ptype $abc +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/core/ptype 'a b c' +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/core/ptype 'bogus union' +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/core/ptype 'struct bogus' +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/core/ptype 'struct spa' +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/core/ptype 'struct union' +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/core/ptype 'struct' +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/core/ptype 'union struct struct' +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/core/ptype 2abc +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/core/ptype @ +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/core/ptype bogus_t +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/core/ptype spa vdev +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/core/ptype spa_t +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/core/ptype struct spa +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/core/ptype thread_union +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/core/ptype zfs_case +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/core/sizeof bogus +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/core/sizeof size_t +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/core/sizeof spa vdev +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/core/sizeof struct spa +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/core/sizeof task_struct +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/core/spa rpool | filter 'obj.bogus == 1624' +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/core/spa rpool | filter 'obj.spa_syncing_txg < 1624' | member spa_name +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/core/spa rpool | filter 'obj.spa_syncing_txg <= 1624' | member spa_name +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/core/spa rpool | filter 'obj.spa_syncing_txg == 1624' | member spa_name +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/core/spa rpool | filter 'obj.spa_syncing_txg > 1624' | member spa_name +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/core/spa rpool | filter 'obj.spa_syncing_txg >= 1624' | member spa_name +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/core/spa rpool | filter 'obj.spa_syncing_txg bogus_op 1624' +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/core/spa | deref | sum +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/core/spa | head 1 | deref | print --RAW -s +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/core/spa | head 1 | deref | print -rs +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/core/spa | head 1 | member spa_name[1] | print +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/core/spa | head 1 | member spa_name[1] | print -c +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/core/spa | head 1 | member spa_name[1] | print -cr +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/core/spa | head 1 | member spa_zio_taskq[0][0].stqs_taskq +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/core/spa | head 1 | member spa_zio_taskq[0][0].stqs_taskq[0] +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/core/spa | member spa_ubsync->ub_rootbp +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/core/spa | member spa_ubsync.bogus +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/core/spa | member spa_ubsync.ub_rootbp.blk_dva[0].dva_word +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/core/spa | member spa_zio_taskq[0][0].stqs_taskq | array +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/core/spa | member spa_zio_taskq[0][0].stqs_taskq | array 2 +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/core/spa | member spa_zio_taskq[0][0].stqs_taskq-> +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/core/spa | member spa_zio_taskq[0][0].stqs_taskq. +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/core/spa | range_tree +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/core/spa | vdev | metaslab | deref | sizeof | sum +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/core/sum +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/core/thread | filter /"obj.comm == ///"bogus///"/" | thread" +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/core/threads | deref | sizeof | sum +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/core/threads | sizeof | sum +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/core/zfs_dbgmsg | filter '== obj' +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/core/zfs_dbgmsg | filter 'obj ==' +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/core/zfs_dbgmsg | filter 'obj' +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/core/zfs_dbgmsg | head 1 | member zdm_msg | array +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/core/zfs_dbgmsg | head 1 | member zdm_msg | array -1 +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/core/zfs_dbgmsg | head 1 | member zdm_msg | array 0 +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/core/zfs_dbgmsg | head 1 | member zdm_msg | array 2 +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/core/zfs_dbgmsg | head 1 | member zdm_msg[2] +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/linux/addr init_task | member comm | addr | container_of bogus_type comm | cast void * +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/linux/addr init_task | member comm | addr | container_of int comm | cast void * +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/linux/addr init_task | member comm | addr | container_of pid comm | cast void * +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/linux/addr init_task | member comm | addr | container_of task_struct bogus_member | cast void * +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/linux/addr init_task | member comm | addr | container_of task_struct comm | cast void * +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/linux/addr init_task | member comm | container_of task_struct comm | cast void * +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/linux/addr init_task | member thread_pid.tasks[3] | lxhlist bogus_type pid_links[3] | member comm +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/linux/addr init_task | member thread_pid.tasks[3] | lxhlist task_struct bogus_member | member comm +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/linux/addr init_task | member thread_pid.tasks[3] | lxhlist task_struct pid_links[3] | member comm +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/linux/addr modules | lxlist bogus_type list | member name +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/linux/addr modules | lxlist module bogus_member | member name +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/linux/addr modules | lxlist module list | member name +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/linux/addr spa_namespace_avl | cpu_counter_sum +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/linux/addr tcp_orphan_count | cpu_counter_sum +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/linux/addr tcp_sockets_allocated | cpu_counter_sum +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/linux/addr vm_committed_as | cpu_counter_sum +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/linux/addr vmap_area_root | rbtree bogus_type rb_node +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/linux/addr vmap_area_root | rbtree vmap_area bogus_member +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/linux/addr vmap_area_root | rbtree vmap_area rb_node +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/linux/dbuf |head 1 |deref |member db_buf |whatis +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/linux/dmesg +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/linux/dmesg -l 3 +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/linux/echo 0x0 | cpu_counter_sum +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/linux/find_task 1 +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/linux/find_task 1 2 +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/linux/find_task 1 2 | member comm +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/linux/find_task 1 | fget 1 4 +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/linux/find_task 1 | fget 1 4 123123 +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/linux/pid 1 +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/linux/pid 1 10 12437 +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/linux/slabs +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/linux/slabs -o bogus +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/linux/slabs -s active_objs -o active_objs,util,name +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/linux/slabs -s active_objs -o util +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/linux/slabs -s bogus +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/linux/slabs -s util +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/linux/slabs -s util | slabs +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/linux/slabs -v +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/linux/slabs | filter 'obj.name == /"UNIX/"' | slub_cache | count" +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/linux/slabs | filter 'obj.name == /"dnode_t/"' |walk | head 6056 | tail 1| cast dnode_t * | deref |member dn_phys |member dn_blkptr[0] |blkptr" +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/linux/slabs | filter 'obj.name == /"dnode_t/"' |walk | tail 8 | head 1 | cast dnode_t * | deref |member dn_phys |member dn_blkptr[0] |blkptr" +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/linux/slabs | filter 'obj.name == /"kmalloc-8/"' | member cpu_slab | percpu" +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/linux/slabs | filter 'obj.name == /"kmalloc-8/"' | member cpu_slab | percpu 0" +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/linux/slabs | filter 'obj.name == /"kmalloc-8/"' | member cpu_slab | percpu 0 1" +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/linux/slabs | filter 'obj.name == /"kmalloc-8/"' | member cpu_slab | percpu 0 2 1" +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/linux/slabs | filter 'obj.name == /"kmalloc-8/"' | member cpu_slab | percpu 1" +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/linux/slabs | filter 'obj.name == /"kmalloc-8/"' | member cpu_slab | percpu 100" +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/linux/slabs | filter 'obj.name == /"kmalloc-8/"' | member cpu_slab | percpu 2" +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/linux/slabs | filter 'obj.name == /"kmalloc-8/"' | member cpu_slab | percpu 3" +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/linux/slabs | filter 'obj.name == /"zio_cache/"' | slub_cache" +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/linux/slabs | filter 'obj.name == /"zio_cache/"' | slub_cache | cast zio_t * | member io_spa.spa_name" +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/linux/slabs | filter 'obj.name == /"zio_cache/"' | slub_cache | count" +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/linux/slabs | filter 'obj.name == /"zio_cache/"' | walk" +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/linux/slabs | head 2 | slabs +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/linux/slabs | pp +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/linux/stacks -c bogus +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/linux/stacks -c spa_sync +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/linux/stacks -m bogus +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/linux/stacks -m bogus | count +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/linux/stacks -m zfs -c spa_sync +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/linux/stacks -m zfs | count +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/linux/stacks -t bogus +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/linux/thread +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/linux/threads +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/linux/threads | count +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/linux/threads | filter 'obj.comm == /"java/"' | threads" +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/linux/whatis 0xf987kkbbh +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/linux/whatis 0xffff +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/linux/whatis 0xffffa0888c766000 0xffffa089407ca870 +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/linux/whatis 0xffffa089407ca870 +0 -0
- /sdb_debugger-0.2.2/tests/integration/data/regression_output/dump.201912060006/spl/addr spa_namespace_avl | avl → /sdb_debugger-0.3.2/tests/integration/data/regression_output/dump.201912060006/mdb_compat/spa_namespace_avl::walk +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/spl/addr arc_mru | member [0].arcs_list[1] | multilist | head +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/spl/addr arc_mru | member [0].arcs_list[1] | walk | head +0 -0
- /sdb_debugger-0.2.2/tests/integration/data/regression_output/dump.201912060006/spl/addr spa_namespace_avl | walk → /sdb_debugger-0.3.2/tests/integration/data/regression_output/dump.201912060006/spl/addr spa_namespace_avl | avl +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/spl/spa | member spa_config_list | spl_list +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/spl/spa | member spa_config_list | walk +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/spl/spa | member spa_evicting_os_list | spl_list +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/spl/spa | member spa_evicting_os_list | walk +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/spl/spa | member spa_normal_class.mc_metaslab_txg_list | multilist +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/spl/spa | member spa_normal_class.mc_metaslab_txg_list | walk +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/spl/spl_kmem_caches +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/spl/spl_kmem_caches -o name,entry_size -s entry_size +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/spl/spl_kmem_caches -o name,source +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/spl/spl_kmem_caches -s entry_size +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/spl/spl_kmem_caches -s entry_size | head 4 | spl_kmem_caches +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/spl/spl_kmem_caches -v +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/spl/spl_kmem_caches | filter 'obj.skc_linux_cache == 0' | spl_cache +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/spl/spl_kmem_caches | filter 'obj.skc_linux_cache == 0' | spl_cache | cnt +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/spl/spl_kmem_caches | filter 'obj.skc_linux_cache > 0' | filter 'obj.skc_obj_alloc > 0' | head 1 | spl_cache +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/spl/spl_kmem_caches | filter 'obj.skc_name == /"ddt_cache/"' | walk" +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/spl/spl_kmem_caches | pp +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/zfs/arc +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/zfs/dbuf +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/zfs/dbuf -l 1 +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/zfs/dbuf | dbuf -l 1 +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/zfs/dbuf | dbuf -l 1 | head | dbuf +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/zfs/dbuf | head 1 | member db_blkptr | blkptr +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/zfs/spa +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/zfs/spa -H +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/zfs/spa -mH +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/zfs/spa -v +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/zfs/spa -vH +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/zfs/spa -vm +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/zfs/spa -vmH +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/zfs/spa data | member spa_normal_class.mc_histogram | zfs_histogram +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/zfs/spa data | vdev | metaslab | filter 'obj.ms_loaded == 1' | head 1 | member ms_allocatable.rt_histogram | zhist +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/zfs/spa data | vdev | metaslab | filter 'obj.ms_loaded == 1' | head 1 | member ms_sm.sm_phys.smp_histogram | zhist +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/zfs/spa data | vdev | metaslab | filter 'obj.ms_loaded == 1' | head 1 | member ms_sm.sm_phys.smp_histogram | zhist 9 +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/zfs/spa rpool +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/zfs/spa | head 1 | deref |member spa_uberblock | member ub_rootbp | blkptr +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/zfs/spa | head 1 | spa +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/zfs/spa | pp +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/zfs/spa | vdev +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/zfs/spa | vdev | metaslab +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/zfs/spa | vdev | metaslab -w +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/zfs/spa | vdev | metaslab | member ms_allocatable | range_tree +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/zfs/spa | vdev | metaslab | member ms_allocatable.rt_root | zfs_btree +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/zfs/spa | vdev | pp +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/zfs/zfs_dbgmsg +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/zfs/zfs_dbgmsg | tail 5 | zfs_dbgmsg +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/zfs/zio +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.201912060006/zfs/zio -r +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/core/addr bogus +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/core/addr fget | deref +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/core/addr jiffies | deref +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/core/addr jiffies | deref | deref +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/core/addr spa_namespace_avl +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/core/addr spa_namespace_avl zfs_dbgmsgs | print -d +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/core/addr spa_namespace_avl | deref +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/core/addr spa_namespace_avl | deref | addr +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/core/addr spa_namespace_avl | deref | print +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/core/addr spa_namespace_avl | member avl_root->avl_child[0]->avl_child +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/core/addr spa_namespace_avl | member avl_root->avl_child[1 +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/core/addr spa_namespace_avl | member avl_root->avl_child[3] +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/core/addr spa_namespace_avl | member avl_root->avl_child[a] +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/core/addr spa_namespace_avl | member avl_root.avl_child[0].avl_child +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/core/addr spa_namespace_avl | member avl_root.avl_pcb avl_size +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/core/addr spa_namespace_avl | print +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/core/addr spa_namespace_avl | print --RAW +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/core/addr spa_namespace_avl | print -d +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/core/addr spa_namespace_avl | print -n +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/core/addr spa_namespace_avl | print -nr +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/core/addr spa_namespace_avl | print -r +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/core/echo 0x0 0x1 0x2 | filter 'obj < 1' +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/core/echo 0x0 0x1 0x2 | filter 'obj <= 1' +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/core/echo 0x0 0x1 0x2 | filter 'obj == 1' +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/core/echo 0x0 0x1 0x2 | filter 'obj > 1' +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/core/echo 0x0 0x1 0x2 | filter 'obj >= 1' +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/core/echo 0x0 | addr spa_namespace_avl | echo 0x1 | cast avl_tree_t * | member avl_root +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/core/echo 0x0 | cast int * | array 1 +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/core/echo 0x0 | cast int * | deref +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/core/echo 0x0 | cast spa_t * | member spa_name +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/core/echo 0x0 | cast void * | array 1 +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/core/echo 0x0 | filter 'obj == 0' +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/core/echo 0x0 | filter 'obj == 1' +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/core/echo 0x1 | filter 'obj == obj' +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/core/echo 0x10 | cast int * | deref +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/core/echo 0x1234 | cast dmu_recv_cookie_t * | member drc_os +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/core/echo 0xffff90cc11b28000 | deref +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/core/echo 1 | echo 2 | sum +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/core/echo 1234 | cast int | array +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/core/filter 'obj == 1' +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/core/member no_object +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/core/ptype $abc +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/core/ptype 'a b c' +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/core/ptype 'bogus union' +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/core/ptype 'struct bogus' +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/core/ptype 'struct spa' +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/core/ptype 'struct union' +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/core/ptype 'struct' +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/core/ptype 'union struct struct' +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/core/ptype 2abc +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/core/ptype @ +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/core/ptype bogus_t +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/core/ptype spa vdev +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/core/ptype spa_t +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/core/ptype struct spa +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/core/ptype thread_union +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/core/ptype zfs_case +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/core/sizeof bogus +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/core/sizeof size_t +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/core/sizeof spa vdev +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/core/sizeof struct spa +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/core/sizeof task_struct +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/core/spa rpool | filter 'obj.bogus == 1624' +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/core/spa rpool | filter 'obj.spa_syncing_txg < 1624' | member spa_name +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/core/spa rpool | filter 'obj.spa_syncing_txg <= 1624' | member spa_name +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/core/spa rpool | filter 'obj.spa_syncing_txg == 1624' | member spa_name +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/core/spa rpool | filter 'obj.spa_syncing_txg > 1624' | member spa_name +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/core/spa rpool | filter 'obj.spa_syncing_txg >= 1624' | member spa_name +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/core/spa rpool | filter 'obj.spa_syncing_txg bogus_op 1624' +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/core/spa | deref | sum +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/core/spa | head 1 | deref | print --RAW -s +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/core/spa | head 1 | deref | print -rs +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/core/spa | head 1 | member spa_name[1] | print +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/core/spa | head 1 | member spa_name[1] | print -c +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/core/spa | head 1 | member spa_name[1] | print -cr +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/core/spa | head 1 | member spa_zio_taskq[0][0].stqs_taskq +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/core/spa | head 1 | member spa_zio_taskq[0][0].stqs_taskq[0] +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/core/spa | member spa_ubsync->ub_rootbp +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/core/spa | member spa_ubsync.bogus +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/core/spa | member spa_ubsync.ub_rootbp.blk_dva[0].dva_word +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/core/spa | member spa_zio_taskq[0][0].stqs_taskq | array +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/core/spa | member spa_zio_taskq[0][0].stqs_taskq | array 2 +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/core/spa | member spa_zio_taskq[0][0].stqs_taskq-> +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/core/spa | member spa_zio_taskq[0][0].stqs_taskq. +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/core/spa | range_tree +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/core/spa | vdev | metaslab | deref | sizeof | sum +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/core/sum +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/core/thread | filter /"obj.comm == ///"bogus///"/" | thread" +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/core/threads | deref | sizeof | sum +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/core/threads | sizeof | sum +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/core/zfs_dbgmsg | filter '== obj' +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/core/zfs_dbgmsg | filter 'obj ==' +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/core/zfs_dbgmsg | filter 'obj' +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/core/zfs_dbgmsg | head 1 | member zdm_msg | array +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/core/zfs_dbgmsg | head 1 | member zdm_msg | array -1 +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/core/zfs_dbgmsg | head 1 | member zdm_msg | array 0 +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/core/zfs_dbgmsg | head 1 | member zdm_msg | array 2 +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/core/zfs_dbgmsg | head 1 | member zdm_msg[2] +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/linux/addr init_task | member comm | addr | container_of bogus_type comm | cast void * +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/linux/addr init_task | member comm | addr | container_of int comm | cast void * +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/linux/addr init_task | member comm | addr | container_of pid comm | cast void * +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/linux/addr init_task | member comm | addr | container_of task_struct bogus_member | cast void * +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/linux/addr init_task | member comm | addr | container_of task_struct comm | cast void * +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/linux/addr init_task | member comm | container_of task_struct comm | cast void * +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/linux/addr init_task | member thread_pid.tasks[3] | lxhlist bogus_type pid_links[3] | member comm +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/linux/addr init_task | member thread_pid.tasks[3] | lxhlist task_struct bogus_member | member comm +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/linux/addr init_task | member thread_pid.tasks[3] | lxhlist task_struct pid_links[3] | member comm +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/linux/addr modules | lxlist bogus_type list | member name +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/linux/addr modules | lxlist module bogus_member | member name +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/linux/addr modules | lxlist module list | member name +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/linux/addr spa_namespace_avl | cpu_counter_sum +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/linux/addr tcp_orphan_count | cpu_counter_sum +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/linux/addr tcp_sockets_allocated | cpu_counter_sum +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/linux/addr vm_committed_as | cpu_counter_sum +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/linux/addr vmap_area_root | rbtree bogus_type rb_node +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/linux/addr vmap_area_root | rbtree vmap_area bogus_member +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/linux/addr vmap_area_root | rbtree vmap_area rb_node +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/linux/dbuf |head 1 |deref |member db_buf |whatis +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/linux/dmesg +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/linux/dmesg -l 3 +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/linux/echo 0x0 | cpu_counter_sum +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/linux/echo 0xffffa089669edc00 | stack +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/linux/find_task 1 +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/linux/find_task 1 2 +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/linux/find_task 1 2 | member comm +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/linux/find_task 1 | fget 1 4 +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/linux/find_task 1 | fget 1 4 123123 +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/linux/pid 1 +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/linux/pid 1 10 12437 +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/linux/slabs +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/linux/slabs -o bogus +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/linux/slabs -s active_objs -o active_objs,util,name +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/linux/slabs -s active_objs -o util +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/linux/slabs -s bogus +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/linux/slabs -s util +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/linux/slabs -s util | slabs +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/linux/slabs -v +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/linux/slabs | filter 'obj.name == /"UNIX/"' | slub_cache | count" +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/linux/slabs | filter 'obj.name == /"dnode_t/"' |walk | head 6056 | tail 1| cast dnode_t * | deref |member dn_phys |member dn_blkptr[0] |blkptr" +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/linux/slabs | filter 'obj.name == /"dnode_t/"' |walk | tail 8 | head 1 | cast dnode_t * | deref |member dn_phys |member dn_blkptr[0] |blkptr" +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/linux/slabs | filter 'obj.name == /"kmalloc-8/"' | member cpu_slab | percpu" +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/linux/slabs | filter 'obj.name == /"kmalloc-8/"' | member cpu_slab | percpu 0" +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/linux/slabs | filter 'obj.name == /"kmalloc-8/"' | member cpu_slab | percpu 0 1" +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/linux/slabs | filter 'obj.name == /"kmalloc-8/"' | member cpu_slab | percpu 0 2 1" +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/linux/slabs | filter 'obj.name == /"kmalloc-8/"' | member cpu_slab | percpu 1" +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/linux/slabs | filter 'obj.name == /"kmalloc-8/"' | member cpu_slab | percpu 100" +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/linux/slabs | filter 'obj.name == /"kmalloc-8/"' | member cpu_slab | percpu 2" +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/linux/slabs | filter 'obj.name == /"kmalloc-8/"' | member cpu_slab | percpu 3" +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/linux/slabs | filter 'obj.name == /"zio_cache/"' | slub_cache" +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/linux/slabs | filter 'obj.name == /"zio_cache/"' | slub_cache | cast zio_t * | member io_spa.spa_name" +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/linux/slabs | filter 'obj.name == /"zio_cache/"' | slub_cache | count" +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/linux/slabs | filter 'obj.name == /"zio_cache/"' | walk" +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/linux/slabs | head 2 | slabs +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/linux/slabs | pp +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/linux/stacks -c bogus +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/linux/stacks -m bogus +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/linux/stacks -m bogus | count +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/linux/stacks -m zfs | count +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/linux/stacks -t bogus +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/linux/thread +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/linux/threads +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/linux/threads | count +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/linux/threads | filter 'obj.comm == /"java/"' | threads" +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/linux/whatis 0xf987kkbbh +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/linux/whatis 0xffff +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/linux/whatis 0xffffa0888c766000 0xffffa089407ca870 +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/linux/whatis 0xffffa089407ca870 +0 -0
- /sdb_debugger-0.2.2/tests/integration/data/regression_output/dump.202303131823/spl/addr spa_namespace_avl | avl → /sdb_debugger-0.3.2/tests/integration/data/regression_output/dump.202303131823/mdb_compat/spa_namespace_avl::walk +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/spl/addr arc_mru | member [0].arcs_list[1] | multilist | head +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/spl/addr arc_mru | member [0].arcs_list[1] | walk | head +0 -0
- /sdb_debugger-0.2.2/tests/integration/data/regression_output/dump.202303131823/spl/addr spa_namespace_avl | walk → /sdb_debugger-0.3.2/tests/integration/data/regression_output/dump.202303131823/spl/addr spa_namespace_avl | avl +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/spl/spa | member spa_config_list | spl_list +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/spl/spa | member spa_config_list | walk +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/spl/spa | member spa_evicting_os_list | spl_list +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/spl/spa | member spa_evicting_os_list | walk +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/spl/spa | member spa_normal_class.mc_metaslab_txg_list | multilist +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/spl/spa | member spa_normal_class.mc_metaslab_txg_list | walk +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/spl/spl_kmem_caches +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/spl/spl_kmem_caches -o name,entry_size -s entry_size +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/spl/spl_kmem_caches -o name,source +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/spl/spl_kmem_caches -s entry_size +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/spl/spl_kmem_caches -s entry_size | head 4 | spl_kmem_caches +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/spl/spl_kmem_caches -v +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/spl/spl_kmem_caches | filter 'obj.skc_linux_cache == 0' | spl_cache +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/spl/spl_kmem_caches | filter 'obj.skc_linux_cache == 0' | spl_cache | cnt +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/spl/spl_kmem_caches | filter 'obj.skc_linux_cache > 0' | filter 'obj.skc_obj_alloc > 0' | head 1 | spl_cache +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/spl/spl_kmem_caches | filter 'obj.skc_name == /"ddt_cache/"' | walk" +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/spl/spl_kmem_caches | pp +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/zfs/arc +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/zfs/dbuf +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/zfs/dbuf -l 1 +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/zfs/dbuf | dbuf -l 1 +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/zfs/dbuf | dbuf -l 1 | head | dbuf +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/zfs/dbuf | head 1 | member db_blkptr | blkptr +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/zfs/spa +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/zfs/spa -H +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/zfs/spa -mH +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/zfs/spa -v +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/zfs/spa -vH +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/zfs/spa -vm +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/zfs/spa -vmH +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/zfs/spa data | member spa_normal_class.mc_histogram | zfs_histogram +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/zfs/spa data | vdev | metaslab | filter 'obj.ms_loaded == 1' | head 1 | member ms_allocatable.rt_histogram | zhist +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/zfs/spa data | vdev | metaslab | filter 'obj.ms_loaded == 1' | head 1 | member ms_sm.sm_phys.smp_histogram | zhist +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/zfs/spa data | vdev | metaslab | filter 'obj.ms_loaded == 1' | head 1 | member ms_sm.sm_phys.smp_histogram | zhist 9 +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/zfs/spa rpool +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/zfs/spa | head 1 | deref |member spa_uberblock | member ub_rootbp | blkptr +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/zfs/spa | head 1 | spa +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/zfs/spa | pp +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/zfs/spa | vdev +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/zfs/spa | vdev | metaslab +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/zfs/spa | vdev | metaslab -w +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/zfs/spa | vdev | metaslab | member ms_allocatable | range_tree +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/zfs/spa | vdev | metaslab | member ms_allocatable.rt_root | zfs_btree +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/zfs/spa | vdev | pp +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/zfs/zfs_dbgmsg +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/zfs/zfs_dbgmsg | tail 5 | zfs_dbgmsg +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/zfs/zio +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/data/regression_output/dump.202303131823/zfs/zio -r +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/gen_regression_output.py +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/infra.py +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/test_core_generic.py +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/test_linux_generic.py +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/test_spl_generic.py +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/integration/test_zfs_generic.py +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/unit/__init__.py +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/unit/commands/__init__.py +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/unit/commands/test_address.py +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/unit/commands/test_cast.py +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/unit/commands/test_count.py +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/unit/commands/test_echo.py +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/unit/commands/test_filter.py +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/unit/commands/test_member.py +0 -0
- {sdb_debugger-0.2.2 → sdb_debugger-0.3.2}/tests/unit/test_parser.py +0 -0
|
@@ -117,3 +117,10 @@ tests/integration/data/mods/
|
|
|
117
117
|
|
|
118
118
|
# crash dump directory
|
|
119
119
|
tests/integration/data/dumps/
|
|
120
|
+
|
|
121
|
+
# Local development documentation (machine-specific)
|
|
122
|
+
LOCAL_DEV.md
|
|
123
|
+
LOCAL_DOCKER_DEV.md
|
|
124
|
+
|
|
125
|
+
# Auto-generated version file (created by setuptools-scm)
|
|
126
|
+
sdb/_version.py
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: sdb-debugger
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.3.2
|
|
4
4
|
Summary: The Slick/Simple Debugger
|
|
5
5
|
Author-email: Serapheim Dimitropoulos <serapheimd@gmail.com>
|
|
6
6
|
License-Expression: Apache-2.0
|
|
@@ -33,9 +33,9 @@ Dynamic: license-file
|
|
|
33
33
|
|
|
34
34
|
<p align="center">
|
|
35
35
|
<picture>
|
|
36
|
-
<source media="(prefers-color-scheme: dark)" srcset="assets/img/sdb-logo_white.png">
|
|
37
|
-
<source media="(prefers-color-scheme: light)" srcset="assets/img/sdb-logo.png">
|
|
38
|
-
<img src="assets/img/sdb-logo.png" alt="SDB" width="350" height="300">
|
|
36
|
+
<source media="(prefers-color-scheme: dark)" srcset="https://raw.githubusercontent.com/sdimitro/sdb/master/assets/img/sdb-logo_white.png">
|
|
37
|
+
<source media="(prefers-color-scheme: light)" srcset="https://raw.githubusercontent.com/sdimitro/sdb/master/assets/img/sdb-logo.png">
|
|
38
|
+
<img src="https://raw.githubusercontent.com/sdimitro/sdb/master/assets/img/sdb-logo.png" alt="SDB" width="350" height="300">
|
|
39
39
|
</picture>
|
|
40
40
|
</p>
|
|
41
41
|
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
<p align="center">
|
|
2
2
|
<picture>
|
|
3
|
-
<source media="(prefers-color-scheme: dark)" srcset="assets/img/sdb-logo_white.png">
|
|
4
|
-
<source media="(prefers-color-scheme: light)" srcset="assets/img/sdb-logo.png">
|
|
5
|
-
<img src="assets/img/sdb-logo.png" alt="SDB" width="350" height="300">
|
|
3
|
+
<source media="(prefers-color-scheme: dark)" srcset="https://raw.githubusercontent.com/sdimitro/sdb/master/assets/img/sdb-logo_white.png">
|
|
4
|
+
<source media="(prefers-color-scheme: light)" srcset="https://raw.githubusercontent.com/sdimitro/sdb/master/assets/img/sdb-logo.png">
|
|
5
|
+
<img src="https://raw.githubusercontent.com/sdimitro/sdb/master/assets/img/sdb-logo.png" alt="SDB" width="350" height="300">
|
|
6
6
|
</picture>
|
|
7
7
|
</p>
|
|
8
8
|
|
|
@@ -34,19 +34,54 @@ except ImportError:
|
|
|
34
34
|
# the modules are imported and attempt to have a cleaner
|
|
35
35
|
# separation of concerns between modules.
|
|
36
36
|
#
|
|
37
|
-
from sdb.error import (
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
from sdb.
|
|
48
|
-
|
|
49
|
-
|
|
37
|
+
from sdb.error import (
|
|
38
|
+
Error,
|
|
39
|
+
CommandNotFoundError,
|
|
40
|
+
CommandError,
|
|
41
|
+
CommandInvalidInputError,
|
|
42
|
+
SymbolNotFoundError,
|
|
43
|
+
CommandArgumentsError,
|
|
44
|
+
CommandEvalSyntaxError,
|
|
45
|
+
ParserError,
|
|
46
|
+
)
|
|
47
|
+
from sdb.target import (
|
|
48
|
+
create_object,
|
|
49
|
+
get_object,
|
|
50
|
+
get_prog,
|
|
51
|
+
get_type,
|
|
52
|
+
set_thread,
|
|
53
|
+
get_thread,
|
|
54
|
+
set_frame,
|
|
55
|
+
get_frame,
|
|
56
|
+
get_pointer_type,
|
|
57
|
+
get_target_flags,
|
|
58
|
+
get_symbol,
|
|
59
|
+
is_null,
|
|
60
|
+
type_canonical_name,
|
|
61
|
+
type_canonicalize,
|
|
62
|
+
type_canonicalize_name,
|
|
63
|
+
type_canonicalize_size,
|
|
64
|
+
type_equals,
|
|
65
|
+
Runtime,
|
|
66
|
+
All,
|
|
67
|
+
Kernel,
|
|
68
|
+
Userland,
|
|
69
|
+
Module,
|
|
70
|
+
Library,
|
|
71
|
+
)
|
|
72
|
+
from sdb.command import (
|
|
73
|
+
Address,
|
|
74
|
+
Cast,
|
|
75
|
+
Command,
|
|
76
|
+
InputHandler,
|
|
77
|
+
Locator,
|
|
78
|
+
PrettyPrinter,
|
|
79
|
+
Walk,
|
|
80
|
+
Walker,
|
|
81
|
+
SingleInputCommand,
|
|
82
|
+
get_registered_commands,
|
|
83
|
+
register_commands,
|
|
84
|
+
)
|
|
50
85
|
from sdb.pipeline import execute_pipeline, get_first_type, invoke
|
|
51
86
|
|
|
52
87
|
__all__ = [
|
|
@@ -79,14 +114,18 @@ __all__ = [
|
|
|
79
114
|
'invoke',
|
|
80
115
|
'is_null',
|
|
81
116
|
'get_first_type',
|
|
117
|
+
'get_frame',
|
|
82
118
|
'get_object',
|
|
83
119
|
'get_pointer_type',
|
|
84
120
|
'get_prog',
|
|
85
121
|
'get_registered_commands',
|
|
122
|
+
'get_thread',
|
|
86
123
|
'get_symbol',
|
|
87
124
|
'get_target_flags',
|
|
88
125
|
'get_type',
|
|
89
126
|
'register_commands',
|
|
127
|
+
'set_frame',
|
|
128
|
+
'set_thread',
|
|
90
129
|
'type_canonical_name',
|
|
91
130
|
'type_canonicalize',
|
|
92
131
|
'type_canonicalize_name',
|
|
@@ -28,7 +28,7 @@ version_tuple: VERSION_TUPLE
|
|
|
28
28
|
commit_id: COMMIT_ID
|
|
29
29
|
__commit_id__: COMMIT_ID
|
|
30
30
|
|
|
31
|
-
__version__ = version = '0.
|
|
32
|
-
__version_tuple__ = version_tuple = (0,
|
|
31
|
+
__version__ = version = '0.3.2'
|
|
32
|
+
__version_tuple__ = version_tuple = (0, 3, 2)
|
|
33
33
|
|
|
34
|
-
__commit_id__ = commit_id = '
|
|
34
|
+
__commit_id__ = commit_id = 'gde5051e11'
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
#
|
|
2
2
|
# Copyright 2019 Delphix
|
|
3
|
+
# Copyright 2025 CoreWeave
|
|
3
4
|
#
|
|
4
5
|
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
5
6
|
# you may not use this file except in compliance with the License.
|
|
@@ -23,13 +24,20 @@ registered commands during a session.
|
|
|
23
24
|
|
|
24
25
|
import argparse
|
|
25
26
|
import inspect
|
|
27
|
+
import re
|
|
26
28
|
import textwrap
|
|
27
29
|
from typing import Any, Callable, Dict, Iterable, List, Optional, Set, Type, TypeVar
|
|
28
30
|
|
|
29
31
|
import drgn
|
|
30
32
|
|
|
31
|
-
from sdb.target import (
|
|
32
|
-
|
|
33
|
+
from sdb.target import (
|
|
34
|
+
type_canonicalize_name,
|
|
35
|
+
type_canonical_name,
|
|
36
|
+
type_canonicalize,
|
|
37
|
+
get_prog,
|
|
38
|
+
get_runtimes,
|
|
39
|
+
Runtime,
|
|
40
|
+
)
|
|
33
41
|
from sdb.error import CommandError, SymbolNotFoundError
|
|
34
42
|
from sdb import target
|
|
35
43
|
|
|
@@ -50,11 +58,31 @@ def add_command(class_: Type["Command"]) -> None:
|
|
|
50
58
|
all_commands.add(class_)
|
|
51
59
|
|
|
52
60
|
|
|
61
|
+
# Regex pattern for valid C identifiers (used for command name validation)
|
|
62
|
+
_VALID_COMMAND_NAME_PATTERN = re.compile(r'^[a-zA-Z_][a-zA-Z0-9_]*$')
|
|
63
|
+
|
|
64
|
+
|
|
65
|
+
def is_valid_command_name(name: str) -> bool:
|
|
66
|
+
"""
|
|
67
|
+
Validate that a command name follows C identifier rules.
|
|
68
|
+
Must start with a letter or underscore, followed by letters, digits,
|
|
69
|
+
or underscores. This prevents command names from starting with special
|
|
70
|
+
characters like ':', ';', ',', '.', '/', '%', etc. which could conflict
|
|
71
|
+
with mdb compatibility syntax or cause parsing issues.
|
|
72
|
+
"""
|
|
73
|
+
return bool(_VALID_COMMAND_NAME_PATTERN.match(name))
|
|
74
|
+
|
|
75
|
+
|
|
53
76
|
def register_command(name: str, class_: Type["Command"]) -> None:
|
|
54
77
|
"""
|
|
55
78
|
Register the specified command name and command class, such that the
|
|
56
79
|
command will be available from the SDB REPL.
|
|
57
80
|
"""
|
|
81
|
+
if not is_valid_command_name(name):
|
|
82
|
+
raise ValueError(
|
|
83
|
+
f"Invalid command name '{name}': must start with a letter or underscore "
|
|
84
|
+
f"and contain only letters, digits, and underscores (C identifier rules)"
|
|
85
|
+
)
|
|
58
86
|
registered_commands[name] = class_
|
|
59
87
|
if issubclass(class_, Walker):
|
|
60
88
|
Walker.register_walker(class_)
|
|
@@ -144,58 +172,29 @@ class Command:
|
|
|
144
172
|
# may be calling splitlines() for None.
|
|
145
173
|
#
|
|
146
174
|
if cls.__doc__:
|
|
147
|
-
summary =
|
|
148
|
-
|
|
175
|
+
summary = (
|
|
176
|
+
inspect.getdoc( # type: ignore[union-attr]
|
|
177
|
+
cls).splitlines()[0].strip())
|
|
149
178
|
else:
|
|
150
179
|
summary = None
|
|
151
180
|
return argparse.ArgumentParser(prog=name, description=summary)
|
|
152
181
|
|
|
153
182
|
@classmethod
|
|
154
|
-
def
|
|
183
|
+
def help_text(cls) -> List[str]:
|
|
155
184
|
"""
|
|
156
|
-
This method
|
|
157
|
-
command class that it's called on. The docstring and parser for
|
|
158
|
-
the class is used to populate the contents of the message.
|
|
185
|
+
This method auto-generates help text for the command based off of sub-classes.
|
|
159
186
|
"""
|
|
160
|
-
|
|
161
|
-
parser = cls._init_parser(name)
|
|
162
|
-
|
|
163
|
-
print("SUMMARY")
|
|
164
|
-
for i, line in enumerate(parser.format_help().split('\n')):
|
|
165
|
-
#
|
|
166
|
-
# When printing the help message, the first line will have a
|
|
167
|
-
# "usage: " prefix string which looks awkward, so we strip
|
|
168
|
-
# that prefix prior to printing the first line.
|
|
169
|
-
#
|
|
170
|
-
if i == 0:
|
|
171
|
-
line = line.replace('usage: ', '')
|
|
172
|
-
print(f" {line}")
|
|
173
|
-
|
|
174
|
-
if len(cls.names) > 1:
|
|
175
|
-
aliases = ", ".join(cls.names)
|
|
176
|
-
print("ALIASES")
|
|
177
|
-
print(f" {aliases}")
|
|
178
|
-
print()
|
|
179
|
-
|
|
180
|
-
indent = " "
|
|
187
|
+
paragraphs = []
|
|
181
188
|
if issubclass(cls, PrettyPrinter):
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
f" command into 'echo'.",
|
|
188
|
-
initial_indent=indent,
|
|
189
|
-
subsequent_indent=indent))
|
|
190
|
-
print()
|
|
189
|
+
paragraphs.append(
|
|
190
|
+
f"If this command is used to end a pipeline, it will print a"
|
|
191
|
+
f" human-readable decoding of the '{cls.input_type}' objects."
|
|
192
|
+
f" For the 'raw' object contents, pipe the output of this"
|
|
193
|
+
f" command into 'echo'.")
|
|
191
194
|
|
|
192
195
|
if issubclass(cls, Walker):
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
f"This is a Walker for {cls.input_type}. See 'help walk'.",
|
|
196
|
-
initial_indent=indent,
|
|
197
|
-
subsequent_indent=indent))
|
|
198
|
-
print()
|
|
196
|
+
paragraphs.append(
|
|
197
|
+
f"This is a Walker for {cls.input_type}. See 'help walk'.")
|
|
199
198
|
|
|
200
199
|
if cls.input_type is not None:
|
|
201
200
|
#
|
|
@@ -208,15 +207,10 @@ class Command:
|
|
|
208
207
|
#
|
|
209
208
|
# pylint: disable=unsubscriptable-object
|
|
210
209
|
it_text = "This command accepts inputs of type 'void *',"
|
|
211
|
-
if cls.input_type[-1] ==
|
|
210
|
+
if cls.input_type[-1] == "*":
|
|
212
211
|
it_text += f" and '{cls.input_type[:-1].strip()}',"
|
|
213
212
|
it_text += f" which will be converted to '{cls.input_type}'."
|
|
214
|
-
|
|
215
|
-
print(
|
|
216
|
-
textwrap.fill(it_text,
|
|
217
|
-
initial_indent=indent,
|
|
218
|
-
subsequent_indent=indent))
|
|
219
|
-
print()
|
|
213
|
+
paragraphs.append(it_text)
|
|
220
214
|
|
|
221
215
|
if issubclass(cls, Locator):
|
|
222
216
|
# pylint: disable=no-member
|
|
@@ -231,7 +225,7 @@ class Command:
|
|
|
231
225
|
f" will locate all objects of type '{cls.output_type}',"
|
|
232
226
|
f" and emit them as output.")
|
|
233
227
|
types = []
|
|
234
|
-
for
|
|
228
|
+
for _, method in inspect.getmembers(cls, inspect.isroutine):
|
|
235
229
|
if hasattr(method, "input_typename_handled"):
|
|
236
230
|
types.append(method.input_typename_handled)
|
|
237
231
|
if len(types) != 0:
|
|
@@ -239,12 +233,50 @@ class Command:
|
|
|
239
233
|
f" Input of the following types is also accepted,"
|
|
240
234
|
f" in which case the objects of type {cls.output_type}"
|
|
241
235
|
f" which are associated with them will be located:")
|
|
236
|
+
for type_name in types:
|
|
237
|
+
loc_text += f"{type_name}"
|
|
238
|
+
if type_name != types[-1]:
|
|
239
|
+
loc_text += ", "
|
|
240
|
+
else:
|
|
241
|
+
loc_text += "."
|
|
242
|
+
paragraphs.append(loc_text)
|
|
243
|
+
|
|
244
|
+
return paragraphs
|
|
245
|
+
|
|
246
|
+
@classmethod
|
|
247
|
+
def help(cls, name: str) -> None:
|
|
248
|
+
"""
|
|
249
|
+
This method will print a "help message" for the particular
|
|
250
|
+
command class that it's called on. The docstring and parser for
|
|
251
|
+
the class is used to populate the contents of the message.
|
|
252
|
+
"""
|
|
253
|
+
# pylint: disable=too-many-branches
|
|
254
|
+
parser = cls._init_parser(name)
|
|
255
|
+
|
|
256
|
+
print("SUMMARY")
|
|
257
|
+
for i, line in enumerate(parser.format_help().split("\n")):
|
|
258
|
+
#
|
|
259
|
+
# When printing the help message, the first line will have a
|
|
260
|
+
# "usage: " prefix string which looks awkward, so we strip
|
|
261
|
+
# that prefix prior to printing the first line.
|
|
262
|
+
#
|
|
263
|
+
if i == 0:
|
|
264
|
+
line = line.replace("usage: ", "")
|
|
265
|
+
print(f" {line}")
|
|
266
|
+
|
|
267
|
+
if len(cls.names) > 1:
|
|
268
|
+
aliases = ", ".join(cls.names)
|
|
269
|
+
print("ALIASES")
|
|
270
|
+
print(f" {aliases}")
|
|
271
|
+
print()
|
|
272
|
+
|
|
273
|
+
indent = " "
|
|
274
|
+
paragraphs = cls.help_text()
|
|
275
|
+
for paragraph in paragraphs:
|
|
242
276
|
print(
|
|
243
|
-
textwrap.fill(
|
|
277
|
+
textwrap.fill(paragraph,
|
|
244
278
|
initial_indent=indent,
|
|
245
279
|
subsequent_indent=indent))
|
|
246
|
-
for type_name in types:
|
|
247
|
-
print(f"{indent}{indent}{type_name}")
|
|
248
280
|
print()
|
|
249
281
|
|
|
250
282
|
#
|
|
@@ -354,10 +386,16 @@ class Command:
|
|
|
354
386
|
for obj in objs:
|
|
355
387
|
try:
|
|
356
388
|
obj.read_()
|
|
389
|
+
except AttributeError:
|
|
390
|
+
#
|
|
391
|
+
# This object does not support the read_() method.
|
|
392
|
+
#
|
|
393
|
+
yield obj
|
|
394
|
+
continue
|
|
357
395
|
except TypeError as err:
|
|
358
396
|
obj_type = type_canonicalize(obj.type_)
|
|
359
|
-
if obj_type.kind == drgn.TypeKind.ARRAY and
|
|
360
|
-
|
|
397
|
+
if (obj_type.kind == drgn.TypeKind.ARRAY and
|
|
398
|
+
not obj_type.is_complete() and not obj.absent_):
|
|
361
399
|
#
|
|
362
400
|
# This is a zero-length array, let it go through.
|
|
363
401
|
#
|
|
@@ -385,6 +423,12 @@ class Command:
|
|
|
385
423
|
raise err
|
|
386
424
|
print(err.text)
|
|
387
425
|
continue
|
|
426
|
+
except drgn.ObjectAbsentError as err:
|
|
427
|
+
# Note: maybe just go ahead and yield the object?
|
|
428
|
+
if fatal:
|
|
429
|
+
raise CommandError(self.name, str(err)) from err
|
|
430
|
+
print(str(err))
|
|
431
|
+
continue
|
|
388
432
|
yield obj
|
|
389
433
|
|
|
390
434
|
def call(self, objs: Iterable[drgn.Object]) -> Iterable[drgn.Object]:
|
|
@@ -491,7 +535,7 @@ class Walker(Command):
|
|
|
491
535
|
if canonical_type != expected_type:
|
|
492
536
|
raise CommandError(
|
|
493
537
|
self.name,
|
|
494
|
-
f
|
|
538
|
+
f"expected input of type {expected_type}, but received {canonical_type}",
|
|
495
539
|
)
|
|
496
540
|
|
|
497
541
|
yield from self.walk(obj)
|
|
@@ -530,8 +574,9 @@ class PrettyPrinter(Command):
|
|
|
530
574
|
if type_canonical_name(obj.type_) != type_name:
|
|
531
575
|
raise CommandError(
|
|
532
576
|
self.name,
|
|
533
|
-
f
|
|
534
|
-
f
|
|
577
|
+
f"expected input of type {self.input_type}, but received "
|
|
578
|
+
f"type {obj.type_}",
|
|
579
|
+
)
|
|
535
580
|
yield obj
|
|
536
581
|
|
|
537
582
|
def _call( # type: ignore[return]
|
|
@@ -559,7 +604,7 @@ class Locator(Command):
|
|
|
559
604
|
|
|
560
605
|
def no_input(self) -> Iterable[drgn.Object]:
|
|
561
606
|
# pylint: disable=missing-docstring
|
|
562
|
-
raise CommandError(self.name,
|
|
607
|
+
raise CommandError(self.name, "command requires an input")
|
|
563
608
|
|
|
564
609
|
def caller(self, objs: Iterable[drgn.Object]) -> Iterable[drgn.Object]:
|
|
565
610
|
"""
|
|
@@ -571,7 +616,7 @@ class Locator(Command):
|
|
|
571
616
|
if self.output_type is not None:
|
|
572
617
|
out_type = target.get_type(self.output_type)
|
|
573
618
|
baked = {}
|
|
574
|
-
for
|
|
619
|
+
for _, method in inspect.getmembers(self, inspect.ismethod):
|
|
575
620
|
if not hasattr(method, "input_typename_handled"):
|
|
576
621
|
continue
|
|
577
622
|
baked[type_canonicalize_name(
|
|
@@ -583,7 +628,12 @@ class Locator(Command):
|
|
|
583
628
|
return
|
|
584
629
|
|
|
585
630
|
for i in objs:
|
|
586
|
-
|
|
631
|
+
try:
|
|
632
|
+
obj_type_name = type_canonical_name(i.type_)
|
|
633
|
+
except AttributeError:
|
|
634
|
+
# This input is not a drgn.Object, so we can't check its type.
|
|
635
|
+
yield i
|
|
636
|
+
continue
|
|
587
637
|
|
|
588
638
|
# try subclass-specified input types first, so that they can
|
|
589
639
|
# override any other behavior
|
|
@@ -609,7 +659,7 @@ class Locator(Command):
|
|
|
609
659
|
|
|
610
660
|
# error
|
|
611
661
|
raise CommandError(self.name,
|
|
612
|
-
f
|
|
662
|
+
f"no handler for input of type {i.type_}")
|
|
613
663
|
|
|
614
664
|
def _call(self,
|
|
615
665
|
objs: Iterable[drgn.Object]) -> Optional[Iterable[drgn.Object]]:
|
|
@@ -624,7 +674,7 @@ class Locator(Command):
|
|
|
624
674
|
return None
|
|
625
675
|
|
|
626
676
|
|
|
627
|
-
T = TypeVar("T", bound=Locator)
|
|
677
|
+
T = TypeVar("T", bound=Locator) # pylint: disable=invalid-name
|
|
628
678
|
IH = Callable[[T, drgn.Object], Iterable[drgn.Object]]
|
|
629
679
|
|
|
630
680
|
|
|
@@ -702,7 +752,7 @@ class Dereference(Command):
|
|
|
702
752
|
raise CommandError(
|
|
703
753
|
self.name,
|
|
704
754
|
f"'{obj.type_.type_name()}' is not a valid pointer type")
|
|
705
|
-
if obj_type.type.type_name() ==
|
|
755
|
+
if obj_type.type.type_name() == "void":
|
|
706
756
|
raise CommandError(self.name,
|
|
707
757
|
"cannot dereference a void pointer")
|
|
708
758
|
yield drgn.Object(get_prog(),
|
|
@@ -880,7 +930,7 @@ class Walk(Command):
|
|
|
880
930
|
print(Walk._help_message())
|
|
881
931
|
|
|
882
932
|
|
|
883
|
-
def InputHandler(typename: str) -> Callable[[IH[T]], IH[T]]:
|
|
933
|
+
def InputHandler(typename: str) -> Callable[[IH[T]], IH[T]]: # pylint: disable=invalid-name
|
|
884
934
|
"""
|
|
885
935
|
This is a decorator which should be applied to methods of subclasses of
|
|
886
936
|
Locator. The decorator causes this method to be called when the pipeline
|