| Commit message (Collapse) | Author | Age | Files | Lines | |
|---|---|---|---|---|---|
| * | Merge branch 'dev'5.0.0 | Jason Evans | 2017-06-13 | 258 | -23191/+26419 |
| |\ | |||||
| | * | Update MSVC project files. | Jason Evans | 2017-06-13 | 2 | -10/+22 |
| | | | |||||
| | * | Update ChangeLog for 5.0.0. | Jason Evans | 2017-06-13 | 1 | -0/+187 |
| | | | |||||
| | * | Update copyright dates. | Jason Evans | 2017-06-13 | 1 | -2/+2 |
| | | | |||||
| | * | Prevent background threads from running in post_reset(). | Qi Wang | 2017-06-12 | 1 | -5/+13 |
| | | | | | | | | | | | We lookup freed extents for testing in post_reset. Take background_thread lock so that the extents are not modified at the same time. | ||||
| | * | Combine background_thread started / paused into state. | Qi Wang | 2017-06-12 | 4 | -34/+59 |
| | | | |||||
| | * | Not re-enable background thread after fork. | Qi Wang | 2017-06-12 | 3 | -37/+50 |
| | | | | | | | | | Avoid calling pthread_create in postfork handlers. | ||||
| | * | Move background thread creation to background_thread_0. | Qi Wang | 2017-06-12 | 4 | -146/+251 |
| | | | | | | | | | | | To avoid complications, avoid invoking pthread_create "internally", instead rely on thread0 to launch new threads, and also terminating threads when asked. | ||||
| | * | Normalize background thread configuration. | Jason Evans | 2017-06-09 | 4 | -6/+17 |
| | | | | | | | | | Also fix a compilation error #ifndef JEMALLOC_PTHREAD_CREATE_WRAPPER. | ||||
| | * | Update a UTRACE() size argument. | Jason Evans | 2017-06-08 | 1 | -1/+1 |
| | | | |||||
| | * | Remove redundant typedefs. | Jason Evans | 2017-06-08 | 1 | -2/+0 |
| | | | | | | | | | Pre-C11 compilers do not support typedef redefinition. | ||||
| | * | Add internal tsd for background_thread. | Qi Wang | 2017-06-08 | 3 | -11/+24 |
| | | | |||||
| | * | Drop high rank locks when creating threads. | Qi Wang | 2017-06-08 | 5 | -13/+43 |
| | | | | | | | | | | | | | Avoid holding arenas_lock and background_thread_lock when creating background threads, because pthread_create may take internal locks, and potentially cause deadlock with jemalloc internal locks. | ||||
| | * | Make tsd no-cleanup during tsd reincarnation. | Qi Wang | 2017-06-07 | 4 | -24/+51 |
| | | | | | | | | | | | Since tsd cleanup isn't guaranteed when reincarnated, we set up tsd in a way that needs no cleanup, by making it going through slow path instead. | ||||
| | * | Remove assertions on extent_hooks being default. | Qi Wang | 2017-06-05 | 1 | -16/+0 |
| | | | | | | | | | | | It's possible to customize the extent_hooks while still using part of the default implementation. | ||||
| | * | Take background thread lock when setting extent hooks. | Qi Wang | 2017-06-05 | 3 | -4/+15 |
| | | | |||||
| | * | Set reentrancy level to 1 during init. | Qi Wang | 2017-06-02 | 1 | -15/+28 |
| | | | | | | | | | This makes sure we go down slow path w/ a0 in init. | ||||
| | * | Set isthreaded when enabling background_thread. | Qi Wang | 2017-06-02 | 3 | -23/+41 |
| | | | |||||
| | * | Fix background thread creation. | Qi Wang | 2017-06-01 | 1 | -13/+17 |
| | | | | | | | | | The state initialization should be done before pthread_create. | ||||
| | * | Test with background_thread:true. | Jason Evans | 2017-06-01 | 4 | -6/+35 |
| | | | | | | | | | | | | | Add testing for background_thread:true, and condition a xallocx() --> rallocx() escalation assertion to allow for spurious in-place rallocx() following xallocx() failure. | ||||
| | * | Refactor/fix background_thread/percpu_arena bootstrapping. | Jason Evans | 2017-06-01 | 12 | -124/+161 |
| | | | | | | | | | | | Refactor bootstrapping such that dlsym() is called during the bootstrapping phase that can tolerate reentrant allocation. | ||||
| | * | Skip default tcache testing if !opt_tcache. | Jason Evans | 2017-06-01 | 1 | -4/+4 |
| | | | |||||
| | * | Witness assertions: only assert locklessness when non-reentrant. | David Goldblatt | 2017-06-01 | 1 | -49/+62 |
| | | | | | | | | | | | Previously we could still hit these assertions down error paths or in the extended API. | ||||
| | * | Use real pthread_create for creating background threads. | Qi Wang | 2017-05-31 | 2 | -3/+9 |
| | | | |||||
| | * | Clean source directory before building tests in object directories. | Jason Evans | 2017-05-31 | 1 | -0/+1 |
| | | | |||||
| | * | Header refactoring: Pull size helpers out of jemalloc module. | David Goldblatt | 2017-05-31 | 28 | -596/+642 |
| | | | |||||
| | * | Header refactoring: unify and de-catchall mutex_pool. | David Goldblatt | 2017-05-31 | 7 | -26/+15 |
| | | | |||||
| | * | Header refactoring: unify and de-catchall extent_mmap module. | David Goldblatt | 2017-05-31 | 10 | -4/+11 |
| | | | |||||
| | * | Header refactoring: unify and de-catchall extent_dss. | David Goldblatt | 2017-05-31 | 12 | -37/+33 |
| | | | |||||
| | * | Header refactoring: unify and de-catchall rtree module. | David Goldblatt | 2017-05-31 | 18 | -170/+166 |
| | | | |||||
| | * | Add /run_tests.out/ to .gitignore. | David Goldblatt | 2017-05-31 | 1 | -0/+2 |
| | | | |||||
| | * | Pass the O_CLOEXEC flag to open(2). | Jason Evans | 2017-05-31 | 2 | -4/+5 |
| | | | | | | | | | This resolves #528. | ||||
| | * | Track background thread status separately at fork. | Qi Wang | 2017-05-31 | 1 | -3/+8 |
| | | | | | | | | | | | Use a separate boolean to track the enabled status, instead of leaving the global background thread status inconsistent. | ||||
| | * | Output total_wait_ns for bin mutexes. | Qi Wang | 2017-05-31 | 1 | -19/+5 |
| | | | |||||
| | * | Add jemalloc prefix to allocator functions pruned by jeprof. | Jason Evans | 2017-05-31 | 2 | -13/+14 |
| | | | | | | | | | This resolves #507. | ||||
| | * | Explicitly say so when aborting on opt_abort_conf. | Qi Wang | 2017-05-31 | 1 | -2/+10 |
| | | | |||||
| | * | More thoroughly document the *.{nmalloc,ndalloc,nrequests} mallctls. | Jason Evans | 2017-05-30 | 1 | -24/+50 |
| | | | | | | | | | This resolves #412. | ||||
| | * | Add the --disable-thp option to support cross compiling. | Jason Evans | 2017-05-30 | 8 | -14/+53 |
| | | | | | | | | | This resolves #669. | ||||
| | * | Fix npages during arena_decay_epoch_advance(). | Qi Wang | 2017-05-30 | 1 | -20/+14 |
| | | | | | | | | | | | We do not lock extents while advancing epoch. This change makes sure that we only read npages from extents once in order to avoid any inconsistency. | ||||
| | * | Add test for excessive retained memory. | Jason Evans | 2017-05-30 | 2 | -0/+180 |
| | | | |||||
| | * | Fix extent_grow_next management. | Jason Evans | 2017-05-30 | 4 | -159/+222 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix management of extent_grow_next to serialize operations that may grow retained memory. This assures that the sizes of the newly allocated extents correspond to the size classes in the intended growth sequence. Fix management of extent_grow_next to skip size classes if a request is too large to be satisfied by the next size in the growth sequence. This avoids the potential for an arbitrary number of requests to bypass triggering extent_grow_next increases. This resolves #858. | ||||
| | * | Fix OOM paths in extent_grow_retained(). | Jason Evans | 2017-05-30 | 1 | -2/+8 |
| | | | |||||
| | * | Add opt.stats_print_opts. | Qi Wang | 2017-05-29 | 5 | -45/+94 |
| | | | | | | | | | The value is passed to atexit(3)-triggered malloc_stats_print() calls. | ||||
| | * | Make test/unit/background_thread not flaky. | Qi Wang | 2017-05-27 | 1 | -3/+5 |
| | | | |||||
| | * | Added opt_abort_conf: abort on invalid config options. | Qi Wang | 2017-05-27 | 5 | -15/+56 |
| | | | |||||
| | * | Fix run_tests to avoid percpu_arena on !Linux. | Jason Evans | 2017-05-26 | 1 | -3/+3 |
| | | | |||||
| | * | Cleanup smoothstep.sh / .h. | Qi Wang | 2017-05-25 | 4 | -207/+205 |
| | | | | | | | | | h_step_sum was used to compute moving sum. Not in use anymore. | ||||
| | * | Fix stats.mapped during deallocation. | Qi Wang | 2017-05-24 | 1 | -1/+1 |
| | | | |||||
| | * | Refactor run_tests to increase parallelism. | Jason Evans | 2017-05-24 | 1 | -13/+45 |
| | | | | | | | | | | | | | | | | | Rather than relying on parallel make to build individual configurations one at a time, use xargs to build multiple configurations in parallel. This allows the configure scripts to run in parallel. On a 14-core system (28 hyperthreads), this increases average CPU utilization from ~20% to ~90%. | ||||
| | * | Header refactoring: unify and de-catchall mutex module | David Goldblatt | 2017-05-24 | 34 | -287/+304 |
| | | | |||||
