spi/flashconsole: Fix internal buffer overflow
commit361a5c095262adc139f0d7504fb25e1215eebc8f
authorNico Huber <nico.huber@secunet.com>
Thu, 26 Nov 2020 12:35:09 +0000 (26 13:35 +0100)
committerNico Huber <nico.h@gmx.de>
Thu, 3 Dec 2020 23:26:43 +0000 (3 23:26 +0000)
treeea04a93e3ffc10aec913e3e428d178a5354bf835
parent20426858c58d99f86bd791259342e71411c7ca62
spi/flashconsole: Fix internal buffer overflow

Once the console's FMAP region is full, we stop clearing the line
buffer and `line_offset` is not reset anymore. Hence, sanity check
`line_offset` everytime before writing to the buffer.

The issue resulted in boot hangs and potentially a brick if the
log was very verbose.

Change-Id: I36e9037d7baf8c1ed8b2d0c120bfffa58c089c95
Signed-off-by: Nico Huber <nico.huber@secunet.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/48074
Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net>
Reviewed-by: Michael Niewöhner <foss@mniewoehner.de>
Reviewed-by: Angel Pons <th3fanbus@gmail.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
src/drivers/spi/flashconsole.c