From: Andrey Drobyshev <[email protected]> The 'qemu mtree' command fails with "OverflowError: int too big to convert" when memory regions have 128-bit addresses.
Fix by changing conversion base from 16 to 0 (automatic detection based on string prefix). This works more reliably in GDB's embedded Python. Signed-off-by: Andrey Drobyshev <[email protected]> --- scripts/qemugdb/mtree.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/qemugdb/mtree.py b/scripts/qemugdb/mtree.py index 8fe42c3c12..77603c04b1 100644 --- a/scripts/qemugdb/mtree.py +++ b/scripts/qemugdb/mtree.py @@ -25,7 +25,7 @@ def int128(p): if p.type.code == gdb.TYPE_CODE_STRUCT: return int(p['lo']) + (int(p['hi']) << 64) else: - return int(("%s" % p), 16) + return int(("%s" % p), 0) class MtreeCommand(gdb.Command): '''Display the memory tree hierarchy''' -- 2.43.5
