On Fri, 22 Jan 2021, Arnd Bergmann wrote:

> From: Arnd Bergmann <[email protected]>
> 
> 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

Reply via email to