mirror of
https://git.proxmox.com/git/mirror_ubuntu-kernels.git
synced 2025-12-10 05:37:12 +00:00
When booting a kernel compiled with clang's CFI protection
(CONFIG_CFI_CLANG), there is a CFI failure in
drm_simple_kms_crtc_mode_valid() when trying to call
simpledrm_simple_display_pipe_mode_valid() through ->mode_valid():
[ 0.322802] CFI failure (target: simpledrm_simple_display_pipe_mode_valid+0x0/0x8):
...
[ 0.324928] Call trace:
[ 0.324969] __ubsan_handle_cfi_check_fail+0x58/0x60
[ 0.325053] __cfi_check_fail+0x3c/0x44
[ 0.325120] __cfi_slowpath_diag+0x178/0x200
[ 0.325192] drm_simple_kms_crtc_mode_valid+0x58/0x80
[ 0.325279] __drm_helper_update_and_validate+0x31c/0x464
...
The ->mode_valid() member in 'struct drm_simple_display_pipe_funcs'
expects a return type of 'enum drm_mode_status', not 'int'. Correct it
to fix the CFI failure.
Cc: stable@vger.kernel.org
Fixes:
|
||
|---|---|---|
| .. | ||
| arcpgu.c | ||
| bochs.c | ||
| cirrus.c | ||
| gm12u320.c | ||
| hx8357d.c | ||
| ili9163.c | ||
| ili9225.c | ||
| ili9341.c | ||
| ili9486.c | ||
| Kconfig | ||
| Makefile | ||
| mi0283qt.c | ||
| panel-mipi-dbi.c | ||
| repaper.c | ||
| simpledrm.c | ||
| st7586.c | ||
| st7735r.c | ||