Messages in this thread | | | From | Linus Torvalds <> | Date | Tue, 15 Dec 2020 20:22:23 -0800 | Subject | New objtool warning.. |
| |
I only see this on my laptop, but that's probably because my desktop is built using clang. So it's a gcc code generation interaction, I suspect..
Anyway, the new warning is
drivers/gpu/drm/drm_edid.o: warning: objtool: do_cvt_mode() falls through to next function drm_mode_detailed.isra.0()
and googling around a bit I see that 0day ended up reporting it on the linux-next lists, and blames commit 991fcb77f490 ("drm/edid: Fix uninitialized variable in drm_cvt_modes()").
That presumably then makes gcc generate that odd code.
That "unreachable()" is because the compiler isn't smart enough to see that yes, there really are case statements for every single possible case. Oh well. Maybe the code should just make one of the possible cases also be the "default:" case, and that might fix it.
But maybe this is worth looking into for objtool too?
Anyway, I see it with gcc-10.2.1 as per current F32. Holler if you can't reproduce it, I can send the object file around.
Linus
| |