[comboot] Reset console before starting COMBOOT executable
authorMichael Brown <mcb30@ipxe.org>
Tue, 17 Nov 2015 14:17:03 +0000 (14:17 +0000)
committerMichael Brown <mcb30@ipxe.org>
Tue, 17 Nov 2015 14:20:35 +0000 (14:20 +0000)
commit309c58824fc75a931cf3c25268abdb35870ce8f0
treefe4111751d58b4573d593abb3d75b9b7a3d7e43f
parented0d7c4f6f8db7bda1e74567693a0c525b9cf159
[comboot] Reset console before starting COMBOOT executable

iPXE does not call shutdown() before invoking a COMBOOT executable,
since the executable is allowed to make API calls back into iPXE.  If
a background picture is used, then the console will not be restored to
text mode before invoking the COMBOOT executable.  This can cause
undefined behaviour.

Fix by adding an explicit call to console_reset() immediately before
invoking a COMBOOT or COM32 executable, analogous to the call made to
console_reset() immediately before invokving a PXE NBP.

Debugged-by: Andrew Widdersheim <awiddersheim@inetu.net>
Tested-by: Andrew Widdersheim <awiddersheim@inetu.net>
Signed-off-by: Michael Brown <mcb30@ipxe.org>
src/arch/i386/image/com32.c
src/arch/i386/image/comboot.c