zephyr/include
Peter Bigot 8ea2956ca3 fs: littlefs: revise how per-file cache memory is allocated
Originally the file cache used a mem_pool, but that data structure has
been deprecated and replaced by a heap that includes metadata in the
heap area.  As a result attempts to allocate all blocks will fail
because some of the reservation intended for cache data is now holding
metadata instead.

It's not immediately clear how to adjust the required heap size to
support this metadata as it depends on heap chunk units and data
structures that are not visible to the application.  Experimentally a
value of 24 bytes works, while smaller values do not.

Further the previous Kconfig API to configure the allocation pool is
completely inappropriate with the new heap data structure which has
such different behavior.

So: Deprecate the old Kconfig API.  Add a new Kconfig option to
directly control the cache size.  Infer a default cache size that
works with the old mem_pool parameters assuming a per-block overhead.
But to avoid wasted memory use the heap allocation only when the
application customizes the size, and use a slab in other cases.

Signed-off-by: Peter Bigot <peter.bigot@nordicsemi.no>
2021-02-02 07:15:17 -05:00
..
app_memory kernel: move thread definitions to thread.h 2021-01-13 18:18:42 -05:00
arch aarch64: mmu: cleanups and fixes 2021-01-28 20:24:30 -05:00
audio
bluetooth Bluetooth: host: Remove the deprecated bt_conn_create_slave_le function 2021-01-29 12:53:10 -05:00
canbus
cmsis_rtos_v1
cmsis_rtos_v2
console
crypto
data doc: fix @param usage in callbacks 2020-12-18 12:18:28 +01:00
debug debug: coredump: remove z_ prefix for stuff used outside subsys 2021-01-21 22:08:59 -05:00
devicetree devicetree: fix DT_GPIO_CTLR docstring 2021-01-16 08:09:51 -06:00
dfu modules: introduce MCUBOOT_BOOTUTIL module 2021-01-14 18:03:38 +01:00
disk
display
drivers drivers: uart: Clarity timeout in uart_rx_enable and add doxygen links 2021-01-29 15:05:16 -05:00
dt-bindings clocks: add clock api for gpt 2021-01-22 08:34:49 -06:00
fs fs: littlefs: revise how per-file cache memory is allocated 2021-02-02 07:15:17 -05:00
ipc ipc: RPMsg service to register multiple endpoints 2021-01-19 22:07:09 +01:00
kernel kernel: move thread definitions to thread.h 2021-01-13 18:18:42 -05:00
linker linker: remove asterisk from IRQ/ISR section name macro 2021-01-26 16:24:11 -05:00
logging doc: fix @param usage in callbacks 2020-12-18 12:18:28 +01:00
lorawan lorawan,lora: fix C++ compilation/linking errors 2020-10-15 11:08:07 +02:00
mgmt doc: fix @param usage in callbacks 2020-12-18 12:18:28 +01:00
net net: coap: Allow encoding packets using data from constant buffers 2021-01-26 06:17:41 -05:00
posix include/posix: fix extern "C" placement 2020-10-13 10:05:30 -05:00
power power: Use substate-id in pm subsystem 2021-01-22 09:31:20 -05:00
random
settings
shell shell: internal api update in shell.h 2021-01-14 12:07:25 +01:00
stats
storage storage/flash_map: Added function for get erased byte value 2020-10-30 15:53:38 +01:00
sys lib: cbprintf: use doxygen-friendly reference to Kconfig options 2021-01-27 13:34:06 -05:00
timing timing: do not repeatedly do init()/start()/stop() 2020-11-11 23:55:49 -05:00
toolchain sparc: Add compiler and linker tool support 2020-11-13 14:53:55 -08:00
tracing
usb doc: fix @param usage in callbacks 2020-12-18 12:18:28 +01:00
zephyr zephyr: introduce z_max_align_t 2020-11-17 11:44:16 +02:00
cache.h cache: libmetal: Redirect sys_cache_flush() 2021-01-19 14:31:02 -05:00
device.h device: fix potential truncation of DT-derived device names 2021-01-25 16:26:12 -05:00
devicetree.h devicetree: add DT_SAME_NODE() 2021-01-19 16:06:55 -05:00
ec_host_cmd.h
emul.h
exc_handle.h
fatal.h
generated_dts_board.h
init.h device: deprecate DEVICE_AND_API_INIT 2021-01-12 08:31:12 -06:00
irq_nextlevel.h
irq_offload.h
irq.h irq: document requirement that irq_lock/unlock provides a memory barrier 2021-01-26 13:42:17 -05:00
kernel_includes.h kernel: move thread definitions to thread.h 2021-01-13 18:18:42 -05:00
kernel_structs.h power: standarize PM Kconfigs and cleanup 2020-12-09 15:18:29 -05:00
kernel_version.h
kernel.h kernel: const-qualify objects used to calculate delay values 2021-01-22 08:05:26 -06:00
mempool_heap.h kernel: Remove z_mem_pool wrapper internals 2020-12-07 21:50:14 -05:00
ptp_clock.h
sched_priq.h
shared_irq.h
spinlock.h include: Add missing extern "C" to spinlock.h 2021-01-28 07:50:24 -05:00
sw_isr_table.h
sys_clock.h api: add C++ friendly version of Z_TIMEOUT_TICKS. 2021-01-20 09:23:20 -05:00
syscall_handler.h kernel: Cleanup logger setup in kernel files 2020-11-27 09:56:34 -05:00
syscall.h
timeout_q.h
toolchain.h
wait_q.h
zephyr.h