All of lore.kernel.org
 help / color / mirror / Atom feed
From: fweisbec@gmail.com (Frederic Weisbecker)
To: linux-arm-kernel@lists.infradead.org
Subject: [tip:timers/core] ARM: Kconfig: allow full nohz CPU accounting
Date: Wed, 16 Oct 2013 14:14:17 +0200	[thread overview]
Message-ID: <20131016121416.GD12773@localhost.localdomain> (raw)
In-Reply-To: <tip-31c1fc8187158cb80ccd57c19e024c55af901797@git.kernel.org>

On Thu, Oct 03, 2013 at 06:58:03AM -0700, tip-bot for Kevin Hilman wrote:
> Commit-ID:  31c1fc8187158cb80ccd57c19e024c55af901797
> Gitweb:     http://git.kernel.org/tip/31c1fc8187158cb80ccd57c19e024c55af901797
> Author:     Kevin Hilman <khilman@linaro.org>
> AuthorDate: Mon, 16 Sep 2013 15:28:22 -0700
> Committer:  Frederic Weisbecker <fweisbec@gmail.com>
> CommitDate: Mon, 30 Sep 2013 15:37:05 +0200
> 
> ARM: Kconfig: allow full nohz CPU accounting
> 
> With the 64-bit requirement removed from VIRT_CPU_ACCOUNTING_GEN,
> allow ARM platforms to enable it.  Since VIRT_CPU_ACCOUNTING_GEN is a
> dependency for full NO_HZ, this allows ARM platforms to enable full
> NO_HZ as well.

I realize that arm doesn't implement irq work raise. It hooks on the
timer to execute pending irq work. You'll need to implement arch_irq_work_raise()
and implement some sort of self IPI to trigger irq work. The full dynticks subsystem
relies on that to work correctly. It often use that to re-evaluate and possibly restart
the tick after scheduler, posix timer updates, etc...

That notwithstanding that if you have no tick, tick based irq work can't
work.

Thanks.

> 
> Signed-off-by: Kevin Hilman <khilman@linaro.org>
> Cc: Ingo Molnar <mingo@kernel.org>
> Cc: Russell King <rmk@arm.linux.org.uk>
> Cc: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
> Cc: Arm Linux <linux-arm-kernel@lists.infradead.org>
> Signed-off-by: Frederic Weisbecker <fweisbec@gmail.com>
> ---
>  arch/arm/Kconfig | 1 +
>  1 file changed, 1 insertion(+)
> 
> diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
> index 1ad6fb6..323baf0 100644
> --- a/arch/arm/Kconfig
> +++ b/arch/arm/Kconfig
> @@ -54,6 +54,7 @@ config ARM
>  	select HAVE_REGS_AND_STACK_ACCESS_API
>  	select HAVE_SYSCALL_TRACEPOINTS
>  	select HAVE_UID16
> +	select HAVE_VIRT_CPU_ACCOUNTING_GEN
>  	select IRQ_FORCED_THREADING
>  	select KTIME_SCALAR
>  	select MODULES_USE_ELF_REL

WARNING: multiple messages have this Message-ID (diff)
From: Frederic Weisbecker <fweisbec@gmail.com>
To: linux-kernel@vger.kernel.org, mingo@kernel.org, hpa@zytor.com,
	linux-arm-kernel@lists.infradead.org, rmk@arm.linux.org.uk,
	paulmck@linux.vnet.ibm.com, tglx@linutronix.de,
	khilman@linaro.org
Cc: linux-tip-commits@vger.kernel.org
Subject: Re: [tip:timers/core] ARM: Kconfig: allow full nohz CPU accounting
Date: Wed, 16 Oct 2013 14:14:17 +0200	[thread overview]
Message-ID: <20131016121416.GD12773@localhost.localdomain> (raw)
In-Reply-To: <tip-31c1fc8187158cb80ccd57c19e024c55af901797@git.kernel.org>

