Accepting request 719512 from home:matwey:branches:devel:languages:erlang:Factory

- Add patch 0001-erts-Do-not-use-named-no_cpuid-label-in-asm.patch:
  fix boo#1142913
- Changes for 22.0.7:
  * compiler: Fixed a compiler crash introduced in 22.0.6
    (OTP-15952).
- Changes for 22.0.6:
  * compiler: Fixed an unsafe optimization when matching
    tuple_size/1 outside of guards, which could crash the emulator
    if the argument was not a tuple.
  * compiler: Fixed a rare bug that could cause the wrong kind of
    exception to be thrown when a BIF failed in a function that
    matched bitstrings.
  * compiler: Fixed a bug where receive statements inside try/catch
    blocks could return incorrect results.
  * ssl: Enhance error handling for erroneous alerts from the peer.
  * hipe: The HiPE compiler would badly miscompile certain
    try/catch expressions, so it will now refuse to compile modules
    containing try or catch. As a consequence of this, dialyzer
    will no longer compile key modules to native code. ***
    POTENTIAL INCOMPATIBILITY ***
  * dialyzer: The HiPE compiler would badly miscompile certain
    try/catch expressions, so it will now refuse to compile modules
    containing try or catch. As a consequence of this, dialyzer
    will no longer compile key modules to native code. ***
    POTENTIAL INCOMPATIBILITY ***
- Changes for 22.0.5:
  * inets: Fix a regression in http client that causes a crash when
    request URI has no scheme.
  * ssl: Fix handling of certificate decoding problems in TLS 1.3
    similarly as in TLS 1.2.

