workqueues: don't put k_work in special section

There's no current need for this and it makes work items
declared with K_WORK_DEFINE() inaccessible to user mode.

Signed-off-by: Andrew Boie <andrew.p.boie@intel.com>
This commit is contained in:
Andrew Boie 2018-11-12 15:16:54 -08:00 committed by Anas Nashif
commit c2e01dff3f
3 changed files with 2 additions and 11 deletions

View file

@ -2509,9 +2509,7 @@ extern struct k_work_q k_sys_work_q;
* @req K-WORK-002
*/
#define K_WORK_DEFINE(work, work_handler) \
struct k_work work \
__in_section(_k_work, static, work) = \
_K_WORK_INITIALIZER(work_handler)
struct k_work work = _K_WORK_INITIALIZER(work_handler)
/**
* @brief Initialize a work item.

View file

@ -125,13 +125,6 @@
_k_pipe_list_end = .;
} GROUP_DATA_LINK_IN(RAMABLE_REGION, ROMABLE_REGION)
SECTION_DATA_PROLOGUE(_k_work_area, (OPTIONAL), SUBALIGN(4))
{
_k_work_list_start = .;
KEEP(*(SORT_BY_NAME("._k_work.static.*")))
_k_work_list_end = .;
} GROUP_DATA_LINK_IN(RAMABLE_REGION, ROMABLE_REGION)
SECTION_DATA_PROLOGUE(_k_task_list, (OPTIONAL), SUBALIGN(4))
{
_k_task_list_start = .;

View file

@ -645,7 +645,7 @@ class SizeCalculator:
"ccm_noinit"]
rw_sections = ["datas", "initlevel", "_k_task_list", "_k_event_list",
"_k_memory_pool", "exceptions", "initshell",
"_static_thread_area", "_k_timer_area", "_k_work_area",
"_static_thread_area", "_k_timer_area",
"_k_mem_slab_area", "_k_mem_pool_area", "sw_isr_table",
"_k_sem_area", "_k_mutex_area", "_k_alert_area",
"_k_fifo_area", "_k_lifo_area", "_k_stack_area",