modpost: merge two similar section mismatch warnings
authorMasahiro Yamada <masahiroy@kernel.org>
Sun, 11 Jun 2023 15:50:58 +0000 (00:50 +0900)
committerMasahiro Yamada <masahiroy@kernel.org>
Thu, 22 Jun 2023 12:21:06 +0000 (21:21 +0900)
In case of section mismatch, modpost shows slightly different messages.

For extable section mismatch:

 "%s(%s+0x%lx): Section mismatch in reference to the %s:%s\n"

For the other cases:

 "%s: section mismatch in reference: %s (section: %s) -> %s (section: %s)\n"

They are similar. Merge them.

Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
Reviewed-by: Nick Desaulniers <ndesaulniers@google.com>
scripts/mod/modpost.c

index 3d9f3e2..c7faa45 100644 (file)
@@ -1147,21 +1147,10 @@ static void default_mismatch_handler(const char *modname, struct elf_info *elf,
 
        sec_mismatch_count++;
 
-       switch (mismatch->mismatch) {
-       case TEXT_TO_ANY_INIT:
-       case DATA_TO_ANY_INIT:
-       case TEXTDATA_TO_ANY_EXIT:
-       case XXXINIT_TO_SOME_INIT:
-       case XXXEXIT_TO_SOME_EXIT:
-       case ANY_INIT_TO_ANY_EXIT:
-       case ANY_EXIT_TO_ANY_INIT:
-               warn("%s: section mismatch in reference: %s (section: %s) -> %s (section: %s)\n",
-                    modname, fromsym, fromsec, tosym, tosec);
-               break;
-       case EXTABLE_TO_NON_TEXT:
-               warn("%s(%s+0x%lx): Section mismatch in reference to the %s:%s\n",
-                    modname, fromsec, (long)faddr, tosec, tosym);
+       warn("%s: section mismatch in reference: %s (section: %s) -> %s (section: %s)\n",
+            modname, fromsym, fromsec, tosym, tosec);
 
+       if (mismatch->mismatch == EXTABLE_TO_NON_TEXT) {
                if (match(tosec, mismatch->bad_tosec))
                        fatal("The relocation at %s+0x%lx references\n"
                              "section \"%s\" which is black-listed.\n"
@@ -1181,7 +1170,6 @@ static void default_mismatch_handler(const char *modname, struct elf_info *elf,
                else
                        error("%s+0x%lx references non-executable section '%s'\n",
                              fromsec, (long)faddr, tosec);
-               break;
        }
 }