Subject: linux-next: build failure after merge of the tip tree

From: Stephen Rothwell <[email-masked]>
Date: Mon, 30 Mar 2015 17:13:34 +1100

Hi all,

After merging the tip tree, today's linux-next build (arm
multi_v7_defconfig) failed like this:

arch/arm/kernel/vdso.c: In function 'tk_is_cntvct':
arch/arm/kernel/vdso.c:273:15: error: 'const struct timekeeper' has no member named 'tkr'
  if (strcmp(tk->tkr.clock->name, "arch_sys_counter") != 0)
               ^
arch/arm/kernel/vdso.c: In function 'update_vsyscall':
arch/arm/kernel/vdso.c:319:32: error: 'struct timekeeper' has no member named 'tkr'
   vdso_data->cs_cycle_last = tk->tkr.cycle_last;
                                ^
arch/arm/kernel/vdso.c:321:36: error: 'struct timekeeper' has no member named 'tkr'
   vdso_data->xtime_clock_snsec = tk->tkr.xtime_nsec;
                                    ^
arch/arm/kernel/vdso.c:322:27: error: 'struct timekeeper' has no member named 'tkr'
   vdso_data->cs_mult  = tk->tkr.mult;
                           ^
arch/arm/kernel/vdso.c:323:28: error: 'struct timekeeper' has no member named 'tkr'
   vdso_data->cs_shift  = tk->tkr.shift;
                            ^
arch/arm/kernel/vdso.c:324:27: error: 'struct timekeeper' has no member named 'tkr'
   vdso_data->cs_mask  = tk->tkr.mask;
                           ^

Caused by commit 876e78818def ("time: Rename timekeeper::tkr to
timekeeper::tkr_mono") from the tip tree interacting with commit
ecf99a439105 ("ARM: 8331/1: VDSO initialization, mapping, and
synchronization") from the arm tree.

I added this merge fix patch for today (is that all that is needed?):

From: Stephen Rothwell <[email-masked]>
Date: Mon, 30 Mar 2015 17:08:21 +1100
Subject: [PATCH] ARM: VDSO: rename tkr to tkr_mono

Signed-off-by: Stephen Rothwell <[email-masked]>
---
 arch/arm/kernel/vdso.c | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/arch/arm/kernel/vdso.c b/arch/arm/kernel/vdso.c
index 0d31d3ccab81..efe17dd9b921 100644
--- a/arch/arm/kernel/vdso.c
+++ b/arch/arm/kernel/vdso.c
@@ -270,7 +270,7 @@ static bool tk_is_cntvct(const struct timekeeper *tk)
 	if (!IS_ENABLED(CONFIG_ARM_ARCH_TIMER))
 		return false;
 
-	if (strcmp(tk->tkr.clock->name, "arch_sys_counter") != 0)
+	if (strcmp(tk->tkr_mono.clock->name, "arch_sys_counter") != 0)
 		return false;
 
 	return true;
@@ -316,12 +316,12 @@ void update_vsyscall(struct timekeeper *tk)
 	vdso_data->wtm_clock_nsec		= wtm->tv_nsec;
 
 	if (vdso_data->tk_is_cntvct) {
-		vdso_data->cs_cycle_last	= tk->tkr.cycle_last;
+		vdso_data->cs_cycle_last	= tk->tkr_mono.cycle_last;
 		vdso_data->xtime_clock_sec	= tk->xtime_sec;
-		vdso_data->xtime_clock_snsec	= tk->tkr.xtime_nsec;
-		vdso_data->cs_mult		= tk->tkr.mult;
-		vdso_data->cs_shift		= tk->tkr.shift;
-		vdso_data->cs_mask		= tk->tkr.mask;
+		vdso_data->xtime_clock_snsec	= tk->tkr_mono.xtime_nsec;
+		vdso_data->cs_mult		= tk->tkr_mono.mult;
+		vdso_data->cs_shift		= tk->tkr_mono.shift;
+		vdso_data->cs_mask		= tk->tkr_mono.mask;
 	}
 
 	vdso_write_end(vdso_data);
-- 
2.1.4

-- 
Cheers,
Stephen Rothwell                    [email-masked]