lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <da0beeff-96eb-5585-50ef-904c8fe8af4d@amd.com>
Date:   Tue, 29 Jan 2019 19:01:51 +0000
From:   "Wentland, Harry" <Harry.Wentland@....com>
To:     Guenter Roeck <linux@...ck-us.net>,
        Alex Deucher <alexdeucher@...il.com>
CC:     "ndesaulniers@...gle.com" <ndesaulniers@...gle.com>,
        "airlied@...ux.ie" <airlied@...ux.ie>,
        "daniel@...ll.ch" <daniel@...ll.ch>, "S@...gle.com" <S@...gle.com>,
        "Laktyushkin, Dmytro" <Dmytro.Laktyushkin@....com>,
        "Zhou, David(ChunMing)" <David1.Zhou@....com>,
        "Li, Sun peng (Leo)" <Sunpeng.Li@....com>,
        "dri-devel@...ts.freedesktop.org" <dri-devel@...ts.freedesktop.org>,
        "Daenzer, Michel" <Michel.Daenzer@....com>,
        "linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
        "stable@...r.kernel.org" <stable@...r.kernel.org>,
        "S, Shirish" <Shirish.S@....com>,
        Matthias Kaehlcke <mka@...gle.com>,
        Matthias Kaehlcke <mka@...omium.org>,
        "amd-gfx@...ts.freedesktop.org" <amd-gfx@...ts.freedesktop.org>,
        James Y Knight <jyknight@...gle.com>,
        "Deucher, Alexander" <Alexander.Deucher@....com>,
        Nathan Chancellor <natechancellor@...il.com>,
        "Cheng, Tony" <Tony.Cheng@....com>,
        "Koenig, Christian" <Christian.Koenig@....com>
Subject: Re: [PATCH] drm/amd/display: add -msse2 to prevent Clang from
 emitting libcalls to undefined SW FP routines

On 2019-01-29 1:56 p.m., Guenter Roeck wrote:
> On Tue, Jan 29, 2019 at 10:30:31AM -0500, Alex Deucher wrote:
>> On Fri, Jan 25, 2019 at 10:29 AM Wentland, Harry <Harry.Wentland@....com> wrote:
>>>
>>> On 2019-01-24 7:52 p.m., ndesaulniers@...gle.com wrote:
>>>> arch/x86/Makefile disables SSE and SSE2 for the whole kernel.  The
>>>> AMDGPU drivers modified in this patch re-enable SSE but not SSE2.  Turn
>>>> on SSE2 to support emitting double precision floating point instructions
>>>> rather than calls to non-existent (usually available from gcc_s or
>>>> compiler_rt) floating point helper routines.
>>>>
>>>> Link: https://gcc.gnu.org/onlinedocs/gccint/Soft-float-library-routines.html
>>>> Link: https://github.com/ClangBuiltLinux/linux/issues/327
>>>> Cc: stable@...r.kernel.org # 4.19
>>>> Reported-by: S, Shirish <Shirish.S@....com>
>>>> Reported-by: Matthias Kaehlcke <mka@...gle.com>
>>>> Suggested-by: James Y Knight <jyknight@...gle.com>
>>>> Suggested-by: Nathan Chancellor <natechancellor@...il.com>
>>>> Signed-off-by: Nick Desaulniers <ndesaulniers@...gle.com>
>>>> Tested-by: Guenter Roeck <linux@...ck-us.net>
>>>
>>> Reviewed-by: Harry Wentland <harry.wentland@....com>
>>>
>>> and applied.
>>>
>>
>> This patch causes a segfault:
>> https://bugs.freedesktop.org/show_bug.cgi?id=109487
>>
>> Any ideas?
>>
> 
> Set -msse2 only for clang ? I suspect, though, that this might only
> solve the compile problem. If I understand correctly, the first
> warning in the log is due to BREAK_TO_DEBUGGER(), suggesting that
> something is seriously wrong. Maybe enabling sse2 results in different
> results from floating point operations.
> 
> Unfortunately I don't have a system with the affected GPU,
> so I can't run any tests on real hardware. Unless someone can test
> with real hardware, I think we have no choice but to revert the
> patch.
> 

Might be a good idea. Even though, best to revert for now until we understand what's going on.

It seems like people at AMD building with gcc 5.4 are fine, but those using gcc 7.3 or 8.2 experience the crash.

Harry

> Guenter
> 
>> Alex
>>
>>> Harry
>>>
>>>> ---
>>>>  drivers/gpu/drm/amd/display/dc/calcs/Makefile | 2 +-
>>>>  drivers/gpu/drm/amd/display/dc/dml/Makefile   | 2 +-
>>>>  2 files changed, 2 insertions(+), 2 deletions(-)
>>>>
>>>> diff --git a/drivers/gpu/drm/amd/display/dc/calcs/Makefile b/drivers/gpu/drm/amd/display/dc/calcs/Makefile
>>>> index 95f332ee3e7e..dc85a3c088af 100644
>>>> --- a/drivers/gpu/drm/amd/display/dc/calcs/Makefile
>>>> +++ b/drivers/gpu/drm/amd/display/dc/calcs/Makefile
>>>> @@ -30,7 +30,7 @@ else ifneq ($(call cc-option, -mstack-alignment=16),)
>>>>       cc_stack_align := -mstack-alignment=16
>>>>  endif
>>>>
>>>> -calcs_ccflags := -mhard-float -msse $(cc_stack_align)
>>>> +calcs_ccflags := -mhard-float -msse -msse2 $(cc_stack_align)
>>>>
>>>>  CFLAGS_dcn_calcs.o := $(calcs_ccflags)
>>>>  CFLAGS_dcn_calc_auto.o := $(calcs_ccflags)
>>>> diff --git a/drivers/gpu/drm/amd/display/dc/dml/Makefile b/drivers/gpu/drm/amd/display/dc/dml/Makefile
>>>> index d97ca6528f9d..33c7d7588712 100644
>>>> --- a/drivers/gpu/drm/amd/display/dc/dml/Makefile
>>>> +++ b/drivers/gpu/drm/amd/display/dc/dml/Makefile
>>>> @@ -30,7 +30,7 @@ else ifneq ($(call cc-option, -mstack-alignment=16),)
>>>>       cc_stack_align := -mstack-alignment=16
>>>>  endif
>>>>
>>>> -dml_ccflags := -mhard-float -msse $(cc_stack_align)
>>>> +dml_ccflags := -mhard-float -msse -msse2 $(cc_stack_align)
>>>>
>>>>  CFLAGS_display_mode_lib.o := $(dml_ccflags)
>>>>  CFLAGS_display_pipe_clocks.o := $(dml_ccflags)
>>>>
>>> _______________________________________________
>>> amd-gfx mailing list
>>> amd-gfx@...ts.freedesktop.org
>>> https://lists.freedesktop.org/mailman/listinfo/amd-gfx

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