aboutsummaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)Author
2012-12-14erts: Fix mseg cache. Malplaced NULL pointerBjörn-Egil Dahlberg
2012-12-14erts: Remove unused mseg options amcbf and rmcbfBjörn-Egil Dahlberg
2012-12-14erts: Use aligned bits as constant in mseg_allocBjörn-Egil Dahlberg
HAVE_SUPER_ALIGNED_MB_CARRIERS is always true with mmap and thus aligned bits is a constant and so is "page" size for mmap. Conflicts: erts/emulator/sys/common/erl_mseg.h
2012-11-21erts: Don't let zero be considered a power of twoBjörn-Egil Dahlberg
2012-11-21erts: Use MSEG_ALIGN_BITS and MSEG_ALIGNED_SIZEBjörn-Egil Dahlberg
* Don't redfine ALIGN_BITS or ALIGNED_SIZE, the global defined MSEG_* constants are just as good.
2012-11-21erts: Make carrier header sizes compile time constantsSverker Eriksson
No allocator strategy is using customized carrier headers anyway.
2012-11-19erts: Cleanup minor things in alloc_utilSverker Eriksson
2012-11-16erts: Fix compile warnings in alloc_utilSverker Eriksson
2012-11-15erts: Enable new header scheme without super alignment on 64-bitSverker Eriksson
2012-11-15erts: Fix alloc_SUITE:coalesce for new header schemeSverker Eriksson
2012-11-15erts: Ensure MBC limits due to super alignmentSverker Eriksson
2012-11-15erts: Add carrier pointer to header of free blockSverker Eriksson
2012-11-15erts: Refactor renaming a couple of macros in alloc_utilSverker Eriksson
To get a consistent naming scheme where FBLK = Free block ABLK = Allocated block
2012-11-15erts: Refactor removing dummy footer in carrier headerSverker Eriksson
2012-11-15erts: Save one word per block for thread preferred allocatorsSverker Eriksson
by making use of the new block header scheme to find the carrier header and thereby the allocator.
2012-11-15erts: Refactor erl_alloc_util.cSverker Eriksson
Make use of type FreeBlkFtr_t Rename GET_MB_CARRIER into BLK2MBC (like BLK2SBC) Remove some unused macros
2012-11-15erts: Change single carrier block header flagsSverker Eriksson
to allow realloc to determine block size (in MBC or SBC) without having to read the footer of the previous block that might be written to by concurrent thread.
2012-11-15erts: Make alloc_SUITE:bucket_mask handle larger carriersSverker Eriksson
2012-11-15erts: Use new mseg flag argument for carrier sizingSverker Eriksson
2012-11-15erts: Move carrier alignment define to erl_msg.hSverker Eriksson
2012-11-15erts: Add carrier offset to internal allocation headersSverker Eriksson
2012-11-13erts: Fix compiler warnings for halfword vmSverker Eriksson
2012-11-13erts: New mseg allocator cacheBjörn-Egil Dahlberg
* utilize the power of two
2012-11-13erts: Teach mseg alloc the value of halfword beamBjörn-Egil Dahlberg
2012-11-13erts: Let mseg allocate larger alignmentsBjörn-Egil Dahlberg
2012-10-31erts: Remove faked MSEG_ALLOCBjörn-Egil Dahlberg
* Not used except in valgrind but there mseg is disabled completely via Meamin.
2012-10-31Merge branch 'bjorn/ct/stability/OTP-10480'Björn Gustavsson
* bjorn/ct/stability/OTP-10480: Simplify managment of test_server_loc Keep the information about the current test case consistent test_server: Eliminate the Loc argument for do_end_tc_call() Refactor the handling of the make_priv_dir message test_server: Refactor run_test_case_msgloop()
2012-10-31Fix writing of configuration information to ct_master_log.htmlBjörn Gustavsson
Because of a forgotten "Fd", configuration information intended for ct_master_log.html ended up being written to standard output.
2012-10-31Merge branch 'raimo/IPV6_V6ONLY/OTP-8928'Raimo Niskanen
* raimo/IPV6_V6ONLY/OTP-8928: kernel: Document socket option ipv6_v6only kernel: Add test cases for socket option ipv6_v6only erts,kernel: Implement socket option ipv6_v6only in erlang code erts: Implement socket option IPV6_V6ONLY erts: Add configure test for IPV6_V6ONLY
2012-10-31kernel: Document socket option ipv6_v6onlyRaimo Niskanen
2012-10-31kernel: Add test cases for socket option ipv6_v6onlyRaimo Niskanen
2012-10-31erts,kernel: Implement socket option ipv6_v6only in erlang codeRaimo Niskanen
2012-10-31erts: Implement socket option IPV6_V6ONLYRaimo Niskanen
2012-10-30Merge branch 'dgud/stdlib/proc_lib_hangs/OTP-9803'Dan Gudmundsson
* dgud/stdlib/proc_lib_hangs/OTP-9803: stdlib: Monitor proc_lib:start'ed processes to avoid waiting forever
2012-10-30stdlib: Monitor proc_lib:start'ed processes to avoid waiting foreverDan Gudmundsson
Monitor the spawned process in proc_lib:start/[3|4|5], so that a proper error is returned, if the spawned process crashes before proclib:init_ack/1 is sent. Previously the calling process would hang forever or until specified timeout. Start link catches these errors but start did not. start now behaves as start_link if process traps exit.
2012-10-30Merge branch 'dgud/test-fixes'Dan Gudmundsson
* dgud/test-fixes: test: fix timetraps kernel: Extend test timeout for cover tests stdlib: Fix test timeouts in cover runs runtime_tools: Fix failing testcase
2012-10-30test: fix timetrapsDan Gudmundsson
Use ct:timetrap/1 instead of test_server:timetrap/1 for really long test_cases. Commontest sets up a default timetrap on 30 min, which is not cancelled if testserver:timetrap called.
2012-10-30kernel: Extend test timeout for cover testsDan Gudmundsson
2012-10-30stdlib: Fix test timeouts in cover runsDan Gudmundsson
2012-10-30runtime_tools: Fix failing testcaseDan Gudmundsson
2012-10-26Simplify managment of test_server_locBjörn Gustavsson
Before line numbers were included in exceptions (in R15), there were parse transforms and macros that would keep the test_server_loc process dictionary variable updated; therefore there is a mod_loc/1 function that will normalize the representation of locations. Simplify the code as following: * 'test_server_loc' should always contain a list with one or more tuples. ({M,F} or {M,F,Line}) * At the beginning of each test case, set 'test_server_loc' to [{Module,Func}] of the the currently executing test case. * Stop updating 'test_server_loc', except when an exception occurs. (It used to be updated when running 'init_per_testcase' and so on.) * Remove the mod_loc/1 function.
2012-10-26Keep the information about the current test case consistentBjörn Gustavsson
Three pieces of information could be out of sync in testcase supervisor process at the time when a timetrap occurred: * test_server_loc (process dictionary) - may indicate that a framework function is executing * test_server_init_or_end_conf (process dictionary) - indicates whether init_per_testcase or end_per_testcase is executing * The current configuration (#st.config) - set using a synchronous call There could be in a crash in spawn_fw_call/7 because the current configuration was not defined when it was expected to. To avoid the problem, introduce set_tc_state/2 (and a corresponding message) to allow setting both an indication what the testcase is executing (e.g. init_per_testcase, framework call, and so on), and the current configuration. Use only that information to handle a timetrap timeout (and aborted testcase and the other reasons for the testcase process to terminate). Completely remove test_server_init_or_end_conf.
2012-10-26test_server: Eliminate the Loc argument for do_end_tc_call()Björn Gustavsson
The Loc argument was use to determine the name of the currently executing test case, in case that the M and F arguments did not specify a test case. Since a previous commit makes sure that the M and F arguments *are* valied, we can eliminate the Loc argument.
2012-10-26Refactor the handling of the make_priv_dir messageBjörn Gustavsson
The code is not actually shorter, but it avoids duplicating the code for producing an error tuple when theres is no priv_dir tuple in the config data.
2012-10-26test_server: Refactor run_test_case_msgloop()Björn Gustavsson
Keeping all state as separate function arguments does not make it easy to add more pieces of data to the state. Case in point is the CurrConf argument where up to three separate items have been shoehorned in. Instead of the arguments, introduce a state record to hold all of the different pieces of state (taking care to separate the former CurrConf variable into separate fields in the record). While at it, fix a bug. The name of the currently executing test case (module and function) used to be stored in a tuple in the CurrConf variable, and it would only be available after 'set_curr_conf' message has been received. Depending on timing, it was possible in rare circumstances for an EXIT signal to arrive before the 'set_curr_conf' message. Avoid this problem by putting the current test case name into the record from the beginning. That also means that we can eliminate the workaround of getting the currently executing test case from the stack trace using the get_mf/1.
2012-10-26Merge branch 'bjorn/compiler/test-cases'Björn Gustavsson
* bjorn/compiler/test-cases: Correct typo in test suite name compiler: Run testcases in parallel
2012-10-26Merge branch 'bjorn/test_server/test-cases'Björn Gustavsson
* bjorn/test_server/test-cases: test_server tests: Be kind to Windows by using shorter pathnames
2012-10-26Merge branch 'bjorn/erts/beam_makeops'Björn Gustavsson
* bjorn/erts/beam_makeops: beam_makeops: Turn on warnings and eliminate existing warnings beam_makeops: Eliminate a deprecation warning
2012-10-26Merge branch 'bjorn/ct/separate-io-server/OTP-10101'Björn Gustavsson
* bjorn/ct/separate-io-server/OTP-10101: Test ct:capture/start/stop/get Introduce ct_group_leader_SUITE that does nasty things with group leaders Eliminate unexpected I/O to the minor log file Introduce test_server_io and test_server_gl Clean up initialization of parallel test cases Introduce is_io_buffered/0 to somewhat improve readability test_server_ctrl: Consistently use set_io_buffering/1
2012-10-26Merge branch 'siri/test_server/faulty-data_dir-when-cover/OTP-9956'Siri Hansen
* siri/test_server/faulty-data_dir-when-cover/OTP-9956: [test_server] Set data_dir correctly when suite is cover compiled