zephyr/kernel
Daniel Leung 1117169980 kernel: generate placeholders for kobj tables before final build
Due to the use of gperf to generate hash table for kobjects,
the addresses of these kobjects cannot change during the last
few phases of linking (especially between zephyr_prebuilt.elf
and zephyr.elf). Because of this, the gperf generated data
needs to be placed at the end of memory to avoid pushing symbols
around in memory. This prevents moving these generated blocks
to earlier sections, for example, pinned data section needed
for demand paging. So create placeholders for use in
intermediate linking to reserve space for these generated blocks.
Due to uncertainty on the size of these blocks, more space is
being reserved which could result in wasted space. Though, this
retains the use of hash table for faster lookup.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2021-04-27 13:32:00 -04:00
..
include kernel: generate placeholders for kobj tables before final build 2021-04-27 13:32:00 -04:00
paging kernel: enable using timing subsys to collect paging histograms 2021-04-06 16:43:55 -04:00
atomic_c.c kernel: atomic: consistently use named type for atomic pointer values 2021-04-19 15:22:13 +02:00
banner.c kernel: init: move banner handling 2020-11-27 20:08:14 -05:00
cache_handlers.c cache: Expand the APIs for cache flushing 2021-01-19 14:31:02 -05:00
CMakeLists.txt kernel: mmu: collect more demand paging statistics 2021-04-06 16:43:55 -04:00
compiler_stack_protect.c tests: coverage: exclude the CODE UNREACHABLE of code coverage 2021-01-15 12:42:00 -05:00
condvar.c kernel: fix race conditions with z_ready_thread 2021-03-03 13:54:47 -05:00
device.c x86: make tests of a value against zero should be made explicit 2021-04-01 05:34:17 -04:00
errno.c kernel: support using thread local storage for errno 2020-10-24 10:52:00 -07:00
fatal.c kernel: make tests of a value against zero should be made explicit 2021-04-01 05:34:17 -04:00
futex.c kernel: Fix 10.4 violations 2021-04-10 09:59:37 -04:00
idle.c clock: remove z_ from semi-public APIs 2021-03-19 11:22:17 -04:00
init.c kernel: generate placeholders for kobj tables before final build 2021-04-27 13:32:00 -04:00
Kconfig timing: add kconfig CONFIG_TIMING_FUNCTIONS_NEED_AT_BOOT 2021-04-06 16:43:55 -04:00
kheap.c clock: renmae z_timeout_end_calc -> sys_clock_timeout_end_calc 2021-03-19 11:22:17 -04:00
mailbox.c kernel/arch: cleanup function definitions 2021-04-01 05:34:17 -04:00
mem_domain.c kernel: Make both operands of operators of same essential type category 2021-04-01 05:34:17 -04:00
mem_slab.c mem_slab: move global lock to per slab lock 2021-04-14 14:20:19 -04:00
mempool.c kernel: make tests of a value against zero should be made explicit 2021-04-01 05:34:17 -04:00
mmu.c kernel: generate placeholders for kobj tables before final build 2021-04-27 13:32:00 -04:00
msg_q.c kernel: Allow k_poll on message queues 2021-04-17 07:47:26 -04:00
mutex.c kernel: Cleanup logger setup in kernel files 2020-11-27 09:56:34 -05:00
pipes.c kernel: Make both operands of operators of same essential type category 2021-04-01 05:34:17 -04:00
poll.c kernel: Allow k_poll on message queues 2021-04-17 07:47:26 -04:00
queue.c kernel/queue: fix queue append/get race 2020-10-28 17:01:41 +01:00
sched.c kernel: make tests of a value against zero should be made explicit 2021-04-01 05:34:17 -04:00
sem.c kernel: sem: handle resets with outstanding waiting threads 2021-03-06 07:39:43 -05:00
smp.c kernel: smp: Remove unused internal API z_smp_reacquire_global_lock() 2021-03-14 18:32:26 -04:00
stack.c kernel: fix race conditions with z_ready_thread 2021-03-03 13:54:47 -05:00
system_work_q.c kernel: remove old work queue implementation 2021-03-03 20:06:00 -05:00
thread.c kernel: Fix 10.4 violations 2021-04-10 09:59:37 -04:00
timeout.c clock: renmae z_timeout_end_calc -> sys_clock_timeout_end_calc 2021-03-19 11:22:17 -04:00
timer.c kernel: timer: Fix incorrect behavior for timers with K_FOREVER period 2021-03-07 08:00:08 -05:00
userspace.c kernel: Make both operands of operators of same essential type category 2021-04-01 05:34:17 -04:00
userspace_handler.c userspace: update k_object API to support immutable objects 2020-09-02 13:48:13 +02:00
version.c zephyr: replace zephyr integer types with C99 types 2020-06-08 08:23:57 -05:00
work.c kernel: fix error in synchronous work cancellation return value 2021-04-27 13:28:45 -04:00
xip.c linker: arm: Add cortex_m itcm section 2021-01-15 14:51:20 +01:00