summaryrefslogtreecommitdiffstats
path: root/kernel/debug/kdb/kdb_private.h
diff options
context:
space:
mode:
authorDaniel Thompson <daniel.thompson@linaro.org>2019-10-25 09:33:25 +0200
committerDaniel Thompson <daniel.thompson@linaro.org>2019-10-28 13:02:21 +0100
commitd04213af90935d8b247c1327c9ea142fc037165f (patch)
treeacb625f166ec6fdffb70bda937c4bf9fc8305c85 /kernel/debug/kdb/kdb_private.h
parentkdb: Tidy up code to handle escape sequences (diff)
downloadlinux-d04213af90935d8b247c1327c9ea142fc037165f.tar.xz
linux-d04213af90935d8b247c1327c9ea142fc037165f.zip
kdb: Simplify code to fetch characters from console
Currently kdb_read_get_key() contains complex control flow that, on close inspection, turns out to be unnecessary. In particular: 1. It is impossible to enter the branch conditioned on (escape_delay == 1) except when the loop enters with (escape_delay == 2) allowing us to combine the branches. 2. Most of the code conditioned on (escape_delay == 2) simply modifies local data and then breaks out of the loop causing the function to return escape_data[0]. 3. Based on #2 there is not actually any need to ever explicitly set escape_delay to 2 because we it is much simpler to directly return escape_data[0] instead. 4. escape_data[0] is, for all but one exit path, known to be '\e'. Simplify the code based on these observations. There is a subtle (and harmless) change of behaviour resulting from this simplification: instead of letting the escape timeout after ~1998 milliseconds we now timeout after ~2000 milliseconds Signed-off-by: Daniel Thompson <daniel.thompson@linaro.org> Reviewed-by: Douglas Anderson <dianders@chromium.org> Link: https://lore.kernel.org/r/20191025073328.643-3-daniel.thompson@linaro.org
Diffstat (limited to 'kernel/debug/kdb/kdb_private.h')
0 files changed, 0 insertions, 0 deletions