#[repr(u32)]pub enum AllocArena {
None = 0,
ExecutorArena = 1,
PlatformHeap = 2,
}Expand description
Which allocator refused the allocation BootReport::failed_alloc_size
names.
Issue 1573. The executor ARENA and the PLATFORM HEAP share the one
failed_alloc_size / failed_alloc_shortfall pair – first writer wins,
and the first failure stops the boot – but the two are sized by different
knobs, and a pair that cannot say which arena it describes names the wrong
one. Measured on the Autoware Safety Island under QEMU: zenoh-pico’s
_z_slist_new asked the platform heap for 236 bytes, the console printed
HEAP EXHAUSTED, and the decoded record told the reader to raise
NROS_EXECUTOR_ARENA_SIZE for an arena that was 28% used.
Append only; the_alloc_arena_codes_match_the_record states the numbers
read-boot-report.py’s ALLOC_ARENA restates.
Variants§
None = 0
No allocation has failed, or the image predates the field.
ExecutorArena = 1
The executor arena (NROS_EXECUTOR_ARENA_SIZE), claimed by entity
registration.
PlatformHeap = 2
The platform heap nros_platform_alloc hands out of
(CONFIG_NROS_ZEPHYR_HEAP_SIZE on Zephyr).
Trait Implementations§
Source§impl Clone for AllocArena
impl Clone for AllocArena
Source§fn clone(&self) -> AllocArena
fn clone(&self) -> AllocArena
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more