aboutsummaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)Author
2011-11-21Mitigate Computational DoS attackIngela Anderton Andin
2011-11-16Merge branch 'ia/ssl/ets-next-problem/OTP-9703'Ingela Anderton Andin
* ia/ssl/ets-next-problem/OTP-9703: Replaced ets:next traversal with ets:foldl and throw
2011-11-16Merge branch 'ia/public_key/prepare-for-release'Ingela Anderton Andin
* ia/public_key/prepare-for-release: Prepare for release
2011-11-16Merge branch 'ia/ssl/badarith/OTP-9696'Ingela Anderton Andin
* ia/ssl/badarith/OTP-9696: Improved session cleanup handling Fix badarith in ssl_session:validate_session/2
2011-11-15Prepare for releaseIngela Anderton Andin
2011-11-15Merge branch 'hb/stdlib/gen_call_improvement/OTP-9212'Hans Bolinder
* hb/stdlib/gen_call_improvement/OTP-9212: Remove the undocumented function global:safe_whereis_name/1 Remove all use of global:safe_whereis_name/1 Fix a minor race in gen_fsm
2011-11-15Merge branch 'ia/ssl/test-maintenance'Ingela Anderton Andin
* ia/ssl/test-maintenance: Removed compiler warnings Work around bug in openss-1.0.0e Use ERL_FLAGS in plain_verify_options test Adjustment to work with hipe Avoid openssl processes surviving after test case has finished Add better error message Skip ssl_dist_SUITE if cover run, as the test server node can not communicate with the ssl nodes with erlang distribution Fine tuning of test suites
2011-11-15Merge branch 'master' of super:otpMicael Karlberg
2011-11-15Merge branch 'maint-r14'Micael Karlberg
Conflicts: lib/inets/doc/src/notes.xml lib/inets/src/http_lib/http_uri.erl lib/inets/src/inets_app/inets.appup.src lib/inets/vsn.mk
2011-11-15Removed compiler warningsIngela Anderton Andin
2011-11-15Work around bug in openss-1.0.0eIngela Anderton Andin
2011-11-15Use ERL_FLAGS in plain_verify_options testIngela Anderton Andin
Windows do not handle long commands and would crash if many ssl arguments are passed on the command prompt
2011-11-15Adjustment to work with hipeIngela Anderton Andin
process_info(Pid, current_function) may return {current_function, undefined} in some cases but will not in the importante one!
2011-11-15Avoid openssl processes surviving after test case has finishedIngela Anderton Andin
If the server process is always closed first shutdown of the openssl process will be gracious
2011-11-15Add better error messageIngela Anderton Andin
2011-11-15Skip ssl_dist_SUITE if cover run, as the test server node can not ↵Ingela Anderton Andin
communicate with the ssl nodes with erlang distribution
2011-11-15Fine tuning of test suitesIngela Anderton Andin
2011-11-15Skip inet_res_SUITE tests when external resolver does not startRaimo Niskanen
E.g OpenBSD's (5.0) patched named does not allow itself to be started without privilige separation, which is only allowed for the superuser so test suites can not use that named. Fix the shell script that starts named to detect early exit from named and inform the Erlang code test suite what happened.
2011-11-15Cleanup the use of TARGET in toplevel and common make and build filesRaimo Niskanen
Common file target.mk now passes the TARGET value through config.sub for canonification. Toplevel Makefile now calls target.mk so it handles TARGET like all sub-makefiles. Build script otp_build no longer creates a target specific directory that a long time ago was used for target specific configure cache file.
2011-11-15Merge branch 'bmk/inets/inets58_integration'Micael Karlberg
2011-11-15Replaced ets:next traversal with ets:foldl and throwIngela Anderton Andin
ets:next needs an explicit safe_fixtable call to be safe, we rather use ets:foldl and throw to get out of it when we find the correct entry.
2011-11-15Improved session cleanup handlingIngela Anderton Andin
Added session status "new" to mark sessions that are in the session database to reserve the session id but not resumable yet and that we want to separate from sessions that has been invalidated for further reuse.
2011-11-15Fix badarith in ssl_session:validate_session/2Ingela Anderton Andin
The time_stamp filed is now initated in the connection process init function, so that invalidations of sessions due to handshake failiures, will not cause sessions in the session table to have an uninitiated time_stamp field.
2011-11-15Merge branch 'maint-r13' into maint-r14Micael Karlberg
2011-11-15Merge branch 'ia/ssl/prepare-for-relese'Ingela Anderton Andin
* ia/ssl/prepare-for-relese: Prepare version and appup for release
2011-11-15Merge branch 'ia/public_key/ssl/crypto/PKCS-8/OTP-9312'Ingela Anderton Andin
* ia/public_key/ssl/crypto/PKCS-8/OTP-9312: Add clause for expected input to pubkey:pseudo_random_function/2 when ASN-1 compiler is fixed. Clean up of public_key code adding specs and documentation Added PKCS-8 support in ssl Additions to crypto and public_key needed for full PKCS-8 support Add PKCS-8 support to public_key
2011-11-15Merge branch 'bjorn/erts/erlc-do-not-bind'Björn Gustavsson
* bjorn/erts/erlc-do-not-bind: erlc: Do not bind schedulers when invoking "erl"
2011-11-14Merge branch 'bmk/megaco/r15_integration'Micael Karlberg
2011-11-14Added proper release note entry for OTP-9672.Micael Karlberg
2011-11-14Merge branch 'sa/dialyzer-wunderspecs'Henrik Nord
* sa/dialyzer-wunderspecs: Fix false warning about closure application Change category of 'might also return' warnings OTP-9707
2011-11-14erlc: Do not bind schedulers when invoking "erl"Björn Gustavsson
If parallel make is used, several instance of 'erlc' is likely to be invoked at once. Therefore, the default binding of schedulers to CPU cores will do no good. (With this change, the build of Erlang/OTP with six threads finished in about 7 minutes; without in about 11 minutes.)
2011-11-14Merge branch 'egil/reallocating-catches/OTP-9692'Björn-Egil Dahlberg
* egil/reallocating-catches/OTP-9692: erts: Teach VM to reallocate beam catch table
2011-11-14Remove the undocumented function global:safe_whereis_name/1Hans Bolinder
2011-11-14Remove all use of global:safe_whereis_name/1Hans Bolinder
Calls to global:whereis_name/1 have been substituted for calls to global:safe_whereis_name/1 since the latter is not safe at all. The reason for not doing this earlier is that setting a global lock masked out a bug concerning the restart of supervised children. The bug has now been fixed by a modification of global:whereis_name/1. (Thanks to Ulf Wiger for code contribution.)
2011-11-14Fix a minor race in gen_fsmHans Bolinder
Fixed a minor race conditions in gen_fsm:start*: if one of these functions returned {error,Reason} or ignore, the name could still be registered (either locally or in global. This is the same modification as was done for gen_server in OTP-7669.
2011-11-13Merge branch 'rickard/bad-rwmtx-assert'Rickard Green
* rickard/bad-rwmtx-assert: Fix bad assertion in rwmtx implementation
2011-11-13Merge branch 'rickard/multi-exit-bug/OTP-9705'Rickard Green
* rickard/multi-exit-bug/OTP-9705: Make sure only one thread exits the runtime system
2011-11-13Merge branch 'rickard/win-cs-mutex/OTP-9671'Rickard Green
* rickard/win-cs-mutex/OTP-9671: Use critical sections as mutex implementation on Windows
2011-11-13Merge branch 'rickard/generic-thr-queue/OTP-9632'Rickard Green
* rickard/generic-thr-queue/OTP-9632: Use generic lock-free queue for async threads Use generic lock-free queue for misc aux work Implement generic lock-free queue
2011-11-13Merge branch 'rickard/thr-progress-block/OTP-9631'Rickard Green
* rickard/thr-progress-block/OTP-9631: Replace system block with thread progress block
2011-11-13Merge branch 'rickard/alloc-opt/OTP-7775'Rickard Green
* rickard/alloc-opt/OTP-7775: Optimize memory allocation Conflicts: erts/aclocal.m4 erts/emulator/hipe/hipe_bif_list.m4 erts/preloaded/ebin/erl_prim_loader.beam erts/preloaded/ebin/erlang.beam erts/preloaded/ebin/init.beam erts/preloaded/ebin/otp_ring0.beam erts/preloaded/ebin/prim_file.beam erts/preloaded/ebin/prim_inet.beam erts/preloaded/ebin/prim_zip.beam erts/preloaded/ebin/zlib.beam
2011-11-13Make sure only one thread exits the runtime systemRickard Green
The runtime system crashed if more than one thread tried to exit the runtime system at the same time.
2011-11-13Use critical sections as mutex implementation on WindowsRickard Green
Windows native critical sections are now used internally in the runtime system as mutex implementation. This since they perform better under extreme contention than our own implementation.
2011-11-13Use generic lock-free queue for async threadsRickard Green
Queues used for communication between async threads and scheduler threads have been replaced with lock-free queues. Drivers using the driver_async functionality are not automatically locked to the system anymore, and can be unloaded as any dynamically linked in driver. Scheduling of ready async jobs is now also interleaved in between other jobs. Previously all ready async jobs was performed at once.
2011-11-13Use generic lock-free queue for misc aux workRickard Green
2011-11-13Implement generic lock-free queueRickard Green
The implementation of an ERTS internal, generic, many to one, lock-free queue for communication between threads. The many to one scenario is very common in ERTS, so it can be used in a lot of places in the future. Changing to this queue from a lock based queue, however, often requires some redesigning. This since we have often used the lock of the queue to protect other information too.
2011-11-13Replace system block with thread progress blockRickard Green
The ERTS internal system block functionality has been replaced by new functionality for blocking the system. The old system block functionality had contention issues and complexity issues. The new functionality piggy-backs on thread progress tracking functionality needed by newly introduced lock-free synchronization in the runtime system. When the functionality for blocking the system isn't used there is more or less no overhead at all. This since the functionality for tracking thread progress is there and needed anyway.
2011-11-13Optimize memory allocationRickard Green
A number of memory allocation optimizations have been implemented. Most optimizations reduce contention caused by synchronization between threads during allocation and deallocation of memory. Most notably: * Synchronization of memory management in scheduler specific allocator instances has been rewritten to use lock-free synchronization. * Synchronization of memory management in scheduler specific pre-allocators has been rewritten to use lock-free synchronization. * The 'mseg_alloc' memory segment allocator now use scheduler specific instances instead of one instance. Apart from reducing contention this also ensures that memory allocators always create memory segments on the local NUMA node on a NUMA system.
2011-11-11Fix bad assertion in rwmtx implementationRickard Green
2011-11-11Merge branch 'anders/diameter/capabilities_cb/OTP-9654'Anders Svensson
* anders/diameter/capabilities_cb/OTP-9654: Update documentation Add capx suite Accept any 2xxx result code in CEA Rename some functions plus comment tweak Send events for connection establishment failure Use trivial capabilities callback in traffic suite Add capabilities_cb transport option Minor tls_ack simplification diameter_dbg:log -> diameter_lib:log