Hardware watchpoints on GNU/Linux AArch64

Florian Weimer via Gdb
2023-01-02T16:49:42Z

Running

gdb-12.1-10.fc38.aarch64
kernel-6.2.0-0.rc1.20221230gitbff687b3dad6.15.fc38.aarch64

I do not seem to be able to use hardware watchpoints. GDB just logs
warnings:

warning: Unable to determine the number of hardware watchpoints available.
warning: Unable to determine the number of hardware breakpoints available.

I see AArch64-specific code in GDB, so this is a bit of a surprise to
me.

The machine uses virtualization:

Architecture: aarch64
CPU op-mode(s): 32-bit, 64-bit
Byte Order: Little Endian
CPU(s): 3
On-line CPU(s) list: 0-2
Vendor ID: ARM
BIOS Vendor ID: QEMU
Model name: Neoverse-N1
BIOS Model name: virt-rhel8.6.0 CPU @ 2.0GHz
BIOS CPU family: 1
Model: 1
Thread(s) per core: 1
Core(s) per socket: 1
Socket(s): 3
Stepping: r3p1
BogoMIPS: 50.00
Flags: fp asimd evtstrm aes pmull sha1 sha2 crc32 atomics fphp
asimdhp cpuid asimdrdm lrcpc dcpop asimddp ssbs

Is this actually expected to work? Would we have more luck on a
bare-metal system?

Thanks,
Florian