On Sat, 2021-02-06 at 20:18 -0800, Stephen Boyd wrote:
A missing semicolon here causes my external display to stop working. Indeed, missing the semicolon on the return statement leads to dp_panel_update_tu_timings() not existing because the compiler thinks it's part of the return statement of a void function, so it must not be important.
$ ./scripts/bloat-o-meter before.o after.o add/remove: 1/1 grow/shrink: 0/1 up/down: 7400/-7540 (-140) Function old new delta dp_panel_update_tu_timings - 7400 +7400 _dp_ctrl_calc_tu.constprop 18024 17900 -124 dp_panel_update_tu_timings.constprop 7416 - -7416 Total: Before=54440, After=54300, chg -0.26%
Add a semicolon so this function works like it used to.
[]
diff --git a/drivers/gpu/drm/msm/dp/dp_ctrl.c b/drivers/gpu/drm/msm/dp/dp_ctrl.c
[]
@@ -631,7 +631,7 @@ static void _dp_ctrl_calc_tu(struct dp_tu_calc_input *in,
tu = kzalloc(sizeof(*tu), GFP_KERNEL); if (!tu)
return
return;
dp_panel_update_tu_timings(in, tu);
Wow, that's really unfortunate that dp_panel_update_tu_timings is also void.
Perhaps this as YA checkpatch warning:
--- scripts/checkpatch.pl | 6 ++++++ 1 file changed, 6 insertions(+)
diff --git a/scripts/checkpatch.pl b/scripts/checkpatch.pl index 9a549b009d2f..6df13e5a1557 100755 --- a/scripts/checkpatch.pl +++ b/scripts/checkpatch.pl @@ -3674,6 +3674,12 @@ sub process { } }
+# check only a c90 keyword on the line (except else) + if ($sline =~ /^+\s*($c90_Keywords)\s*$/ && $1 ne 'else') { + WARN("BARE_KEYWORD", + "'$1' as the only word on a line is not good style\n" . $herecurr); + } + # check multi-line statement indentation matches previous line if ($perl_version_ok && $prevline =~ /^+([ \t]*)((?:$c90_Keywords(?:\s+if)\s*)|(?:$Declare\s*)?(?:$Ident|(\s**\s*$Ident\s*))\s*|(?:*\s*)*$Lval\s*=\s*$Ident\s*)(.*(&&||||,)\s*$/) {