head 1.5; access; symbols pkgsrc-2026Q1:1.4.0.28 pkgsrc-2026Q1-base:1.4 pkgsrc-2025Q4:1.4.0.26 pkgsrc-2025Q4-base:1.4 pkgsrc-2025Q3:1.4.0.24 pkgsrc-2025Q3-base:1.4 pkgsrc-2025Q2:1.4.0.22 pkgsrc-2025Q2-base:1.4 pkgsrc-2025Q1:1.4.0.20 pkgsrc-2025Q1-base:1.4 pkgsrc-2024Q4:1.4.0.18 pkgsrc-2024Q4-base:1.4 pkgsrc-2024Q3:1.4.0.16 pkgsrc-2024Q3-base:1.4 pkgsrc-2024Q2:1.4.0.14 pkgsrc-2024Q2-base:1.4 pkgsrc-2024Q1:1.4.0.12 pkgsrc-2024Q1-base:1.4 pkgsrc-2023Q4:1.4.0.10 pkgsrc-2023Q4-base:1.4 pkgsrc-2023Q3:1.4.0.8 pkgsrc-2023Q3-base:1.4 pkgsrc-2023Q2:1.4.0.6 pkgsrc-2023Q2-base:1.4 pkgsrc-2023Q1:1.4.0.4 pkgsrc-2023Q1-base:1.4 pkgsrc-2022Q4:1.4.0.2 pkgsrc-2022Q4-base:1.4 pkgsrc-2022Q3:1.2.0.48 pkgsrc-2022Q3-base:1.2 pkgsrc-2022Q2:1.2.0.46 pkgsrc-2022Q2-base:1.2 pkgsrc-2022Q1:1.2.0.44 pkgsrc-2022Q1-base:1.2 pkgsrc-2021Q4:1.2.0.42 pkgsrc-2021Q4-base:1.2 pkgsrc-2021Q3:1.2.0.40 pkgsrc-2021Q3-base:1.2 pkgsrc-2021Q2:1.2.0.38 pkgsrc-2021Q2-base:1.2 pkgsrc-2021Q1:1.2.0.36 pkgsrc-2021Q1-base:1.2 pkgsrc-2020Q4:1.2.0.34 pkgsrc-2020Q4-base:1.2 pkgsrc-2020Q3:1.2.0.32 pkgsrc-2020Q3-base:1.2 pkgsrc-2020Q2:1.2.0.28 pkgsrc-2020Q2-base:1.2 pkgsrc-2020Q1:1.2.0.8 pkgsrc-2020Q1-base:1.2 pkgsrc-2019Q4:1.2.0.30 pkgsrc-2019Q4-base:1.2 pkgsrc-2019Q3:1.2.0.26 pkgsrc-2019Q3-base:1.2 pkgsrc-2019Q2:1.2.0.24 pkgsrc-2019Q2-base:1.2 pkgsrc-2019Q1:1.2.0.22 pkgsrc-2019Q1-base:1.2 pkgsrc-2018Q4:1.2.0.20 pkgsrc-2018Q4-base:1.2 pkgsrc-2018Q3:1.2.0.18 pkgsrc-2018Q3-base:1.2 pkgsrc-2018Q2:1.2.0.16 pkgsrc-2018Q2-base:1.2 pkgsrc-2018Q1:1.2.0.14 pkgsrc-2018Q1-base:1.2 pkgsrc-2017Q4:1.2.0.12 pkgsrc-2017Q4-base:1.2 pkgsrc-2017Q3:1.2.0.10 pkgsrc-2017Q3-base:1.2 pkgsrc-2017Q2:1.2.0.6 pkgsrc-2017Q2-base:1.2 pkgsrc-2017Q1:1.2.0.4 pkgsrc-2017Q1-base:1.2 pkgsrc-2016Q4:1.2.0.2 pkgsrc-2016Q4-base:1.2 pkgsrc-2016Q3:1.1.0.6 pkgsrc-2016Q3-base:1.1 pkgsrc-2016Q2:1.1.0.4 pkgsrc-2016Q2-base:1.1 pkgsrc-2016Q1:1.1.0.2 pkgsrc-2016Q1-base:1.1; locks; strict; comment @# @; 1.5 date 2026.04.14.12.49.12; author adam; state dead; branches; next 1.4; commitid 4dcIKm8Go8oMtVBG; 1.4 date 2022.09.26.20.32.19; author wiz; state Exp; branches; next 1.3; commitid voqW6m1JA0rrHpVD; 1.3 date 2022.09.26.18.02.21; author wiz; state Exp; branches; next 1.2; commitid POkvJh0UCSGHRoVD; 1.2 date 2016.12.13.21.52.22; author maya; state Exp; branches; next 1.1; commitid BZtTHCEUGdAr3Sxz; 1.1 date 2016.02.18.15.51.59; author gson; state Exp; branches; next ; commitid zdwLuIlxhax9GpVy; desc @@ 1.5 log @jemalloc: updated to 5.3.1 5.3.1 (Apr 13, 2026) This release includes over 390 commits spanning bug fixes, new features, performance optimizations, and portability improvements. Multiple percent of system-level metric improvements were measured in tested production workloads. The release has gone through large-scale production testing at Meta. @ text @$NetBSD: patch-Makefile.in,v 1.4 2022/09/26 20:32:19 wiz Exp $ Fix permissions of installed static libraries. install(1) on NetBSD does not support -v. https://github.com/jemalloc/jemalloc/commit/df7ad8a9b6121c5c4b15bad5606b51bf734416a6 --- Makefile.in.orig 2022-05-06 18:29:14.000000000 +0000 +++ Makefile.in @@@@ -555,18 +555,18 @@@@ endif install_bin: $(INSTALL) -d $(BINDIR) @@for b in $(BINS); do \ - $(INSTALL) -v -m 755 $$b $(BINDIR); \ + $(INSTALL) -m 755 $$b $(BINDIR); \ done install_include: $(INSTALL) -d $(INCLUDEDIR)/jemalloc @@for h in $(C_HDRS); do \ - $(INSTALL) -v -m 644 $$h $(INCLUDEDIR)/jemalloc; \ + $(INSTALL) -m 644 $$h $(INCLUDEDIR)/jemalloc; \ done install_lib_shared: $(DSOS) $(INSTALL) -d $(LIBDIR) - $(INSTALL) -v -m 755 $(objroot)lib/$(LIBJEMALLOC).$(SOREV) $(LIBDIR) + $(INSTALL) -m 644 $(objroot)lib/$(LIBJEMALLOC).$(SOREV) $(LIBDIR) ifneq ($(SOREV),$(SO)) ln -sf $(LIBJEMALLOC).$(SOREV) $(LIBDIR)/$(LIBJEMALLOC).$(SO) endif @@@@ -574,13 +574,13 @@@@ endif install_lib_static: $(STATIC_LIBS) $(INSTALL) -d $(LIBDIR) @@for l in $(STATIC_LIBS); do \ - $(INSTALL) -v -m 755 $$l $(LIBDIR); \ + $(INSTALL) -m 755 $$l $(LIBDIR); \ done install_lib_pc: $(PC) $(INSTALL) -d $(LIBDIR)/pkgconfig @@for l in $(PC); do \ - $(INSTALL) -v -m 644 $$l $(LIBDIR)/pkgconfig; \ + $(INSTALL) -m 644 $$l $(LIBDIR)/pkgconfig; \ done ifeq ($(enable_shared), 1) @@@@ -594,13 +594,13 @@@@ install_lib: install_lib_pc install_doc_html: build_doc_html $(INSTALL) -d $(DATADIR)/doc/jemalloc$(install_suffix) @@for d in $(DOCS_HTML); do \ - $(INSTALL) -v -m 644 $$d $(DATADIR)/doc/jemalloc$(install_suffix); \ + $(INSTALL) -m 644 $$d $(DATADIR)/doc/jemalloc$(install_suffix); \ done install_doc_man: build_doc_man $(INSTALL) -d $(MANDIR)/man3 @@for d in $(DOCS_MAN3); do \ - $(INSTALL) -v -m 644 $$d $(MANDIR)/man3; \ + $(INSTALL) -m 644 $$d $(MANDIR)/man3; \ done install_doc: install_doc_html install_doc_man @ 1.4 log @jemalloc: refer to upstream commit in patch @ text @d1 1 a1 1 $NetBSD: patch-Makefile.in,v 1.3 2022/09/26 18:02:21 wiz Exp $ @ 1.3 log @jemalloc: update to 5.3.0. * 5.3.0 (May 6, 2022) This release contains many speed and space optimizations, from micro optimizations on common paths to rework of internal data structures and locking schemes, and many more too detailed to list below. Multiple percent of system level metric improvements were measured in tested production workloads. The release has gone through large-scale production testing. New features: - Add the thread.idle mallctl which hints that the calling thread will be idle for a nontrivial period of time. (@@davidtgoldblatt) - Allow small size classes to be the maximum size class to cache in the thread-specific cache, through the opt.[lg_]tcache_max option. (@@interwq, @@jordalgo) - Make the behavior of realloc(ptr, 0) configurable with opt.zero_realloc. (@@davidtgoldblatt) - Add 'make uninstall' support. (@@sangshuduo, @@Lapenkov) - Support C++17 over-aligned allocation. (@@marksantaniello) - Add the thread.peak mallctl for approximate per-thread peak memory tracking. (@@davidtgoldblatt) - Add interval-based stats output opt.stats_interval. (@@interwq) - Add prof.prefix to override filename prefixes for dumps. (@@zhxchen17) - Add high resolution timestamp support for profiling. (@@tyroguru) - Add the --collapsed flag to jeprof for flamegraph generation. (@@igorwwwwwwwwwwwwwwwwwwww) - Add the --debug-syms-by-id option to jeprof for debug symbols discovery. (@@DeannaGelbart) - Add the opt.prof_leak_error option to exit with error code when leak is detected using opt.prof_final. (@@yunxuo) - Add opt.cache_oblivious as an runtime alternative to config.cache_oblivious. (@@interwq) - Add mallctl interfaces: + opt.zero_realloc (@@davidtgoldblatt) + opt.cache_oblivious (@@interwq) + opt.prof_leak_error (@@yunxuo) + opt.stats_interval (@@interwq) + opt.stats_interval_opts (@@interwq) + opt.tcache_max (@@interwq) + opt.trust_madvise (@@azat) + prof.prefix (@@zhxchen17) + stats.zero_reallocs (@@davidtgoldblatt) + thread.idle (@@davidtgoldblatt) + thread.peak.{read,reset} (@@davidtgoldblatt) Bug fixes: - Fix the synchronization around explicit tcache creation which could cause invalid tcache identifiers. This regression was first released in 5.0.0. (@@yoshinorim, @@davidtgoldblatt) - Fix a profiling biasing issue which could cause incorrect heap usage and object counts. This issue existed in all previous releases with the heap profiling feature. (@@davidtgoldblatt) - Fix the order of stats counter updating on large realloc which could cause failed assertions. This regression was first released in 5.0.0. (@@azat) - Fix the locking on the arena destroy mallctl, which could cause concurrent arena creations to fail. This functionality was first introduced in 5.0.0. (@@interwq) Portability improvements: - Remove nothrow from system function declarations on macOS and FreeBSD. (@@davidtgoldblatt, @@fredemmott, @@leres) - Improve overcommit and page alignment settings on NetBSD. (@@zoulasc) - Improve CPU affinity support on BSD platforms. (@@devnexen) - Improve utrace detection and support. (@@devnexen) - Improve QEMU support with MADV_DONTNEED zeroed pages detection. (@@azat) - Add memcntl support on Solaris / illumos. (@@devnexen) - Improve CPU_SPINWAIT on ARM. (@@AWSjswinney) - Improve TSD cleanup on FreeBSD. (@@Lapenkov) - Disable percpu_arena if the CPU count cannot be reliably detected. (@@azat) - Add malloc_size(3) override support. (@@devnexen) - Add mmap VM_MAKE_TAG support. (@@devnexen) - Add support for MADV_[NO]CORE. (@@devnexen) - Add support for DragonFlyBSD. (@@devnexen) - Fix the QUANTUM setting on MIPS64. (@@brooksdavis) - Add the QUANTUM setting for ARC. (@@vineetgarc) - Add the QUANTUM setting for LoongArch. (@@wangjl-uos) - Add QNX support. (@@jqian-aurora) - Avoid atexit(3) calls unless the relevant profiling features are enabled. (@@BusyJay, @@laiwei-rice, @@interwq) - Fix unknown option detection when using Clang. (@@Lapenkov) - Fix symbol conflict with musl libc. (@@georgthegreat) - Add -Wimplicit-fallthrough checks. (@@nickdesaulniers) - Add __forceinline support on MSVC. (@@santagada) - Improve FreeBSD and Windows CI support. (@@Lapenkov) - Add CI support for PPC64LE architecture. (@@ezeeyahoo) Incompatible changes: - Maximum size class allowed in tcache (opt.[lg_]tcache_max) now has an upper bound of 8MiB. (@@interwq) Optimizations and refactors (@@davidtgoldblatt, @@Lapenkov, @@interwq): - Optimize the common cases of the thread cache operations. - Optimize internal data structures, including RB tree and pairing heap. - Optimize the internal locking on extent management. - Extract and refactor the internal page allocator and interface modules. Documentation: - Fix doc build with --with-install-suffix. (@@lawmurray, @@interwq) - Add PROFILING_INTERNALS.md. (@@davidtgoldblatt) - Ensure the proper order of doc building and installation. (@@Mingli-Yu) @ text @d1 1 a1 1 $NetBSD: patch-Makefile.in,v 1.2 2016/12/13 21:52:22 maya Exp $ d5 3 @ 1.2 log @jemalloc: update to 4.3.1 from Jonathan Buschmann in PR pkg/51631 ok gson Changelog : 4.3.1 Bug fixes: Fix a severe virtual memory leak. This regression was first released in 4.3.0. (@@interwq, @@jasone) Refactor atomic and prng APIs to restore support for 32-bit platforms that use pre-C11 toolchains, e.g. FreeBSD's mips. (@@jasone) 4.3.0 This is the first release that passes the test suite for multiple Windows configurations, thanks in large part to @@glandium setting up continuous integration via AppVeyor (and Travis CI for Linux and OS X). New features: Add "J" (JSON) support to malloc_stats_print(). (@@jasone) Add Cray compiler support. (@@ronawho) Optimizations: Add/use adaptive spinning for bootstrapping and radix tree node initialization. (@@jasone) Bug fixes: Fix large allocation to search starting in the optimal size class heap, which can substantially reduce virtual memory churn and fragmentation. This regression was first released in 4.0.0. (@@mjp41, @@jasone) Fix stats.arenas..nthreads accounting. (@@interwq) Fix and simplify decay-based purging. (@@jasone) Make DSS (sbrk(2)-related) operations lockless, which resolves potential deadlocks during thread exit. (@@jasone) Fix over-sized allocation of radix tree leaf nodes. (@@mjp41, @@ogaun, @@jasone) Fix over-sized allocation of arena_t (plus associated stats) data structures. (@@jasone, @@interwq) Fix EXTRA_CFLAGS to not affect configuration. (@@jasone) Fix a Valgrind integration bug. (@@ronawho) Disallow 0x5a junk filling when running in Valgrind. (@@jasone) Fix a file descriptor leak on Linux. This regression was first released in 4.2.0. (@@vsarunas, @@jasone) Fix static linking of jemalloc with glibc. (@@djwatson) Use syscall(2) rather than {open,read,close}(2) during boot on Linux. This works around other libraries' system call wrappers performing reentrant allocation. (@@kspinka, @@Whissi, @@jasone) Fix OS X default zone replacement to work with OS X 10.12. (@@glandium, @@jasone) Fix cached memory management to avoid needless commit/decommit operations during purging, which resolves permanent virtual memory map fragmentation issues on Windows. (@@mjp41, @@jasone) Fix TSD fetches to avoid (recursive) allocation. This is relevant to non-TLS and Windows configurations. (@@jasone) Fix malloc_conf overriding to work on Windows. (@@jasone) Forcibly disable lazy-lock on Windows (was forcibly enabled). (@@jasone) @ text @d1 1 a1 1 $NetBSD: patch-Makefile.in,v 1.1 2016/02/18 15:51:59 gson Exp $ d5 25 a29 3 --- Makefile.in.orig 2016-11-16 22:15:43.000000000 +0100 +++ Makefile.in 2016-11-16 22:17:04.000000000 +0100 @@@@ -348,8 +348,8 @@@@ d33 2 a34 4 - echo "$(INSTALL) -m 755 $$l $(LIBDIR)"; \ - $(INSTALL) -m 755 $$l $(LIBDIR); \ + echo "$(INSTALL) -m 644 $$l $(LIBDIR)"; \ + $(INSTALL) -m 644 $$l $(LIBDIR); \ d38 23 @ 1.1 log @Import jemalloc-4.04, packaged for wip by Jonathan Buschmann . jemalloc is a general purpose malloc(3) implementation that emphasizes fragmentation avoidance and scalable concurrency support. jemalloc first came into use as the FreeBSD libc allocator in 2005. In 2010 jemalloc development efforts broadened to include developer support features such as heap profiling, Valgrind integration, and extensive monitoring/tuning hooks. Ongoing development efforts trend toward making jemalloc among the best allocators for a broad range of demanding applications, and eliminating/mitigating weaknesses that have practical repercussions for real world applications. This is a newer version of jemalloc than the one in NetBSD's libc. @ text @d1 1 a1 1 $NetBSD$ d5 3 a7 3 --- Makefile.in.orig 2015-10-24 14:56:52.000000000 +0000 +++ Makefile.in @@@@ -304,8 +304,8 @@@@ endif d9 1 a9 1 install -d $(LIBDIR) d11 4 a14 4 - echo "install -m 755 $$l $(LIBDIR)"; \ - install -m 755 $$l $(LIBDIR); \ + echo "install -m 644 $$l $(LIBDIR)"; \ + install -m 644 $$l $(LIBDIR); \ @