On Thu, Oct 03, 2013 at 06:58:03AM -0700, tip-bot for Kevin Hilman wrote:
> Commit-ID:  31c1fc8187158cb80ccd57c19e024c55af901797
> Gitweb:     http://git.kernel.org/tip/31c1fc8187158cb80ccd57c19e024c55af901797
> Author:     Kevin Hilman <khilman@linaro.org>
> AuthorDate: Mon, 16 Sep 2013 15:28:22 -0700
> Committer:  Frederic Weisbecker <fweisbec@gmail.com>
> CommitDate: Mon, 30 Sep 2013 15:37:05 +0200
> 
> ARM: Kconfig: allow full nohz CPU accounting
> 
> With the 64-bit requirement removed from VIRT_CPU_ACCOUNTING_GEN,
> allow ARM platforms to enable it.  Since VIRT_CPU_ACCOUNTING_GEN is a
> dependency for full NO_HZ, this allows ARM platforms to enable full
> NO_HZ as well.

I realize that arm doesn't implement irq work raise. It hooks on the
timer to execute pending irq work. You'll need to implement arch_irq_work_raise()
and implement some sort of self IPI to trigger irq work. The full dynticks subsystem
relies on that to work correctly. It often use that to re-evaluate and possibly restart
the tick after scheduler, posix timer updates, etc...

That notwithstanding that if you have no tick, tick based irq work can't
work.

Thanks.

> 
> Signed-off-by: Kevin Hilman <khilman@linaro.org>
> Cc: Ingo Molnar <mingo@kernel.org>
> Cc: Russell King <rmk@arm.linux.org.uk>
> Cc: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
> Cc: Arm Linux <linux-arm-kernel@lists.infradead.org>
> Signed-off-by: Frederic Weisbecker <fweisbec@gmail.com>
> ---
>  arch/arm/Kconfig | 1 +
>  1 file changed, 1 insertion(+)
> 
> diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
> index 1ad6fb6..323baf0 100644
> --- a/arch/arm/Kconfig
> +++ b/arch/arm/Kconfig
> @@ -54,6 +54,7 @@ config ARM
>  	select HAVE_REGS_AND_STACK_ACCESS_API
>  	select HAVE_SYSCALL_TRACEPOINTS
>  	select HAVE_UID16
> +	select HAVE_VIRT_CPU_ACCOUNTING_GEN
>  	select IRQ_FORCED_THREADING
>  	select KTIME_SCALAR
>  	select MODULES_USE_ELF_REL

  reply	other threads:[~2013-10-16 12:14 UTC|newest]

Thread overview: 35+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-10-03 13:58 [tip:timers/core] ARM: Kconfig: allow full nohz CPU accounting tip-bot for Kevin Hilman
2013-10-16 12:14 ` Frederic Weisbecker [this message]
2013-10-16 12:14   ` Frederic Weisbecker
2013-10-18 16:37   ` Stephen Boyd
2013-10-18 16:37     ` Stephen Boyd
2013-10-25  9:38     ` Frederic Weisbecker
2013-10-25  9:38       ` Frederic Weisbecker
2013-10-28  1:32     ` Kevin Hilman
2013-10-28  1:32       ` Kevin Hilman
2013-10-28 16:18       ` Stephen Boyd
2013-10-28 16:18         ` Stephen Boyd
2013-10-28 18:25       ` [PATCH] ARM: Support arch_irq_work_raise() via self IPIs Stephen Boyd
2013-10-28 18:25         ` Stephen Boyd
2013-10-29  1:58         ` Kevin Hilman
2013-10-29  1:58           ` Kevin Hilman
2013-10-29  6:00           ` Stephen Boyd
2013-10-29  6:00             ` Stephen Boyd
2013-10-29  8:25             ` Frederic Weisbecker
2013-10-29  8:25               ` Frederic Weisbecker
2013-10-29 18:55             ` Kevin Hilman
2013-10-29 18:55               ` Kevin Hilman
2013-11-08 20:06             ` Olof Johansson
2013-11-08 20:06               ` Olof Johansson
2013-11-08 20:45               ` Olof Johansson
2013-11-08 20:45                 ` Olof Johansson
2013-11-08 21:53                 ` Stephen Boyd
2013-11-08 21:53                   ` Stephen Boyd
2013-11-08 23:35                   ` Olof Johansson
2013-11-08 23:35                     ` Olof Johansson
2013-11-08 23:39                     ` Stephen Boyd
2013-11-08 23:39                       ` Stephen Boyd
2013-11-09  0:01                       ` Russell King - ARM Linux
2013-11-09  0:01                         ` Russell King - ARM Linux
2013-11-09  0:07                         ` Olof Johansson
2013-11-09  0:07                           ` Olof Johansson

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=20131016121416.GD12773@localhost.localdomain \
    --to=fweisbec@gmail.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    /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: link
Be 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.