57 lines
1.8 KiB
Plaintext
57 lines
1.8 KiB
Plaintext
# General configuration options
|
|
|
|
# Copyright (c) 2017 Intel Corporation
|
|
# SPDX-License-Identifier: Apache-2.0
|
|
|
|
menu "POSIX (native) Options"
|
|
depends on ARCH_POSIX
|
|
|
|
config ARCH
|
|
default "posix"
|
|
|
|
config ARCH_POSIX_RECOMMENDED_STACK_SIZE
|
|
int
|
|
default 44 if 64BIT && STACK_SENTINEL
|
|
default 40 if 64BIT
|
|
default 28 if STACK_SENTINEL
|
|
default 24
|
|
help
|
|
In bytes, stack size for Zephyr threads meant only for the POSIX
|
|
architecture.
|
|
(In this architecture only part of the thread status is kept in the Zephyr
|
|
thread stack, the real stack is the native underlying pthread stack.
|
|
Therefore the allocated stack can be limited to this size)
|
|
|
|
config ARCH_POSIX_LIBFUZZER
|
|
bool "Build fuzz test target"
|
|
help
|
|
Build the posix app as a LLVM libfuzzer target. Requires
|
|
support from the toolchain (currently only clang works, and
|
|
only on native_posix_64), and should normally be used in
|
|
concert with some of CONFIG_ASAN/UBSAN/MSAN for validation.
|
|
The application needs to implement the
|
|
LLVMFuzzerTestOneInput() entry point, which runs in the host
|
|
environment "outside" the OS. See Zephyr documentation and
|
|
sample and https://llvm.org/docs/LibFuzzer.html for more
|
|
information.
|
|
|
|
config ARCH_POSIX_FUZZ_IRQ
|
|
int "OS interrupt via which to deliver fuzz cases"
|
|
default 3
|
|
help
|
|
When using libfuzzer, new fuzz cases are delivered to Zephyr
|
|
via interrupts. The IRQ should be otherwise unused, but can
|
|
be any value desired by the app.
|
|
|
|
config ARCH_POSIX_FUZZ_TICKS
|
|
int "Ticks to allow for fuzz case processing"
|
|
default 2
|
|
help
|
|
Fuzz interrupts are delivered, from the perspective of the
|
|
OS, at a steady cadence in simulated time. In general most
|
|
apps won't require much time to reach an idle state
|
|
following a unit-test style case, so the default is short to
|
|
prevent interaction with regular timer workloads.
|
|
|
|
endmenu
|