Skip to contentSkip to conversation

Patch "parisc: Fix detection of nonsynchronous cr16 cycle counters" has been added to the 4.13-stable tree

PATCH [email protected] 1 participant 1 message Oct 23, 2017

Subsystems (2)
lore
Share & tools
lore

[email protected]

author maintainer Applied
#0 lore raw

This is a note to let you know that I've just added the patch titled

parisc: Fix detection of nonsynchronous cr16 cycle counters

to the 4.13-stable tree which can be found at:
http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary

The filename of the patch is:
parisc-fix-detection-of-nonsynchronous-cr16-cycle-counters.patch
and it can be found in the queue-4.13 subdirectory.

If you, or anyone else, feels it should not be added to the stable tree, please let <[email protected]> know about it.

Quoted 1 line

From 8642b31ba9eef8a01845146a26682d4869e62513 Mon Sep 17 00:00:00 2001

From: Helge Deller <[email protected]>
Date: Wed, 18 Oct 2017 22:25:00 +0200
Subject: parisc: Fix detection of nonsynchronous cr16 cycle counters

From: Helge Deller <[email protected]>

commit 8642b31ba9eef8a01845146a26682d4869e62513 upstream.

For CPUs which have an unknown or invalid CPU location (physical location) assume that their cycle counters aren't syncronized across CPUs.

Fixes c8c3735997a3 ("parisc: Enhance detection of synchronous cr16 clocksources")
---
 arch/parisc/kernel/time.c |    5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)
arch/parisc/kernel/time.c +4 -1
@@ -253,7 +253,10 @@ static int __init init_cr16_clocksource(
 		cpu0_loc = per_cpu(cpu_data, 0).cpu_loc;
 
 		for_each_online_cpu(cpu) {
-			if (cpu0_loc == per_cpu(cpu_data, cpu).cpu_loc)
+			if (cpu == 0)
+				continue;
+			if ((cpu0_loc != 0) &&
+			    (cpu0_loc == per_cpu(cpu_data, cpu).cpu_loc))
 				continue;
 
 			clocksource_cr16.name = "cr16_unstable";

Patches currently in stable-queue which might be from [email protected] are

queue-4.13/parisc-fix-detection-of-nonsynchronous-cr16-cycle-counters.patch queue-4.13/parisc-fix-double-word-compare-and-exchange-in-lws-code-on-32-bit-kernels.patch