https://bugs.freedesktop.org/show_bug.cgi?id=105880
David Henningsson diwic@ubuntu.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |diwic@ubuntu.com
--- Comment #8 from David Henningsson diwic@ubuntu.com --- Hi,
I'm getting the same or similar error: * Black screen, no plymouth * "Cannot find any crtc or sizes" error in dmesg * amdgpu.dc=0 works around the issue
...and I might have a lead on it. The regression is between 4.15rc2 and 4.15rc3 (found by downloading kernels from http://kernel.ubuntu.com/~kernel-ppa/mainline/).
The only one commit I could see being relevant between 4.15rc2 and 4.15rc3 is this one:
commit a703c55004e1c5076d57e43771b3e11117796ea0 Author: Daniel Vetter daniel.vetter@ffwll.ch Date: Mon Dec 4 21:48:18 2017 +0100
drm: safely free connectors from connector_iter
...it seems relevant because the error I get is "Cannot find any crtc or sizes", and the code emitting this error message (in drivers/gpu/drm/drm_fb_helper.c) deals with connectors.
So could this commit cause connectors to be freed where the previous code did not? It seems like this could be the case, but only if (obj->free_cb == NULL) - drm_connector_put checks for a obj->free_cb being null whereas drm_connector_put_safe decrements a refcount regardless of whether a free_cb is present or not.
Does all this make sense, or am I out on deep water here?