linux/drivers/gpu/drm
Nick Desaulniers e8a170ff9a drm/amdgpu: enable -msse2 for GCC 7.1+ users
A final attempt at enabling sse2 for GCC users.

Orininally attempted in:
commit 1011745073 ("drm/amd/display: add -msse2 to prevent Clang from emitting libcalls to undefined SW FP routines")

Reverted due to "reported instability" in:
commit 193392ed9f ("Revert "drm/amd/display: add -msse2 to prevent Clang from emitting libcalls to undefined SW FP routines"")

Re-added just for Clang in:
commit 0f0727d971 ("drm/amd/display: readd -msse2 to prevent Clang from emitting libcalls to undefined SW FP routines")

The original report didn't have enough information to know if the GPF
was due to misalignment, but I suspect that it was. (The missing
information was the disassembly of the function at the bottom of the
trace, to see if the instruction pointer pointed to an instruction with
16B alignment memory operand requirements.  The stack trace does show
the stack was only 8B but not 16B aligned though, which makes this a
strong possibility).

Now that the stack misalignment issue has been fixed for users of GCC
7.1+, reattempt adding -msse2. This matches Clang.

It will likely never be safe to enable this for pre-GCC 7.1 AND use a
16B aligned stack in these translation units.

This is only a functional change for GCC 7.1+ users, and should be boot
tested.

