When DEBUG_CIF is defined, a serial message of the form "method(...) = " is emitted by dump_service(). After successful execution the return value and a linebreak are emitted by dump_return(). If however the method fails, nothing is emitted, so that subsequent method calls end up in place of the return value. Observed for getproplen with AIX.
Emit an error indication and a linebreak when DEBUG_CIF is defined.
Signed-off-by: Andreas Färber andreas.faerber@web.de --- libopenbios/client.c | 4 ++++ 1 files changed, 4 insertions(+), 0 deletions(-)
diff --git a/libopenbios/client.c b/libopenbios/client.c index 9cea0e7..4c43a99 100644 --- a/libopenbios/client.c +++ b/libopenbios/client.c @@ -306,6 +306,10 @@ of_client_interface( int *params ) if( val == -1 ) printk("Unimplemented service %s ([%ld] -- [%ld])\n", pb->service, pb->nargs, pb->nret ); +#ifdef DEBUG_CIF + else + printk("ERROR!\n"); +#endif return -1; }