numam-dpdk/lib/eal/common
Fidaullah Noonari f92b9ebed0 malloc: fix storage size for some allocations
The amount of memory to allocate from the system for heap expansion
was calculated in a way that may yield one page more than needed.
This could hit the allocation limit from the system or EAL.
The allocation would fail despite enough memory being available.

In response to mail:
https://inbox.dpdk.org/dev/CAEYuUWCnRZNwxiOHEeTHw0Gy9aFJRLZtvAG9g=smuUvUEMcFXg@mail.gmail.com/

A reproducer has been provided by Dmitry, see:
https://inbox.dpdk.org/dev/20220922015212.03bfde66@sovereign/

Fixes: 07dcbfe010 ("malloc: support multiprocess memory hotplug")
Cc: stable@dpdk.org

Signed-off-by: Fidaullah Noonari <fidaullah.noonari@emumba.com>
Acked-by: Dmitry Kozlyuk <dmitry.kozliuk@gmail.com>
2022-09-26 11:40:20 +02:00
..
eal_common_bus.c bus: hide bus object 2022-09-23 16:14:34 +02:00
eal_common_class.c
eal_common_config.c eal: remove unneeded header includes 2022-06-21 16:46:56 +02:00
eal_common_cpuflags.c
eal_common_debug.c eal: remove unneeded includes from a public header 2022-09-21 15:31:03 +02:00
eal_common_dev.c dev: provide bus specific information 2022-09-23 16:14:34 +02:00
eal_common_devargs.c bus: hide bus object 2022-09-23 16:14:34 +02:00
eal_common_dynmem.c eal: remove unneeded includes from a public header 2022-09-21 15:31:03 +02:00
eal_common_errno.c lib: remove unneeded header includes 2022-02-22 13:10:39 +01:00
eal_common_fbarray.c lib: remove unneeded header includes 2022-02-22 13:10:39 +01:00
eal_common_hexdump.c lib: remove unneeded header includes 2022-02-22 13:10:39 +01:00
eal_common_hypervisor.c
eal_common_interrupts.c interrupts: extend event list 2021-10-25 21:20:12 +02:00
eal_common_launch.c eal: remove unneeded header includes 2022-06-21 16:46:56 +02:00
eal_common_lcore.c eal: remove unneeded includes from a public header 2022-09-21 15:31:03 +02:00
eal_common_log.c eal: remove unneeded header includes 2022-06-21 16:46:56 +02:00
eal_common_mcfg.c mem: use WFE for init sync on aarch64 2021-10-20 08:22:18 +02:00
eal_common_memalloc.c eal: remove unneeded includes from a public header 2022-09-21 15:31:03 +02:00
eal_common_memory.c lib: remove unneeded header includes 2022-02-22 13:10:39 +01:00
eal_common_memzone.c lib: remove unneeded header includes 2022-02-22 13:10:39 +01:00
eal_common_options.c eal: export coremask parsing helper 2022-09-23 12:07:49 +02:00
eal_common_proc.c lib: remove unneeded header includes 2022-02-22 13:10:39 +01:00
eal_common_string_fns.c eal: remove unneeded includes from a public header 2022-09-21 15:31:03 +02:00
eal_common_tailqs.c lib: remove unneeded header includes 2022-02-22 13:10:39 +01:00
eal_common_thread.c eal: factorize lcore main loop 2022-04-14 13:59:50 +02:00
eal_common_timer.c lib: remove unneeded header includes 2022-02-22 13:10:39 +01:00
eal_common_trace_ctf.c eal: remove unneeded includes from a public header 2022-09-21 15:31:03 +02:00
eal_common_trace_points.c
eal_common_trace_utils.c trace: fix init with long file prefix 2022-06-21 11:11:00 +02:00
eal_common_trace.c eal: remove unneeded includes from a public header 2022-09-21 15:31:03 +02:00
eal_common_uuid.c
eal_filesystem.h
eal_firmware.h eal: handle compressed firmware 2021-07-07 16:41:53 +02:00
eal_hugepages.h
eal_internal_cfg.h eal/linux: allocate worker lcore stacks in hugepages 2022-06-23 22:36:33 +02:00
eal_interrupts.h interrupts: extend event list 2021-10-25 21:20:12 +02:00
eal_log.h
eal_memalloc.h
eal_memcfg.h
eal_options.h eal/linux: allocate worker lcore stacks in hugepages 2022-06-23 22:36:33 +02:00
eal_private.h dev: hide device object 2022-09-23 16:14:34 +02:00
eal_thread.h bus: move IOVA definition from header 2022-09-23 16:14:34 +02:00
eal_trace.h
hotplug_mp.c bus: hide bus object 2022-09-23 16:14:34 +02:00
hotplug_mp.h lib: remove unneeded header includes 2022-02-22 13:10:39 +01:00
malloc_elem.c lib: remove unneeded header includes 2022-02-22 13:10:39 +01:00
malloc_elem.h test/mem: disable ASan when accessing unallocated memory 2022-05-11 14:05:30 +02:00
malloc_heap.c malloc: fix storage size for some allocations 2022-09-26 11:40:20 +02:00
malloc_heap.h mem: cleanup multiprocess resources 2022-02-11 19:49:22 +01:00
malloc_mp.c malloc: fix storage size for some allocations 2022-09-26 11:40:20 +02:00
malloc_mp.h lib: remove unneeded header includes 2022-02-22 13:10:39 +01:00
meson.build interrupts: add allocator and accessors 2021-10-25 21:20:12 +02:00
rte_keepalive.c
rte_malloc.c lib: remove unneeded header includes 2022-02-22 13:10:39 +01:00
rte_random.c eal: provide pseudo-random floating point number 2022-06-22 10:59:09 +02:00
rte_reciprocal.c
rte_service.c service: fix lingering active status 2022-07-05 16:24:43 +02:00
rte_version.c