From: Guenter Roeck <linux@roeck-us.net>
To: Alex Deucher <alexdeucher@gmail.com>
Cc: "Wentland, Harry" <Harry.Wentland@amd.com>,
"ndesaulniers@google.com" <ndesaulniers@google.com>,
"airlied@linux.ie" <airlied@linux.ie>,
"daniel@ffwll.ch" <daniel@ffwll.ch>,
"S@google.com" <S@google.com>,
"Laktyushkin, Dmytro" <Dmytro.Laktyushkin@amd.com>,
"Zhou, David(ChunMing)" <David1.Zhou@amd.com>,
"Li, Sun peng (Leo)" <Sunpeng.Li@amd.com>,
"dri-devel@lists.freedesktop.org"
<dri-devel@lists.freedesktop.org>,
"Daenzer, Michel" <Michel.Daenzer@amd.com>,
"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
"stable@vger.kernel.org" <stable@vger.kernel.org>,
"S, Shirish" <Shirish.S@amd.com>,
Matthias Kaehlcke <mka@google.com>,
Matthias Kaehlcke <mka@chromium.org>,
"amd-gfx@lists.freedesktop.org" <amd-gfx@lists.freedesktop.org>,
James Y Knight <jyknight@googl>
Subject: Re: [PATCH] drm/amd/display: add -msse2 to prevent Clang from emitting libcalls to undefined SW FP routines
Date: Tue, 29 Jan 2019 10:56:01 -0800 [thread overview]
Message-ID: <20190129185601.GA17525@roeck-us.net> (raw)
In-Reply-To: <CADnq5_OuSD7Bmeg3CP0Y6JTo9Xso2FTZ3tKk-u1C+-B32eUGmQ@mail.gmail.com>
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@amd.com> wrote:
> >
> > On 2019-01-24 7:52 p.m., ndesaulniers@google.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@vger.kernel.org # 4.19
> > > Reported-by: S, Shirish <Shirish.S@amd.com>
> > > Reported-by: Matthias Kaehlcke <mka@google.com>
> > > Suggested-by: James Y Knight <jyknight@google.com>
> > > Suggested-by: Nathan Chancellor <natechancellor@gmail.com>
> > > Signed-off-by: Nick Desaulniers <ndesaulniers@google.com>
> > > Tested-by: Guenter Roeck <linux@roeck-us.net>
> >
> > Reviewed-by: Harry Wentland <harry.wentland@amd.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.
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@lists.freedesktop.org
> > https://lists.freedesktop.org/mailman/listinfo/amd-gfx
WARNING: multiple messages have this Message-ID (diff)
From: Guenter Roeck <linux@roeck-us.net>
To: Alex Deucher <alexdeucher@gmail.com>
Cc: "Wentland, Harry" <Harry.Wentland@amd.com>,
"ndesaulniers@google.com" <ndesaulniers@google.com>,
"airlied@linux.ie" <airlied@linux.ie>,
"daniel@ffwll.ch" <daniel@ffwll.ch>,
"S@google.com" <S@google.com>,
"Laktyushkin, Dmytro" <Dmytro.Laktyushkin@amd.com>,
"Zhou, David(ChunMing)" <David1.Zhou@amd.com>,
"Li, Sun peng (Leo)" <Sunpeng.Li@amd.com>,
"dri-devel@lists.freedesktop.org"
<dri-devel@lists.freedesktop.org>,
"Daenzer, Michel" <Michel.Daenzer@amd.com>,
"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
"stable@vger.kernel.org" <stable@vger.kernel.org>,
"S, Shirish" <Shirish.S@amd.com>,
Matthias Kaehlcke <mka@google.com>,
Matthias Kaehlcke <mka@chromium.org>,
"amd-gfx@lists.freedesktop.org" <amd-gfx@lists.freedesktop.org>,
James Y Knight <jyknight@google.com>,
"Deucher, Alexander" <Alexander.Deucher@amd.com>,
Nathan Chancellor <natechancellor@gmail.com>,
"Cheng, Tony" <Tony.Cheng@amd.com>,
"Koenig, Christian" <Christian.Koenig@amd.com>
Subject: Re: [PATCH] drm/amd/display: add -msse2 to prevent Clang from emitting libcalls to undefined SW FP routines
Date: Tue, 29 Jan 2019 10:56:01 -0800 [thread overview]
Message-ID: <20190129185601.GA17525@roeck-us.net> (raw)
In-Reply-To: <CADnq5_OuSD7Bmeg3CP0Y6JTo9Xso2FTZ3tKk-u1C+-B32eUGmQ@mail.gmail.com>
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@amd.com> wrote:
> >
> > On 2019-01-24 7:52 p.m., ndesaulniers@google.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@vger.kernel.org # 4.19
> > > Reported-by: S, Shirish <Shirish.S@amd.com>
> > > Reported-by: Matthias Kaehlcke <mka@google.com>
> > > Suggested-by: James Y Knight <jyknight@google.com>
> > > Suggested-by: Nathan Chancellor <natechancellor@gmail.com>
> > > Signed-off-by: Nick Desaulniers <ndesaulniers@google.com>
> > > Tested-by: Guenter Roeck <linux@roeck-us.net>
> >
> > Reviewed-by: Harry Wentland <harry.wentland@amd.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.
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@lists.freedesktop.org
> > https://lists.freedesktop.org/mailman/listinfo/amd-gfx
next prev parent reply other threads:[~2019-01-29 18:56 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-01-25 0:52 [PATCH] drm/amd/display: add -msse2 to prevent Clang from emitting libcalls to undefined SW FP routines ndesaulniers
2019-01-25 1:03 ` Matthias Kaehlcke
2019-01-25 1:21 ` Nathan Chancellor
[not found] ` <20190125005304.183322-1-ndesaulniers-hpIqsD4AKlfQT0dZR+AlfA@public.gmane.org>
2019-01-25 15:29 ` Wentland, Harry
2019-01-25 15:29 ` Wentland, Harry
[not found] ` <04bc6844-2a3b-2de8-60a7-a027149709fd-5C7GfCeVMHo@public.gmane.org>
2019-01-29 15:30 ` Alex Deucher
2019-01-29 15:30 ` Alex Deucher
2019-01-29 18:56 ` Guenter Roeck [this message]
2019-01-29 18:56 ` Guenter Roeck
2019-01-29 19:01 ` Wentland, Harry
2019-01-29 19:01 ` Wentland, Harry
2019-01-29 19:10 ` Nick Desaulniers
2019-01-29 19:10 ` Nick Desaulniers
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20190129185601.GA17525@roeck-us.net \
--to=linux@roeck-us.net \
--cc=David1.Zhou@amd.com \
--cc=Dmytro.Laktyushkin@amd.com \
--cc=Harry.Wentland@amd.com \
--cc=Michel.Daenzer@amd.com \
--cc=S@google.com \
--cc=Shirish.S@amd.com \
--cc=Sunpeng.Li@amd.com \
--cc=airlied@linux.ie \
--cc=alexdeucher@gmail.com \
--cc=amd-gfx@lists.freedesktop.org \
--cc=daniel@ffwll.ch \
--cc=dri-devel@lists.freedesktop.org \
--cc=jyknight@googl \
--cc=linux-kernel@vger.kernel.org \
--cc=mka@chromium.org \
--cc=mka@google.com \
--cc=ndesaulniers@google.com \
--cc=stable@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.