logging: Add basic userspace support
This commit adds basic userspace support to the logging subsystem. With this change, the following API could be called from user mode: - LOG_*() - LOG_INST_*(), - LOG_HEXDUMP_*(), - LOG_HEXDUMP_INST_*(), - LOG_PANIC(), LOG_PROCESS(), - log_printk(), log_generic(), log_buffrered_cnt(), - log_filter_set(NULL, ...) With userspace disabled, the logger behavior and performance is not affected. With userspace enabled, the calls from kernel space have an additional overhead introduced by _is_user_context(). The logger behavior changes when it is called from the user context. All strings logged using LOG_*() and LOG_INST_*() API from userspace are rendered in place for security reasons and then placed in log_strdup() memory pool, which should be large enough to hold bursts of log messages. Signed-off-by: Andrew Boie <andrew.p.boie@intel.com> Signed-off-by: Piotr Zięcik <piotr.ziecik@nordicsemi.no>
This commit is contained in:
parent
78eb718396
commit
892ab4e356
7 changed files with 399 additions and 43 deletions
5
subsys/testsuite/ztest/include/syscalls/log_core.h
Normal file
5
subsys/testsuite/ztest/include/syscalls/log_core.h
Normal file
|
@ -0,0 +1,5 @@
|
|||
/*
|
||||
* Copyright (c) 2019 Nordic Semiconductor ASA
|
||||
*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
*/
|
5
subsys/testsuite/ztest/include/syscalls/log_ctrl.h
Normal file
5
subsys/testsuite/ztest/include/syscalls/log_ctrl.h
Normal file
|
@ -0,0 +1,5 @@
|
|||
/*
|
||||
* Copyright (c) 2019 Nordic Semiconductor ASA
|
||||
*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
*/
|
Loading…
Add table
Add a link
Reference in a new issue