Re: [PATCH 2/2] MIPS: make kgdb depend on FPU support

From: Maciej W. Rozycki
Date: Mon Feb 08 2021 - 13:53:39 EST


On Fri, 22 Jan 2021, Arnd Bergmann wrote:

> From: Arnd Bergmann <arnd@xxxxxxxx>
>
> kgdb fails to build when the FPU support is disabled:
>
> arch/mips/kernel/kgdb.c: In function 'dbg_set_reg':
> arch/mips/kernel/kgdb.c:147:35: error: 'struct thread_struct' has no member named 'fpu'
> 147 | memcpy((void *)&current->thread.fpu.fcr31, mem,
> | ^
> arch/mips/kernel/kgdb.c:155:34: error: 'struct thread_struct' has no member named 'fpu'
> 155 | memcpy((void *)&current->thread.fpu.fpr[fp_reg], mem,
>
> This is only relevant for CONFIG_EXPERT=y, so disallowing it
> in Kconfig is an easier workaround than fixing it properly.

Wrapping the relevant parts of this file into #ifdef MIPS_FP_SUPPORT
would be as easy though and would qualify as a proper fix given that we
have no XML description support for the MIPS target (so we need to supply
the inexistent registers in the protocol; or maybe we can return NULL in
`dbg_get_reg' to get them padded out in the RSP packet, I haven't checked
if generic KGDB code supports this feature).

Maciej