aboutsummaryrefslogtreecommitdiffstats
path: root/erts/emulator
AgeCommit message (Collapse)Author
2013-11-18Merge branch 'mhssler/add-os-unsetenv/OTP-11446' into maintFredrik Gustafsson
* mhssler/add-os-unsetenv/OTP-11446: erts: remove ?line macro in testcases Update primary bootstrap Add os:unsetenv/1
2013-11-11Merge branch 'sverk/valgrind-added-leak-check' into maintSverker Eriksson
* sverk/valgrind-added-leak-check: erts: Prevent valgrind from repeating same memory leaks reports
2013-11-11erts: remove ?line macro in testcasesFredrik Gustafsson
2013-11-09Add os:unsetenv/1Martin Hässler
New BIF os:unsetenv/1 which deletes an environment variable and returns 'true'. Does not change any old functionality. Calls the libc function unsetenv(3) on UNIX and SetEnvironmentVariableW(key, NULL) on Windows. The unicode support is the same as for os:getenv and os:putenv.
2013-11-04Merge branch 'sverk/monitor-memory-leak/OTP-11410' into maintSverker Eriksson
* sverk/monitor-memory-leak/OTP-11410: erts: Fix memory leak for distributed monitors
2013-11-04erts: Prevent valgrind from repeating same memory leaks reportsSverker Eriksson
by using the macro VALGRIND_DO_ADDED_LEAK_CHECK if it exists for system_info({error_checker,memory})
2013-10-21Merge branch 'egil/fix-crashdump-pointer-crash/OTP-11420' into maintBjörn-Egil Dahlberg
* egil/fix-crashdump-pointer-crash/OTP-11420: erts: Fix segfaulting crashdump writing
2013-10-18erts: Fix segfaulting crashdump writingBjörn-Egil Dahlberg
Crashdumps initiated by out-of-memory on spawn could cause the beam to segfault during crashdump writing due to invalid pointers. The pointers are invalid since the process creation never finished. This commit remedies this problem by removing the process from crashdump printout.
2013-10-17erts: Fix memory leak for distributed monitorsSverker Eriksson
2013-10-16Merge branch 'sverk/time-consistency-test' into maintSverker Eriksson
* sverk/time-consistency-test: erts: Fix time_SUITE:consistency to work over turn of the month
2013-10-15Merge branch 'rickard-sverker/supercarrier/OTP-11149' into maintSverker Eriksson
* rickard-sverker/supercarrier/OTP-11149: (29 commits) erts: Add test case for erts_mmap erts: Add mutex to init_atoms in erts_mmap.c erts: Fix lock violation for init_atoms in erl_mmap.c erts: Fix misc minor bugs in supercarrier initialization erts: Add erts_mmap stats erts: Add erts_bld_tupleX macros erts: Rename erts_bld_atom_uint_2tup_list to *_uword_* erts: Fix bug in lookup_free_seg erts: Fix race bug in erts_munmap erts: Add HARD_DBG_MSEG erts: Refactor rbt_insert in erl_mmap erts: erts_mmap improved free seg desc management erts: Add documentation for +MMsc* system flags erts: Allow page aligned erts_munmap() erts: Sort tree in super aligned sizes (SA_SZ_ADDR_ORDER) erts: Fix ASSERT bug and void* arithmetics erts: Add mmap argument to erts_debug:get_internal_state erts: Improve erts_mmap out of free descriptor management erts: Cleanup erl_mmap erts: Add __func__ to ERTS_ASSERT macro ...
2013-10-14Merge branch 'fenollp/treewide_remove_unexpected_0xff/OTP-11323' into maintFredrik Gustafsson
* fenollp/treewide_remove_unexpected_0xff/OTP-11323: Remove ^L characters hidden randomly in the code. Not those used in text files as delimiters.
2013-10-10Fix bsr bugLars Hesel Christensen
Fix bsr bug occurring when shifting a huge number a huge number of bits to the right. The bug can occur if Sint is 64 bits and int is 32 bits, causing a truncation in the big.c:I_lshift function.
2013-10-10Add bsr test data showing bug when shifting large numbersLars Hesel Christensen
Add test data demonstrating that bsr is broken when shifting a large number a huge number of bits to the right.
2013-10-03erts: Add test case for erts_mmapSverker Eriksson
2013-10-02erts: Add mutex to init_atoms in erts_mmap.cSverker Eriksson
2013-10-02erts: Fix lock violation for init_atoms in erl_mmap.cSverker Eriksson
by not holding the mseg lock while reading version and option info which is unnecessary anyway.
2013-10-02erts: Fix misc minor bugs in supercarrier initializationSverker Eriksson
2013-10-01erts: Fix time_SUITE:consistency to work over turn of the monthSverker Eriksson
2013-09-30erts: Add erts_mmap statsSverker Eriksson
As part of erlang:system_info({allocator,mseg_alloc}) and erl_crash.dump
2013-09-30erts: Add erts_bld_tupleX macrosSverker Eriksson
for compile time argument checking
2013-09-30erts: Rename erts_bld_atom_uint_2tup_list to *_uword_*Sverker Eriksson
and change from Uint to UWord values
2013-09-30erts: Fix bug in lookup_free_segSverker Eriksson
that could return segments that are too small after being super aligned.
2013-09-30erts: Fix race bug in erts_munmapSverker Eriksson
Must keep mutex to serialize (un)reserve ops.
2013-09-30erts: Add HARD_DBG_MSEGSverker Eriksson
2013-09-30erts: Refactor rbt_insert in erl_mmapSverker Eriksson
2013-09-30erts: erts_mmap improved free seg desc managementRickard Green
2013-09-30erts: Allow page aligned erts_munmap()Rickard Green
2013-09-30erts: Sort tree in super aligned sizes (SA_SZ_ADDR_ORDER)Sverker Eriksson
2013-09-30erts: Fix ASSERT bug and void* arithmeticsSverker Eriksson
2013-09-30erts: Add mmap argument to erts_debug:get_internal_stateSverker Eriksson
2013-09-30erts: Improve erts_mmap out of free descriptor managementRickard Green
2013-09-30erts: Cleanup erl_mmapSverker Eriksson
2013-09-30erts: Add __func__ to ERTS_ASSERT macroSverker Eriksson
2013-09-30erts: Optimize rb-tree operations by "caching" parent ptrSverker Eriksson
2013-09-30erts: Use rbt_foreach_node to check_treeSverker Eriksson
2013-09-30erts: Add build_free_seg_listSverker Eriksson
2013-09-30erts: Remove HARD_DEBUG flags for tree traversalSverker Eriksson
2013-09-30erts: Save one word in ErtsFreeSegDescSverker Eriksson
by putting red/black color bit in 'parent' pointer
2013-09-30erts: erts_mmap supercarrier management and erts_mseg usageRickard 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-30erts: Prepare erl_mmap with tree structures for free seg storageSverker Eriksson
2013-09-30erts: Remove ASSERT_EXPR macroSverker Eriksson
2013-09-30erts: Refactor the ASSERT macroSverker Eriksson
Introduce unconditional ERTS_ASSERT and use that for both ASSERT and ASSERT_EXPR.
2013-09-30Merge branch 'maint-r16' into maintFredrik Gustafsson
Conflicts: erts/vsn.mk
2013-09-30Merge branch 'msassak/empty-pattern-badarg/OTP-11350' into maintFredrik Gustafsson
* msassak/empty-pattern-badarg/OTP-11350: stdlib: extended binary_module_SUITE to assure badarg for OTP-11350 Check all pattern arguments passed to binary:matches/2
2013-09-25Merge branch 'rickard/aligned-sys_alloc-carriers/OTP-11318' into ↵Rickard Green
rickard/aligned-sys_alloc-carriers_maint/OTP-11318 Conflicts: erts/emulator/beam/erl_alloc.c erts/emulator/beam/erl_alloc_util.c erts/emulator/beam/erl_alloc_util.h
2013-09-25Implement platform specific aligned sys_alloc and use when supportedRickard Green
erts_sys_aligned_alloc() is currently implemented using posix_memalign if it exist, or using _aligned_malloc on Windows. If erts_sys_aligned_alloc() exist allocators will create sys_alloc carriers similar to how this was done pre-R16.
2013-09-24add system_info(ets_limit)Steve Vinoski
Add system_info(ets_limit) to provide a way to retrieve the runtime's maximum number of ETS tables. Add tests and documentation for it too. Also repair the alphabetical order of system_info/1 argument descriptions in the documentation and in the erlang.erl clauses. Add new preloaded erlang.erl due to that change. Also ensure all system_info/1 clauses are represented in the erlang.xml source documentation -- a couple had been inadvertently dropped in previous commits when other clauses were added.
2013-09-20Check all pattern arguments passed to binary:matches/2Mike Sassak
Including an empty binary as one of multiple patterns passed to binary:matches/2 would crash BEAM with: "Cannot reallocate 1342177280 bytes of memory (of type "tmp")". This ensures each pattern is valid before trying to match.
2013-09-12Remove ^L characters hidden randomly in the code. Not those used in text ↵Pierre Fenoll
files as delimiters. While working on a tool that processes Erlang code and testing it against this repo, I found out about those little sneaky 0xff. I thought it may be of help to other people build such tools to remove non-conforming-to-standard characters.