Commit Graph

  • 5afff2e44e Simplify the logic in tcache_gc_small. Amaury Séchet 2024-05-03 00:31:49 +00:00
  • 8d8379da44 Fix background_thread creation for the oversize_arena. Qi Wang 2024-05-02 12:53:42 -07:00
  • 47d69b4eab HPA: Fix infinite purging loop Dmitry Ilvokhin 2024-04-04 10:02:08 -07:00
  • fa451de17f Fix the tcache flush sanity checking around ncached and nstashed. Qi Wang 2024-04-12 11:08:39 -07:00
  • 630434bb0a Fixed type error with allocated that caused incorrect printing on 32bit debing.sun 2024-01-30 01:38:08 +08:00
  • 4b555c11a5 Enable heap profiling on MacOS Shirui Cheng 2023-12-04 12:07:54 -08:00
  • 11038ff762 Add support for namespace pids in heap profile names Daniel Hodges 2023-12-23 19:40:44 -05:00
  • 83b075789b rallocx path: only set errno on the realloc case. Qi Wang 2024-04-05 11:33:55 -07:00
  • 5081c16bb4 Experimental calloc implementation with using memset on larger sizes Shirui Cheng 2024-04-03 13:27:11 -07:00
  • 38056fea64 Set errno to ENOMEM on rallocx() OOM failures Juhyung Park 2024-03-19 16:46:56 +09:00
  • 268e8ee880 Include HPA ndirty into page allocator ndirty stat Dmitry Ilvokhin 2024-03-25 09:23:03 -07:00
  • b2e59a96e1 Introduce getters for page allocator shard stats Dmitry Ilvokhin 2024-03-25 08:02:49 -07:00
  • 92aa52c062 Reduce nesting in phn_merge_siblings using an early return. Amaury Séchet 2023-10-25 00:36:08 +00:00
  • 10d713151d Ensure that the root of a heap is always the best element. Amaury Séchet 2023-10-25 01:01:22 +00:00
  • 1978e5cdac Update acitons/checkout and actions/upload-artifact to v4 Minsoo Choo 2024-03-09 00:46:31 -05:00
  • ed9b00a96b Replace unsigned induction variable with size_t in background_threads_enable XChy 2024-03-04 14:50:39 +08:00
  • 373884ab48 print out all malloc_conf settings in stats Shirui Cheng 2024-01-30 10:16:28 -08:00
  • 1aba4f41a3 Allow zero sized memalign to pass. Qi Wang 2024-02-13 14:37:21 -08:00
  • 6d181bc1b7 Fix Cirrus CI. Qi Wang 2024-02-15 13:34:05 -08:00
  • f96010b7fa gitignore: Start ignoring clangd dirs. David Goldblatt 2024-01-23 16:21:04 -08:00
  • a2c5267409 HPA: Allow frequent reused alloc to bypass the slab_max_alloc limit, as long as it's within the huge page size. These requests do not concern internal fragmentation with huge pages, since the entire range is expected to be accessed. Qi Wang 2024-01-16 13:07:58 -08:00
  • b1792c80d2 Add LOGs when entrying and exiting free and sdallocx. guangli-dai 2023-12-04 14:34:35 -08:00
  • 05160258df When safety_check_fail, also embed hint msg in the abort function name because there are cases only logging crash stack traces. Qi Wang 2024-01-03 11:59:02 -08:00
  • 3a6296e1ef Disable FreeBSD on Travis CI since it's not working. Qi Wang 2024-01-04 14:16:00 -08:00
  • d284aad027 Test on more FreeBSD versions Minsoo Choo 2023-11-25 09:01:29 -05:00
  • dfb3260b97 Fix missing cleanup message for collected profiles. Connor 2023-12-11 18:25:49 +08:00
  • f6fe6abdcb build: Make autogen.sh accept quoted extra options Honggyu Kim 2023-12-29 10:16:39 +09:00
  • eda05b3994 Fix static analysis warnings. guangli-dai 2023-12-13 15:21:09 -08:00
  • e4817c8d89 Cleanup cache_bin_info_t* info input args Shirui Cheng 2023-10-24 13:51:14 -07:00
  • 3025b021b9 Optimize mutex and bin alignment / locality. Qi Wang 2023-10-23 13:00:10 -07:00
  • e2cd27132a Change stack_size assertion back to the more compatabile one. guangli-dai 2023-10-22 22:23:13 -07:00
  • 756d4df2fd Add util.c into vs project file. guangli-dai 2023-10-18 16:44:36 -07:00
  • 04d1a87b78 Fix a zero-initializer warning on macOS. Qi Wang 2023-10-18 12:13:35 -07:00
  • d88fa71bbd Fix nfill = 0 bug when ncached_max is 1 guangli-dai 2023-10-18 10:40:32 -07:00
  • 6fb3b6a8e4 Refactor the tcache initiailization guangli-dai 2023-10-17 20:17:42 -07:00
  • 8a22d10b83 Allow setting default ncached_max for each bin through malloc_conf guangli-dai 2023-10-11 00:30:52 -07:00
  • 867eedfc58 Fix the bug in dalloc promoted allocations. guangli-dai 2023-10-16 15:31:13 -07:00
  • 630f7de952 Add mallctl to set and get ncached_max of each cache_bin. guangli-dai 2023-09-19 14:37:09 -07:00
  • 6b197fdd46 Pre-generate ncached_max for all bins for better tcache_max tuning experience. guangli-dai 2023-08-22 16:31:54 -07:00
  • 36becb1302 metadata usage breakdowns: tracking edata and rtree usages Shirui Cheng 2023-10-10 09:46:23 -07:00
  • 005f20aa7f Fix comments about malloc_conf to enable logging. Qi Wang 2023-09-27 09:55:12 -07:00
  • 7a9e4c9073 Mark jemalloc.h as system header to resolve header conflicts. guangli-dai 2023-10-02 22:48:22 -07:00
  • 72cfdce718 Allocate tcache stack from base allocator Qi Wang 2023-09-13 21:51:54 -07:00
  • a442d9b895 Enable per-tcache tcache_max guangli-dai 2023-08-06 11:38:30 -07:00
  • fbca96c433 Remove unnecessary parameters for cache_bin_postincrement. guangli-dai 2023-08-20 23:28:38 -07:00
  • 7d9eceaf38 Fix array bounds false warning in gcc 12.3.0 Evers Chen 2023-08-20 08:11:35 +00:00
  • ce8ce99a4a Expose jemalloc_prefix via pkg-config BtbN 2023-08-20 16:38:09 +02:00
  • ed7e6fe71a Expose private library dependencies via pkg-config BtbN 2023-08-20 16:21:56 +02:00
  • 7d563a8f81 Update safety check message to remove --enable-debug when it's already on. Qi Wang 2023-08-30 10:15:30 -07:00
  • b71da25b8a Fix reading CPU id using rdtscp. Qi Wang 2023-08-28 10:21:11 -07:00
  • 87c56c8df8 Fix arenas.i.bins.j.mutex link id in manual. Qi Wang 2023-08-25 11:34:24 -07:00
  • da66aa391f Enable a few additional warnings for CI and fix the issues they uncovered Kevin Svetlitski 2023-08-10 16:31:35 -07:00
  • d2c9ed3d1e Ensure short read(2)s/write(2)s are properly handled by IO utilities Kevin Svetlitski 2023-08-10 10:43:42 -07:00
  • 254c4847e8 Print colorful reminder for failed tests. guangli-dai 2023-08-05 13:40:23 -07:00
  • 4f50f782fa Use compiler-provided assume builtins when available Kevin Svetlitski 2023-07-27 11:49:07 -07:00
  • 3aae792b10 Fix infinite purging loop in HPA Kevin Svetlitski 2023-07-17 15:22:26 -07:00
  • 424dd61d57 Issue a warning upon directly accessing an arena's bins Kevin Svetlitski 2023-08-04 11:43:59 -07:00
  • 120abd703a Add support for the deprecated attribute Kevin Svetlitski 2023-08-03 15:05:10 -07:00
  • 162ff8365d Update the Ubuntu version used by Travis CI Kevin Svetlitski 2023-08-04 14:22:35 -07:00
  • 07a2eab3ed Stop over-reporting memory usage from sampled small allocations Kevin Svetlitski 2023-07-19 12:30:12 -07:00
  • ea5b7bea31 Add configuration option controlling DSS support Kevin Svetlitski 2023-07-06 12:49:10 -07:00
  • 6816b23862 Include the unrecognized malloc conf option in the error message. Qi Wang 2023-08-01 14:28:24 -07:00
  • 62648c88e5 Ensured sampled allocations are properly deallocated during arena_reset Kevin Svetlitski 2023-07-26 12:25:59 -07:00
  • b01d496646 Add an override for the compile-time malloc_conf to jemalloc_internal_overrides.h Kevin Svetlitski 2023-07-28 11:54:27 -07:00
  • 9ba1e1cb37 Make ctl_arena_clear slightly more efficient Kevin Svetlitski 2023-07-25 12:14:35 -07:00
  • 8ff7e7d6c3 Remove errant #includes in public jemalloc.h header Kevin Svetlitski 2023-07-25 10:42:10 -07:00
  • 3e82f357bb Fix all optimization-inhibiting integer-to-pointer casts Kevin Svetlitski 2023-07-24 10:33:36 -07:00
  • 4827bb17bd Remove vestigial TCACHE_STATE_* macros Kevin Svetlitski 2023-07-24 10:38:42 -07:00
  • 1431153695 Define SBRK_INVALID instead of using a magic number Kevin Svetlitski 2023-07-24 10:36:32 -07:00
  • 7e54dd1ddb Define PROF_TCTX_SENTINEL instead of using magic numbers Kevin Svetlitski 2023-07-21 18:13:58 -07:00
  • c49c17f128 Suppress verbose frame address warnings Kevin Svetlitski 2023-07-20 11:30:59 -07:00
  • cdb2c0e02f Implement C23's free_sized and free_aligned_sized Kevin Svetlitski 2023-07-14 13:14:06 -07:00
  • 41e0b857be Make headers self-contained by fixing #includes Kevin Svetlitski 2023-06-09 17:37:47 -07:00
  • 856db56f6e Move tsd implementation details into tsd_internals.h Kevin Svetlitski 2023-06-12 16:05:18 -07:00
  • 36ca0c1b7d Stop concealing pointer provenance in phn_link_get Kevin Svetlitski 2023-07-12 09:57:46 -07:00
  • 314c073a38 Print the failed assertion before aborting in test cases Kevin Svetlitski 2023-07-10 14:25:53 -07:00
  • 65d3b5989b Print test error messages in color when stderr is a terminal Kevin Svetlitski 2023-06-08 12:56:16 -07:00
  • 1d9e9c2ed6 Fix inconsistent parameter names between definition/declaration pairs Kevin Svetlitski 2023-07-06 16:27:56 -07:00
  • 5711dc31d8 Only enable -Wstrict-prototypes in CI to unbreak feature detection Kevin Svetlitski 2023-07-06 16:51:51 -07:00
  • 589c63b424 Make eligible global variables static and/or const Kevin Svetlitski 2023-05-18 10:22:58 -07:00
  • e249d1a2a1 Remove unreachable code. Qi Wang 2023-07-05 14:02:14 -07:00
  • 602edd7566 Enabled -Wstrict-prototypes and fixed warnings. Qi Wang 2023-07-05 13:33:34 -07:00
  • ebd7e99f5c Add a test-case for small profiled allocations Kevin Svetlitski 2023-06-12 14:13:17 -07:00
  • 5a858c64d6 Reduce the memory overhead of sampled small allocations Kevin Svetlitski 2023-06-02 15:15:37 -07:00
  • e1338703ef Address compiler warnings in the unit tests Kevin Svetlitski 2023-07-03 14:45:28 -07:00
  • d131331310 Avoid eager purging on the dedicated oversize arena when using bg thds. Qi Wang 2023-06-23 14:13:26 -07:00
  • 46e464a26b Fix downloading LLVM in GitHub Action Kevin Svetlitski 2023-06-23 13:30:16 -07:00
  • f2e00d2fd3 Remove trailing whitespace Kevin Svetlitski 2023-04-28 12:29:49 -07:00
  • 05385191d4 Add GitHub action which runs static analysis Kevin Svetlitski 2023-05-17 17:00:10 -07:00
  • bb0333e745 Fix remaining static analysis warnings Kevin Svetlitski 2023-05-12 13:17:52 -07:00
  • 210f0d0b2b Fix read of uninitialized data in prof_free Kevin Svetlitski 2023-06-15 14:47:20 -07:00
  • 90176f8a87 Fix segfault in rb *_tree_remove Kevin Svetlitski 2023-05-09 12:06:47 -07:00
  • 86eb49b478 Fix the arena selection for oversized allocations. Qi Wang 2023-06-06 13:37:07 -07:00
  • 5832ef6589 Use a local variable to set the alignment for this particular allocation instead of changing mmap_flags which makes the change permanent. This was enforcing large alignments for allocations that did not need it causing fragmentation. Reported by Andreas Gustafsson. Christos Zoulas 2023-05-31 13:00:35 -04:00
  • 6d4aa33753 Extract the calculation of psset heap assignment for an hpdata into a common function Kevin Svetlitski 2023-05-27 14:21:11 -07:00
  • c1d3ad4674 Prune je_malloc_default and do_rallocx in jeprof Arne Welzel 2023-05-24 21:07:49 +02:00
  • d59e30cbc9 Rename fallback_impl to fallbackNewImpl and prune in jeprof Arne Welzel 2023-05-24 14:13:28 +02:00
  • d577e9b588 Explicitly cast to unsigned for MALLOCX_ARENA and _TCACHE defines. Qi Wang 2023-05-17 11:54:56 -07:00
  • a2259f9fa6 Fix the include path of "jemalloc_internal_overrides.h". Qi Wang 2023-05-25 14:22:37 -07:00
  • 9c32689e57 Fix bug where hpa_shard was not being destroyed Kevin Svetlitski 2023-05-18 10:13:59 -07:00