* Build failures in -next due to use of __hrtimer_start_range_ns arm-ccn.c [not found] ` <20150513145101.GU2761@sirena.org.uk> @ 2015-05-13 15:08 ` Pawel Moll 2015-05-13 15:13 ` Thomas Gleixner 0 siblings, 1 reply; 6+ messages in thread From: Pawel Moll @ 2015-05-13 15:08 UTC (permalink / raw) To: linux-arm-kernel On Wed, 2015-05-13 at 15:51 +0100, Mark Brown wrote: > On Wed, May 13, 2015 at 12:34:48PM +0100, Build bot for Mark Brown wrote: > > > arm64-allmodconfig > > ../drivers/bus/arm-ccn.c:924:3: error: implicit declaration of function '__hrtimer_start_range_ns' [-Werror=implicit-function-declaration] > > > > arm-allmodconfig > > ../drivers/bus/arm-ccn.c:924:3: error: implicit declaration of function '__hrtimer_start_range_ns' [-Werror=implicit-function-declaration] > > Today's -next fails to build both arm and arm64 allmodconfig due to the > above errors, introduced in commit ffa415245b8666c44d (bus: arm-ccn: > cpumask attribute). Judging from the name of the symbol it appears that > the code is peering into hrtimer implementation details and indeed it > was removed in commit 58f1f803f1d6ef9 (hrtimer: Get rid of > __hrtimer_start_range_ns()) which has a commit message suggsting that > this has indeed been explicitly removed and no new references should be > added. Right, the fix will be equivalent to 576b0704c9def6d54b3ae9e13b0b7567c713f568 "x86: perf: uncore: Use hrtimer_start()" http://marc.info/?l=linux-kernel&m=142904610220085 Will post it in a second, but not sure who should take it? The arm-soc guys, as an additional ccn patch, or Thomas as part of his series? Thanks for pointing this out! Pawel ^ permalink raw reply [flat|nested] 6+ messages in thread
* Build failures in -next due to use of __hrtimer_start_range_ns arm-ccn.c 2015-05-13 15:08 ` Build failures in -next due to use of __hrtimer_start_range_ns arm-ccn.c Pawel Moll @ 2015-05-13 15:13 ` Thomas Gleixner 2015-05-13 15:21 ` [PATCH] bus: arm-ccn: Use hrtimer_start() Pawel Moll 0 siblings, 1 reply; 6+ messages in thread From: Thomas Gleixner @ 2015-05-13 15:13 UTC (permalink / raw) To: linux-arm-kernel On Wed, 13 May 2015, Pawel Moll wrote: > On Wed, 2015-05-13 at 15:51 +0100, Mark Brown wrote: > > On Wed, May 13, 2015 at 12:34:48PM +0100, Build bot for Mark Brown wrote: > > > > > arm64-allmodconfig > > > ../drivers/bus/arm-ccn.c:924:3: error: implicit declaration of function '__hrtimer_start_range_ns' [-Werror=implicit-function-declaration] > > > > > > arm-allmodconfig > > > ../drivers/bus/arm-ccn.c:924:3: error: implicit declaration of function '__hrtimer_start_range_ns' [-Werror=implicit-function-declaration] > > > > Today's -next fails to build both arm and arm64 allmodconfig due to the > > above errors, introduced in commit ffa415245b8666c44d (bus: arm-ccn: > > cpumask attribute). Judging from the name of the symbol it appears that > > the code is peering into hrtimer implementation details and indeed it > > was removed in commit 58f1f803f1d6ef9 (hrtimer: Get rid of > > __hrtimer_start_range_ns()) which has a commit message suggsting that > > this has indeed been explicitly removed and no new references should be > > added. > > Right, the fix will be equivalent to > 576b0704c9def6d54b3ae9e13b0b7567c713f568 "x86: perf: uncore: Use > hrtimer_start()" > > http://marc.info/?l=linux-kernel&m=142904610220085 > > Will post it in a second, but not sure who should take it? The arm-soc > guys, as an additional ccn patch, or Thomas as part of his series? Route it through the same tree as the commit which introduces the __hrtimer_start_range_ns usage Thanks, tglx ^ permalink raw reply [flat|nested] 6+ messages in thread
* [PATCH] bus: arm-ccn: Use hrtimer_start() 2015-05-13 15:13 ` Thomas Gleixner @ 2015-05-13 15:21 ` Pawel Moll 2015-05-13 15:32 ` Arnd Bergmann 0 siblings, 1 reply; 6+ messages in thread From: Pawel Moll @ 2015-05-13 15:21 UTC (permalink / raw) To: linux-arm-kernel hrtimer_start() does not longer defer already expired timers to the softirq. Get rid of the __hrtimer_start_range_ns() invocation. Reported-by: Mark Brown <mark.brown@arm.com> Signed-off-by: Pawel Moll <pawel.moll@arm.com> --- Arnd, Olof, Kevin, This patch solves the linux-next build issue reported by Mark Brown: http://article.gmane.org/gmane.linux.kernel.next/35377 and is an equivalent of the following change: http://marc.info/?l=linux-kernel&m=142904610220085 Could you, please, queue it? Thanks! drivers/bus/arm-ccn.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/drivers/bus/arm-ccn.c b/drivers/bus/arm-ccn.c index df5f307..7d9879e 100644 --- a/drivers/bus/arm-ccn.c +++ b/drivers/bus/arm-ccn.c @@ -921,9 +921,8 @@ static void arm_ccn_pmu_event_start(struct perf_event *event, int flags) * attribute). */ if (!ccn->irq) - __hrtimer_start_range_ns(&ccn->dt.hrtimer, - arm_ccn_pmu_timer_period(), 0, - HRTIMER_MODE_REL_PINNED, 0); + hrtimer_start(&ccn->dt.hrtimer, arm_ccn_pmu_timer_period(), + HRTIMER_MODE_REL_PINNED); /* Set the DT bus input, engaging the counter */ arm_ccn_pmu_xp_dt_config(event, 1); -- 2.1.0 ^ permalink raw reply related [flat|nested] 6+ messages in thread
* [PATCH] bus: arm-ccn: Use hrtimer_start() 2015-05-13 15:21 ` [PATCH] bus: arm-ccn: Use hrtimer_start() Pawel Moll @ 2015-05-13 15:32 ` Arnd Bergmann 2015-05-13 15:47 ` Pawel Moll 0 siblings, 1 reply; 6+ messages in thread From: Arnd Bergmann @ 2015-05-13 15:32 UTC (permalink / raw) To: linux-arm-kernel On Wednesday 13 May 2015 16:21:24 Pawel Moll wrote: > diff --git a/drivers/bus/arm-ccn.c b/drivers/bus/arm-ccn.c > index df5f307..7d9879e 100644 > --- a/drivers/bus/arm-ccn.c > +++ b/drivers/bus/arm-ccn.c > @@ -921,9 +921,8 @@ static void arm_ccn_pmu_event_start(struct perf_event *event, int flags) > * attribute). > */ > if (!ccn->irq) > - __hrtimer_start_range_ns(&ccn->dt.hrtimer, > - arm_ccn_pmu_timer_period(), 0, > - HRTIMER_MODE_REL_PINNED, 0); > + hrtimer_start(&ccn->dt.hrtimer, arm_ccn_pmu_timer_period(), > + HRTIMER_MODE_REL_PINNED); > > /* Set the DT bus input, engaging the counter */ > arm_ccn_pmu_xp_dt_config(event, 1); Is this correct by itself, or do we need to pull in the branch that contains c6eb3f70d44828 ("hrtimer: Get rid of hrtimer softirq") from Thomas? The other similar patches that Thomas did contain a comment about the conversion being safe after hrtimer_start() no longer uses a softirq, but it is still in use in 4.1-rc3. Arnd ^ permalink raw reply [flat|nested] 6+ messages in thread
* [PATCH] bus: arm-ccn: Use hrtimer_start() 2015-05-13 15:32 ` Arnd Bergmann @ 2015-05-13 15:47 ` Pawel Moll 2015-05-13 16:19 ` Arnd Bergmann 0 siblings, 1 reply; 6+ messages in thread From: Pawel Moll @ 2015-05-13 15:47 UTC (permalink / raw) To: linux-arm-kernel On Wed, 2015-05-13 at 16:32 +0100, Arnd Bergmann wrote: > On Wednesday 13 May 2015 16:21:24 Pawel Moll wrote: > > diff --git a/drivers/bus/arm-ccn.c b/drivers/bus/arm-ccn.c > > index df5f307..7d9879e 100644 > > --- a/drivers/bus/arm-ccn.c > > +++ b/drivers/bus/arm-ccn.c > > @@ -921,9 +921,8 @@ static void arm_ccn_pmu_event_start(struct perf_event *event, int flags) > > * attribute). > > */ > > if (!ccn->irq) > > - __hrtimer_start_range_ns(&ccn->dt.hrtimer, > > - arm_ccn_pmu_timer_period(), 0, > > - HRTIMER_MODE_REL_PINNED, 0); > > + hrtimer_start(&ccn->dt.hrtimer, arm_ccn_pmu_timer_period(), > > + HRTIMER_MODE_REL_PINNED); > > > > /* Set the DT bus input, engaging the counter */ > > arm_ccn_pmu_xp_dt_config(event, 1); > > Is this correct by itself, or do we need to pull in the branch that > contains c6eb3f70d44828 ("hrtimer: Get rid of hrtimer softirq") > from Thomas? The other similar patches that Thomas did contain a > comment about the conversion being safe after hrtimer_start() > no longer uses a softirq, but it is still in use in 4.1-rc3. That's why I asked who should carry this patch ;-) Now, the answer to your question is: the result will not be worse than the what was there before you pulled my updates, as the code was using normal hrtimer_start(). It's just when I realised that it should be pinned I looked at what x86 uncore pmu is doing and shamelessly (and probably a bit mindlessly) copied the "do not wakeup" version from there. Pawel ^ permalink raw reply [flat|nested] 6+ messages in thread
* [PATCH] bus: arm-ccn: Use hrtimer_start() 2015-05-13 15:47 ` Pawel Moll @ 2015-05-13 16:19 ` Arnd Bergmann 0 siblings, 0 replies; 6+ messages in thread From: Arnd Bergmann @ 2015-05-13 16:19 UTC (permalink / raw) To: linux-arm-kernel On Wednesday 13 May 2015 16:47:07 Pawel Moll wrote: > On Wed, 2015-05-13 at 16:32 +0100, Arnd Bergmann wrote: > > On Wednesday 13 May 2015 16:21:24 Pawel Moll wrote: > > > diff --git a/drivers/bus/arm-ccn.c b/drivers/bus/arm-ccn.c > > > index df5f307..7d9879e 100644 > > > --- a/drivers/bus/arm-ccn.c > > > +++ b/drivers/bus/arm-ccn.c > > > @@ -921,9 +921,8 @@ static void arm_ccn_pmu_event_start(struct perf_event *event, int flags) > > > * attribute). > > > */ > > > if (!ccn->irq) > > > - __hrtimer_start_range_ns(&ccn->dt.hrtimer, > > > - arm_ccn_pmu_timer_period(), 0, > > > - HRTIMER_MODE_REL_PINNED, 0); > > > + hrtimer_start(&ccn->dt.hrtimer, arm_ccn_pmu_timer_period(), > > > + HRTIMER_MODE_REL_PINNED); > > > > > > /* Set the DT bus input, engaging the counter */ > > > arm_ccn_pmu_xp_dt_config(event, 1); > > > > Is this correct by itself, or do we need to pull in the branch that > > contains c6eb3f70d44828 ("hrtimer: Get rid of hrtimer softirq") > > from Thomas? The other similar patches that Thomas did contain a > > comment about the conversion being safe after hrtimer_start() > > no longer uses a softirq, but it is still in use in 4.1-rc3. > > That's why I asked who should carry this patch > > Now, the answer to your question is: the result will not be worse than > the what was there before you pulled my updates, as the code was using > normal hrtimer_start(). It's just when I realised that it should be > pinned I looked at what x86 uncore pmu is doing and shamelessly (and > probably a bit mindlessly) copied the "do not wakeup" version from > there. Ok, got it. I've rewritten the commit message now to reflect this, and have applied your patch on top of the next/drivers branch. Thanks a lot for the fast roundtrip in fixing it. Hopefully, tomorrow's linux-next works better now. Arnd commit a78a3c8ef715b94de3ab27633866d4bde3e2226f Author: Pawel Moll <pawel.moll@arm.com> Date: Wed May 13 16:21:24 2015 +0100 bus: arm-ccn: Use hrtimer_start() again hrtimer_start() will no longer defer already expired timers to the softirq in 4.2, and the __hrtimer_start_range_ns() function is getting removed, causing build errors when both the tip tree and the arm-ccn changes are merged. This changes the code back to using hrtimer_start, which will do the right thing after this branch gets merged with the timers update from tip. As pointed out after a discussion on the mailing list, the result will not be worse than the what was there before you pulled my updates, as the code was using normal hrtimer_start(). It's just when I realised that it should be pinned I looked at what x86 uncore pmu is doing and shamelessly (and probably a bit mindlessly) copied the "do not wakeup" version from there. Reported-by: Mark Brown <mark.brown@arm.com> Signed-off-by: Pawel Moll <pawel.moll@arm.com> Signed-off-by: Arnd Bergmann <arnd@arndb.de> diff --git a/drivers/bus/arm-ccn.c b/drivers/bus/arm-ccn.c index df5f307f3244..7d9879e166cf 100644 --- a/drivers/bus/arm-ccn.c +++ b/drivers/bus/arm-ccn.c @@ -921,9 +921,8 @@ static void arm_ccn_pmu_event_start(struct perf_event *event, int flags) * attribute). */ if (!ccn->irq) - __hrtimer_start_range_ns(&ccn->dt.hrtimer, - arm_ccn_pmu_timer_period(), 0, - HRTIMER_MODE_REL_PINNED, 0); + hrtimer_start(&ccn->dt.hrtimer, arm_ccn_pmu_timer_period(), + HRTIMER_MODE_REL_PINNED); /* Set the DT bus input, engaging the counter */ arm_ccn_pmu_xp_dt_config(event, 1); ^ permalink raw reply related [flat|nested] 6+ messages in thread
end of thread, other threads:[~2015-05-13 16:19 UTC | newest]
Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
[not found] <E1YsUw4-0002i4-Do@optimist>
[not found] ` <20150513145101.GU2761@sirena.org.uk>
2015-05-13 15:08 ` Build failures in -next due to use of __hrtimer_start_range_ns arm-ccn.c Pawel Moll
2015-05-13 15:13 ` Thomas Gleixner
2015-05-13 15:21 ` [PATCH] bus: arm-ccn: Use hrtimer_start() Pawel Moll
2015-05-13 15:32 ` Arnd Bergmann
2015-05-13 15:47 ` Pawel Moll
2015-05-13 16:19 ` Arnd Bergmann
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).