net: stmmac: fix return value of __setup handler
authorRandy Dunlap <rdunlap@infradead.org>
Thu, 24 Feb 2022 03:35:36 +0000 (19:35 -0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Tue, 8 Mar 2022 18:00:58 +0000 (19:00 +0100)
commit e01b042e580f1fbf4fd8da467442451da00c7a90 upstream.

__setup() handlers should return 1 on success, i.e., the parameter
has been handled. A return of 0 causes the "option=value" string to be
added to init's environment strings, polluting it.

Fixes: 47dd7a540b8a ("net: add support for STMicroelectronics Ethernet controllers.")
Fixes: f3240e2811f0 ("stmmac: remove warning when compile as built-in (V2)")
Signed-off-by: Randy Dunlap <rdunlap@infradead.org>
Reported-by: Igor Zhbanov <i.zhbanov@omprussia.ru>
Link: lore.kernel.org/r/64644a2f-4a20-bab3-1e15-3b2cdd0defe3@omprussia.ru
Cc: Giuseppe Cavallaro <peppe.cavallaro@st.com>
Cc: Alexandre Torgue <alexandre.torgue@foss.st.com>
Cc: Jose Abreu <joabreu@synopsys.com>
Link: https://lore.kernel.org/r/20220224033536.25056-1-rdunlap@infradead.org
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/net/ethernet/stmicro/stmmac/stmmac_main.c

index 0a7ff854d1c34528db7f6c91d0d970a5e97a29e1..bb44f8161ea9475f3df3288ab9d08ce2b1d86b15 100644 (file)
@@ -3608,7 +3608,7 @@ static int __init stmmac_cmdline_opt(char *str)
        char *opt;
 
        if (!str || !*str)
-               return -EINVAL;
+               return 1;
        while ((opt = strsep(&str, ",")) != NULL) {
                if (!strncmp(opt, "debug:", 6)) {
                        if (kstrtoint(opt + 6, 0, &debug))
@@ -3639,11 +3639,11 @@ static int __init stmmac_cmdline_opt(char *str)
                                goto err;
                }
        }
-       return 0;
+       return 1;
 
 err:
        pr_err("%s: ERROR broken module parameter conversion", __func__);
-       return -EINVAL;
+       return 1;
 }
 
 __setup("stmmaceth=", stmmac_cmdline_opt);