Hello,
# [GNU-767] Support changing SVE vector length in remote debugging
* Continued working on the testsuite regressions introduced by my code.
- Realised that gdbserver uses “thread->tdesc != NULL” as a proxy of
whether it has already attached to the inferior process. My change to
track the target description per-thread instead of per-process
invalidated this equivalence. Fixed a few places to use “proc->attached”
instead, which is the direct way of testing that condition.
- Now looking into an issue with gdbserver loading libthread_db.so.
# Misc
- Reviewed Tom Tromey's “[PATCH 00/36] C++-ify breakpoints” patch series¹.
Spotted one bug.
--
Thiago
¹ https://sourceware.org/pipermail/gdb-patches/2022-January/185256.html
msgid:20220118194007.2853108-1-tom@tromey.com
Progress:
* UM-2 [QEMU upstream maintainership]
+ investigating a bug report about the guest UEFI crashing on
startup when using KVM on AArch64 with an SMP guest (sadly I haven't
been able to repro it myself thus far)
* QEMU-422 [QEMU Arm Neoverse V1 vCPU for TCG]
+ audited code to check we can enable FEAT_TTL in QEMU (ie we ignore the
new TTL hint field in TLB invalidate operations)
+ audited code to check we can enable FEAT_BBM level 2 in QEMU
(our TLB implementation never allows multiple clashing TLB entries)
+ audited code to check we can enable SMMUv3.2-BBML2 in our SMMUv3
(our SMMU TLB does allow multiple entries but will always select
the one for the lowest level and ignore the others)
+ sent patches to advertise FEAT_TTL, FEAT_BBM, SMMUv3.2-BBML2 in
CPU and SMMU ID registers
-- PMM
Hello,
# [GNU-767] Support changing SVE vector length in remote debugging
* Found and fixed problem with the gdbserver prototype: it didn't clear the
registers cache when the target description changed. The prototype is
working now.
* Turned my attention to the testsuite regressions introduced by my changes.
Fixed one where gdbserver was crashing when debugging multi-threaded
programs, and now investigating one where gdbserver returns an error when
handling the ‘vRun’ remote protocol packet.
# Misc
* Public holiday on Thursday — but I took it on Friday instead.
--
Thiago
Progress (two half-weeks):
* UM-2 [QEMU upstream maintainership]
+ Got the 7.0 release out of the door and handed over pullrequest
processing to RTH for the 7.1 cycle \o/
+ Code review backlog now pretty nearly empty (worked through several
large patchsets from RTH as well as some smaller things)
+ two arm pullreqs for 7.1 sent out already
* QEMU-420 [GICv4 emulation]
+ The GICv4 emulation has now made it through code review and since
we've released 7.0 it is now in upstream git for 7.1
+ The GICv4.1 work has been moved to a new epic QEMU-479, as we're
not going to do that immediately
+ This epic is therefore closed!
-- PMM
Hello,
# [GNU-767] Support changing SVE vector length in remote debugging
* Implemented prototype of GDB and gdbserver changing the target
description in sync when the vg pseudo-register changes. The GDB side
seems to be working, but gdbserver still has issues which I'm
currently debugging.
# Misc
* Public holiday on Friday.
--
Thiago
Hello,
# [GNU-767] Support changing SVE vector length in remote debugging
* Got prototype of variable length vectors in GDB target descriptions
barely working, but fell down a rabbit hole trying to fix an issue
with the vector register size being misreported by ‘sizeof()’. Decided
to change tack and implement the simpler aim of updating the client
and server target descriptions in sync when the vector length changes.
This is Luis' idea from 2020¹, and closer to how native GDB debugging
currently works in this scenario.
--
Thiago
¹ https://sourceware.org/pipermail/gdb/2020-January/048341.html