aboutsummaryrefslogtreecommitdiffstats
path: root/erts/emulator
AgeCommit message (Collapse)Author
2013-09-11Merge branch 'maint'Fredrik Gustafsson
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-11Merge branch 'maint'Fredrik Gustafsson
Conflicts: erts/preloaded/ebin/erlang.beam
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 'maint'Peter Andersson
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 'maint'Raimo Niskanen
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 'maint'Björn-Egil Dahlberg
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 'maint'Raimo Niskanen
Conflicts: erts/preloaded/ebin/prim_inet.beam
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 'maint'Lukas Larsson
* maint: Silence gcc warnings in non-smp build
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 'maint'Lukas Larsson
* maint: erts: Fix segfault when scheduling release_port later_op
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
2013-09-02Silence gcc warnings in non-smp buildLukas Larsson
2013-09-02Fix EV_* macros and functions signedness flawsRaimo Niskanen
2013-08-30Merge branch 'maint'Lukas Larsson
* maint: add erl option to set schedulers by percentages
2013-08-29add erl option to set schedulers by percentagesSteve Vinoski
For applications where measurements show enhanced performance from the use of a non-default number of emulator scheduler threads, having to accurately set the right number of scheduler threads across multiple hosts each with different numbers of logical processors is difficult because the erl +S option requires absolute numbers of scheduler threads and scheduler threads online to be specified. To address this issue, add a +SP option to erl, similar to the existing +S option but allowing the number of scheduler threads and scheduler threads online to be set as percentages of logical processors configured and logical processors available, respectively. For example, "+SP 50:25" sets the number of scheduler threads to 50% of the logical processors configured, and the number of scheduler threads online to 25% of the logical processors available. The +SP option also interacts with any settings specified with the +S option, such that the combination of options "+S 4:4 +SP 50:50" (in either order) results in 2 scheduler threads and 2 scheduler threads online. Add documentation for the +SP option. Add tests for the +SP option to scheduler_SUITE. Add tests and documentation for two existing features of the +S option: +S 0:0 resets the scheduler thread count and scheduler threads online count to their defaults, and specifying negative numbers for +S results in those values being subtracted from the default values for the host.
2013-08-27erts: Fix segfault when scheduling release_port later_opLukas Larsson
begin_port_cleanup can be called from a non-scheduler thread, this means that there is no esdp available and thus erts_schedule_thr_prgr_later_op segfaults.
2013-08-23Merge branch 'maint'Patrik Nyblom
2013-08-23Create better distribution of files over async threadsPatrik Nyblom
The actual port id is used to create a key from the pointer value which is the ErlDrvPort. To do this a new driver api function driver_async_port_key is added and the driver API minor version is updated. The documentation is updated and the faulty description of how to spread ports over async threads is updated to use the new API. Testcase also added.
2013-08-23Initialize errno properly in win32 efile_may_openfilePatrik Nyblom
2013-08-23Add debug functionality to retrieve async keyPatrik Nyblom
2013-08-23Merge branch 'maint'Lukas Larsson
* maint: erts: Fix print out of acul option in crash dump
2013-08-23Merge branch 'lukas/erts/crash_dump_acul/OTP-11264' into maintLukas Larsson
* lukas/erts/crash_dump_acul/OTP-11264: erts: Fix print out of acul option in crash dump
2013-08-23erts: Fix print out of acul option in crash dumpLukas Larsson
2013-08-21Merge branch 'maint'Lukas Larsson
* maint: erts: Fix bug in translating ev macros to functions Prepare release PER, UPER: Fix encoding/decoding of open types greater than 16K
2013-08-21erts: Add support for static linked-in driversLukas Larsson
None of the OTP linked-in driver are supported
2013-08-21erts: Add option to include nifs staticallyLukas Larsson
Both crypto and asn1 are supported.
2013-08-20erts: Fix bug in translating ev macros to functionsLukas Larsson
2013-08-19Merge branch 'maint'Lukas Larsson
* maint: erts: Refactor non-pure macros to functions
2013-08-16Merge branch 'pan/update_pcre_8.33'Patrik Nyblom
* pan/update_pcre_8.33: Workaround TR gnu/181328, GCC 4.2.1 20070831 on FreeBSD 9.1 Clarify relation between erts_iolist_{size|to_buf} Fix backslash in titles of manpages Correct UTF-8 in stdlib's notes.xml Add more tests for corner error cases in erl_bif_re.c Add documentation of report_errors and match_limit(_recursion) Add match_limit and match_limit_recursion options Add return_errors option to re:run/3 Add README for updating PCRE Add documentation of extensions to re module Add new options to Erlang re interface and mend dupnames Update PCRE doc part of re.xml to PCRE 8.33 state Integrate new PCRE test suites Integrate patch for PCRE bug id 1370 Handle CRLF correctly in global regexp Add erts_prefix to pcre_library and update erl_bif_re Update to PCRE 8.33, w/o the erts_ prefix added OTP-11204 OTP-11205 OTP-10285
2013-08-15Workaround TR gnu/181328, GCC 4.2.1 20070831 on FreeBSD 9.1Patrik Nyblom
The bug manifests so that initialization of an automatic variable happens after a pointer to the variable is dereferenced, causing build_exec_return to take the wrong branch by default. The bug is verified to happen even outside the VM and is reported to FreeBSD as trouble ID gnu/181328. The workaround is a slight code rewrite which is optimized differently. Also removed two warnings about dereferencing type-punned pointers, which did not affect the bug.
2013-08-13erts: Refactor non-pure macros to functionsLukas Larsson
This is needed as some gcc versions seems to optimize this undefined behaviour in a way which breaks this code.
2013-08-12Merge branch 'maint'Lukas Larsson
* maint: erts: Do not enable TRACE_SILENT when testing a ms
2013-08-12Merge branch 'lukas/erts/match_spec_test_silent/OTP-11232' into maintLukas Larsson
* lukas/erts/match_spec_test_silent/OTP-11232: erts: Do not enable TRACE_SILENT when testing a ms
2013-08-09Merge branch 'maint'Sverker Eriksson
2013-08-09Merge branch 'sverk/ptab-race' into maintSverker Eriksson
* sverk/ptab-race: erts: Fix race in ptab that can cause PID mix-ups OTP-11225
2013-08-09Clarify relation between erts_iolist_{size|to_buf}Patrik Nyblom
Just some clarifying comments to future progremmers to keep the relation between error returns from the two functions.
2013-08-09Add match_limit and match_limit_recursion optionsPatrik Nyblom
Added to re:run and sets the corresponding fields in 'extra' struct for the PCRE match engine. The result can be viewed by also setting 'report_errors' when matching. Some housekeeping was also done... The offset option also did not properly check for offset's >= 0. Change nomatch to BADARG when pre-compiled mp() is faked: By constructing a 5-tuple with faked content but the right data types, you could do a re:run which returned nomatch when in fact the mp() was bad. The cheapest solution is to check the return from pcre_exec better. Remove unreachable code in erts_bif_re.c: Replaced tests for things that logically simply cannot happen with ASSERT.
2013-08-09Add return_errors option to re:run/3Patrik Nyblom
2013-08-09Add README for updating PCREPatrik Nyblom
2013-08-09Add new options to Erlang re interface and mend dupnamesPatrik Nyblom
Add notempty_atstart, no_start_optimize, ucp and never_utf options from new PCRE version. Use the new notempty_atstart in global matching. Add inspect/2 function Correctly handle dupnames when capturing a name, as in Perl, get the leftmost matching occurence. Also added all_names, to get all the names in the pattern in alphabetical (name) order. To be able to use this in global matching, an inspect function that can dig out a namelist was added.
2013-08-08erts: Do not enable TRACE_SILENT when testing a msLukas Larsson
2013-08-08Merge branch 'maint'Lukas Larsson
* maint: Add smoke tests
2013-08-08Merge branch 'lukas/smoketests/OTP-11221' into maintLukas Larsson
* lukas/smoketests/OTP-11221: Add smoke tests