Hi,

We have tried to replicate this issue on our end and it
seems to stem from the int casting of gdb.Value type of
a 128bit integer. We have run the test with different
host architectures, gdb versions and python versions
both with and without the int casting. The results are
as follows.

gdb     gdb target           python   host          int cast status
version support              version  architecture
16.3 --enable-targets=all 3.11.13   x86        yes        pass
16.3 --enable-targets=all 3.11.13   x86         no        pass
16.3 --enable-targets=all 3.10.18   x86        yes        pass
16.3 --enable-targets=all 3.10.18   x86         no        pass
16.3 --enable-targets=all 3.8.10    x86        yes        pass
16.3 --enable-targets=all 3.8.10    x86          no        pass

16.3 aarch64             3.11.0rc1 aarch64      yes        pass
16.3 aarch64             3.11.0rc1 aarch64       no        pass
16.3 aarch64             3.10.12   aarch64      yes        pass
16.3 aarch64             3.10.12   aarch64       no        pass

15.0 multiarch           3.10.12   aarch64      yes        fail
15.0 multiarch           3.10.12   aarch64      no        pass
15.0 multiarch          3.11.0rc1 aarch64      yes        fail
15.0 multiarch          3.11.0rc1 aarch64      no        pass

15.0 multiarch          3.8.10      x86            yes        fail
15.0 multiarch          3.8.10      x86             no        pass
15.0 multiarch        3.11.13      x86            yes        fail
15.0 multiarch        3.11.13      x86             no        pass
15.0 multiarch        3.10.18      x86            yes        fail
15.0 multiarch        3.10.18     x86             no        pass

Could we get some more information about your testing environment?

Thanks,
Vacha

On Tue, Aug 19, 2025 at 5:13 AM Peter Maydell <peter.mayd...@linaro.org>
wrote:

> On Mon, 11 Aug 2025 at 20:37, Vacha Bhavsar
> <vacha.bhav...@oss.qualcomm.com> wrote:
> >
> > This patch adds a test case to test SME register exposure to
> > a remote gdb debugging session. This test simply sets and
> > reads SME registers.
> >
> > Signed-off-by: Vacha Bhavsar <vacha.bhav...@oss.qualcomm.com>
> > ---
> > Changes since v4:
> > - this patch was not present in v4, it was added based on
> > suggestions during the review of v4
> > ---
> >  configure                             |   6 ++
> >  tests/tcg/aarch64/Makefile.target     |  23 ++++-
> >  tests/tcg/aarch64/gdbstub/test-sme.py | 119 ++++++++++++++++++++++++++
> >  3 files changed, 147 insertions(+), 1 deletion(-)
> >  create mode 100644 tests/tcg/aarch64/gdbstub/test-sme.py
>
> This test fails for me:
>
> timeout -s KILL --foreground 120
> /mnt/nvmedisk/linaro/qemu-from-laptop/qemu/tests/guest-debug/run-test.py
> --gdb /usr/bin/gdb-multiarch --qemu
> /mnt/nvmedisk/linaro/qemu-from-laptop/qemu/build/arm-clang/qemu-aarch64
> --qargs "" --bin sysregs --test
>
> /mnt/nvmedisk/linaro/qemu-from-laptop/qemu/tests/tcg/aarch64/gdbstub/test-sme.py
> -- test_sme --gdb_sme_tile_support >  run-gdbstub-sysregs-sme.out
> warning: File transfers from remote targets can be slow. Use "set
> sysroot" to access files locally instead.
> Python Exception <class 'gdb.error'>: That operation is not available
> on integers of more than 8 bytes.
> Error occurred in Python: That operation is not available on integers
> of more than 8 bytes.
> qemu-aarch64: QEMU: Terminated via GDBstub
>
> The gdb is:
> GNU gdb (Ubuntu 15.0.50.20240403-0ubuntu1) 15.0.50.20240403-git
>
> > diff --git a/tests/tcg/aarch64/gdbstub/test-sme.py
> b/tests/tcg/aarch64/gdbstub/test-sme.py
> > new file mode 100644
> > index 0000000000..c2b9d774ae
> > --- /dev/null
> > +++ b/tests/tcg/aarch64/gdbstub/test-sme.py
> > @@ -0,0 +1,119 @@
> > +from __future__ import print_function
>
> Alex, do we still need this line in the gdbstub test cases?
> We can probably assume that the gdb's python is python 3
> by now, I hope...
>
> > +#
> > +# Test the SME registers are visible and changeable via gdbstub
> > +#
> > +# This is launched via tests/guest-debug/run-test.py
> > +#
>
> All new files must have an SPDX line saying what the
> license is. You may also wish to add a Copyright line;
> that's up to you/your employer.
>
>
> > +if args.gdb_sme_tile_support:
> > +    main(run_test_slices, expected_arch="aarch64")
> > +else:
> > +    main(run_test, expected_arch="aarch64")
> > \ No newline at end of file
>
> Please add the trailing newline.
>
> thanks
> -- PMM
>

Reply via email to