During make module_install, the need_compiler variable becomes 0, so Makefile.compiler isn't included. This results in call cc-option-yn returning nothing. Add a check for KBUILD_SYM32=n to avoid the "CONFIG_CPU_DADDI_WORKAROUNDS unsupported without -msym32" error when KBUILD_SYM32 is unset (meaning it's not 'y' or 'n'). Moreover, I also identified an unnecessary check for KBUILD_SYM32 in this Makefile section. Eliminate it for code simplification. NOTE: It is particularly important to note that this code fix does not imply that we have resolved the problem entirely. In fact, the entire application of cc-option and its auxiliary commands within the kernel codebase currently carries significant risk. When we execute make modules_install, the Makefile for the corresponding architecture under arch/subarches/Makefile is invariably included. Within these files, there are numerous usages of cc-option and its auxiliary commands, all of which will return empty strings. The reason other architectures can successfully complete compilation under these circumstances is purely because they do not, unlike MIPS, check the return values of cc-option and its auxiliary commands within their Makefiles and halt the compilation process when the expected results are not received. A feasible approach to remediation might be to encapsulate all usages of cc-option and its auxiliary commands within conditional statements across all architecture Makefiles, preventing their execution entirely during make modules_install. However, this would lead to a massive number of inelegant modifications, and these broader implications may require deliberation by Masahiro Yamada. Regardless, this does not preclude us from addressing the issue on MIPS first. WangYuli (2): MIPS: Eliminate Redundant KBUILD_SYM32 Checks MIPS: Explicitly check KBUILD_SYM32=n arch/mips/Makefile | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) -- 2.47.2