Gitiles
Code Review
Sign In
git01.mediatek.com
/
haproxy
/
29ffe267337b2a1818a714decd9da800c12823dc
/
src
/
pool.c
cb086c6
REORG: stconn: rename conn_stream.{c,h} to stconn.{c,h}
by Willy Tarreau
· Fri May 27 09:47:12 2022 +0200
5edca2f
REORG: rename cs_utils.h to sc_strm.h
by Willy Tarreau
· Fri May 27 09:25:10 2022 +0200
d0a06d5
CLEANUP: applet: use applet_put*() everywhere possible
by Willy Tarreau
· Wed May 18 15:07:19 2022 +0200
4596fe2
CLEANUP: conn_stream: tree-wide rename to stconn (stream connector)
by Willy Tarreau
· Tue May 17 19:07:51 2022 +0200
0698c80
CLEANUP: applet: remove the unneeded appctx->owner
by Willy Tarreau
· Wed May 11 14:09:57 2022 +0200
243e68b
BUG/MINOR: pools: make sure to also destroy shared pools in pool_destroy_all()
by Willy Tarreau
· Wed Apr 27 11:33:13 2022 +0200
6b0a0fb
CLEANUP: tree-wide: Remove any ref to stream-interfaces
by Christopher Faulet
· Mon Apr 04 11:29:28 2022 +0200
a0bdec3
MEDIUM: stream-int/conn-stream: Move blocking flags from SI to CS
by Christopher Faulet
· Mon Apr 04 07:51:21 2022 +0200
908628c
MEDIUM: tree-wide: Use CS util functions instead of SI ones
by Christopher Faulet
· Fri Mar 25 16:43:49 2022 +0100
c4e56dc
MINOR: pools: add a new global option "no-memory-trimming"
by Willy Tarreau
· Tue Mar 08 10:41:40 2022 +0100
f9eba78
BUG/MEDIUM: pools: fix ha_free() on area in the process of being freed
by Willy Tarreau
· Thu Mar 03 18:31:54 2022 +0100
e81248c
BUG/MINOR: pool: always align pool_heads to 64 bytes
by Willy Tarreau
· Wed Mar 02 17:59:04 2022 +0100
86e1c33
MEDIUM: applet: Set the conn-stream as appctx owner instead of the stream-int
by Christopher Faulet
· Mon Dec 20 17:09:39 2021 +0100
f4b79c4
MINOR: pools: support setting debugging options using -dM
by Willy Tarreau
· Wed Feb 23 15:20:53 2022 +0100
1408b1f
MINOR: pools: delegate parsing of command line option -dM to a new function
by Willy Tarreau
· Fri Feb 18 18:54:40 2022 +0100
ef301b7
MINOR: pools: add a debugging flag for memory poisonning option
by Willy Tarreau
· Wed Feb 23 14:15:18 2022 +0100
13d7775
MINOR: pools: replace DEBUG_MEMORY_POOLS with runtime POOL_DBG_TAG
by Willy Tarreau
· Wed Feb 23 10:20:37 2022 +0100
0271822
MINOR: pools: replace DEBUG_POOL_TRACING with runtime POOL_DBG_CALLER
by Willy Tarreau
· Wed Feb 23 10:10:33 2022 +0100
42705d0
MINOR: pools: get rid of POOL_EXTRA
by Willy Tarreau
· Wed Feb 23 10:03:11 2022 +0100
96d5bc7
MINOR: pools: store the allocated size for each pool
by Willy Tarreau
· Wed Feb 23 08:57:59 2022 +0100
e981631
MEDIUM: pools: replace CONFIG_HAP_POOLS with a runtime "NO_CACHE" flag.
by Willy Tarreau
· Tue Feb 22 16:23:09 2022 +0100
dff3b06
MINOR: pools: make the global pools a runtime option.
by Willy Tarreau
· Tue Feb 22 09:21:13 2022 +0100
6f3c7f6
MINOR: pools: add a new debugging flag POOL_DBG_INTEGRITY
by Willy Tarreau
· Mon Feb 21 18:42:53 2022 +0100
d3470e1
MINOR: pools: add a new debugging flag POOL_DBG_COLD_FIRST
by Willy Tarreau
· Mon Feb 21 18:30:25 2022 +0100
fd8b737
MINOR: pools: switch DEBUG_DONT_SHARE_POOLS to runtime
by Willy Tarreau
· Mon Feb 21 17:31:50 2022 +0100
8d0273e
MINOR: pools: switch the fail-alloc test to runtime only
by Willy Tarreau
· Mon Feb 21 17:16:22 2022 +0100
605629b
MINOR: pools: introduce a new pool_debugging global variable
by Willy Tarreau
· Fri Feb 18 18:35:59 2022 +0100
af580f6
MINOR: pools: disable redundant poisonning on pool_free()
by Willy Tarreau
· Wed Feb 23 11:45:09 2022 +0100
9f69995
MINOR: pools: mark most static pool configuration variables as read-mostly
by Willy Tarreau
· Fri Feb 18 18:31:53 2022 +0100
27c8da1
DEBUG: pools: replace the link pointer with the caller's address on pool_free()
by Willy Tarreau
· Wed Feb 09 16:49:16 2022 +0100
49bb5d4
DEBUG: pools: let's add reverse mapping from cache heads to thread and pool
by Willy Tarreau
· Wed Feb 09 16:33:22 2022 +0100
e2830ad
DEBUG: pools: add extra sanity checks when picking objects from a local cache
by Willy Tarreau
· Wed Feb 09 16:23:55 2022 +0100
ceabc5c
CLEANUP: pools: don't needlessly set a call mark during refilling of caches
by Willy Tarreau
· Mon Feb 14 09:26:59 2022 +0100
c895c44
BUG/MINOR: pools: always flush pools about to be destroyed
by Willy Tarreau
· Wed Feb 09 16:19:24 2022 +0100
b5ba09e
BUG/MEDIUM: pools: ensure items are always large enough for the pool_cache_item
by Willy Tarreau
· Mon Feb 07 10:32:00 2022 +0100
f70fdde
BUILD: pools: fix build error on DEBUG_POOL_TRACING
by Willy Tarreau
· Tue Jan 25 15:56:50 2022 +0100
add43fa
DEBUG: pools: add new build option DEBUG_POOL_TRACING
by Willy Tarreau
· Mon Jan 24 15:52:51 2022 +0100
0e2a5b4
MINOR: pools: extend pool_cache API to pass a pointer to a caller
by Willy Tarreau
· Mon Jan 24 15:51:50 2022 +0100
d392973
MINOR: pools: partially uninline pool_alloc()
by Willy Tarreau
· Mon Jan 24 16:09:29 2022 +0100
15c322c
MINOR: pools: partially uninline pool_free()
by Willy Tarreau
· Mon Jan 24 11:51:43 2022 +0100
0575d8f
DEBUG: pools: add new build option DEBUG_POOL_INTEGRITY
by Willy Tarreau
· Fri Jan 21 19:00:25 2022 +0100
1513c54
MEDIUM: pools: release cached objects in batches
by Willy Tarreau
· Sun Jan 02 17:53:02 2022 +0100
43937e9
MEDIUM: pools: start to batch eviction from local caches
by Willy Tarreau
· Sun Jan 02 17:24:55 2022 +0100
a0b5831
MEDIUM: pools: centralize cache eviction in a common function
by Willy Tarreau
· Sun Jan 02 17:19:14 2022 +0100
337410c
MINOR: pools: pass the objects count to pool_put_to_shared_cache()
by Willy Tarreau
· Sun Jan 02 15:15:54 2022 +0100
148160b
MINOR: pools: prepare pool_item to support chained clusters
by Willy Tarreau
· Sun Jan 02 14:35:57 2022 +0100
361e31e
MEDIUM: pool: compute the number of evictable entries once per pool
by Willy Tarreau
· Sun Jan 02 00:27:06 2022 +0100
c16ed3b
MINOR: pool: introduce pool_item to represent shared pool items
by Willy Tarreau
· Sat Jan 01 18:22:20 2022 +0100
b46674a
MINOR: pool: check for pool's fullness outside of pool_put_to_shared_cache()
by Willy Tarreau
· Thu Dec 30 17:37:33 2021 +0100
afe2c4a
MINOR: pool: allocate from the shared cache through the local caches
by Willy Tarreau
· Thu Dec 30 17:09:31 2021 +0100
8c49270
CLEANUP: pools: get rid of the POOL_LINK macro
by Willy Tarreau
· Sat Jan 01 17:10:50 2022 +0100
799f614
CLEANUP: pools: do not use the extra pointer to link shared elements
by Willy Tarreau
· Fri Dec 31 16:00:19 2021 +0100
d5ec100
MINOR: pools: always evict oldest objects first in pool_evict_from_local_cache()
by Willy Tarreau
· Sun Jan 02 12:40:14 2022 +0100
0d93a81
MINOR: pools: work around possibly slow malloc_trim() during gc
by Willy Tarreau
· Thu Dec 23 09:26:30 2021 +0100
b1e190a
MEDIUM: pool: Following up on previous pool trimming update.
by David CARLIER
· Fri Nov 26 20:44:44 2021 +0000
781f07a
BUILD: pools: only detect link-time jemalloc on ELF platforms
by Willy Tarreau
· Fri Nov 26 15:55:55 2021 +0100
d450ff6
MEDIUM: pool: support purging jemalloc arenas in trim_all_pools()
by David Carlier
· Thu Nov 25 16:14:38 2021 +0000
ed23214
MEDIUM: pool: refactor malloc_trim/glibc and jemalloc api addition detections.
by David Carlier
· Thu Nov 25 16:09:45 2021 +0000
fdf53b4
BUG/MINOR: pools: don't mark ourselves as harmless in DEBUG_UAF mode
by Willy Tarreau
· Fri Nov 12 10:26:18 2021 +0100
b4e3476
REORG: thread/sched: move the last dynamic thread_info to thread_ctx
by Willy Tarreau
· Thu Sep 30 19:02:18 2021 +0200
1b4a714
MINOR: pools: report the amount used by thread caches in "show pools"
by Willy Tarreau
· Thu Oct 07 16:29:31 2021 +0200
f14d190
REORG: pools: uninline the UAF allocator and force-inline the rest
by Willy Tarreau
· Tue Oct 05 18:14:11 2021 +0200
5d9ddc5
BUILD: tree-wide: add several missing activity.h
by Willy Tarreau
· Wed Oct 06 19:54:09 2021 +0200
c2afb86
MINOR: pools: use mallinfo2() when available instead of mallinfo()
by Willy Tarreau
· Thu Sep 16 09:18:21 2021 +0200
845b560
MINOR: pools: report it when malloc_trim() is enabled
by Willy Tarreau
· Wed Sep 15 10:41:24 2021 +0200
157e393
MINOR: pools: automatically disable malloc_trim() with external allocators
by Willy Tarreau
· Wed Sep 15 10:05:48 2021 +0200
ea3323f
CLEANUP: pools: factor all malloc_trim() calls into trim_all_pools()
by Willy Tarreau
· Wed Sep 15 10:38:21 2021 +0200
8715dec
MEDIUM: pools: remove the locked pools implementation
by Willy Tarreau
· Thu Jun 10 17:31:48 2021 +0200
2a4523f
BUG/MAJOR: pools: fix possible race with free() in the lockless variant
by Willy Tarreau
· Wed Jun 09 18:59:58 2021 +0200
9b3ed51
MEDIUM: pools: use a single pool_gc() function for locked and lockless
by Willy Tarreau
· Thu Jun 10 10:21:35 2021 +0200
26ed183
MINOR: pools: call malloc_trim() under thread isolation
by Willy Tarreau
· Thu Jun 10 08:40:16 2021 +0200
c889143
MINOR: pools: do not maintain the lock during pool_flush()
by Willy Tarreau
· Thu Jun 10 07:13:04 2021 +0200
9a7aa3b
BUG/MINOR: pools: make DEBUG_UAF always write to the to-be-freed location
by Willy Tarreau
· Thu Jun 10 17:20:19 2021 +0200
c239cde
BUG/MINOR: pools: fix a possible memory leak in the lockless pool_flush()
by Willy Tarreau
· Thu Jun 10 06:54:22 2021 +0200
b205bfd
CLEANUP: cli/tree-wide: properly re-align the CLI commands' help messages
by Willy Tarreau
· Fri May 07 11:38:37 2021 +0200
1ab6c0b
MINOR: pools/debug: slightly relax DEBUG_DONT_SHARE_POOLS
by Willy Tarreau
· Wed May 05 07:29:01 2021 +0200
2b71810
CLEANUP: lists/tree-wide: rename some list operations to avoid some confusion
by Willy Tarreau
· Wed Apr 21 07:32:39 2021 +0200
942b89f
BUILD: pools: fix build with DEBUG_FAIL_ALLOC
by Willy Tarreau
· Mon Apr 19 18:36:48 2021 +0200
b2a853d
CLEANUP: pools: uninline pool_put_to_cache()
by Willy Tarreau
· Mon Apr 19 11:49:26 2021 +0200
fa19d20
MEDIUM: pools: make pool_put_to_cache() always call pool_put_to_local_cache()
by Willy Tarreau
· Mon Apr 19 08:50:45 2021 +0200
8721203
MINOR: pools: evict excess objects using pool_evict_from_local_cache()
by Willy Tarreau
· Mon Apr 19 08:14:03 2021 +0200
b8498e9
MEDIUM: pools: make CONFIG_HAP_POOLS control both local and shared pools
by Willy Tarreau
· Sun Apr 18 10:23:02 2021 +0200
45e4e28
MINOR: pools: factor the release code into pool_put_to_os()
by Willy Tarreau
· Sat Apr 17 17:48:40 2021 +0200
2b5579f
MINOR: pools: always use atomic ops to maintain counters
by Willy Tarreau
· Sat Apr 17 18:06:57 2021 +0200
1384364
MINOR: pools: split the OS-based allocator in two
by Willy Tarreau
· Sat Apr 17 16:57:25 2021 +0200
207c095
MINOR: pools: move the fault injector to __pool_alloc()
by Willy Tarreau
· Sat Apr 17 16:00:08 2021 +0200
20f88ab
MINOR: pools: use cheaper randoms for fault injections
by Willy Tarreau
· Sat Apr 17 15:50:28 2021 +0200
635cced
CLEANUP: pools: rename __pool_free() to pool_put_to_shared_cache()
by Willy Tarreau
· Sat Apr 17 14:11:39 2021 +0200
8c77ee5
CLEANUP: pools: rename pool_*_{from,to}_cache() to *_local_cache()
by Willy Tarreau
· Thu Apr 15 20:12:48 2021 +0200
8fe726f
CLEANUP: pools: re-merge pool_refill_alloc() and __pool_refill_alloc()
by Willy Tarreau
· Thu Apr 15 18:20:12 2021 +0200
eb3cc29
MEDIUM: pools: unify pool_refill_alloc() across all models
by Willy Tarreau
· Thu Apr 15 18:13:13 2021 +0200
64383b8
MINOR: pools: make the basic pool_refill_alloc()/pool_free() update needed_avg
by Willy Tarreau
· Thu Apr 15 17:23:15 2021 +0200
53a7fe4
MINOR: pools: enable the fault injector in all allocation modes
by Willy Tarreau
· Thu Apr 15 16:43:18 2021 +0200
2d6f628
MINOR: pools: rename CONFIG_HAP_LOCAL_POOLS to CONFIG_HAP_POOLS
by Willy Tarreau
· Thu Apr 15 16:24:00 2021 +0200
d5140e7
MINOR: pool: remove the size field from pool_cache_head
by Willy Tarreau
· Sat Apr 17 14:05:10 2021 +0200
9f3129e
MEDIUM: pools: move the cache into the pool header
by Willy Tarreau
· Sat Apr 17 00:31:38 2021 +0200
3e970b1
MINOR: pools: drop the unused static history of artificially failed allocs
by Willy Tarreau
· Thu Apr 15 16:36:07 2021 +0200
932dd19
BUG/MINOR: pools: maintain consistent ->allocated count on alloc failures
by Willy Tarreau
· Thu Apr 15 17:31:19 2021 +0200
4781b15
CLEANUP: atomic/tree-wide: replace single increments/decrements with inc/dec
by Willy Tarreau
· Tue Apr 06 13:53:36 2021 +0200
3b1c9a3
CLEANUP: mark defproxy as const on parse tune.fail-alloc
by Amaury Denoyelle
· Mon Mar 22 11:21:36 2021 +0100
Next »