drm/etnaviv: split obj locks in different classes depending on the obj type
authorLucas Stach <l.stach@pengutronix.de>
Fri, 17 Nov 2017 10:14:58 +0000 (11:14 +0100)
committerLucas Stach <l.stach@pengutronix.de>
Tue, 2 Jan 2018 16:02:48 +0000 (17:02 +0100)
commitd6a8743dd8cc1e2ca5e40e07fe3de7557ac117a0
tree87b60be60f5b9b9250bb5456f67d86d17fbe5da8
parentb9a48aa76c72fb4d0990425f82fdeb4fdff2b2b1
drm/etnaviv: split obj locks in different classes depending on the obj type

Userptr, prime and shmem buffer objects have different lock ordering
requirements. This is mostly due to the fact that we don't allow to mmap
userptr buffers, so we won't ever end up in our fault handler for those,
so some of the code paths are never called with the mmap_sem held.

To avoid lockdep false positives, split them up into different lock classes.

Signed-off-by: Lucas Stach <l.stach@pengutronix.de>
Reviewed-by: Christian Gmeiner <christian.gmeiner@gmail.com>
Reviewed-by: Philipp Zabel <p.zabel@pengutronix.de>
drivers/gpu/drm/etnaviv/etnaviv_gem.c
drivers/gpu/drm/etnaviv/etnaviv_gem_prime.c