zephyr/kernel/nanokernel
Benjamin Walsh 3181df6db4 kernel: add per-thread errno support
Saves an errno per-thread, retrieved via _get_errno(), instead of
changing the value of a global variable during context switches to avoid
a hit to the context switch performance.

Per-arch asm implementations are provided for maximum performance.

Enabled by default, but can be disabled via the CONFIG_ERRNO option.

Change-Id: I81d57a2e318c94c68eee913ae0d4ca3a3609c7a4
Signed-off-by: Benjamin Walsh <benjamin.walsh@windriver.com>
2016-02-05 20:24:58 -05:00
..
include kernel: add per-thread errno support 2016-02-05 20:24:58 -05:00
compiler_stack_protect.c Fixed file description and applied doxygen style 2016-02-05 20:24:58 -05:00
device.c checkpatch: warning - line_spacing 2016-02-05 20:24:33 -05:00
event_logger.c Fixed file description and applied doxygen style 2016-02-05 20:24:58 -05:00
idle.c Fixed file description and applied doxygen style 2016-02-05 20:24:58 -05:00
int_latency_bench.c timer: Rename _sys_clock_cycle_get() 2016-02-05 20:24:55 -05:00
Kconfig kernel: add per-thread errno support 2016-02-05 20:24:58 -05:00
kernel_event_logger.c Fixed file description and applied doxygen style 2016-02-05 20:24:58 -05:00
Makefile nanokernel: Move fiber_sleep() to nano_sleep.c 2016-02-05 20:24:53 -05:00
nano_context.c Fixed file description and applied doxygen style 2016-02-05 20:24:58 -05:00
nano_fiber.c kernel: rename _nano_fiber_schedule() 2016-02-05 20:24:53 -05:00
nano_fifo.c nanokernel: Rename nano_tick_xxx APIs 2016-02-05 20:24:53 -05:00
nano_init.c Fixed file description and applied doxygen style 2016-02-05 20:24:58 -05:00
nano_lifo.c nanokernel: Rename nano_tick_xxx APIs 2016-02-05 20:24:53 -05:00
nano_sema.c nanokernel: Rename nano_tick_xxx APIs 2016-02-05 20:24:53 -05:00
nano_sleep.c nanokernel: Rename nano_tick_xxx APIs 2016-02-05 20:24:53 -05:00
nano_stack.c kernel: rename _nano_fiber_schedule() 2016-02-05 20:24:53 -05:00
nano_sys_clock.c nanokernel: Rename nano_tick_xxx APIs 2016-02-05 20:24:53 -05:00
nano_timer.c nanokernel: Add generic timer routines 2016-02-05 20:24:53 -05:00
ring_buffer.c checkpatch: error - spacing 2016-02-05 20:24:31 -05:00
version.c Change BSD-3 licenses to Apache 2 2016-02-05 20:24:29 -05:00