x86/spectre: fix an error message
Subsystems (3)
PATCH 1/1 x86/spectre: fix an error message
If i = ARRAY_SIZE(mitigation_options) then we accidentally print garbage from one space beyond the end of the mitigation_options[] array.
arch/x86/kernel/cpu/bugs.c +1 -1
@@ -174,7 +174,7 @@ static enum spectre_v2_mitigation_cmd __init spectre_v2_parse_cmdline(void) }if (i >=ARRAY_SIZE (mitigation_options)) { -pr_err ("unknown option (%s). Switching to AUTO select\n" , mitigation_options[i].option); +pr_err ("unknown option (%s). Switching to AUTO select\n" , arg);return SPECTRE_V2_CMD_AUTO ; } }
Quoted 11 lines · Dan Carpenter
If i =
ARRAY_SIZE(mitigation_options)then we accidentally print garbage from one space beyond the end of the mitigation_options[] array.Fixes 9005c6834c0f ("x86/spectre: Simplify spectre_v2 command line parsing")Signed-off-by Dan Carpenter <[email protected]>arch/x86/kernel/cpu/bugs.c +0
-0
arch/x86/kernel/cpu/bugs.c static enum spectre_v2_mitigation_cmd __init spectre_v2_parse_cmdline(void) · line 180
Quoted 8 lines
arch/x86/kernel/cpu/bugs.c +1
-1@@ -174,7 +174,7 @@ static enum spectre_v2_mitigation_cmd __init spectre_v2_parse_cmdline(void) }if (i >=ARRAY_SIZE (mitigation_options)) { -pr_err ("unknown option (%s). Switching to AUTO select\n" , mitigation_options[i].option); +pr_err ("unknown option (%s). Switching to AUTO select\n" , arg);return SPECTRE_V2_CMD_AUTO ; } }
Should probably unindent this block too by
removing the else after the return
--- arch/x86/kernel/cpu/bugs.c | 29 ++++++++++++++--------------- 1 file changed, 14 insertions(+), 15 deletions(-)
arch/x86/kernel/cpu/bugs.c +14 -15
@@ -161,22 +161,21 @@ static enum spectre_v2_mitigation_cmd __init spectre_v2_parse_cmdline(void)if (cmdline_find_option_bool (boot_command_line,"nospectre_v2" ))return SPECTRE_V2_CMD_NONE ; -else { - ret =cmdline_find_option (boot_command_line,"spectre_v2" , arg,sizeof (arg)); -if (ret <0 ) -return SPECTRE_V2_CMD_AUTO ; - -for (i =0 ; i <ARRAY_SIZE (mitigation_options); i++) { -if (!match_option (arg, ret, mitigation_options[i].option)) -continue ; - cmd = mitigation_options[i].cmd; -break ; - } -if (i >=ARRAY_SIZE (mitigation_options)) { -pr_err ("unknown option (%s). Switching to AUTO select\n" , mitigation_options[i].option); -return SPECTRE_V2_CMD_AUTO ; - } + ret =cmdline_find_option (boot_command_line,"spectre_v2" , arg,sizeof (arg)); +if (ret <0 ) +return SPECTRE_V2_CMD_AUTO ; + +for (i =0 ; i <ARRAY_SIZE (mitigation_options); i++) { +if (!match_option (arg, ret, mitigation_options[i].option)) +continue ; + cmd = mitigation_options[i].cmd; +break ; + } + +if (i >=ARRAY_SIZE (mitigation_options)) { +pr_err ("unknown option (%s). Switching to AUTO select\n" , arg); +return SPECTRE_V2_CMD_AUTO ; } if ((cmd = SPECTRE_V2_CMD_RETPOLINE ||
tip-bot for Dan Carpenter
merge bot[tip:x86/pti] x86/spectre: Fix an error message
In reply to Dan Carpenterx86/spectre: Fix an error message
Commit-ID: b4764623932ff364df9a6bc8664ab7697c475339 Gitweb: https://git.kernel.org/tip/b4764623932ff364df9a6bc8664ab7697c475339 Author: Dan Carpenter <[email protected]> AuthorDate: Wed, 14 Feb 2018 10:14:17 +0300 Committer: Ingo Molnar <[email protected]> CommitDate: Wed, 14 Feb 2018 08:23:07 +0100
x86/spectre: Fix an error message
If i == ARRAY_SIZE(mitigation_options) then we accidentally print garbage from one space beyond the end of the mitigation_options[] array.
--- arch/x86/kernel/cpu/bugs.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
arch/x86/kernel/cpu/bugs.c +1 -1
@@ -174,7 +174,7 @@ static enum spectre_v2_mitigation_cmd __init spectre_v2_parse_cmdline(void) }if (i >=ARRAY_SIZE (mitigation_options)) { -pr_err ("unknown option (%s). Switching to AUTO select\n" , mitigation_options[i].option); +pr_err ("unknown option (%s). Switching to AUTO select\n" , arg);return SPECTRE_V2_CMD_AUTO ; } }
tip-bot for Dan Carpenter
merge bot[tip:x86/pti] x86/spectre: Fix an error message
In reply to Dan Carpenterx86/spectre: Fix an error message
Commit-ID: 9de29eac8d2189424d81c0d840cd0469aa3d41c8 Gitweb: https://git.kernel.org/tip/9de29eac8d2189424d81c0d840cd0469aa3d41c8 Author: Dan Carpenter <[email protected]> AuthorDate: Wed, 14 Feb 2018 10:14:17 +0300 Committer: Ingo Molnar <[email protected]> CommitDate: Thu, 15 Feb 2018 01:15:53 +0100
x86/spectre: Fix an error message
If i == ARRAY_SIZE(mitigation_options) then we accidentally print garbage from one space beyond the end of the mitigation_options[] array.
--- arch/x86/kernel/cpu/bugs.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
arch/x86/kernel/cpu/bugs.c +1 -1
@@ -174,7 +174,7 @@ static enum spectre_v2_mitigation_cmd __init spectre_v2_parse_cmdline(void) }if (i >=ARRAY_SIZE (mitigation_options)) { -pr_err ("unknown option (%s). Switching to AUTO select\n" , mitigation_options[i].option); +pr_err ("unknown option (%s). Switching to AUTO select\n" , arg);return SPECTRE_V2_CMD_AUTO ; } }