The logging module data is assigned to the memory partition 'k_log_partition' so that a user mode thread can access this data (see k_mem_domain_add_thread()). The 'k_log_partition' is created when: - CONFIG_USERSPACE=y - CONFIG_LOG_ALWAYS_RUNTIME=y The option CONFIG_NO_OPTIMIZATIONS=y forces the logging module to use the runtime message creation CONFIG_LOG_ALWAYS_RUNTIME=y. This raises a MPU violation when logging is used in a user mode thread since this thread is not allowed to access the module data (e.g. __log_level, __log_current_const_data). Note that the user mode thread may also require access to the partition 'z_libc_partition'. Signed-off-by: Christoph Winklhofer <cj.winklhofer@gmail.com> |
||
|---|---|---|
| .. | ||
| log_backend_adsp_hda.h | ||
| log_backend_adsp_mtrace.h | ||
| log_backend_ble.h | ||
| log_backend_net.h | ||
| log_backend_std.h | ||
| log_backend_ws.h | ||
| log_backend.h | ||
| log_core.h | ||
| log_ctrl.h | ||
| log_frontend_stmesp_demux.h | ||
| log_frontend_stmesp.h | ||
| log_frontend.h | ||
| log_instance.h | ||
| log_internal.h | ||
| log_link.h | ||
| log_msg.h | ||
| log_multidomain_helper.h | ||
| log_output_custom.h | ||
| log_output_dict.h | ||
| log_output.h | ||
| log.h | ||