tests: adjust stack size for qemu_x86 and mps2_an385's coverage test

for SDK 0.10.0, it consumes more stack size when coverage enabled
on qemu_x86 and mps2_an385 platform, adjust stack size for most of
the test cases, otherwise there will be stack overflow.

Fixes: #14500.

Signed-off-by: Wentong Wu <wentong.wu@intel.com>
This commit is contained in:
Wentong Wu 2019-04-04 17:50:30 +08:00 committed by Anas Nashif
commit b991962a2e
23 changed files with 38 additions and 34 deletions

View file

@ -32,7 +32,10 @@ CONFIG_I2C=y
#Enable MPU #Enable MPU
CONFIG_ARCH_HAS_USERSPACE=y CONFIG_ARCH_HAS_USERSPACE=y
CONFIG_ARM_MPU=y CONFIG_ARM_MPU=y
CONFIG_MAIN_STACK_SIZE=2048 CONFIG_MAIN_STACK_SIZE=8192
CONFIG_IDLE_STACK_SIZE=2048 CONFIG_IDLE_STACK_SIZE=8192
CONFIG_PRIVILEGED_STACK_SIZE=1024 CONFIG_PRIVILEGED_STACK_SIZE=8192
CONFIG_TEST_EXTRA_STACKSIZE=1024 CONFIG_TEST_EXTRA_STACKSIZE=4096
CONFIG_SYSTEM_WORKQUEUE_STACK_SIZE=2048
CONFIG_OFFLOAD_WORKQUEUE_STACK_SIZE=4096
CONFIG_ZTEST_STACKSIZE=4096

View file

@ -159,7 +159,7 @@ config MAIN_STACK_SIZE
config IDLE_STACK_SIZE config IDLE_STACK_SIZE
int "Size of stack for idle thread" int "Size of stack for idle thread"
default 512 if COVERAGE_GCOV default 2048 if COVERAGE_GCOV
default 1024 if XTENSA default 1024 if XTENSA
default 512 if RISCV32 default 512 if RISCV32
default 320 if ARC || (ARM && CPU_HAS_FPU) default 320 if ARC || (ARM && CPU_HAS_FPU)

View file

@ -23,7 +23,7 @@ config TEST_SHELL
config TEST_EXTRA_STACKSIZE config TEST_EXTRA_STACKSIZE
int "Test function extra thread stack size" int "Test function extra thread stack size"
default 1024 if COVERAGE_GCOV default 2048 if COVERAGE_GCOV
default 768 if XTENSA default 768 if XTENSA
default 0 default 0
help help

View file

@ -42,7 +42,8 @@ static struct k_work_q offload_work_q;
static K_THREAD_STACK_DEFINE(offload_work_q_stack, static K_THREAD_STACK_DEFINE(offload_work_q_stack,
CONFIG_OFFLOAD_WORKQUEUE_STACK_SIZE); CONFIG_OFFLOAD_WORKQUEUE_STACK_SIZE);
#define STACK_SIZE 1024 #define STACK_SIZE (1024 + CONFIG_TEST_EXTRA_STACKSIZE)
static K_THREAD_STACK_DEFINE(stack1, STACK_SIZE); static K_THREAD_STACK_DEFINE(stack1, STACK_SIZE);
static K_THREAD_STACK_DEFINE(stack2, STACK_SIZE); static K_THREAD_STACK_DEFINE(stack2, STACK_SIZE);

View file

