On Wed, Dec 18, 2019 at 7:08 PM John Garry <john.garry@xxxxxxxxxx> wrote:
+
So the v5.4 kernel does not have this issue.
I have bisected the initial occurrence to:
commit 37a48adfba6cf6e87df9ba8b75ab85d514ed86d8
Author: Thomas Zimmermann <tzimmermann@xxxxxxx>
Date: Fri Sep 6 14:20:53 2019 +0200
drm/vram: Add kmap ref-counting to GEM VRAM objects
The kmap and kunmap operations of GEM VRAM buffers can now be called
in interleaving pairs. The first call to drm_gem_vram_kmap() maps the
buffer's memory to kernel address space and the final call to
drm_gem_vram_kunmap() unmaps the memory. Intermediate calls to these
functions increment or decrement a reference counter.
So this either exposes or creates the issue.
Yeah that's just shooting the messenger.
you can pretty much assume that their unload sequence has been broken
since forever. It's not often tested, and especially the hotunbind
from a device (as opposed to driver unload) stuff wasn't even possible
to get right until just recently.