aboutsummaryrefslogtreecommitdiffstats
path: root/erts/emulator
AgeCommit message (Collapse)Author
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-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.
2013-09-11Fix syslog definesMatt Lewandowsky
config.h defines HAVE_SYSLOG_H whereas the sources are looking for NO_SYSLOG to be undefined. As the logic of "if feature is available" makes more sense than "if feature is not unavailable", I opted for the config.h define.
2013-09-11Merge branch 'vinoski/sv/fix-sched-stats-disable/OTP-11317' into maintFredrik Gustafsson
* vinoski/sv/fix-sched-stats-disable/OTP-11317: fix system_flag(scheduling_statistics,disable)
2013-09-10fix system_flag(scheduling_statistics,disable)Steve Vinoski
Clear the "enabled" flag for scheduling statistics when disable is specified.
2013-09-09Fix incorrect values returned by integer_to_binary/2Juan Jose Comellas
When integer_to_binary/2 receives 0 or a negative number as an argument with a base that is different from 10, it will return incorrect values (<<>> in the case of 0) or it will crash (with negative numbers). This commit fixes these problems and adds tests to cover these cases.
2013-09-05Merge branch 'sverk/mac-select-assert-bug' into maintSverker Eriksson
* sverk/mac-select-assert-bug: erts: Fix faulty assert in "unlimited select" for mac
2013-09-05Merge branch 'raimo/fix-signedness-flaws-in-efile_drv' into maintRaimo Niskanen
* raimo/fix-signedness-flaws-in-efile_drv: Fix EV_* macros and functions signedness flaws
2013-09-05Merge branch 'egil/erl_driver-thread-info/OTP-11303' into maintBjörn-Egil Dahlberg
* egil/erl_driver-thread-info/OTP-11303: erts: Document erl_driver interface lock names erts: Extend erl_driver interface with lock names
2013-09-04erts: Fix faulty assert in "unlimited select" for macSverker Eriksson
2013-09-04Merge branch 'raimo/linux-network-namespace-sockopt/OTP-11157' into maintRaimo Niskanen
* raimo/linux-network-namespace-sockopt/OTP-11157: Document socket option 'netns' Rudimentary test Make netns option value a string Implement netns for SCTP + bugfixes Implement netns option for TCP and UDP Implement emulator netns support for TCP and UDP
2013-09-02Merge branch 'sv-sched-percentage-option' into maintLukas Larsson
* sv-sched-percentage-option: Silence gcc warnings in non-smp build
2013-09-02Merge branch 'lukas/erts/clean_port_msg_dispatcher/OTP-11290' into maintLukas Larsson
* lukas/erts/clean_port_msg_dispatcher/OTP-11290: erts: Fix segfault when scheduling release_port later_op