@ -76,7 +76,7 @@ struct timeout_order_data timeout_order_data_mult_fifo[] = {
}; };
#define TIMEOUT_ORDER_NUM_THREADS ARRAY_SIZE(timeout_order_data_mult_fifo) #define TIMEOUT_ORDER_NUM_THREADS ARRAY_SIZE(timeout_order_data_mult_fifo)
#define TSTACK_SIZE 1024 #define TSTACK_SIZE (1024 + CONFIG_TEST_EXTRA_STACKSIZE)
#define FIFO_THREAD_PRIO -5 #define FIFO_THREAD_PRIO -5
static K_THREAD_STACK_ARRAY_DEFINE(ttstack, static K_THREAD_STACK_ARRAY_DEFINE(ttstack,

View file

@ -35,7 +35,7 @@
#include <ztest.h> #include <ztest.h>
#include <irq_offload.h> #include <irq_offload.h>
#define STACK_SIZE 1024 #define STACK_SIZE (1024 + CONFIG_TEST_EXTRA_STACKSIZE)
#define LIST_LEN 4 #define LIST_LEN 4
struct fdata_t { struct fdata_t {

View file

@ -8,7 +8,7 @@
#include "lifo_usage.h" #include "lifo_usage.h"
#include <kernel.h> #include <kernel.h>
#define STACK_SIZE 1024 #define STACK_SIZE (1024 + CONFIG_TEST_EXTRA_STACKSIZE)
#define LIST_LEN 2 #define LIST_LEN 2
struct k_lifo lifo, plifo; struct k_lifo lifo, plifo;
@ -64,7 +64,7 @@ struct timeout_order_data timeout_order_data_mult_lifo[] = {
#define NUM_SCRATCH_LIFO_PACKETS 20 #define NUM_SCRATCH_LIFO_PACKETS 20
#define TIMEOUT_ORDER_NUM_THREADS ARRAY_SIZE(timeout_order_data_mult_lifo) #define TIMEOUT_ORDER_NUM_THREADS ARRAY_SIZE(timeout_order_data_mult_lifo)
#define TSTACK_SIZE 1024 #define TSTACK_SIZE (1024 + CONFIG_TEST_EXTRA_STACKSIZE)
#define LIFO_THREAD_PRIO -5 #define LIFO_THREAD_PRIO -5
struct scratch_lifo_packet scratch_lifo_packets[NUM_SCRATCH_LIFO_PACKETS]; struct scratch_lifo_packet scratch_lifo_packets[NUM_SCRATCH_LIFO_PACKETS];

View file

@ -10,7 +10,7 @@
extern void test_obj_tracing(void); extern void test_obj_tracing(void);
#define STSIZE 1024 #define STSIZE (1024 + CONFIG_TEST_EXTRA_STACKSIZE)
#define N_PHILOSOPHERS 5 #define N_PHILOSOPHERS 5
#define TOTAL_TEST_NUMBER 2 #define TOTAL_TEST_NUMBER 2

View file

@ -6,7 +6,7 @@
#include <ztest.h> #include <ztest.h>
#define STACK_SIZE 1024 #define STACK_SIZE (1024 + CONFIG_TEST_EXTRA_STACKSIZE)
#define PIPE_LEN 16 #define PIPE_LEN 16
#define BYTES_TO_WRITE 4 #define BYTES_TO_WRITE 4
#define BYTES_TO_READ BYTES_TO_WRITE #define BYTES_TO_READ BYTES_TO_WRITE

View file

@ -114,7 +114,8 @@ static struct k_poll_signal wait_signal =
struct fifo_msg wait_msg = { NULL, FIFO_MSG_VALUE }; struct fifo_msg wait_msg = { NULL, FIFO_MSG_VALUE };
static struct k_thread poll_wait_helper_thread; static struct k_thread poll_wait_helper_thread;
static K_THREAD_STACK_DEFINE(poll_wait_helper_stack, KB(1)); static K_THREAD_STACK_DEFINE(poll_wait_helper_stack,
KB(1) + CONFIG_TEST_EXTRA_STACKSIZE);
#define TAG_0 10 #define TAG_0 10
#define TAG_1 11 #define TAG_1 11
@ -429,7 +430,8 @@ void test_poll_cancel_main_high_prio(void)
static K_SEM_DEFINE(multi_sem, 0, 1); static K_SEM_DEFINE(multi_sem, 0, 1);
static struct k_thread multi_thread_lowprio; static struct k_thread multi_thread_lowprio;
static K_THREAD_STACK_DEFINE(multi_stack_lowprio, KB(1)); static K_THREAD_STACK_DEFINE(multi_stack_lowprio,
KB(1) + CONFIG_TEST_EXTRA_STACKSIZE);
static void multi_lowprio(void *p1, void *p2, void *p3) static void multi_lowprio(void *p1, void *p2, void *p3)
{ {
@ -449,7 +451,7 @@ static void multi_lowprio(void *p1, void *p2, void *p3)
static K_SEM_DEFINE(multi_reply, 0, 1); static K_SEM_DEFINE(multi_reply, 0, 1);
static struct k_thread multi_thread; static struct k_thread multi_thread;
static K_THREAD_STACK_DEFINE(multi_stack, KB(1)); static K_THREAD_STACK_DEFINE(multi_stack, KB(1) + CONFIG_TEST_EXTRA_STACKSIZE);
static void multi(void *p1, void *p2, void *p3) static void multi(void *p1, void *p2, void *p3)
{ {
@ -526,7 +528,7 @@ void test_poll_multi(void)
} }
static struct k_thread signal_thread; static struct k_thread signal_thread;
static K_THREAD_STACK_DEFINE(signal_stack, KB(1)); static K_THREAD_STACK_DEFINE(signal_stack, KB(1) + CONFIG_TEST_EXTRA_STACKSIZE);
static struct k_poll_signal signal; static struct k_poll_signal signal;
static void threadstate(void *p1, void *p2, void *p3) static void threadstate(void *p1, void *p2, void *p3)

View file

@ -2,4 +2,3 @@ CONFIG_ZTEST=y
CONFIG_MP_NUM_CPUS=1 CONFIG_MP_NUM_CPUS=1
CONFIG_NUM_METAIRQ_PRIORITIES=1 CONFIG_NUM_METAIRQ_PRIORITIES=1
CONFIG_IRQ_OFFLOAD=y CONFIG_IRQ_OFFLOAD=y
CONFIG_TEST_EXTRA_STACKSIZE=256

View file

@ -48,11 +48,7 @@ const enum { METAIRQ, COOP, PREEMPTIBLE } worker_priorities[] = {
#define NUM_THREADS ARRAY_SIZE(worker_priorities) #define NUM_THREADS ARRAY_SIZE(worker_priorities)
#ifdef CONFIG_COVERAGE #define STACK_SIZE (640 + CONFIG_TEST_EXTRA_STACKSIZE)
#define STACK_SIZE (512 + CONFIG_TEST_EXTRA_STACKSIZE)
#else
#define STACK_SIZE (384 + CONFIG_TEST_EXTRA_STACKSIZE)
#endif
k_tid_t last_thread; k_tid_t last_thread;

View file

@ -6,7 +6,7 @@
#include <ztest.h> #include <ztest.h>
#include <irq_offload.h> #include <irq_offload.h>
#define STACK_SIZE 512 #define STACK_SIZE (512 + CONFIG_TEST_EXTRA_STACKSIZE)
#define STACK_LEN 4 #define STACK_LEN 4
/**TESTPOINT: init via K_STACK_DEFINE*/ /**TESTPOINT: init via K_STACK_DEFINE*/

View file

@ -35,7 +35,7 @@
#include <ztest.h> #include <ztest.h>
#include <irq_offload.h> #include <irq_offload.h>
#define TSTACK_SIZE 512 #define TSTACK_SIZE (512 + CONFIG_TEST_EXTRA_STACKSIZE)
#define STACK_LEN 4 #define STACK_LEN 4
/* stack objects used in this test */ /* stack objects used in this test */

View file

@ -4,6 +4,5 @@ CONFIG_THREAD_CUSTOM_DATA=y
CONFIG_THREAD_NAME=y CONFIG_THREAD_NAME=y
CONFIG_THREAD_STACK_INFO=y CONFIG_THREAD_STACK_INFO=y
CONFIG_HEAP_MEM_POOL_SIZE=256 CONFIG_HEAP_MEM_POOL_SIZE=256
CONFIG_TEST_EXTRA_STACKSIZE=256
CONFIG_SCHED_CPU_MASK=y CONFIG_SCHED_CPU_MASK=y
CONFIG_SMP=n CONFIG_SMP=n

View file

@ -37,7 +37,7 @@ extern void test_k_thread_foreach(void);
extern void test_threads_cpu_mask(void); extern void test_threads_cpu_mask(void);
struct k_thread tdata; struct k_thread tdata;
#define STACK_SIZE (256 + CONFIG_TEST_EXTRA_STACKSIZE) #define STACK_SIZE (512 + CONFIG_TEST_EXTRA_STACKSIZE)
K_THREAD_STACK_DEFINE(tstack, STACK_SIZE); K_THREAD_STACK_DEFINE(tstack, STACK_SIZE);
size_t tstack_size = K_THREAD_STACK_SIZEOF(tstack); size_t tstack_size = K_THREAD_STACK_SIZEOF(tstack);

View file

@ -10,7 +10,7 @@
struct k_thread kthread_thread; struct k_thread kthread_thread;
#define STACKSIZE 1024 #define STACKSIZE (1024 + CONFIG_TEST_EXTRA_STACKSIZE)
K_THREAD_STACK_DEFINE(kthread_stack, STACKSIZE); K_THREAD_STACK_DEFINE(kthread_stack, STACKSIZE);
K_SEM_DEFINE(sync_sem, 0, 1); K_SEM_DEFINE(sync_sem, 0, 1);

View file

@ -11,7 +11,8 @@
#define SLEEP_MS 100 #define SLEEP_MS 100
#define TEST_STRING "TEST" #define TEST_STRING "TEST"
#define STACKSIZE (256 + CONFIG_TEST_EXTRA_STACKSIZE) #define STACKSIZE (512 + CONFIG_TEST_EXTRA_STACKSIZE)
K_THREAD_STACK_EXTERN(tstack); K_THREAD_STACK_EXTERN(tstack);
extern struct k_thread tdata; extern struct k_thread tdata;

View file

@ -6,7 +6,8 @@
#include <ztest.h> #include <ztest.h>
#define STACK_SIZE (256 + CONFIG_TEST_EXTRA_STACKSIZE) #define STACK_SIZE (512 + CONFIG_TEST_EXTRA_STACKSIZE)
K_THREAD_STACK_EXTERN(tstack); K_THREAD_STACK_EXTERN(tstack);
extern struct k_thread tdata; extern struct k_thread tdata;
static ZTEST_BMEM int execute_flag; static ZTEST_BMEM int execute_flag;

View file

@ -6,7 +6,8 @@
#include <ztest.h> #include <ztest.h>
#define STACK_SIZE (384 + CONFIG_TEST_EXTRA_STACKSIZE) #define STACK_SIZE (640 + CONFIG_TEST_EXTRA_STACKSIZE)
K_THREAD_STACK_EXTERN(tstack); K_THREAD_STACK_EXTERN(tstack);
extern struct k_thread tdata; extern struct k_thread tdata;
static int thread2_data; static int thread2_data;

View file

@ -7,7 +7,7 @@
#include <ztest.h> #include <ztest.h>
#define STACK_SIZE (256 + CONFIG_TEST_EXTRA_STACKSIZE) #define STACK_SIZE (512 + CONFIG_TEST_EXTRA_STACKSIZE)
K_THREAD_STACK_EXTERN(tstack); K_THREAD_STACK_EXTERN(tstack);
extern struct k_thread tdata; extern struct k_thread tdata;

View file

@ -6,7 +6,8 @@
#include <ztest.h> #include <ztest.h>
#define STACK_SIZE (256 + CONFIG_TEST_EXTRA_STACKSIZE) #define STACK_SIZE (512 + CONFIG_TEST_EXTRA_STACKSIZE)
K_THREAD_STACK_EXTERN(tstack); K_THREAD_STACK_EXTERN(tstack);
extern struct k_thread tdata; extern struct k_thread tdata;
static int last_prio; static int last_prio;

View file

@ -25,7 +25,7 @@
*/ */
#define SUBMIT_WAIT 50 #define SUBMIT_WAIT 50
#define STACK_SIZE 1024 #define STACK_SIZE (1024 + CONFIG_TEST_EXTRA_STACKSIZE)
struct test_item { struct test_item {
int key; int key;