summaryrefslogtreecommitdiff
path: root/erts/emulator/beam
Commit message (Collapse)AuthorAgeFilesLines
* Merge branch 'sverker/25/erts/hashmap-collision-nodes' into maintSverker Eriksson2023-04-2611-437/+736
|\
| * Merge branch 'sverker/24/erts/hashmap-collision-nodes' into ↵Sverker Eriksson2023-04-2611-437/+736
| |\ | | | | | | | | | sverker/25/erts/hashmap-collision-nodes
| | * erts: Implement hashmap collision nodesSverker Eriksson2023-04-267-335/+623
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Restrict depth of hashmap tree to 8 levels. Instead of rehashing with salt, give up and put colliding keys in "collision nodes" at the bottom of the tree. Collision nodes are normal tuples of arity 2 or larger. The elements of collision nodes are key-value cons cells like the other nodes, but they are sorted in map-key order. We do linear search in them, but that's ok as they should be small and rare in practice. Why? We had some scary encounter with forever colliding term pairs in make_internal_hash(). Even though that has been fixed we will sleep better at night knowing the hashmaps may not recurse forever draining all memory of the machine.
| | * erts: Fix/optimize macro arityvalSverker Eriksson2023-04-261-1/+1
| | | | | | | | | | | | | | | | | | Macro 'arityval' asserts tuple header in debug. No point calling macro '_unchecked_header_arity' which also allows map headers.
| | * erts: Simplify map hashingJohn Högberg2023-04-264-38/+39
| | | | | | | | | | | | Cherry-picked: 5b0cf37de9d69a63a49dac1171ad4e5f1e616cf3
* | | Merge branch 'bjorn/erts/utf32/25/OTP-18560' into maintBjörn Gustavsson2023-04-253-0/+14
|\ \ \ | | | | | | | | | | | | | | | | * bjorn/erts/utf32/25/OTP-18560: Eliminate crash in matching of utf32 segment
| * | | Eliminate crash in matching of utf32 segmentBjörn Gustavsson2023-04-243-0/+14
| |/ /
* | | Merge branch 'rickard/no-native-atomics-fix/GH-7114/OTP-18563' into maintRickard Green2023-04-241-0/+1
|\ \ \ | | | | | | | | | | | | | | | | * rickard/no-native-atomics-fix/GH-7114/OTP-18563: [erts] Fix build without native atomics
| * | | [erts] Fix build without native atomicsRickard Green2023-04-241-0/+1
| |/ /
* | | Merge branch 'rickard/mon-link-dbg-fix' into maintRickard Green2023-04-241-6/+16
|\ \ \ | | | | | | | | | | | | | | | | * rickard/mon-link-dbg-fix: [erts] Fix debug functionalty for monitors/links
| * | | [erts] Fix debug functionalty for monitors/linksRickard Green2023-04-121-6/+16
| |/ /
* | | Merge branch 'maint-24' into maintJakub Witczak2023-04-212-2/+2
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | * maint-24: Updated OTP version Prepare release Update copyright year
| * | | Update copyright yearErlang/OTP2023-04-204-4/+4
| | | |
| * | | Merge branch 'rickard/aliasmonitor-fix/24.3/OTP-18557' into maint-24Erlang/OTP2023-04-203-5/+8
| |\ \ \ | | | | | | | | | | | | | | | | | | | | * rickard/aliasmonitor-fix/24.3/OTP-18557: [erts] Fix erroneous removal of alias from alias table
| * \ \ \ Merge branch 'sverker/dist-entry-bug-node-down/OTP-18243' into maint-24Erlang/OTP2023-04-201-10/+15
| |\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * sverker/dist-entry-bug-node-down/OTP-18243: erts: Fix bug in erts_internal:create_dist_channel/3 erts: ASSERT DistEntry.state == CONNECTED in erts_do_net_exits
| * \ \ \ \ Merge branch ↵Erlang/OTP2023-04-201-59/+61
| |\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 'sverker/24.3.4.9/erts/decode-unsorted-smallmap-in-hashmap/OTP-18343' into maint-24 * sverker/24.3.4.9/erts/decode-unsorted-smallmap-in-hashmap/OTP-18343: erts: Fix bug decoding unsorted flatmaps as keys in hashmap
| | * \ \ \ \ Merge branch 'sverker/23/erts/decode-unsorted-smallmap-in-hashmap/OTP-18343'Sverker Eriksson2023-03-231-59/+61
| | |\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | into sverker/24.3.4.9/erts/decode-unsorted-smallmap-in-hashmap/OTP-18343
| * | \ \ \ \ \ Merge branch 'rickard/driver-call-callback-fix/24.3.4/OTP-18525' into maint-24Erlang/OTP2023-04-201-16/+28
| |\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * rickard/driver-call-callback-fix/24.3.4/OTP-18525: [erts] Fix error case for driver call callback
| * | | | | | | | Update copyright yearErlang/OTP2023-03-173-3/+3
| | | | | | | | |
| * | | | | | | | Merge branch 'rickard/alias-cleanup-fix/24.3/GH-6947/OTP-18496' into maint-24Erlang/OTP2023-03-174-1/+42
| |\ \ \ \ \ \ \ \ | | |_|/ / / / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | * rickard/alias-cleanup-fix/24.3/GH-6947/OTP-18496: [erts] Ensure cleanup of alias table on alias destruction
* | | | | | | | | Merge branch 'rickard/aliasmonitor-fix/25.3/OTP-18557' into maintSverker Eriksson2023-04-193-5/+8
|\ \ \ \ \ \ \ \ \
| * \ \ \ \ \ \ \ \ Merge branch 'rickard/aliasmonitor-fix/24.3/OTP-18557' into ↵Rickard Green2023-04-183-5/+8
| |\ \ \ \ \ \ \ \ \ | | | |_|_|_|_|/ / / | | |/| | | | | / / | | |_|_|_|_|_|/ / | |/| | | | | | | | | | | | | | | | | | | | | | | | | rickard/aliasmonitor-fix/25.3/OTP-18557 * rickard/aliasmonitor-fix/24.3/OTP-18557: [erts] Fix erroneous removal of alias from alias table
| | * | | | | | | [erts] Fix erroneous removal of alias from alias tableRickard Green2023-04-183-5/+8
| | | |/ / / / / | | |/| | | | |
* | | | | | | | Merge branch 'john/erts/fix-ic-dc-config-test/OTP-18554' into maintJohn Högberg2023-04-171-3/+3
|\ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * john/erts/fix-ic-dc-config-test/OTP-18554: Update configure scripts erts: Fix ic/dc config tests and usage
| * | | | | | | | erts: Fix ic/dc config tests and usageJohn Högberg2023-04-141-3/+3
| |/ / / / / / / | | | | | | | | | | | | | | | | | | | | | | | | Fixes #7120
* | | | | | | | Merge branch 'john/erts/fix-overlapping-code-barriers-25/OTP-18553' into maintJohn Högberg2023-04-111-6/+17
|\ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * john/erts/fix-overlapping-code-barriers-25/OTP-18553: erts: Fix overlapping blocking code barriers in the same tick
| * | | | | | | | erts: Fix overlapping blocking code barriers in the same tickJohn Högberg2023-04-111-6/+17
| |/ / / / / / /
* | | | | | | | Merge branch 'rickard/driver-call-callback-fix/24.3.4/OTP-18525' into maintRickard Green2023-03-231-16/+28
|\ \ \ \ \ \ \ \ | | |_|_|/ / / / | |/| | | | | | | | | | | | | | | | | | | | | | * rickard/driver-call-callback-fix/24.3.4/OTP-18525: [erts] Fix error case for driver call callback
| * | | | | | | Merge branch 'rickard/driver-call-callback-fix/23.3.4/OTP-18525' into ↵Rickard Green2023-03-201-16/+28
| |\ \ \ \ \ \ \ | | |_|_|_|_|_|/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | rickard/driver-call-callback-fix/24.3.4/OTP-18525 * rickard/driver-call-callback-fix/23.3.4/OTP-18525: [erts] Fix error case for driver call callback
| | * | | | | | [erts] Fix error case for driver call callbackRickard Green2023-03-201-16/+28
| | | | | | | |
* | | | | | | | jit: Fix hd/1 and tl/1 BIF specializationJohn Högberg2023-03-163-28/+18
| |_|/ / / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | While we're at it, remove related loader transformations that only kicks in for unoptimized code.
* | | | | | | Update copyright yearErlang/OTP2023-03-0647-47/+47
| | | | | | |
* | | | | | | Merge pull request #6953 from ↵Rickard Green2023-03-024-1/+42
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | rickard-green/rickard/alias-cleanup-fix/25.2.3/GH-6947/OTP-18496 Alias cleanup fix
| * \ \ \ \ \ \ Merge branch 'rickard/alias-cleanup-fix/24.3/GH-6947/OTP-18496' into ↵Rickard Green2023-03-014-1/+42
| |\ \ \ \ \ \ \ | | | |_|/ / / / | | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | rickard/alias-cleanup-fix/25.2.3/GH-6947/OTP-18496 * rickard/alias-cleanup-fix/24.3/GH-6947/OTP-18496: [erts] Ensure cleanup of alias table on alias destruction
| | * | | | | | [erts] Ensure cleanup of alias table on alias destructionRickard Green2023-03-014-1/+42
| | | | | | | |
* | | | | | | | Merge pull request #6897 from bjorng/bjorn/erts/fix-list_to_integer/OTP-18475Björn Gustavsson2023-02-233-16/+30
|\ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | list_to_integer() & friends: Don't crash for overlong lists
| * | | | | | | | lists_to_integer() & friends: Don't crash for overlong listsBjörn Gustavsson2023-02-223-16/+30
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Let `list_to_integer/1` and `list_to_integer/2` raise a `system_limit` exception when the result doesn't fit in a bignum. Let `string:to_integer/1` return `{error,system_limit}` when the result doesn't fit.
* | | | | | | | | Merge branch 'maint-24' into maintIngela Anderton Andin2023-02-235-5/+5
|\ \ \ \ \ \ \ \ \ | |/ / / / / / / / |/| | | | | / / / | | |_|_|_|/ / / | |/| | | | | | | | | | | | | | | | | | | | | | * maint-24: Updated OTP version Prepare release Update copyright year
| * | | | | | | Update copyright yearErlang/OTP2023-02-225-5/+5
| | | | | | | |
| * | | | | | | Merge branch 'bjorn/erts/max_heap_size/24/OTP-18463' into maint-24Erlang/OTP2023-02-225-1/+29
| |\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * bjorn/erts/max_heap_size/24/OTP-18463: Exit process immediately when the max heap size is exceeded
| | * | | | | | | Exit process immediately when the max heap size is exceededBjörn Gustavsson2023-02-145-1/+29
| | | |_|/ / / / | | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Executing receive-related instructions would cause the process to enter a suspended state forever. Avoid that by scheduling out immediately after any GC if the process is exiting.
| * | | | | | | Merge branch 'rickard/pi-status-fix/OTP-18421' into maint-24Erlang/OTP2023-02-221-3/+8
| |\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * rickard/pi-status-fix/OTP-18421: [erts] Fix process_info(Pid, status)
| * | | | | | | | Update copyright yearErlang/OTP2023-01-126-6/+6
| | | | | | | | |
| * | | | | | | | Merge branch 'rickard/signal-handling-fix/24.3.4/OTP-18388' into maint-24Erlang/OTP2023-01-124-19/+136
| |\ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * rickard/signal-handling-fix/24.3.4/OTP-18388: [erts] Better testcase for dirty signal handling race [erts] Prevent execution of a process while dirty signal handling is done # Conflicts: # erts/emulator/beam/erl_bif_info.c
| * \ \ \ \ \ \ \ \ Merge branch 'john/erts/swapout-receive-markers/ERIERL-905/OTP-18383/24' ↵Erlang/OTP2023-01-123-2/+13
| |\ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | into maint-24 * john/erts/swapout-receive-markers/ERIERL-905/OTP-18383/24: erts: `recv_marker_reserve` needs stack too erts: erts_msgq_recv_marker_insert may allocate memory
| * | | | | | | | | | Update copyright yearErlang/OTP2022-12-192-2/+2
| | | | | | | | | | |
| * | | | | | | | | | Merge branch 'sverker/erts/list_to_atom-negative-code-points/OTP-18321' into ↵Erlang/OTP2022-12-191-6/+6
| |\ \ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | maint-24 * sverker/erts/list_to_atom-negative-code-points/OTP-18321: erts: Make list_to_atom reject all negative code points
| * \ \ \ \ \ \ \ \ \ \ Merge branch ↵Erlang/OTP2022-12-192-51/+68
| |\ \ \ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 'sverker/24/fix-binary_to_term-integer-overflow-2/OTP-18306/OTP-18328' into maint-24 * sverker/24/fix-binary_to_term-integer-overflow-2/OTP-18306/OTP-18328: dec_term: avoid integer overflow for LIST_EXT erts: Fix decode of BINARY_EXT and BIT_BINARY_EXT when size >= 2Gb erts: Refactor BINARY_OVERFLOW_CHECK into IS_BINARY_SIZE_OK
| * \ \ \ \ \ \ \ \ \ \ \ Merge branch 'rickard/dist-data-notify-dist-proc-fix/OTP-18258' into maint-24Erlang/OTP2022-10-041-4/+6
| |\ \ \ \ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * rickard/dist-data-notify-dist-proc-fix/OTP-18258: [erts] Fix dist data notification for distribution process
| * | | | | | | | | | | | | Update copyright yearErlang/OTP2022-09-131-1/+1
| | | | | | | | | | | | | |