> [ 26.990644] getreg: gs_base = 0xf7f8e000 > [ 26.991694] getreg: GS=0x63, GSBASE=0xf7f8e000 > [ 26.993117] PTRACE_SETREGS > [ 26.993813] putreg: change gsbase from 0xf7f8e000 to 0x0 > [ 26.995134] putreg: write GS=0x63; old GSBASE=0x0 > [ 26.996235] PTRACE_SETREGS done > > That's gdbserver reading GS and GSBASE and then telling the kernel to > set GS to the same value and GSBASE to 0. > > I can come up with horrible kernel hacks to try to work around this, > but gdbserver is really giving the kernel bad instructions here.
I agree that this looks like a GDB bug rather than a kernel bug. GDB should preserve the GS_BASE value if it doesn't intend to change it. Markus. Intel Deutschland GmbH Registered Address: Am Campeon 10-12, 85579 Neubiberg, Germany Tel: +49 89 99 8853-0, www.intel.de Managing Directors: Christin Eisenschmid, Gary Kershaw Chairperson of the Supervisory Board: Nicole Lau Registered Office: Munich Commercial Register: Amtsgericht Muenchen HRB 186928