Supplement base/log.h with raw output function

This patch introduces the Genode::raw function that prints output
directly via a low-level kernel mechanism, if available.

On base-linux, it replaces the former 'raw_write_str' function.
On base-hw, it replaces the former kernel/log.h interface.

Fixes #2012
This commit is contained in:
Norman Feske
2016-06-16 15:55:36 +02:00
committed by Christian Helmuth
parent ebdb1c6892
commit 2030ae678e
27 changed files with 351 additions and 217 deletions

View File

@ -14,6 +14,7 @@
/* Genode includes */
#include <base/stdint.h>
#include <base/env.h>
#include <base/log.h>
#include <linux_syscalls.h>
@ -41,7 +42,8 @@ extern "C" int stdout_write(char const *);
*/
extern "C" __attribute__((weak)) int stdout_write(char const *s)
{
return raw_write_str(s);
raw(s);
return strlen(s);
}
/**