|
@@ -162,16 +162,19 @@ extern struct obs_kernel_param __setup_start[], __setup_end[];
|
|
static int __init obsolete_checksetup(char *line)
|
|
static int __init obsolete_checksetup(char *line)
|
|
{
|
|
{
|
|
struct obs_kernel_param *p;
|
|
struct obs_kernel_param *p;
|
|
|
|
+ int had_early_param = 0;
|
|
|
|
|
|
p = __setup_start;
|
|
p = __setup_start;
|
|
do {
|
|
do {
|
|
int n = strlen(p->str);
|
|
int n = strlen(p->str);
|
|
if (!strncmp(line, p->str, n)) {
|
|
if (!strncmp(line, p->str, n)) {
|
|
if (p->early) {
|
|
if (p->early) {
|
|
- /* Already done in parse_early_param? (Needs
|
|
|
|
- * exact match on param part) */
|
|
|
|
|
|
+ /* Already done in parse_early_param?
|
|
|
|
+ * (Needs exact match on param part).
|
|
|
|
+ * Keep iterating, as we can have early
|
|
|
|
+ * params and __setups of same names 8( */
|
|
if (line[n] == '\0' || line[n] == '=')
|
|
if (line[n] == '\0' || line[n] == '=')
|
|
- return 1;
|
|
|
|
|
|
+ had_early_param = 1;
|
|
} else if (!p->setup_func) {
|
|
} else if (!p->setup_func) {
|
|
printk(KERN_WARNING "Parameter %s is obsolete,"
|
|
printk(KERN_WARNING "Parameter %s is obsolete,"
|
|
" ignored\n", p->str);
|
|
" ignored\n", p->str);
|
|
@@ -181,7 +184,8 @@ static int __init obsolete_checksetup(char *line)
|
|
}
|
|
}
|
|
p++;
|
|
p++;
|
|
} while (p < __setup_end);
|
|
} while (p < __setup_end);
|
|
- return 0;
|
|
|
|
|
|
+
|
|
|
|
+ return had_early_param;
|
|
}
|
|
}
|
|
|
|
|
|
/*
|
|
/*
|