aboutsummaryrefslogtreecommitdiffstats
path: root/arch/Kconfig
diff options
context:
space:
mode:
authorKevin Hilman <khilman@linaro.org>2013-09-16 18:28:21 -0400
committerFrederic Weisbecker <fweisbec@gmail.com>2013-09-30 09:35:53 -0400
commit554b0004d0ec4fbd11e08668dfc400f211e8d5c5 (patch)
tree962305270252e407cd887ba9ed949bde346b8f81 /arch/Kconfig
parent15c03dd4859ab16f9212238f29dd315654aa94f6 (diff)
vtime: Add HAVE_VIRT_CPU_ACCOUNTING_GEN Kconfig
With VIRT_CPU_ACCOUNTING_GEN, cputime_t becomes 64-bit. In order to use that feature, arch code should be audited to ensure there are no races in concurrent read/write of cputime_t. For example, reading/writing 64-bit cputime_t on some 32-bit arches may require multiple accesses for low and high value parts, so proper locking is needed to protect against concurrent accesses. Therefore, add CONFIG_HAVE_VIRT_CPU_ACCOUNTING_GEN which arches can enable after they've been audited for potential races. This option is automatically enabled on 64-bit platforms. Feature requested by Frederic Weisbecker. 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>
Diffstat (limited to 'arch/Kconfig')
-rw-r--r--arch/Kconfig12
1 files changed, 12 insertions, 0 deletions
diff --git a/arch/Kconfig b/arch/Kconfig
index af2cc6eabcc7..185f8b007643 100644
--- a/arch/Kconfig
+++ b/arch/Kconfig
@@ -353,6 +353,18 @@ config HAVE_CONTEXT_TRACKING
353config HAVE_VIRT_CPU_ACCOUNTING 353config HAVE_VIRT_CPU_ACCOUNTING
354 bool 354 bool
355 355
356config HAVE_VIRT_CPU_ACCOUNTING_GEN
357 bool
358 default y if 64BIT
359 help
360 With VIRT_CPU_ACCOUNTING_GEN, cputime_t becomes 64-bit.
361 Before enabling this option, arch code must be audited
362 to ensure there are no races in concurrent read/write of
363 cputime_t. For example, reading/writing 64-bit cputime_t on
364 some 32-bit arches may require multiple accesses, so proper
365 locking is needed to protect against concurrent accesses.
366
367
356config HAVE_IRQ_TIME_ACCOUNTING 368config HAVE_IRQ_TIME_ACCOUNTING
357 bool 369 bool
358 help 370 help