Commit graph

336 commits

Author SHA1 Message Date
Michael Rieder d87938bfdd Add feature disable_cache_oblivious to jemallocator re-exports (#104)
Signed-off-by: Michael Rieder <mail@mrieder.ch>
2024-10-23 15:23:10 -04:00
Michael Rieder 04851ae000 Fix compiler and clippy warnings (#105)
Signed-off-by: Michael Rieder <mail@mrieder.ch>
2024-10-23 15:22:28 -04:00
Jason Volk 272e3cde0f Fix lots of bad stuff going on.
Signed-off-by: Jason Volk <jason@zemos.net>
2024-10-23 15:18:59 -04:00
Jason Volk b0f29280fa Replace assume! with assert_unchecked()
Signed-off-by: Jason Volk <jason@zemos.net>
2024-10-23 15:18:59 -04:00
Jason Volk a84bd3f476 Add feature wrapping --enable-fill to support redzones for valgrind
Signed-off-by: Jason Volk <jason@zemos.net>
2024-10-23 15:18:59 -04:00
strawberry c32af15f3b Revert "Allow unprefixed jemalloc on musl targets (#70)"
This reverts commit f7adfca5af.
2024-08-18 14:45:31 -04:00
Jay f260a80f21
*: bump 0.6.0 (#95)
Signed-off-by: Jay Lee <BusyJay@users.noreply.github.com>
2024-07-14 23:34:47 +08:00
Torrekie Gen 2fde3d8150
allow per-target env detection (#91)
Signed-off-by: Torrekie <31795847+Torrekie@users.noreply.github.com>
2024-07-14 15:23:49 +08:00
Jay 5a82b9d435
remove outdated clippy allows (#94)
Signed-off-by: Jay Lee <busyjaylee@gmail.com>
2024-07-14 14:25:29 +08:00
YEUNG King On e9692ae34c
Revise CI runner platform on macOS (#86)
macos-latest has been switched from x86_64 to aarch64
(https://github.com/actions/runner-images/blob/main/README.md)

Signed-off-by: YEUNG King On <koyeung@gmail.com>
2024-05-13 17:01:04 +08:00
June 86e924870d
set --disable-stats if stats feature is not enabled (#82)
jemalloc defaults to enabling stats if `--enable-stats` is not
present and `--disable-stats` was not set: fa451de17f/configure.ac (L1331-L1333)

the stats feature was always enabled by default and never
respected if someone were to remove the stats feature as
no logic was added for setting `--disable-stats`. to avoid
breaking other user's setups who are relying on this behaviour,
set stats as a default feature.

Signed-off-by: strawberry <strawberry@puppygock.gay>
2024-05-10 10:41:40 +08:00
fys 805804ac83
fix: compile aarch64-linux-android binary on linux when enable lto. (#83)
Close #81.

Signed-off-by: fys <fengys1996@gmail.com>
2024-05-05 16:45:27 +08:00
Dan Cline 4f35ea85e2
feat: add profiling options (#74)
- add m1 macos ci target
- feat: add profiling options

Signed-off-by: Dan Cline <6798349+Rjected@users.noreply.github.com>
2024-04-02 20:24:58 +08:00
Rafael Ávila de Espíndola 714705e15f
Use --with-version when configuring jemalloc (#77)
* Use --with-version when configuring jemalloc

This also changes the metadata of the version so that jemalloc still
reports the same version as before.

Fixes tikv/jemallocator#76

Signed-off-by: Rafael Ávila de Espíndola <rafael@espindo.la>
2024-04-01 11:28:04 +08:00
Jack Kleeman 802969384a
Use tikv jemalloc fork (#75)
As otherwise the commit doesn't reliably download on new checkout

Signed-off-by: Jack Kleeman <jackkleeman@gmail.com>
2024-03-01 14:26:01 +08:00
Val Packett af6e6529c0
Add Chimera Linux to gmake targets (#73)
Signed-off-by: Val Packett <val@packett.cool>
2024-02-19 19:10:03 +08:00
Marvin Schmidt b913c24fdd
build: Fix build on riscv64gc-unknown-linux-musl (#67)
The configure step for jemalloc fails to recognize the rustc
target `riscv64gc-unknown-linux-musl`:
```
  --- stderr
  Invalid configuration `riscv64gc-unknown-linux-musl': machine `riscv64gc-unknown' not recognized
  configure: error: /bin/sh build-aux/config.sub riscv64gc-unknown-linux-musl failed
  thread 'main' panicked at /home/marv/.cargo/registry/src/index.crates.io-6f17d22bba15001f/jemalloc-sys-0.5.4+5.3.0-patched/build.rs:351:9:
  command did not execute successfully: cd "/mnt/data/devel/ripgrep/target/release/build/jemalloc-sys-eb3f9d51d93e319f/out/build" && CC="cc" CFLAGS="-O3 -ffunction-sections -fdata-sections -fPIC -gdwarf-4 -fno-omit-frame-pointer -march=rv64gc -mabi=lp64d -mcmodel=medany -Wall -g -ggdb3 -O0" CPPFLAGS="-O3 -ffunction-sections -fdata-sections -fPIC -gdwarf-4 -fno-omit-frame-pointer -march=rv64gc -mabi=lp64d -mcmodel=medany -Wall -g -ggdb3 -O0" LDFLAGS="-O3 -ffunction-sections -fdata-sections -fPIC -gdwarf-4 -fno-omit-frame-pointer -march=rv64gc -mabi=lp64d -mcmodel=medany -Wall -g -ggdb3 -O0" "sh" "/mnt/data/devel/ripgrep/target/release/build/jemalloc-sys-eb3f9d51d93e319f/out/build/configure" "--disable-cxx" "--enable-doc=no" "--enable-shared=no" "--with-jemalloc-prefix=_rjem_" "--with-private-namespace=_rjem_" "--host=riscv64gc-unknown-linux-musl" "--build=riscv64gc-unknown-linux-musl" "--prefix=/mnt/data/devel/ripgrep/target/release/build/jemalloc-sys-eb3f9d51d93e319f/out"
  expected success, got: exit status: 1
```

Add an entry to build.rs to translate between the GNU target and rustc
target in order to work around the mismatch

Signed-off-by: Marvin Schmidt <marv@exherbo.org>
2024-01-30 18:59:16 +08:00
Jack Kleeman f7adfca5af
Allow unprefixed jemalloc on musl targets (#70)
Signed-off-by: Jack Kleeman <jackkleeman@gmail.com>
2024-01-30 11:08:40 +08:00
Tushar Mathur 417d62bc97
Update README.md (#64)
Signed-off-by: Tushar Mathur <tusharmath@gmail.com>
2023-10-08 10:13:11 +08:00
Jay Lee 0f8983f718
Move README to jemallocator
Signed-off-by: Jay Lee <BusyJayLee@gmail.com>
2023-07-28 00:05:57 +08:00
Jay 02113e69f1
*: bump 0.5.4 (#62)
Close #56

Signed-off-by: Jay Lee <BusyJayLee@gmail.com>
2023-07-27 13:59:08 +08:00
Frank 61999f26bb
add disable_initial_exec_tls feature for jemalloc-ctl (#59)
Signed-off-by: Likai Feng <likai.feng@metabit-trading.com>
2023-07-19 18:27:19 +08:00
Arnav Singh 0fef73074b
Fix definition of c_bool for non-MSVC targets (#54)
Fixes #53

Signed-off-by: Arnav Singh <me@arnavion.dev>
2023-05-10 01:28:12 -07:00
Carlos Galdino fd00e12cc5
Add disable_cache_oblivious feature (#51)
When this feature is used, it will build Jemalloc with
`--disable-cache-oblivious`. The feature is disabled by default.

Signed-off-by: Carlos Galdino <cgaldino@apple.com>
2023-04-17 23:51:21 -07:00
zhaixiaojuan@loongson.cn 0cc7b0ef9f
Add loongarch64 support (#42)
Signed-off-by: zhaixiaojuan <zhaixiaojuan@loongson.cn>
2023-02-07 03:30:10 -08:00
Jay 444e0efb81
jemalloc-sys: bump 0.5.3 (#48)
Signed-off-by: Jay Lee <BusyJayLee@gmail.com>
2023-02-05 23:30:20 -08:00
Jay 725713e565
jemalloc-sys: remove fs-extra (#47)
Signed-off-by: Jay Lee <BusyJayLee@gmail.com>
2023-02-02 22:37:52 -08:00
Andrew Kane fa2ddc0014
Include license files in jemallocator and jemalloc-sys crates (#43)
Signed-off-by: Andrew Kane <andrew@ankane.org>
2022-12-11 22:26:59 -08:00
Jay 8b886be167
jemalloc-sys: bump 0.5.2 (#41)
Signed-off-by: Jay Lee <BusyJayLee@gmail.com>
2022-09-29 04:57:21 -07:00
Amanieu d'Antras 4e682e9243
Fix build on riscv64gc-unknown-linux-gnu (#40)
This works around the mismatch between the GNU target and rustc target.

Fixes #36

Signed-off-by: Amanieu d'Antras <amanieu@gmail.com>
2022-09-29 00:25:17 -07:00
Adam Gutglick 7513625f24
Correct an example in the docs (#39)
Signed-off-by: Adam Gutglick <adam@pinecone.io>
2022-09-04 08:07:40 -07:00
Jay 9380f5b27b
Make it compile on netbsd (#31)
Signed-off-by: Jay Lee <BusyJayLee@gmail.com>
2022-06-23 23:54:29 -07:00
Jay d4411d7977
*: bump 0.5.0 (#26)
Signed-off-by: Jay Lee <BusyJayLee@gmail.com>
2022-05-24 16:31:42 -07:00
Jay ab0676d77e
update jemalloc to 5.3.0 (#23)
Signed-off-by: Jay Lee <BusyJayLee@gmail.com>
2022-05-18 17:06:46 -07:00
Jay 2706fb3874
*: bump 0.4.3 (#21)
Signed-off-by: Jay Lee <BusyJayLee@gmail.com>
2022-02-21 17:50:45 +08:00
Felix Yan 52de4257fa
Add riscv64 support (#14)
Signed-off-by: Felix Yan <felixonmars@archlinux.org>
2021-09-17 16:52:44 +08:00
Yilin Chen 2d242ee725
Merge pull request #13 from BusyJay/bump-0.4.2 2021-08-09 16:01:46 +08:00
Jay Lee e1f0ba0583
*: bump 0.4.2
Signed-off-by: Jay Lee <BusyJayLee@gmail.com>
2021-08-09 15:02:53 +08:00
Brennan Vincent feb2b6667a
Correct jemalloc commit hash (#12)
Signed-off-by: Brennan Vincent <brennan@materialize.com>
2021-08-09 14:56:21 +08:00
Petros Angelatos 7c3194a100
update to paste 1 (#11)
Signed-off-by: Petros Angelatos <petrosagg@gmail.com>
2021-08-05 22:58:15 +08:00
Brennan Vincent ac17ea826e
cherry-pick from upstream jemalloc to fix profiling bug (#9)
This depends on tikv/jemalloc#2 , which is a cherry-pick of jemalloc/jemalloc#1604 .

See jemalloc/jemalloc#1605 for details of the bug that this fixes; basically, it makes profiling/sampling fail to work under some conditions. We hit this in practice at Materialize when attempting to switch to tikv/jemallocator.

Signed-off-by: Brennan Vincent <brennan@materialize.com>
2021-08-05 15:21:47 +08:00
Jay e5f53b1441
ci: switch to GitHub actions (#10)
- ppc64le is not checked as there is no ppc64le runners.
- valgrind is removed.
- no_std check is removed

Signed-off-by: Jay Lee <BusyJayLee@gmail.com>
2021-08-05 01:08:14 +08:00
Jay 6494cc8660
*: bump 0.4.1 (#5)
Signed-off-by: Jay Lee <BusyJayLee@gmail.com>
2020-11-16 21:10:34 +08:00
Jay 52bed4a531
jemalloc-sys: switch to 5.2.x (#4)
* switch jemalloc to tikv fork

Signed-off-by: Jay Lee <BusyJayLee@gmail.com>
2020-11-16 17:26:07 +08:00
Jay 4b10c8818c
*: extra cleanup (#3)
- Skip publishing docs on master
- Remove appveyor CI

Signed-off-by: Jay Lee <BusyJayLee@gmail.com>
2020-07-22 15:39:21 +08:00
Jay 510c5f0b84
*: update project meta (#2)
As we are going to publish the crate to crates.io, we need a different
name and version. Since native library is upgraded, all versions are
bumpped to 0.4.0. To make it clear which version of jemalloc is used, I
attach a build tag 5.2.1.

And the project are upgraded to 2018 version.

Signed-off-by: Jay Lee <BusyJayLee@gmail.com>
2020-07-21 19:33:59 +08:00
Jay 21c54a2446
*: update jemalloc and simplify build (#1)
- Remove all cross compilation and reduce supporting platforms
- Remove complicated checks and builds
- Update jemalloc to 5.2.1
- Fix gnzlbg/jemallocator#147

Signed-off-by: Jay Lee <BusyJayLee@gmail.com>
2020-07-21 11:18:43 +08:00
Jay Lee a09f18a739
Make CI green again
- disable configure verify check
- update configure file and make clippy happy
- check autoconf version
- fix allow_failures
- i686-apple target are not supported now
- use latest travis syntax
- less verbose and allow non-master check fail
    Upstream doesn't guarantee configure file matches across platform and
    versions. Checking configure file can fail easily
- mute alloc_trait tests
- rich diff
- remove unsupported platform
    i686-apple-darwin is removed from nightly and beta.
- make clippy and rustfmt happy

Signed-off-by: Jay Lee <BusyJayLee@gmail.com>
2020-07-17 21:22:46 +08:00
David McNeil c27a859e98 Add undefined behavior docs
Signed-off-by: David McNeil <mcneil.david2@gmail.com>
2019-12-11 18:18:14 +01:00
David McNeil d292b3879c Assume pointer is not null in GlobalAlloc::dealloc
Signed-off-by: David McNeil <mcneil.david2@gmail.com>
2019-12-11 18:18:14 +01:00