Hi,
Without being too long, the problem is KALSR. You have to disable it disabling the kernel option "Randomize the address of the kernel image (KASLR)", inside Processor type and features. In this way, gdb can translate all the symbols correctly (symbols <-> addresses).
I really don't know how the developers test their code... because there is no evidence for this.
Why do you think that it requires developers to use a debugger and qemu to test their code? I've never used a debugger on the kernel in all of my years of kernel development...
I agree the developers should not be doing it. It is documented that gdb/kgdb will not work if KALSAR is enabled. Please refer - https://github.com/torvalds/linux/commit/e604f1cb85367d2e5fd4cf253296d190996... Regards, Saket Sinha