Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit e5f95c8b authored by Sam Ravnborg's avatar Sam Ravnborg
Browse files

kbuild: print only total number of section mismatces found



We have too many section mismatches detected at the moment.
So silence modpost and prevent the option from being
set in a typical allyesconfig build.

Tell the user how to see all the deteils in the summary
message from modpost.

Signed-off-by: default avatarSam Ravnborg <sam@ravnborg.org>
parent 9135f190
Loading
Loading
Loading
Loading
+1 −1
Original line number Original line Diff line number Diff line
@@ -81,7 +81,7 @@ config HEADERS_CHECK


config DEBUG_SECTION_MISMATCH
config DEBUG_SECTION_MISMATCH
	bool "Enable full Section mismatch analysis"
	bool "Enable full Section mismatch analysis"
	default n
	depends on UNDEFINED
	help
	help
	  The section mismatch analysis checks if there are illegal
	  The section mismatch analysis checks if there are illegal
	  references from one section to another section.
	  references from one section to another section.
+7 −8
Original line number Original line Diff line number Diff line
@@ -1125,15 +1125,15 @@ static void report_sec_mismatch(const char *modname, enum mismatch mismatch,
	to = to_is_func ? "function" : "variable";
	to = to_is_func ? "function" : "variable";
	to_p = to_is_func ? "()" : "";
	to_p = to_is_func ? "()" : "";


	sec_mismatch_count++;
	if (!sec_mismatch_verbose)
		return;

	fprintf(stderr, "WARNING: %s(%s+0x%llx): Section mismatch in"
	fprintf(stderr, "WARNING: %s(%s+0x%llx): Section mismatch in"
	                " reference from the %s %s%s to the %s %s:%s%s\n",
	                " reference from the %s %s%s to the %s %s:%s%s\n",
                        modname, fromsec, fromaddr, from, fromsym, from_p,
                        modname, fromsec, fromaddr, from, fromsym, from_p,
	                to, tosec, tosym, to_p);
	                to, tosec, tosym, to_p);


	sec_mismatch_count++;
	if (!sec_mismatch_verbose)
		return;

	switch (mismatch) {
	switch (mismatch) {
	case TEXT_TO_INIT:
	case TEXT_TO_INIT:
		fprintf(stderr,
		fprintf(stderr,
@@ -1939,10 +1939,9 @@ int main(int argc, char **argv)
		write_dump(dump_write);
		write_dump(dump_write);
	if (sec_mismatch_count && !sec_mismatch_verbose)
	if (sec_mismatch_count && !sec_mismatch_verbose)
		fprintf(stderr, "modpost: Found %d section mismatch(es).\n"
		fprintf(stderr, "modpost: Found %d section mismatch(es).\n"
		        "To see additional details select \"Enable full "
		        "To see full details build your kernel with:\n"
		        "Section mismatch analysis\"\n"
		        "'make CONFIG_DEBUG_SECTION_MISMATCH=y'\n",
		        "in the Kernel Hacking menu "
		        sec_mismatch_count);
		        "(CONFIG_SECTION_MISMATCH).\n", sec_mismatch_count);


	return err;
	return err;
}
}