Age | Commit message (Collapse) | Author | |
---|---|---|---|
2016-11-17 | erts: Refactor crash dumping with cbprintf | Sverker Eriksson | |
Instead of passing around a file descriptor use a function pointer to facilitate more advanced backend write logic such as size limitation or compression. | |||
2016-04-29 | erts: Fix system_info({allocator_sizes, mseg_alloc}) | Sverker Eriksson | |
will now return [{instance,0,[{segments_size,9961472,9961472,11010048}]}, {instance,1,[{segments_size,6291456,6291456,6815744}]}, {instance,2,[{segments_size,524288,524288,786432}]}, {instance,3,[{segments_size,1048576,1048576,1835008}]}, {instance,4,[{segments_size,0,0,262144}]}] and not just empty lists. | |||
2016-04-29 | erts: Move option info for erts_mmap | Sverker Eriksson | |
from {allocator,mseg_alloc} to {allocator,erts_mmap} | |||
2016-04-20 | Merge branch 'sverker/hipe-code-alloc' | Sverker Eriksson | |
2016-04-15 | erts: Add 'exec_alloc' for hipe code | Sverker Eriksson | |
that uses its own super carrier (erts_exec_mmapper) to guarantee low addressed and executable memory (PROT_EXEC). Currently only used on x86_64 that needs low memory for HiPE/AMD64's small code model. By initializing erts_exec_mapper early we secure its low memory area before erts_literal_mmapper might steal it. | |||
2016-04-15 | erts: Make ErtsMemMapper able to map memory with PROT_EXEC | Sverker Eriksson | |
to prepare for hipe native code allocation. | |||
2016-03-15 | update copyright-year | Henrik Nord | |
2016-03-08 | Merge branch 'sverk/literal-alloc-polish' | Sverker Eriksson | |
* sverk/literal-alloc-polish: erts: Add emulator flag +MIscs for literal super carrier size erts: Refactor init of erts_literal_mmapper erts: Make literal_alloc documented and configurable | |||
2016-02-24 | Merge branch 'master' into sverk/master/halt-INT_MIN | Sverker Eriksson | |
2016-02-24 | erts: Change erl_exit into erts_exit | Sverker Eriksson | |
This is mostly a pure refactoring. Except for the buggy cases when calling erlang:halt() with a positive integer in the range -(INT_MIN+2) to -INT_MIN that got confused with ERTS_ABORT_EXIT, ERTS_DUMP_EXIT and ERTS_INTR_EXIT. Outcome OLD erl_exit(n, ) NEW erts_exit(n, ) ------- ------------------- ------------------------------------------- exit(Status) n = -Status <= 0 n = Status >= 0 crashdump+abort n > 0, ignore n n = ERTS_ERROR_EXIT < 0 The outcome of the old ERTS_ABORT_EXIT, ERTS_INTR_EXIT and ERTS_DUMP_EXIT are the same as before (even though their values have changed). | |||
2016-02-23 | erts: Refactor init of erts_literal_mmapper | Sverker Eriksson | |
2015-11-12 | erts: Add support for fast erts_is_literal() | Sverker Eriksson | |
2015-11-12 | erts: Refactor erl_mmap to allow several mapper instances | Sverker Eriksson | |
2015-06-24 | erts: Remove halfword MemKind mseg | Björn-Egil Dahlberg | |
2015-06-24 | erts: Remove HALFWORD_HEAP definition | Björn-Egil Dahlberg | |
2015-06-18 | Change license text to APLv2 | Bruce Yinhe | |
2013-10-02 | erts: Fix lock violation for init_atoms in erl_mmap.c | Sverker Eriksson | |
by not holding the mseg lock while reading version and option info which is unnecessary anyway. | |||
2013-09-30 | erts: Add erts_mmap stats | Sverker Eriksson | |
As part of erlang:system_info({allocator,mseg_alloc}) and erl_crash.dump | |||
2013-09-30 | erts: Add HARD_DBG_MSEG | Sverker Eriksson | |
2013-09-30 | erts: erts_mmap improved free seg desc management | Rickard Green | |
2013-09-30 | erts: Allow page aligned erts_munmap() | Rickard Green | |
2013-09-30 | erts: Fix ASSERT bug and void* arithmetics | Sverker Eriksson | |
2013-09-30 | erts: erts_mmap supercarrier management and erts_mseg usage | Rickard Green | |
* Coalescing and trimming of free segments in supercarrier * Management of super aligned and super unaligned areas in supercarrier * Management of reservation of physical memory * erts_mseg usage of erts_mmap | |||
2013-09-30 | erts: Prepare erl_mmap with tree structures for free seg storage | Sverker Eriksson | |
2013-05-06 | erts: Change some more 'long' to pointer sized int (ErlDrvUInt) | Sverker Eriksson | |
2013-03-08 | compilation fix for NetBSD | YAMAMOTO Takashi | |
spells __NetBSD__ correctly. | |||
2013-03-07 | Merge branch 'egil/fix-mseg_dealloc-arguments/OTP-10912' into maint | Björn-Egil Dahlberg | |
* egil/fix-mseg_dealloc-arguments/OTP-10912: erts: Fix refactor error in mseg | |||
2013-03-05 | erts: Fix refactor error in mseg | Björn-Egil Dahlberg | |
Faulty number of arguments to mseg_dealloc. Problem arises if we try to compile halfword on operating system which do not have mremap. Not a supported case. | |||
2013-03-04 | erts: Fix void * arithmetic | Björn-Egil Dahlberg | |
2013-02-13 | erts: Utilize even more cached sbc segments | Björn-Egil Dahlberg | |
2013-02-12 | erts: Prefer sbc segment caching over mbc segments | Björn-Egil Dahlberg | |
2013-02-11 | erts: Segment allocator CircleQ API | Björn-Egil Dahlberg | |
2013-02-11 | erts: Evict old cached segments for newer ones | Björn-Egil Dahlberg | |
2013-02-07 | erts: Refactor mseg cache | Björn-Egil Dahlberg | |
Use double ended cache queues to evict oldest cache first | |||
2013-01-25 | Update copyright years | Björn-Egil Dahlberg | |
2012-12-14 | erts: Clear entire mseg cache upon request | Björn-Egil Dahlberg | |
2012-12-14 | erts: Do not cache segments that are misaligned | Björn-Egil Dahlberg | |
* SBC may realloc carriers to misaligned addresses which is perfectly fine. However, those segments may not be cached because MBC allocations might find them and MBC's *needs* correct alignment. | |||
2012-12-14 | erts: Add mseg cache for large sbc segments | Björn-Egil Dahlberg | |
* Not a power of two (unpowered) segements | |||
2012-12-14 | erts: Reintroduce mseg options amcbf and rmcbf | Björn-Egil Dahlberg | |
Used with new sbc cache | |||
2012-12-14 | erts: Fix mseg cache. Malplaced NULL pointer | Björn-Egil Dahlberg | |
2012-12-14 | erts: Remove unused mseg options amcbf and rmcbf | Björn-Egil Dahlberg | |
2012-11-21 | erts: Don't let zero be considered a power of two | Björn-Egil Dahlberg | |
2012-11-21 | erts: Use MSEG_ALIGN_BITS and MSEG_ALIGNED_SIZE | Björn-Egil Dahlberg | |
* Don't redfine ALIGN_BITS or ALIGNED_SIZE, the global defined MSEG_* constants are just as good. | |||
2012-11-15 | erts: Move carrier alignment define to erl_msg.h | Sverker Eriksson | |
2012-11-13 | erts: New mseg allocator cache | Björn-Egil Dahlberg | |
* utilize the power of two | |||
2012-11-13 | erts: Teach mseg alloc the value of halfword beam | Björn-Egil Dahlberg | |
2012-11-13 | erts: Let mseg allocate larger alignments | Björn-Egil Dahlberg | |
2012-10-31 | erts: Remove faked MSEG_ALLOC | Björn-Egil Dahlberg | |
* Not used except in valgrind but there mseg is disabled completely via Meamin. | |||
2011-11-16 | Remove remaining gcc 4.6 assigned-but-not-used warnings from erts | Patrik Nyblom | |
2011-11-13 | Replace system block with thread progress block | Rickard Green | |
The ERTS internal system block functionality has been replaced by new functionality for blocking the system. The old system block functionality had contention issues and complexity issues. The new functionality piggy-backs on thread progress tracking functionality needed by newly introduced lock-free synchronization in the runtime system. When the functionality for blocking the system isn't used there is more or less no overhead at all. This since the functionality for tracking thread progress is there and needed anyway. |