aboutsummaryrefslogtreecommitdiffstats
path: root/lib
AgeCommit message (Collapse)Author
2013-04-29Merge branch 'as/fix-srp-psk-anon/OTP-11071' into maintFredrik Gustafsson
* as/fix-srp-psk-anon/OTP-11071: fix srp_anon ciphers suites requiring certificates to work.
2013-04-29Merge branch 'nox/fix-multiple-ref-regs/OTP-11069' into maintFredrik Gustafsson
* nox/fix-multiple-ref-regs/OTP-11069: Use a set to store ref registers in beam_receive
2013-04-24Merge branch 'peppe/common_test/ts_logfile_problems' into maintPeter Andersson
* peppe/common_test/ts_logfile_problems: Fix error with refreshing logs when html util files are missing Add correct footer to last run index page Make test_server close log files properly and include correct footer
2013-04-24[dialyzer] Fix a bug concerning the --gui and --wx optionsHans Bolinder
A bug that made it impossible to do any analyses from the GUI has been fixed. The bug was introduced in dialyzer-2.5.2.
2013-04-22Fix error with refreshing logs when html util files are missingPeter Andersson
OTP-11046
2013-04-22Add correct footer to last run index pagePeter Andersson
OTP-11046
2013-04-21crypto: Fix typo in documentationKlaus Trainer
2013-04-19Merge branch 'fredrik/ssh/unicode_adapt' into maintFredrik Gustafsson
* fredrik/ssh/unicode_adapt: ssh: unicode adaptions
2013-04-19Make test_server close log files properly and include correct footerPeter Andersson
OTP-11046
2013-04-19Merge branch 'anders/diameter/mkdir_race/OTP-11051' into maintAnders Svensson
* anders/diameter/mkdir_race/OTP-11051: Fix mkdir race
2013-04-19Use a set to store ref registers in beam_receiveAnthony Ramine
In some circumstances, as when inlining code, when some optimization passes are disabled or with hand-written but semantically correct Core Erlang or BEAM assembly, a fresh reference may be live in more than one register: ... {allocate_zero,2,2}. ... {call_ext,0,{extfunc,erlang,make_ref,0}}. % Ref in [x0] ... {move,{x,0},{y,0}}. % Ref in [x0,y0] {move,{y,1},{x,0}}. % Ref in [y0] ... {move,{y,0},{x,0}}. % Ref in [x0,y0] {move,{x,0},{y,1}}. % Ref in [x0,y0,y1] {label,5}. {loop_rec,{f,6},{x,0}}. % Ref in [y0,y1] ... {loop_rec_end,{f,5}}. {label,6}. {wait,{f,5}}. ... Pass beam_receive expects a single live register for the ref when it encounters the loop_rec instruction and crashes with the following reason: $ erlc t.S ... crash reason: {{case_clause, {'EXIT', {{case_clause,[{y,1},{y,0}]}, [{beam_receive,opt_recv,5, [{file,"beam_receive.erl"},{line,154}]}, ...]}}}, ...} This commit teaches beam_receive how to use a set of registers instead of a single one when tracking fresh references, thus avoiding the crash.
2013-04-19[common_test] Adjusted timers in ct_repeat_testrun_SUITESiri Hansen
This is to allow slower test hosts.
2013-04-19[common_test] Extend timer in cover_SUITE for slow test hostSiri Hansen
2013-04-19[sasl] Remove compiler warning in release_handler_SUITESiri Hansen
2013-04-19[common_test] Kill slave nodes after test cases in cover_SUITESiri Hansen
The test case cover_SUITE:slave_start_slave often fails on a test host (windows) due to a hanging node from an earlier test run. In the first test, the slave fails to start (boot_timeout?) and is never connected to the test node. The attempt at cleaning up used nodes() to find which slaves to kill - so in the case where the slave was never connected it was never killed. This is no changed so each slave is explicitly killed by name - no matter if it is pingable or not.
2013-04-19[reltool] Remove erlang:port_close/1 for node portSiri Hansen
Test nodes are started with erlang:open_port/2, using the -detached option to erl. -detached causes the port returned from open_port/2 to be closed automatically. Some test cases failed occasionally with a badarg when attempting to close the port with erlang:port_close/1. To avoid this the call to port_close/1 is now removed.
2013-04-19fix excessive CPU consumption of timer_serverAliaksey Kandratsenka
I've found stdlib's timer to burn CPU without good reason. Here's what happens. The problem is that it sleeps in milliseconds but computes time in microseconds. And there is bug in code to compute milliseconds to sleep. It computes microseconds difference between now and nearest timer event and then does _truncating_ division by 1000. So on average it sleeps 500 microseconds _less than needed_. On wakeup its checks do I have timer tick that already occurred? No. Ok how much I need to sleep ? It does that bad computation again and gets 0 milliseconds. So next gen_server timeout happens right away only to find we're still before closest timer tick and to decide to sleep 0 milliseconds again. And again and again. This commit changes division to pick ceiling of ratio rather than floor. So that we always sleep not less then difference between now and closest event time.
2013-04-18Fix mkdir raceAnders Svensson
Creating examples/code and examples/dict in parallel can fail when examples doesn't exists. This has been seen on FreeBSD.
2013-04-18Merge branch 'maint-r16' into maintBjörn Gustavsson
* maint-r16: Prepare release Prepare release Do not count offline run-queues as empty Prepare release Prevent loss of objects after the extension marker Don't lose the extension mark for object set parameters Conflicts: erts/vsn.mk
2013-04-18Prepare releaseErlang/OTP
2013-04-18Merge branch 'siri/ct/error-printout-link/OTP-11044' into maintSiri Hansen
* siri/ct/error-printout-link/OTP-11044: [common_test] Add link from red error notification to full error description [common_test] Use max importance when logging errors
2013-04-18Merge branch 'siri/doc-fnu-opts/OTP-10901' into maintSiri Hansen
* siri/doc-fnu-opts/OTP-10901: Add documentation of w, i and e addition to +fnu and +fna switches to erl
2013-04-18Merge branch 'fredrik/inets/unblock_timer' into maintFredrik Gustafsson
* fredrik/inets/unblock_timer: inets: stop block timer with the right arguments
2013-04-17Add documentation of w, i and e addition to +fnu and +fna switches to erlSiri Hansen
These were documented in the stdlib user's guide, but not in the reference manual for erl. This has now been corrected.
2013-04-17Bug fixes in Common Test log cachePeter Andersson
2013-04-17Merge branch 'peppe/common_test/log_cache' into maintPeter Andersson
* peppe/common_test/log_cache: Implement cache for the CT logger OTP-10855
2013-04-17Implement cache for the CT loggerPeter Andersson
OTP-10855
2013-04-17Merge branch 'bjorn/fix-encoding/OTP-11041' into maintBjörn Gustavsson
* bjorn/fix-encoding/OTP-11041: Encode Erlang source files with non-ascii characters in UTF-8
2013-04-17Encode Erlang source files with non-ascii characters in UTF-8Björn Gustavsson
To ensure that 'master' compiles when we merge 'maint' to it, regardless of which encoding is default in 'master', all source files with non-ascii characters *must* have the encoding specified.
2013-04-16Merge branch 'bjorn/asn1/fix-lost-extension-mark/OTP-10995' into maint-r16Erlang/OTP
* bjorn/asn1/fix-lost-extension-mark/OTP-10995: Prevent loss of objects after the extension marker Don't lose the extension mark for object set parameters
2013-04-16[common_test] Add link from red error notification to full error descriptionSiri Hansen
In test case log, the red error notification may sometimes be truncated. This commit adds a link from this printout to the end of the log where the full error description and stacktrace i written.
2013-04-16[common_test] Use max importance when logging errorsSiri Hansen
This commit adds ?MAX_IMPORTANCE to error notifications in the test case log, and it makes sure that the printout says "CT Error Notification". Printouts from cth_log_redirect (sasl and error_reports) uses ?STD_IMPORTANCE and states "System" in the printout.
2013-04-15ssh: unicode adaptionsFredrik Gustafsson
2013-04-15Merge branch 'jaf/fix-supervisor-multi-restart/OTP-11042' into maintFredrik Gustafsson
2013-04-15Merge branch 'lh/demonitor-flush/OTP-11039' into maintFredrik Gustafsson
* lh/demonitor-flush/OTP-11039: Use erlang:demonitor(Ref, [flush]) where applicable
2013-04-15Merge branch 'nox/file-receive-optim/OTP-11040' into maintFredrik Gustafsson
* nox/file-receive-optim/OTP-11040: Optimize communication with file io server
2013-04-15inets: stop block timer with the right argumentsFredrik Gustafsson
2013-04-12Merge branch 'anders/diameter/watchdog_leak/OTP-11019' into maintAnders Svensson
* anders/diameter/watchdog_leak/OTP-11019: Minor doc fix Add testcase to exercise reconnect behaviour Fix watchdog table leak
2013-04-12Merge branch 'anders/diameter/address_config/OTP-10986' into maintAnders Svensson
* anders/diameter/address_config/OTP-10986: Comment fix More robust listening port lookup in test suites Update example client to allow default local address Make explicit local address to diameter_tcp:start/3 optional Add transport interface 'connected' message with local address list
2013-04-12fix srp_anon ciphers suites requiring certificates to work.Andreas Schultz
This problem was not caught by the test suites since all PSK and SRP suites where always tested with certificates. Split those tests into test with and without certificates.
2013-04-11Minor doc fixAnders Svensson
2013-04-11Add testcase to exercise reconnect behaviourAnders Svensson
2013-04-11Merge branch 'lh/otp-optims/OTP-11035' into maintFredrik Gustafsson
* lh/otp-optims/OTP-11035: Use erlang:demonitor's flush option on timeout Don't lookup the node unless required in gen:call/{3,4}
2013-04-11Merge branch 'fredrik/ct/telnet_wo_line_breaks/OTP-10085' into maintFredrik Gustafsson
2013-04-11Comment fixAnders Svensson
2013-04-11More robust listening port lookup in test suitesAnders Svensson
In particular, remove timing dependence by using diameter_reg:wait/1 to wait on the term registered by diameter_{tcp,sctp} when opening a listening socket.
2013-04-11Update example client to allow default local addressAnders Svensson
Note that the semantics of client:connect/1 have changed slightly: the second element in an argument 3-tuple is a remote address, the local address being the transport module's default. Previously it was interpreted as a common local/remote address.
2013-04-11Make explicit local address to diameter_tcp:start/3 optionalAnders Svensson
Use the default address address (as selected by gen_tcp) if none is configured, passing it in the new 'connected' message introduced by the previous commit. The corresponding update to diameter_sctp has to wait until problems with inet:sockname/1 are resolved: the function currently only returns one address, and sometimes {0,0,0,0}. See OTP-11018.
2013-04-11Add transport interface 'connected' message with local address listAnders Svensson
A transport module can return a local address list from its start/3 function in order to specify addresses to be used as Host-IP-Address during capabilities exchange. Now allow addresses to be communicated in a 'connected' message in the case of a connecting transport, so that diameter_tcp (in particular) can make local address configuration optional, communicating the gen_tcp default after connection establishment instead.
2013-04-11Optimize communication with file io serverAnthony Ramine
The file module communicates with a file io server with the following protocol for file operations: > {file_request,From,ReplyAs,Request} < {file_reply,ReplyAs,Reply} The ReplyAs value is sent by the client side to match against when receiving the reply and is otherwise left untouched and passed as is by the server. This commit enables receive optimizations by using the reference of the server monitor, changing the protocol to: > {file_request,From,MonitorRef,Request} < {file_reply,MonitorRef,Reply} As the shape of the messages is not changed, backwards compatibility is not a concern.