On 6/29/2015 7:22 AM, Mark Brown wrote:
On Mon, Jun 29, 2015 at 10:03:09PM +0800, Nicolas Boichat wrote:
regmap instances are kalloc'ed, so they cannot contain the lock_class_key, which needs to be statically allocated (in .data). Another option would be to preallocate a bunch of lock_class_key in regmap.c, and pick from that, but that's terribly hacky...
Honestly this is all starting to sound like we're having to jump through too many hoops for lockep (and other APIs are too from the sounds of it) so we should be looking at lockdep here.
lockdep assumes that there is a known lock hierarchy, at least known to the developer.
seems like for regmap there isn't
(I would be interested to know how you avoid ABBA deadlocks btw, can you have 2 devices, one with a hierarchy one way, and another with the hierarchy the other way?)