On 13.06.2017 16:43, Thierry Reding wrote:
On Tue, May 23, 2017 at 03:14:22AM +0300, Dmitry Osipenko wrote:
The framebuffers console fbcon_startup() increments the tegra_drm module 'use' refcount via try_module_get(), causing an interlock of the DRM subsys and the tegra_drm modules. In result, the tegra_drm module can't be unloaded using rmmod.
Signed-off-by: Dmitry Osipenko digetx@gmail.com
drivers/gpu/drm/tegra/fb.c | 1 - 1 file changed, 1 deletion(-)
That's done on purpose because otherwise you could just rip out the driver from under the framebuffer emulation and things would crash.
My understanding is that the right way to unload a module is to unbind the driver first (which will cause the framebuffer to be removed and hence the reference to be dropped) before the rmmod.
Thierry
Aha, interesting. I'll try the unbinding and will drop this patch from the series, thank you for the clarification. I haven't observed any crashes on a module reloading (framebuffer detached/attached just fine), maybe I was lucky then.