How to observe aarch64 system registers in QEMU?

No, you dont missing anything: it is impossible to view aarch64 system registers with the stock qemu as a gdb remote target.

But you could add a small changes to qemu to view them.

Gdb client connects to QEMU over GDB RSP protocol. Server part of this protocol implemented at QEMU is called "gdb stub" (also it is common term for many other simulators/embedded software).

At the very beginning of client and stub communications, stub sends to client a target desription - a xml file with all registers that client allowed to request. Here is a such file for qemu aarch64 target. As you can see, info all-registers command at client prints all this registers, not more.

If you simple add required registers to that file it doesn`t work, you also need to add a few lines to aarch64_cpu_gdb_read_register - that functions reads registers from qemu internals and pass them to gdbstub.

After that build qemu, and you got it.

Also that question will help you to view a client/stub communication details, if something goes wrong.