Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1273992 > unrolled thread
| Started by | Arnd Bergmann <arnd@arndb.de> |
|---|---|
| First post | 2015-11-20 12:40 +0100 |
| Last post | 2015-11-20 13:30 +0100 |
| Articles | 5 — 2 participants |
Back to article view | Back to linux.kernel
[PATCH, once again] regulator: core: avoid unused variable warning Arnd Bergmann <arnd@arndb.de> - 2015-11-20 12:40 +0100
Re: [PATCH, once again] regulator: core: avoid unused variable warning Mark Brown <broonie@kernel.org> - 2015-11-20 12:50 +0100
Re: [PATCH, once again] regulator: core: avoid unused variable warning Arnd Bergmann <arnd@arndb.de> - 2015-11-20 13:20 +0100
Re: [PATCH, once again] regulator: core: avoid unused variable warning Mark Brown <broonie@kernel.org> - 2015-11-20 13:30 +0100
Re: [PATCH, once again] regulator: core: avoid unused variable warning Arnd Bergmann <arnd@arndb.de> - 2015-11-20 13:30 +0100
| From | Arnd Bergmann <arnd@arndb.de> |
|---|---|
| Date | 2015-11-20 12:40 +0100 |
| Subject | [PATCH, once again] regulator: core: avoid unused variable warning |
| Message-ID | <qwScO-6B6-5@gated-at.bofh.it> |
The second argument of the mutex_lock_nested() helper is only
evaluated if CONFIG_DEBUG_LOCK_ALLOC is set. Otherwise we
get this build warning for the new regulator_lock_supply
function:
drivers/regulator/core.c: In function 'regulator_lock_supply':
drivers/regulator/core.c:142:6: warning: unused variable 'i' [-Wunused-variable]
To avoid the warning, this patch moves the postincrement outside
of the call mutex_lock_nested(), which is enough to shut up
gcc about it.
We had some discussion about changing mutex_lock_nested to an
inline function, which would make the code do the right thing here,
but in the end decided against it, in order to guarantee that
mutex_lock_nested() does not introduced overhead without
CONFIG_DEBUG_LOCK_ALLOC.
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Fixes: 9f01cd4a915 ("regulator: core: introduce function to lock regulators and its supplies")
Link: http://permalink.gmane.org/gmane.linux.kernel/2068900
---
The patch that introduced the warning is now in 4.4-rc1, and I think this
patch is still the least ugly workaround we found.
diff --git a/drivers/regulator/core.c b/drivers/regulator/core.c
index 4cf1390784e5..cf5371ee0be4 100644
--- a/drivers/regulator/core.c
+++ b/drivers/regulator/core.c
@@ -142,7 +142,9 @@ static void regulator_lock_supply(struct regulator_dev *rdev)
int i = 0;
while (1) {
- mutex_lock_nested(&rdev->mutex, i++);
+ mutex_lock_nested(&rdev->mutex, i);
+ i++;
+
supply = rdev->supply;
if (!rdev->supply)
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
[toc] | [next] | [standalone]
| From | Mark Brown <broonie@kernel.org> |
|---|---|
| Date | 2015-11-20 12:50 +0100 |
| Subject | Re: [PATCH, once again] regulator: core: avoid unused variable warning |
| Message-ID | <qwSmt-6EE-13@gated-at.bofh.it> |
| In reply to | #1273992 |
[Multipart message — attachments visible in raw view] — view raw
On Fri, Nov 20, 2015 at 12:30:24PM +0100, Arnd Bergmann wrote: > The patch that introduced the warning is now in 4.4-rc1, and I think this > patch is still the least ugly workaround we found. Can we please at least have a comment explaining that this is working around lockdep limitations?
[toc] | [prev] | [next] | [standalone]
| From | Arnd Bergmann <arnd@arndb.de> |
|---|---|
| Date | 2015-11-20 13:20 +0100 |
| Message-ID | <qwSPw-76t-9@gated-at.bofh.it> |
| In reply to | #1273998 |
On Friday 20 November 2015 11:41:27 Mark Brown wrote: > On Fri, Nov 20, 2015 at 12:30:24PM +0100, Arnd Bergmann wrote: > > > The patch that introduced the warning is now in 4.4-rc1, and I think this > > patch is still the least ugly workaround we found. > > Can we please at least have a comment explaining that this is working > around lockdep limitations? Not sure which limitation you are referring to. Maybe you could just modify the changelog text as you like when applying the patch? The limitation we talked about in the previous thread was about the maximum of 8 nesting levels, but my patch here doesn't address that at all. I tried to capture the fact that mutex_lock_nested() intentionally doesn't evaluate its second argument when CONFIG_DEBUG_LOCK_ALLOC is not set, but that appears to be less of a limitation than a choice of the interface. Arnd -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
[toc] | [prev] | [next] | [standalone]
| From | Mark Brown <broonie@kernel.org> |
|---|---|
| Date | 2015-11-20 13:30 +0100 |
| Subject | Re: [PATCH, once again] regulator: core: avoid unused variable warning |
| Message-ID | <qwSZc-79N-27@gated-at.bofh.it> |
| In reply to | #1274017 |
[Multipart message — attachments visible in raw view] — view raw
On Fri, Nov 20, 2015 at 01:12:00PM +0100, Arnd Bergmann wrote: > On Friday 20 November 2015 11:41:27 Mark Brown wrote: > > Can we please at least have a comment explaining that this is working > > around lockdep limitations? > Not sure which limitation you are referring to. Maybe you could just > modify the changelog text as you like when applying the patch? > I tried to capture the fact that mutex_lock_nested() intentionally > doesn't evaluate its second argument when CONFIG_DEBUG_LOCK_ALLOC > is not set, but that appears to be less of a limitation than a > choice of the interface. That's the limitation (or intereface choice or whatever) that I'm talking about - the code looks like a function call so not evaulating the second argument is surprising. I'm looking for something in the code rather than the changelog so it doesn't get cleaned up later.
[toc] | [prev] | [next] | [standalone]
| From | Arnd Bergmann <arnd@arndb.de> |
|---|---|
| Date | 2015-11-20 13:30 +0100 |
| Message-ID | <qwSZd-79N-33@gated-at.bofh.it> |
| In reply to | #1274029 |
On Friday 20 November 2015 12:24:00 Mark Brown wrote: > On Fri, Nov 20, 2015 at 01:12:00PM +0100, Arnd Bergmann wrote: > > On Friday 20 November 2015 11:41:27 Mark Brown wrote: > > > > Can we please at least have a comment explaining that this is working > > > around lockdep limitations? > > > Not sure which limitation you are referring to. Maybe you could just > > modify the changelog text as you like when applying the patch? > > > I tried to capture the fact that mutex_lock_nested() intentionally > > doesn't evaluate its second argument when CONFIG_DEBUG_LOCK_ALLOC > > is not set, but that appears to be less of a limitation than a > > choice of the interface. > > That's the limitation (or intereface choice or whatever) that I'm > talking about - the code looks like a function call so not evaulating > the second argument is surprising. I'm looking for something in the > code rather than the changelog so it doesn't get cleaned up later. > Got it. Will send a new version soon. Arnd -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
[toc] | [prev] | [standalone]
Back to top | Article view | linux.kernel
csiph-web