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

Commit 00759c0e authored by Randy Dunlap's avatar Randy Dunlap Committed by Michal Marek
Browse files

modpost: fix trailing comma



Consolidate locations that print a section whitelist into
calls to print_section_list().

Fix print_section_list() so that it does not print a trailing
comma & space:

If the reference is valid then annotate the
variable with __init* or __refdata (see linux/init.h) or name the variable:
*_template, *_timer, *_sht, *_ops, *_probe, *_probe_one, *_console,

becomes:
If the reference is valid then annotate the
variable with __init* or __refdata (see linux/init.h) or name the variable:
*_template, *_timer, *_sht, *_ops, *_probe, *_probe_one, *_console

Signed-off-by: default avatarRandy Dunlap <randy.dunlap@oracle.com>
Signed-off-by: default avatarMichal Marek <mmarek@suse.cz>
parent e1b702cf
Loading
Loading
Loading
Loading
+15 −8
Original line number Diff line number Diff line
@@ -1248,6 +1248,19 @@ static int is_function(Elf_Sym *sym)
		return -1;
}

static void print_section_list(const char * const list[20])
{
	const char *const *s = list;

	while (*s) {
		fprintf(stderr, "%s", *s);
		s++;
		if (*s)
			fprintf(stderr, ", ");
	}
	fprintf(stderr, "\n");
}

/*
 * Print a warning about a section mismatch.
 * Try to find symbols near it so user can find it.
@@ -1304,7 +1317,6 @@ static void report_sec_mismatch(const char *modname,
		break;
	case DATA_TO_ANY_INIT: {
		prl_to = sec2annotation(tosec);
		const char *const *s = mismatch->symbol_white_list;
		fprintf(stderr,
		"The variable %s references\n"
		"the %s %s%s%s\n"
@@ -1312,9 +1324,7 @@ static void report_sec_mismatch(const char *modname,
		"variable with __init* or __refdata (see linux/init.h) "
		"or name the variable:\n",
		fromsym, to, prl_to, tosym, to_p);
		while (*s)
			fprintf(stderr, "%s, ", *s++);
		fprintf(stderr, "\n");
		print_section_list(mismatch->symbol_white_list);
		free(prl_to);
		break;
	}
@@ -1329,7 +1339,6 @@ static void report_sec_mismatch(const char *modname,
		break;
	case DATA_TO_ANY_EXIT: {
		prl_to = sec2annotation(tosec);
		const char *const *s = mismatch->symbol_white_list;
		fprintf(stderr,
		"The variable %s references\n"
		"the %s %s%s%s\n"
@@ -1337,9 +1346,7 @@ static void report_sec_mismatch(const char *modname,
		"variable with __exit* (see linux/init.h) or "
		"name the variable:\n",
		fromsym, to, prl_to, tosym, to_p);
		while (*s)
			fprintf(stderr, "%s, ", *s++);
		fprintf(stderr, "\n");
		print_section_list(mismatch->symbol_white_list);
		free(prl_to);
		break;
	}