Hardware watchpoints on GNU/Linux AArch64

Luis Machado luis.machado@arm.com
Thu Jan 5 14:17:56 GMT 2023


Hi,

On 1/2/23 16:48, Florian Weimer via Gdb wrote:
> 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
> 

Apologies, I was out for a few days during end of year. Hardware watchpoints should work
on AArch64/Linux. They should also work on system QEMU (though there might be differences in behavior).

I'm not sure about KVM though.


More information about the Gdb mailing list