u-boot/test
Stephen Warren 93134e18e8 test/py: handle exceptions in console creation
u_boot_console.exec_attach.get_spawn() performs two steps:
1) Spawn a process to communicate with the serial console.
2) Reset the board so that U-Boot starts running from scratch.

Currently, if an exception happens in step (2), no cleanup is performed on
the process created in step (1). That process stays running and may e.g.
hold serial port locks, or simply continue to read data from the serial
port, thus preventing it from reaching any other process that attempts to
read from the same serial port later. While there is error cleanup code in
u_boot_console_base.ensure_spawned(), this is not triggered since the
exception prevents assignment to self.p there, and hence the exception
handler has no object to operate upon in cleanup_spawn().

Solve this by enhancing u_boot_console.exec_attach.get_spawn() to clean
up any objects it has created.

In theory, u_boot_spawn.Spawn's constructor has a similar issue, so fix
this too.

Signed-off-by: Stephen Warren <swarren@nvidia.com>
Acked-by: Simon Glass <sjg@chromium.org>
2016-02-15 20:58:29 +00:00
..
dm test/py: run all "ut" subtests 2016-02-15 20:58:26 +00:00
env test: env: Add a test of the new regex behavior for attrs 2015-05-21 09:16:18 -04:00
fs test/fs: error case fixes/enhancements 2016-01-13 21:05:21 -05:00
image add test for two 'loadables' 2015-05-28 08:18:21 -04:00
py test/py: handle exceptions in console creation 2016-02-15 20:58:29 +00:00
stdint test: Add a simple test to detected warnings with uint64_t, uintptr_t 2014-10-27 11:04:01 -04:00
trace test: Add a test for command repeat 2014-09-24 18:30:28 -04:00
vboot Implement generalised RSA public exponents for verified boot 2014-08-09 11:17:01 -04:00
cmd_ut.c test: env: Add test framework for env 2015-05-21 09:16:18 -04:00
command_ut.c test/py: test the shell if command 2016-01-20 19:06:23 -07:00
common.sh test: Add a test for command repeat 2014-09-24 18:30:28 -04:00
compression.c Add support for LZ4 decompression algorithm 2015-10-11 17:12:10 -04:00
Kconfig test: env: Add test framework for env 2015-05-21 09:16:18 -04:00
Makefile test: dm: Move the time test over to the ut command 2015-05-21 09:16:17 -04:00
time_ut.c test: dm: Move the time test over to the ut command 2015-05-21 09:16:17 -04:00
ut.c test: Record and silence console in tests 2015-11-19 20:27:51 -07:00