Link: https://bugs.freedesktop.org/show_bug.cgi?id=109487
Signed-off-by: Nick Desaulniers <ndesaulniers@google.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
2019-10-30 11:56:20 -04:00
..
amd drm/amdgpu: enable -msse2 for GCC 7.1+ users 2019-10-30 11:56:20 -04:00
arc drm/arc: Drop drm_gem_prime_export/import 2019-06-21 20:02:10 +02:00
arm drm/komeda: Fix typos in komeda_splitter_validate 2019-10-21 14:50:51 +01:00
armada drm/armada: drop use of drmP.h 2019-08-14 18:31:10 +02:00
aspeed drm/aspeed: gfc_crtc: Make structure aspeed_gfx_funcs constant 2019-08-14 19:27:26 +02:00
ast drm main pull for 5.4-rc1 2019-09-19 16:24:24 -07:00
atmel-hlcdc Linus 5.3-rc1 2019-07-22 21:24:10 +02:00
bochs drm/bochs: Use dev_get_drvdata 2019-08-06 09:20:58 +02:00
bridge drm/bridge: tc358767: fix max_tu_symbol value 2019-10-10 11:15:45 +02:00
cirrus drm/prime: Actually remove DRIVER_PRIME everywhere 2019-06-21 17:30:32 +02:00
etnaviv drm/etnaviv: fix missing unlock on error in etnaviv_iommuv1_context_alloc() 2019-09-02 12:48:55 +02:00
exynos drm main pull for 5.4-rc1 2019-09-19 16:24:24 -07:00
fsl-dcu drm/fsl-dcu: fix opencoded use of drm_panel_* 2019-08-10 15:41:48 +02:00
gma500 Linux 5.2-rc5 2019-06-19 12:07:29 +02:00
hisilicon drm-misc-next for 5.4: 2019-08-27 17:21:04 +10:00
i2c drm/i2c/tda998x: drop use of drmP.h 2019-08-14 18:30:52 +02:00
i810 drm/i810: drop use of drmP.h 2019-07-17 12:52:55 +02:00
i915 drm/i915: Fixup preempt-to-busy vs resubmission of a virtual request 2019-10-16 10:57:33 -07:00
imx drm/imx: IPUv3 image converter fixes and improvements 2019-08-27 16:52:12 +10:00
ingenic drm main pull for 5.4-rc1 2019-09-19 16:24:24 -07:00
lib
lima drm main pull for 5.4-rc1 2019-09-19 16:24:24 -07:00
mcde drm main pull for 5.4-rc1 2019-09-19 16:24:24 -07:00
mediatek drm main pull for 5.4-rc1 2019-09-19 16:24:24 -07:00
meson drm: meson: use match data to detect vpu compatibility 2019-08-22 17:54:05 +02:00
mga drm/mga: drop use of drmP.h 2019-06-30 09:48:05 +02:00
mgag200 drm/mgag200: Provide ddc symlink in connector sysfs directory 2019-07-31 16:33:09 +02:00
msm drm/msm/dsi: Implement reset correctly 2019-10-11 14:04:31 -04:00
mxsfb dma-buf: rename reservation_object to dma_resv 2019-08-13 09:09:30 +02:00
nouveau drm fixes for 5.4-rc1 2019-09-27 11:13:35 -07:00
omapdrm Merge drm/drm-fixes into drm-misc-fixes 2019-10-03 09:59:29 +02:00
panel drm/panel: tpo-td043mtea1: Fix SPI alias 2019-10-08 08:02:20 +03:00
panfrost drm/panfrost: Handle resetting on timeout better 2019-10-15 11:38:22 -05:00
pl111 drm/pl111: Support grayscale 2019-08-09 09:15:05 +02:00
qxl drm main pull for 5.4-rc1 2019-09-19 16:24:24 -07:00
r128 drm/r128: drop use of drmP.h 2019-07-17 12:52:55 +02:00
radeon drm/radeon: Fix EEH during kexec 2019-10-30 11:56:20 -04:00
rcar-du Merge drm/drm-fixes into drm-misc-fixes 2019-10-03 09:59:29 +02:00
rockchip drm fixes for 5.4-rc1 2019-09-27 11:13:35 -07:00
savage drm/savage: drop use of drmP.h 2019-06-05 20:31:04 +02:00
scheduler drm/sched: Set error to s_fence if HW job submission failed. 2019-10-30 11:56:15 -04:00
selftests drm main pull for 5.4-rc1 2019-09-19 16:24:24 -07:00
shmobile drm/shmobile: drop use of drmP.h 2019-07-15 18:11:31 +02:00
sis drm/sis: drop drmP.h use 2019-06-05 20:29:57 +02:00
sti drm/sti: fix opencoded use of drm_panel_* 2019-08-07 13:54:17 +02:00
stm drm/stm: attach gem fence to atomic state 2019-07-25 12:00:09 +02:00
sun4i drm main pull for 5.4-rc1 2019-09-19 16:24:24 -07:00
tdfx drm/tdfx: drop use of drmP.h 2019-07-17 12:52:55 +02:00
tegra drm main pull for 5.4-rc1 2019-09-19 16:24:24 -07:00
tilcdc drm/tilcdc: include linux/pinctrl/consumer.h again 2019-09-30 19:24:47 +03:00
tiny drm/tiny: Kconfig: Remove always-y THERMAL dep. from TINYDRM_REPAPER 2019-10-10 15:15:51 +02:00
ttm drm/ttm: fix handling in ttm_bo_add_mem_to_lru 2019-10-14 13:21:15 +02:00
tve200 drm/tve200: drop use of drmP.h 2019-07-15 18:11:30 +02:00
udl drm/udl: drop use of drmP.h 2019-07-17 12:52:55 +02:00
v3d dma-buf: rename reservation_object to dma_resv 2019-08-13 09:09:30 +02:00
vboxvideo drm/vboxvideo: Make structure vbox_fb_helper_funcs constant 2019-08-18 12:52:52 +02:00
vc4 Merge drm/drm-fixes into drm-misc-fixes 2019-10-03 09:59:29 +02:00
vgem dma-buf: rename reservation_object to dma_resv 2019-08-13 09:09:30 +02:00
via drivers/gpu/drm/via: convert put_page() to put_user_page*() 2019-09-24 15:54:08 -07:00
virtio drm main pull for 5.4-rc1 2019-09-19 16:24:24 -07:00
vkms drm/vkms: drop use of drmP.h 2019-07-15 18:11:30 +02:00
vmwgfx drm main pull for 5.4-rc1 2019-09-19 16:24:24 -07:00
xen xen: fixes for 5.4-rc3 2019-10-12 14:11:21 -07:00
zte Linus 5.3-rc1 2019-07-22 21:24:10 +02:00
ati_pcigart.c drm/ati_pcigart: drop dependency on drm_os_linux.h 2019-07-19 23:24:16 +02:00
drm_agpsupport.c gpu/drm: fix a few kernel-doc "/**" mark warnings 2019-07-16 11:25:02 +02:00
drm_atomic_helper.c drm: Measure Self Refresh Entry/Exit times to avoid thrashing 2019-09-19 10:03:32 -04:00
drm_atomic_state_helper.c drm/atomic: Rename crtc_state->pageflip_flags to async_flip 2019-09-18 18:43:36 +02:00
drm_atomic_uapi.c drm/atomic: Reject FLIP_ASYNC unconditionally 2019-09-18 18:42:57 +02:00
drm_atomic.c drm: Free the writeback_job when it with an empty fb 2019-09-23 15:31:53 +08:00
drm_auth.c drm: drop use of drmP.h in drm/* 2019-05-27 18:07:03 +02:00
drm_blend.c drm: drop use of drmP.h in drm/* 2019-05-27 18:07:03 +02:00
drm_bridge.c drm: Add atomic variants for bridge enable/disable 2019-06-13 13:00:29 -04:00
drm_bufs.c drm main pull request for v5.3-rc1 (sans mm changes) 2019-07-15 19:04:27 -07:00
drm_cache.c
drm_client_modeset.c drm/modes: Don't apply cmdline's rotation if it wasn't specified 2019-07-16 10:34:38 +02:00
drm_client.c drm/fb-helper: Map DRM client buffer only when required 2019-08-01 15:01:29 +02:00
drm_color_mgmt.c drm: drop use of drmP.h in drm/* 2019-05-27 18:07:03 +02:00
drm_connector.c drm: Fix kerneldoc warns in connector-related docs 2019-08-12 10:16:39 -04:00
drm_context.c drm: drop use of drmP.h in drm/* 2019-05-27 18:07:03 +02:00
drm_crtc_helper_internal.h
drm_crtc_helper.c drm: Remove bridge support from legacy helpers 2019-08-16 15:50:27 +03:00
drm_crtc_internal.h drm/atomic: Move __drm_atomic_helper_disable_plane/set_config() 2019-06-08 16:46:37 +02:00
drm_crtc.c drm: no need to check return value of debugfs_create functions 2019-06-13 16:39:16 +02:00
drm_damage_helper.c drm/damage-helper: Use NULL instead of 0 2019-05-28 09:03:06 +02:00
drm_debugfs_crc.c drm/crc-debugfs: Add notes about CRC<->commit interactions 2019-08-06 18:27:53 +01:00
drm_debugfs.c drm: debugfs: make drm_debugfs_create_files() never fail 2019-06-14 16:59:51 +02:00
drm_dma.c gpu/drm: fix a few kernel-doc "/**" mark warnings 2019-07-16 11:25:02 +02:00
drm_dp_aux_dev.c drm/dp_mst: Enable registration of AUX devices for MST ports 2019-07-25 16:39:35 -04:00
drm_dp_cec.c
drm_dp_dual_mode_helper.c
drm_dp_helper.c drm: Make the bw/link rate calculations more forgiving 2019-07-17 12:45:30 -04:00
drm_dp_mst_topology.c drm/mst: Fix sphinx warnings in drm_dp_msg_connector register functions 2019-07-26 14:48:03 -04:00
drm_drv.c drm/kms: Duct-tape for mode object lifetime checks 2019-09-18 11:27:18 +02:00
drm_dsc.c
drm_dumb_buffers.c Revert "drm/gem: Rename drm_gem_dumb_map_offset() to drm_gem_map_offset()" 2019-08-07 11:56:48 -04:00
drm_edid_load.c Merge remote-tracking branch 'drm/drm-next' into drm-misc-next 2019-05-28 09:39:08 +02:00
drm_edid.c drm/edid: Add 6 bpc quirk for SDC panel in Lenovo G50 2019-10-10 09:06:54 -05:00
drm_encoder_slave.c
drm_encoder.c drm: drop use of drmP.h in drm/* 2019-05-27 18:07:03 +02:00
drm_fb_cma_helper.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 157 2019-05-30 11:26:37 -07:00
drm_fb_helper.c drm/fb-helper: Instanciate shadow FB if configured in device's mode_config 2019-08-01 15:01:35 +02:00
drm_file.c drm/prime: Unconditionally set up the prime file private 2019-06-21 11:48:09 +02:00
drm_flip_work.c drm: drop use of drmP.h in drm/* 2019-05-27 18:07:03 +02:00
drm_format_helper.c
drm_fourcc.c drm: drop use of drmP.h in drm/* 2019-05-27 18:07:03 +02:00
drm_framebuffer.c drm: silence variable 'conn' set but not used 2019-07-22 16:04:53 -04:00
drm_gem_cma_helper.c Linux 5.2-rc5 2019-06-19 12:07:29 +02:00
drm_gem_framebuffer_helper.c dma-buf: rename reservation_object to dma_resv 2019-08-13 09:09:30 +02:00
drm_gem_shmem_helper.c drm/shmem: Use mutex_trylock in drm_gem_shmem_purge 2019-08-28 10:02:39 -05:00
drm_gem_vram_helper.c drm/ttm: use gem vma_node 2019-08-06 08:21:54 +02:00
drm_gem.c dma-buf: rename reservation_object to dma_resv 2019-08-13 09:09:30 +02:00
drm_hashtab.c drm: drop use of drmP.h in drm/* 2019-05-27 18:07:03 +02:00
drm_hdcp.c drm/hdcp: reference for srm file format 2019-08-06 13:18:42 +05:30
drm_internal.h drm/gem: Unexport drm_gem_(un)pin/v(un)map 2019-06-17 17:37:01 +02:00
drm_ioc32.c Linus 5.3-rc1 2019-07-22 21:24:10 +02:00
drm_ioctl.c drm/atomic: Take the atomic toys away from X 2019-09-18 18:42:21 +02:00
drm_irq.c drm: drop use of drmP.h in drm/* 2019-05-27 18:07:03 +02:00
drm_kms_helper_common.c drm: fix module name in edid_firmware log message 2019-08-22 10:41:06 +03:00
drm_lease.c Linux 5.2-rc5 2019-06-19 12:07:29 +02:00
drm_legacy_misc.c gpu/drm: fix a few kernel-doc "/**" mark warnings 2019-07-16 11:25:02 +02:00
drm_legacy.h drm: make drm_legacy.h self-contained 2019-05-27 18:06:47 +02:00
drm_lock.c gpu/drm: fix a few kernel-doc "/**" mark warnings 2019-07-16 11:25:02 +02:00
drm_memory.c gpu/drm: fix a few kernel-doc "/**" mark warnings 2019-07-16 11:25:02 +02:00
drm_mipi_dbi.c drm/tinydrm: Move mipi-dbi 2019-07-25 10:45:07 +02:00
drm_mipi_dsi.c drivers: Introduce device lookup variants by of_node 2019-07-30 13:07:41 +02:00
drm_mm.c drm: Allow range of 0 for drm_mm_insert_node_in_range() 2019-06-26 21:13:12 +01:00
drm_mode_config.c drm: drop use of drmP.h in drm/* 2019-05-27 18:07:03 +02:00
drm_mode_object.c drm/kms: Duct-tape for mode object lifetime checks 2019-09-18 11:27:18 +02:00
drm_modes.c drm main pull for 5.4-rc1 2019-09-19 16:24:24 -07:00
drm_modeset_helper.c
drm_modeset_lock.c docs conversion for v5.3-rc1 2019-07-16 12:21:41 -07:00
drm_of.c Merge remote-tracking branch 'drm/drm-next' into drm-misc-next 2019-05-28 09:39:08 +02:00
drm_panel_orientation_quirks.c drm: panel-orientation-quirks: Add extra quirk table entry for GPD MicroPC 2019-07-01 16:58:09 +02:00
drm_panel.c drm/panel: drop return code from drm_panel_detach() 2019-08-10 15:41:48 +02:00
drm_pci.c drm: drop use of drmP.h in drm/* 2019-05-27 18:07:03 +02:00
drm_plane_helper.c drm: drop use of drmP.h in drm/* 2019-05-27 18:07:03 +02:00
drm_plane.c
drm_prime.c drm/prime: Ditch gem_prime_res_obj hook 2019-07-31 10:19:23 +02:00
drm_print.c drm: drop use of drmP.h in drm/* 2019-05-27 18:07:03 +02:00
drm_probe_helper.c Linux 5.2-rc5 2019-06-19 12:07:29 +02:00
drm_property.c drm: drop use of drmP.h in drm/* 2019-05-27 18:07:03 +02:00
drm_rect.c drm: drop use of drmP.h in drm/* 2019-05-27 18:07:03 +02:00
drm_scatter.c gpu/drm: fix a few kernel-doc "/**" mark warnings 2019-07-16 11:25:02 +02:00
drm_scdc_helper.c drm: drop use of drmP.h in drm/* 2019-05-27 18:07:03 +02:00
drm_self_refresh_helper.c drm: Measure Self Refresh Entry/Exit times to avoid thrashing 2019-09-19 10:03:32 -04:00
drm_simple_kms_helper.c Linux 5.2-rc5 2019-06-19 12:07:29 +02:00
drm_syncobj.c drm/syncobj: Add better overview documentation for syncobj (v2) 2019-08-12 16:58:52 +02:00
drm_sysfs.c drm: uevent for connector status change 2019-08-06 13:16:54 +05:30
drm_trace_points.c drm: drop use of drmP.h in drm/* 2019-05-27 18:07:03 +02:00
drm_trace.h drm: make drm_trace.h self-contained 2019-05-27 18:06:54 +02:00
drm_vblank.c drm/vblank: drop use of DRM_WAIT_ON() 2019-08-03 16:07:39 +02:00
drm_vm.c gpu/drm: fix a few kernel-doc "/**" mark warnings 2019-07-16 11:25:02 +02:00
drm_vma_manager.c drm: drop use of drmP.h in drm/* 2019-05-27 18:07:03 +02:00
drm_vram_helper_common.c
drm_vram_mm_helper.c drm: drop use of drmP.h in drm/* 2019-05-27 18:07:03 +02:00
drm_writeback.c drm: Clear the fence pointer when writeback job signaled 2019-09-23 15:32:53 +08:00
Kconfig drm-misc-next for 5.4: 2019-08-09 16:04:31 +10:00
Makefile drm/amd: remove meaningless descending into amd/amdkfd/ 2019-08-27 10:09:12 -05:00