Add new tests to improve of the Zephyr QA testing of the memory protection for memory domains and partitions. I created new tests for memory protection->memory partitions for the requirements which I think necessary to be tested. I added Doxygen tag for each test to make it clear to understand what each test is doing and how. New tests for memory domains and partitions: -test_mem_domain_api_kernel_thread_only() By creating that test I wanted to prove that access to memory domain APIs must be restricted only to supervisor threads. At the same time I wanted to prove that system can support the definition of memory domains. -test_mem_part_auto_determ_size() By creating that test I want to prove that system can automatically determine application memory partition base addresses and sizes at build time, determined by its contents. Also system can support definition of memory partitions. At the same time test proves that OS supports adding and removing a thread from its memory domain assignment. -test_mem_part_auto_determ_size_per_mmu() That test is very important and it proves that memory partitions are automatically sized and aligned per the constraints of the platform's memory management hardware. -test_mem_part_inheirt_by_child_thr() Prove that child thread inherits memory domain assignment of its parent. -test_macros_obtain_names_data_bss() Test system provides tools to obtain the names of the data and BSS sections related to a particular application memory partition at build time. -test_mem_part_assign_bss_vars_zero() Test that global data and BSS values can be assigned to application memory partitions using macros at build time. Test that BSS values will be zeroed at the build time. 1. According to the reviews made changes. 2. Switched test_mem_part_assert_add_overmax and test_create_new_invalid_prio_thread_from_user That way I exposed problem (bug) with assertion in L171 kernel/mem_protect.c Signed-off-by: Maksim Masalski <maksim.masalski@intel.com> |
||
|---|---|---|
| .. | ||
| futex | ||
| mem_map | ||
| mem_protect | ||
| obj_validation | ||
| protection | ||
| stack_random | ||
| stackprot | ||
| sys_sem | ||
| syscalls | ||
| userspace | ||