depends on !MODVERSIONS
        depends on !GCC_PLUGINS
        depends on !RANDSTRUCT
-       depends on !DEBUG_INFO_BTF
+       depends on !DEBUG_INFO_BTF || PAHOLE_HAS_LANG_EXCLUDE
        select CONSTRUCTORS
        help
          Enables Rust support in the kernel.
 
          btf_decl_tag) or not. Currently only clang compiler implements
          these attributes, so make the config depend on CC_IS_CLANG.
 
+config PAHOLE_HAS_LANG_EXCLUDE
+       def_bool PAHOLE_VERSION >= 124
+       help
+         Support for the --lang_exclude flag which makes pahole exclude
+         compilation units from the supplied language. Used in Kbuild to
+         omit Rust CUs which are not supported in version 1.24 of pahole,
+         otherwise it would emit malformed kernel and module binaries when
+         using DEBUG_INFO_BTF_MODULES.
+
 config DEBUG_INFO_BTF_MODULES
        def_bool y
        depends on DEBUG_INFO_BTF && MODULES && PAHOLE_HAS_SPLIT_BTF
 
 if [ "${pahole_ver}" -ge "122" ]; then
        extra_paholeopt="${extra_paholeopt} -j"
 fi
+if [ "${pahole_ver}" -ge "124" ]; then
+       # see PAHOLE_HAS_LANG_EXCLUDE
+       extra_paholeopt="${extra_paholeopt} --lang_exclude=rust"
+fi
 
 echo ${extra_paholeopt}