Não é possível compilar o kernel do Linux com a opção -Og/-O0 para fins de depuração

Não é possível compilar o kernel do Linux com a opção -Og/-O0 para fins de depuração

Ter hardware personalizado rodando Linux embarcado (OpenWrt) como um encanto. CPU - é IMX6ULL (ArmV7), portanto é compatível com Jlink para depuração na interface JTAG. Iniciar o servidor GDB e depurar passo a passo o kernel Linux mostra muitas optimized outmensagens por causa do kernel compilado com KBUILD_CFLAGS += -O2 -fno-reorder-blocks -fno-tree-ch $(EXTRA_OPTIMIZATION)flag. Então, estou tentando compilá-lo, -O0o que me fornece a seguinte opção:

$ make -j64 V=s all
  CHK     include/config/kernel.release
  CHK     include/generated/uapi/linux/version.h
  CC      scripts/mod/empty.o
  ....
  AR      built-in.o
  LD      vmlinux.o
  MODPOST vmlinux.o
  WARNING: modpost: Found 4 section mismatch(es).
  To see full details build your kernel with:
  'make CONFIG_DEBUG_SECTION_MISMATCH=y'
  arm-openwrt-linux-muslgnueabi-ld: arch/arm/kernel/setup.o: in function `setup_arch':
/opt/eclipse/imx6ull-openwrt/build_dir/target-arm_cortex-a7+neon-vfpv4_musl_eabi/linux-imx6ull_cortexa7/linux-4.14.199/arch/arm/kernel/setup.c:1134: undefined reference to `psci_smp_ops'
  arm-openwrt-linux-muslgnueabi-ld: /opt/eclipse/imx6ull-openwrt/build_dir/target-arm_cortex-a7+neon-vfpv4_musl_eabi/linux-imx6ull_cortexa7/linux-4.14.199/arch/arm/kernel/setup.c:1134: undefined reference to `psci_smp_ops'
  arm-openwrt-linux-muslgnueabi-ld: kernel/panic.o: in function `__xchg':
/opt/eclipse/imx6ull-openwrt/build_dir/target-arm_cortex-a7+neon-vfpv4_musl_eabi/linux-imx6ull_cortexa7/linux-4.14.199/./arch/arm/include/asm/cmpxchg.h:110: undefined reference to `__bad_xchg'
  arm-openwrt-linux-muslgnueabi-ld: kernel/exit.o: in function `__xchg':

Verificado paraWARNING: modpost: Found x section mismatch(es). aqui. Parece que o arquivo binário resultante ocupa mais espaço do que o configurado por algumas configurações. O vmlinuxtamanho construído com -O2a opção é 39Mb. Usar -O1me dá 37Mbimagem, então espero que haja espaço suficiente em minha RAM DDR3 (128Mb) para uma imagem ainda maior compilada com -O0configuração. Então, estou pensando em como fornecer mais espaço para seções? Alguém poderia me indicar um lugar onde posso fazer isso? Tenho conhecimento limitado sobre o kernel do Linux, por isso não consegui encontrar nenhum script de linker usado para isso.

informação relacionada