ACPI: APEI: fix return value of __setup handlers
authorRandy Dunlap <rdunlap@infradead.org>
Sun, 6 Mar 2022 02:46:20 +0000 (18:46 -0800)
committerRafael J. Wysocki <rafael.j.wysocki@intel.com>
Tue, 8 Mar 2022 18:43:39 +0000 (19:43 +0100)
__setup() handlers should return 1 to indicate that the boot option
has been handled. Returning 0 causes a boot option to be listed in
the Unknown kernel command line parameters and also added to init's
arg list (if no '=' sign) or environment list (if of the form 'a=b').

Unknown kernel command line parameters "erst_disable
  bert_disable hest_disable BOOT_IMAGE=/boot/bzImage-517rc6", will be
  passed to user space.

 Run /sbin/init as init process
   with arguments:
     /sbin/init
     erst_disable
     bert_disable
     hest_disable
   with environment:
     HOME=/
     TERM=linux
     BOOT_IMAGE=/boot/bzImage-517rc6

Fixes: a3e2acc5e37b ("ACPI / APEI: Add Boot Error Record Table (BERT) support")
Fixes: a08f82d08053 ("ACPI, APEI, Error Record Serialization Table (ERST) support")
Fixes: 9dc966641677 ("ACPI, APEI, HEST table parsing")
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
Reviewed-by: "Huang, Ying" <ying.huang@intel.com>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
drivers/acpi/apei/bert.c
drivers/acpi/apei/erst.c
drivers/acpi/apei/hest.c

index 19e50fcbf4d6f52771f573094f4fa635bcfd5ff6..86211422f4eee722a790dea47d5f49d661bef024 100644 (file)
@@ -77,7 +77,7 @@ static int __init setup_bert_disable(char *str)
 {
        bert_disable = 1;
 
-       return 0;
+       return 1;
 }
 __setup("bert_disable", setup_bert_disable);
 
index 242f3c2d553309a214abb69aca2d460b9c470853..698d67cee05272e67a1524326818fd65e7133318 100644 (file)
@@ -891,7 +891,7 @@ EXPORT_SYMBOL_GPL(erst_clear);
 static int __init setup_erst_disable(char *str)
 {
        erst_disable = 1;
-       return 0;
+       return 1;
 }
 
 __setup("erst_disable", setup_erst_disable);
index 0edc1ed476737e29bc62a842909d1d95eee3ce91..6aef1ee5e1bdbe0540edb8a435fae813592243da 100644 (file)
@@ -224,7 +224,7 @@ err:
 static int __init setup_hest_disable(char *str)
 {
        hest_disable = HEST_DISABLED;
-       return 0;
+       return 1;
 }
 
 __setup("hest_disable", setup_hest_disable);