[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <558C229D.4090409@metafoo.de>
Date: Thu, 25 Jun 2015 17:47:41 +0200
From: Lars-Peter Clausen <lars@...afoo.de>
To: Mark Brown <broonie@...nel.org>
CC: Arjan van de Ven <arjan@...ux.intel.com>,
Nicolas Boichat <drinkcat@...omium.org>,
Mauro Carvalho Chehab <mchehab@....samsung.com>,
Antti Palosaari <crope@....fi>, Ingo Molnar <mingo@...hat.com>,
Greg Kroah-Hartman <gregkh@...uxfoundation.org>,
linux-kernel@...r.kernel.org, Bard Liao <bardliao@...ltek.com>,
Oder Chiou <oder_chiou@...ltek.com>,
Liam Girdwood <lgirdwood@...il.com>,
Jaroslav Kysela <perex@...ex.cz>, Takashi Iwai <tiwai@...e.de>,
alsa-devel@...a-project.org,
Anatol Pomozov <anatol.pomozov@...il.com>
Subject: Re: [RFC PATCH 1/2] regmap: add configurable lock class key for lockdep
On 06/25/2015 05:33 PM, Mark Brown wrote:
> On Thu, Jun 25, 2015 at 05:03:00PM +0200, Lars-Peter Clausen wrote:
>> On 06/25/2015 03:21 PM, Arjan van de Ven wrote:
>
>>> wouldn't it be better to use the mutex_lock_nested() and co to explicitly
>>> express your hierarchy?
>
>> That would require that the hierarchy is known in advance. The hierarchy
>> depends on the hardware topology. Different systems will have different
>> hierarchies where the relationship between locks can change and it will be
>> hard to find a hierarchy that works across all topologies.
>
> It depends on what you use as the key for the nested locking stuff. If
> you assign a key per regmap (casting the pointer to an integer, using an
> IDR or something). I don't know if that creates problems for the
> locking code, I'd not expect so but then I'd not have expected the
> problem in the first place.
The maximum number of subclasses is 8 per lockclass, so a IDR that
increments which each created regmap instance wouldn't really work.
And while on the other hand we probably wont have a hierarchy deeper than 8
nested regmap instances it is not trivial to figure out which instance is at
which level.
>
> As far as I can tell we're likely to end up needing a key per regmap or
> something similar.
>
Since the number of lockdep classes itself is also limited we should avoid
creating extra lockdep classes when we can. I think the approach which
having the option of specifying a lockdep class in the regmap config will be
ok. The only case it can't handle if we nest instances with the same config,
but I don't really see valid use scases for that at the moment.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists