original_kernel/drivers/clocksource
Sudeep Holla 5e18e41297 clocksource: arm_arch_timer: Set arch_mem_timer cpumask to cpu_possible_mask
Currently, arch_mem_timer cpumask is set to cpu_all_mask which should be
fine. However, cpu_possible_mask is more accurate and if there are other
clockevent source in the system which are set to cpu_possible_mask, then
having cpu_all_mask may result in issue.

E.g. on a platform with arm,sp804 timer with rating 300 and
cpu_possible_mask and this arch_mem_timer timer with rating 400 and
cpu_all_mask, tick_check_preferred may choose both preferred as the
cpumasks are not equal though they must be.

This issue was root caused incorrectly initially and a fix was merged as
commit 1332a90558 ("tick: Prefer a lower rating device only if it's CPU
local device").

Signed-off-by: Sudeep Holla <sudeep.holla@arm.com>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Tested-by: Kevin Hilman <khilman@baylibre.com>
Tested-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com>
Cc: linux-arm-kernel@lists.infradead.org
Cc: Marc Zyngier <marc.zyngier@arm.com>
Cc: Mark Rutland <mark.rutland@arm.com>
Link: https://lkml.kernel.org/r/1531151136-18297-2-git-send-email-sudeep.holla@arm.com
2018-07-10 22:12:47 +02:00
..
Kconfig clocksource/drivers/sprd: Fix Kconfig dependency 2018-05-18 22:53:08 +02:00
Makefile Merge branch 'timers-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2018-04-16 12:44:03 -07:00
acpi_pm.c
arc_timer.c clocksource/drivers/arc_timer: Add comments about locking while read GFRC 2018-05-18 22:59:40 +02:00
arm_arch_timer.c clocksource: arm_arch_timer: Set arch_mem_timer cpumask to cpu_possible_mask 2018-07-10 22:12:47 +02:00
arm_global_timer.c
armv7m_systick.c
asm9260_timer.c
bcm2835_timer.c locking/atomics: COCCINELLE/treewide: Convert trivial ACCESS_ONCE() patterns to READ_ONCE()/WRITE_ONCE() 2017-10-25 11:01:08 +02:00
bcm_kona_timer.c
cadence_ttc_timer.c
clksrc-dbx500-prcmu.c
clksrc_st_lpc.c
clps711x-timer.c
cs5535-clockevt.c clockevents/drivers/cs5535: Improve resilience to spurious interrupts 2017-10-20 13:41:52 +02:00
dummy_timer.c
dw_apb_timer.c
dw_apb_timer_of.c
em_sti.c
exynos_mct.c
fsl_ftm_timer.c clocksource/drivers/fsl_ftm_timer: Fix error return checking 2018-02-26 13:56:05 +01:00
h8300_timer8.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
h8300_timer16.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
h8300_tpu.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
i8253.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
jcore-pit.c
meson6_timer.c
mips-gic-timer.c clocksource/drivers/mips-gic-timer: Add pr_fmt and reword pr_* messages 2018-05-18 22:53:09 +02:00
mmio.c
mps2-timer.c
mtk_timer.c
mxs_timer.c clocksource/drivers/mxs_timer: Switch to SPDX identifier 2018-05-23 07:39:09 +02:00
nomadik-mtu.c
numachip.c x86/numachip: Add const and __initconst to numachip2_clockevent 2017-09-25 09:36:15 +02:00
owl-timer.c clocksource/drivers/owl: Add the S700 timer 2018-01-08 17:57:23 +01:00
pxa_timer.c
qcom-timer.c
renesas-ostm.c
rockchip_timer.c clocksource/drivers/rockchip: pr_err() strings should end with newlines 2017-10-19 23:49:02 +02:00
samsung_pwm_timer.c
scx200_hrt.c
sh_cmt.c treewide: kzalloc() -> kcalloc() 2018-06-12 16:19:22 -07:00
sh_mtu2.c treewide: kzalloc() -> kcalloc() 2018-06-12 16:19:22 -07:00
sh_tmu.c treewide: kzalloc() -> kcalloc() 2018-06-12 16:19:22 -07:00
sun4i_timer.c
tango_xtal.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
tcb_clksrc.c clocksource/drivers/tcb_clksrc: Fix clock speed message 2018-01-08 17:57:23 +01:00
tegra20_timer.c
time-armada-370-xp.c
time-efm32.c
time-lpc32xx.c
time-orion.c
time-pistachio.c
timer-atcpit100.c clocksource/drivers/atcpit100: VDSO support 2018-02-22 10:44:36 +08:00
timer-atlas7.c
timer-atmel-pit.c
timer-atmel-st.c
timer-digicolor.c
timer-fttmr010.c Merge branch 'timers-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2017-11-13 17:56:58 -08:00
timer-imx-gpt.c clocksource/drivers/timer-imx-gpt: Switch to SPDX identifier 2018-05-23 07:38:52 +02:00
timer-imx-tpm.c clocksource/drivers/timer-imx-tpm: Switch to SPDX identifier 2018-05-23 07:39:01 +02:00
timer-integrator-ap.c
timer-keystone.c
timer-npcm7xx.c clocksource/drivers/npcm: Add NPCM7xx timer driver 2018-03-30 22:44:09 +02:00
timer-nps.c
timer-of.c clocksource/drivers/timer-of: Don't request the resource by name 2018-01-08 17:57:24 +01:00
timer-of.h clocksource/drivers/timer-of: Store the device node pointer in 'struct timer_of' 2018-01-08 17:57:24 +01:00
timer-oxnas-rps.c
timer-prima2.c
timer-probe.c
timer-sp.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
timer-sp804.c ARM: timer-sp: Use of_clk_get_parent_count() instead of open coding 2018-05-02 08:32:57 -07:00
timer-sprd.c clocksource/drivers/spreadtrum: Add timer driver for the Spreadtrum SC9860 platform 2018-01-08 17:57:24 +01:00
timer-stm32.c clocksource/drivers/stm32: Fix error return code 2018-06-12 23:54:01 +02:00
timer-sun5i.c treewide/trivial: Remove ';;$' typo noise 2018-02-22 10:59:33 +01:00
timer-ti-32k.c
timer-ti-dm.c clocksource: timer-ti-dm: Check prescaler value 2018-02-28 13:41:30 -08:00
timer-u300.c
versatile.c
vf_pit_timer.c
vt8500_timer.c
zevio-timer.c