OBS-URL: https://build.opensuse.org/request/show/719512
OBS-URL: https://build.opensuse.org/package/show/devel:languages:erlang:Factory/erlang?expand=0&rev=87
This commit is contained in:
2019-08-01 13:41:43 +00:00
committed by Git OBS Bridge
parent dd6b1b85fd
commit 06ee149183
5 changed files with 98 additions and 4 deletions
+56
View File
@@ -1,3 +1,59 @@
-------------------------------------------------------------------
Mon Jul 29 08:15:47 UTC 2019 - opensuse-packaging@opensuse.org
- Add patch 0001-erts-Do-not-use-named-no_cpuid-label-in-asm.patch:
fix boo#1142913
- Changes for 22.0.7:
* compiler: Fixed a compiler crash introduced in 22.0.6
(OTP-15952).
- Changes for 22.0.6:
* compiler: Fixed an unsafe optimization when matching
tuple_size/1 outside of guards, which could crash the emulator
if the argument was not a tuple.
* compiler: Fixed a rare bug that could cause the wrong kind of
exception to be thrown when a BIF failed in a function that
matched bitstrings.
* compiler: Fixed a bug where receive statements inside try/catch
blocks could return incorrect results.
* ssl: Enhance error handling for erroneous alerts from the peer.
* hipe: The HiPE compiler would badly miscompile certain
try/catch expressions, so it will now refuse to compile modules
containing try or catch. As a consequence of this, dialyzer
will no longer compile key modules to native code. ***
POTENTIAL INCOMPATIBILITY ***
* dialyzer: The HiPE compiler would badly miscompile certain
try/catch expressions, so it will now refuse to compile modules
containing try or catch. As a consequence of this, dialyzer
will no longer compile key modules to native code. ***
POTENTIAL INCOMPATIBILITY ***
- Changes for 22.0.5:
* inets: Fix a regression in http client that causes a crash when
request URI has no scheme.
* ssl: Fix handling of certificate decoding problems in TLS 1.3
similarly as in TLS 1.2.
* ssl: Hibernation now works as expected in all cases, was
accidently broken by optimization efforts.
* ssl: Fix interoperability problems with openssl when the TLS
1.3 server is configured wirh the option signature_algs_cert.
* dialyzer: Make sure Dialyzer does not crash if the formatting
of results fails. Instead of crashing, an unformatted version
of the results is returned.
* erts: An invalid value test caused the socket:setopt(Socket,
ip, add_membership, ip_mreq()) to fail with badarg. The same
for drop_membership.
* erts: Fixed bug causing VM crash when doing textual dump of a
process containing an unhandled monitor down signal. Textual
process dumps can be done with erlang:system_info(procs), trace
feature process_dump, Erlang shell break menu and a crashdump.
Bug exist since OTP 21.0.
* erts: lists:subtract/2 would produce incorrect results for some
inputs on 64-bit platforms.
* erts: Fixed a bug in the loader that was similar to OTP-15938,
yielding incorrect code for some inputs on 64-bit platforms.
* erts: Fixed bug causing scheduler threads in rare cases to
block spinnning indefinitely. Bug exists since OTP 21.0.
-------------------------------------------------------------------
Thu Jul 4 13:13:17 UTC 2019 - Matwey Kornilov <matwey.kornilov@gmail.com>
+4 -1
View File
@@ -26,7 +26,7 @@
%endif
Name: erlang
Version: 22.0.4
Version: 22.0.7
Release: 0
# not set up to be built with position independend executable support
#!BuildIgnore: gcc-PIE
@@ -46,6 +46,8 @@ Source9: README.SUSE
Patch0: otp-R16B-rpath.patch
# PATCH-FIX-OPENSUSE erlang-not-install-misc.patch - matwey.kornilov@gmail.com -- patch from Fedora, this removes unneeded magic
Patch4: erlang-not-install-misc.patch
# PATCH-FIX-UPSTREAM 0001-erts-Do-not-use-named-no_cpuid-label-in-asm.patch - matwey.kornilov@gmail.com boo#1142913
Patch5: 0001-erts-Do-not-use-named-no_cpuid-label-in-asm.patch
BuildRequires: autoconf
BuildRequires: gcc-c++
BuildRequires: ncurses-devel
@@ -300,6 +302,7 @@ A Graphics System used to write platform independent user interfaces.
%setup -q -n otp-OTP-%{version}
%patch0 -p1 -b .rpath
%patch4 -p1
%patch5 -p1
cp %{S:9} .
./otp_build autoconf
@@ -0,0 +1,35 @@
From eb0f74a6281eb7498d36a2ed5d15c442057aa1b2 Mon Sep 17 00:00:00 2001
From: "Matwey V. Kornilov" <matwey.kornilov@gmail.com>
Date: Fri, 26 Jul 2019 20:26:37 +0300
Subject: [PATCH] erts: Do not use named no_cpuid label in asm
Ask compiler to generate unique label name. Using named label has implications
on optimizer, that may lead to the compilation errors as the following:
pthread/ethread.c: Assembler messages:
pthread/ethread.c:213: Error: symbol `no_cpuid' is already defined
pthread/ethread.c:213: Error: symbol `no_cpuid' is already defined
pthread/ethread.c:213: Error: symbol `no_cpuid' is already defined
---
erts/lib_src/pthread/ethread.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/erts/lib_src/pthread/ethread.c b/erts/lib_src/pthread/ethread.c
index b4b12fcd86..b567ed81b0 100644
--- a/erts/lib_src/pthread/ethread.c
+++ b/erts/lib_src/pthread/ethread.c
@@ -208,9 +208,9 @@ ethr_x86_cpuid__(int *eax, int *ebx, int *ecx, int *edx)
"popl %%eax\n\t"
"movl $0x0, %0\n\t"
"xorl %%ecx, %%eax\n\t"
- "jz no_cpuid\n\t"
+ "jz 1f\n\t"
"movl $0x1, %0\n\t"
- "no_cpuid:\n\t"
+ "1:\n\t"
: "=r"(have_cpuid)
:
: "%eax", "%ecx", "cc");
--
2.16.4
BIN
View File
Binary file not shown.
BIN
View File
Binary file not shown.