From: Lars-Peter Clausen <lars@metafoo.de> To: Mark Brown <broonie@kernel.org> Cc: Arjan van de Ven <arjan@linux.intel.com>, Nicolas Boichat <drinkcat@chromium.org>, Mauro Carvalho Chehab <mchehab@osg.samsung.com>, Antti Palosaari <crope@iki.fi>, Ingo Molnar <mingo@redhat.com>, Greg Kroah-Hartman <gregkh@linuxfoundation.org>, linux-kernel@vger.kernel.org, Bard Liao <bardliao@realtek.com>, Oder Chiou <oder_chiou@realtek.com>, Liam Girdwood <lgirdwood@gmail.com>, Jaroslav Kysela <perex@perex.cz>, Takashi Iwai <tiwai@suse.de>, alsa-devel@alsa-project.org, Anatol Pomozov <anatol.pomozov@gmail.com> Subject: Re: [RFC PATCH 1/2] regmap: add configurable lock class key for lockdep Date: Thu, 25 Jun 2015 17:47:41 +0200 [thread overview] Message-ID: <558C229D.4090409@metafoo.de> (raw) In-Reply-To: <20150625153325.GR14071@sirena.org.uk> 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.
WARNING: multiple messages have this Message-ID (diff)
From: Lars-Peter Clausen <lars@metafoo.de> To: Mark Brown <broonie@kernel.org> Cc: Oder Chiou <oder_chiou@realtek.com>, alsa-devel@alsa-project.org, Nicolas Boichat <drinkcat@chromium.org>, Anatol Pomozov <anatol.pomozov@gmail.com>, Mauro Carvalho Chehab <mchehab@osg.samsung.com>, Takashi Iwai <tiwai@suse.de>, Greg Kroah-Hartman <gregkh@linuxfoundation.org>, linux-kernel@vger.kernel.org, Liam Girdwood <lgirdwood@gmail.com>, Antti Palosaari <crope@iki.fi>, Bard Liao <bardliao@realtek.com>, Arjan van de Ven <arjan@linux.intel.com>, Ingo Molnar <mingo@redhat.com> Subject: Re: [RFC PATCH 1/2] regmap: add configurable lock class key for lockdep Date: Thu, 25 Jun 2015 17:47:41 +0200 [thread overview] Message-ID: <558C229D.4090409@metafoo.de> (raw) In-Reply-To: <20150625153325.GR14071@sirena.org.uk> 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.
next prev parent reply other threads:[~2015-06-25 15:47 UTC|newest] Thread overview: 32+ messages / expand[flat|nested] mbox.gz Atom feed top 2015-06-25 9:35 [RFC PATCH 1/2] regmap: add configurable lock class key for lockdep Nicolas Boichat 2015-06-25 9:35 ` [RFC PATCH 2/2] ASoC: rt5677: Add lockdep class to silence lockdep warnings Nicolas Boichat 2015-06-25 13:21 ` [RFC PATCH 1/2] regmap: add configurable lock class key for lockdep Arjan van de Ven 2015-06-25 14:29 ` Mark Brown 2015-06-25 15:03 ` Lars-Peter Clausen 2015-06-25 15:03 ` Lars-Peter Clausen 2015-06-25 15:33 ` Mark Brown 2015-06-25 15:47 ` Lars-Peter Clausen [this message] 2015-06-25 15:47 ` Lars-Peter Clausen 2015-06-25 16:08 ` Mark Brown 2015-06-26 3:16 ` Nicolas Boichat 2015-06-26 3:16 ` Nicolas Boichat 2015-06-29 12:51 ` Nicolas Boichat 2015-06-29 12:59 ` Lars-Peter Clausen 2015-06-29 12:59 ` Lars-Peter Clausen 2015-06-29 14:03 ` Nicolas Boichat 2015-06-29 14:18 ` Lars-Peter Clausen 2015-06-29 15:34 ` Mark Brown 2015-06-30 4:56 ` Nicolas Boichat 2015-06-30 4:56 ` Nicolas Boichat 2015-06-30 11:02 ` [alsa-devel] " Lars-Peter Clausen 2015-06-29 14:22 ` Mark Brown 2015-06-29 14:35 ` Arjan van de Ven 2015-06-29 15:32 ` Mark Brown 2015-06-29 15:36 ` Arjan van de Ven 2015-06-29 16:02 ` Mark Brown 2015-06-29 14:19 ` Mark Brown 2015-06-25 14:49 ` Mark Brown 2015-06-25 15:59 ` Lars-Peter Clausen 2015-06-26 2:34 ` Nicolas Boichat 2015-06-26 2:34 ` Nicolas Boichat 2015-06-26 8:31 ` Lars-Peter Clausen
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=558C229D.4090409@metafoo.de \ --to=lars@metafoo.de \ --cc=alsa-devel@alsa-project.org \ --cc=anatol.pomozov@gmail.com \ --cc=arjan@linux.intel.com \ --cc=bardliao@realtek.com \ --cc=broonie@kernel.org \ --cc=crope@iki.fi \ --cc=drinkcat@chromium.org \ --cc=gregkh@linuxfoundation.org \ --cc=lgirdwood@gmail.com \ --cc=linux-kernel@vger.kernel.org \ --cc=mchehab@osg.samsung.com \ --cc=mingo@redhat.com \ --cc=oder_chiou@realtek.com \ --cc=perex@perex.cz \ --cc=tiwai@suse.de \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.