Subject: linux-next: manual merge of the tip tree with the powerpc tree

From: Stephen Rothwell <[email-masked]>
Date: Fri, 17 Feb 2017 12:48:43 +1100

Hi all,

Today's linux-next merge of the tip tree got a conflict in:

  arch/powerpc/kernel/asm-offsets.c

between commit:

  454656155110 ("powerpc/asm: Use OFFSET macro in asm-offsets.c")

from the powerpc tree and commit:

  8c8b73c4811f ("sched/cputime, powerpc: Prepare accounting structure for cputime flush on tick")

from the tip tree.

I fixed it up (see below) and can carry the fix as necessary. This
is now fixed as far as linux-next is concerned, but any non trivial
conflicts should be mentioned to your upstream maintainer when your tree
is submitted for merging.  You may also want to consider cooperating
with the maintainer of the conflicting tree to minimise any particularly
complex conflicts.

-- 
Cheers,
Stephen Rothwell

diff --cc arch/powerpc/kernel/asm-offsets.c
index d918338b54b0,9e8e771f8acb..000000000000
--- a/arch/powerpc/kernel/asm-offsets.c
+++ b/arch/powerpc/kernel/asm-offsets.c
@@@ -208,48 -213,58 +208,48 @@@ int main(void
  #endif /* CONFIG_PPC_BOOK3E */
  
  #ifdef CONFIG_PPC_STD_MMU_64
 -	DEFINE(PACASLBCACHE, offsetof(struct paca_struct, slb_cache));
 -	DEFINE(PACASLBCACHEPTR, offsetof(struct paca_struct, slb_cache_ptr));
 -	DEFINE(PACAVMALLOCSLLP, offsetof(struct paca_struct, vmalloc_sllp));
 +	OFFSET(PACASLBCACHE, paca_struct, slb_cache);
 +	OFFSET(PACASLBCACHEPTR, paca_struct, slb_cache_ptr);
 +	OFFSET(PACAVMALLOCSLLP, paca_struct, vmalloc_sllp);
  #ifdef CONFIG_PPC_MM_SLICES
 -	DEFINE(MMUPSIZESLLP, offsetof(struct mmu_psize_def, sllp));
 +	OFFSET(MMUPSIZESLLP, mmu_psize_def, sllp);
  #else
 -	DEFINE(PACACONTEXTSLLP, offsetof(struct paca_struct, mm_ctx_sllp));
 +	OFFSET(PACACONTEXTSLLP, paca_struct, mm_ctx_sllp);
  #endif /* CONFIG_PPC_MM_SLICES */
 -	DEFINE(PACA_EXGEN, offsetof(struct paca_struct, exgen));
 -	DEFINE(PACA_EXMC, offsetof(struct paca_struct, exmc));
 -	DEFINE(PACA_EXSLB, offsetof(struct paca_struct, exslb));
 -	DEFINE(PACALPPACAPTR, offsetof(struct paca_struct, lppaca_ptr));
 -	DEFINE(PACA_SLBSHADOWPTR, offsetof(struct paca_struct, slb_shadow_ptr));
 -	DEFINE(SLBSHADOW_STACKVSID,
 -	       offsetof(struct slb_shadow, save_area[SLB_NUM_BOLTED - 1].vsid));
 -	DEFINE(SLBSHADOW_STACKESID,
 -	       offsetof(struct slb_shadow, save_area[SLB_NUM_BOLTED - 1].esid));
 -	DEFINE(SLBSHADOW_SAVEAREA, offsetof(struct slb_shadow, save_area));
 -	DEFINE(LPPACA_PMCINUSE, offsetof(struct lppaca, pmcregs_in_use));
 -	DEFINE(LPPACA_DTLIDX, offsetof(struct lppaca, dtl_idx));
 -	DEFINE(LPPACA_YIELDCOUNT, offsetof(struct lppaca, yield_count));
 -	DEFINE(PACA_DTL_RIDX, offsetof(struct paca_struct, dtl_ridx));
 +	OFFSET(PACA_EXGEN, paca_struct, exgen);
 +	OFFSET(PACA_EXMC, paca_struct, exmc);
 +	OFFSET(PACA_EXSLB, paca_struct, exslb);
 +	OFFSET(PACALPPACAPTR, paca_struct, lppaca_ptr);
 +	OFFSET(PACA_SLBSHADOWPTR, paca_struct, slb_shadow_ptr);
 +	OFFSET(SLBSHADOW_STACKVSID, slb_shadow, save_area[SLB_NUM_BOLTED - 1].vsid);
 +	OFFSET(SLBSHADOW_STACKESID, slb_shadow, save_area[SLB_NUM_BOLTED - 1].esid);
 +	OFFSET(SLBSHADOW_SAVEAREA, slb_shadow, save_area);
 +	OFFSET(LPPACA_PMCINUSE, lppaca, pmcregs_in_use);
 +	OFFSET(LPPACA_DTLIDX, lppaca, dtl_idx);
 +	OFFSET(LPPACA_YIELDCOUNT, lppaca, yield_count);
 +	OFFSET(PACA_DTL_RIDX, paca_struct, dtl_ridx);
  #endif /* CONFIG_PPC_STD_MMU_64 */
 -	DEFINE(PACAEMERGSP, offsetof(struct paca_struct, emergency_sp));
 +	OFFSET(PACAEMERGSP, paca_struct, emergency_sp);
  #ifdef CONFIG_PPC_BOOK3S_64
 -	DEFINE(PACAMCEMERGSP, offsetof(struct paca_struct, mc_emergency_sp));
 -	DEFINE(PACA_IN_MCE, offsetof(struct paca_struct, in_mce));
 -#endif
 -	DEFINE(PACAHWCPUID, offsetof(struct paca_struct, hw_cpu_id));
 -	DEFINE(PACAKEXECSTATE, offsetof(struct paca_struct, kexec_state));
 -	DEFINE(PACA_DSCR_DEFAULT, offsetof(struct paca_struct, dscr_default));
 -	DEFINE(ACCOUNT_STARTTIME,
 -	       offsetof(struct paca_struct, accounting.starttime));
 -	DEFINE(ACCOUNT_STARTTIME_USER,
 -	       offsetof(struct paca_struct, accounting.starttime_user));
 -	DEFINE(ACCOUNT_USER_TIME,
 -	       offsetof(struct paca_struct, accounting.utime));
 -	DEFINE(ACCOUNT_SYSTEM_TIME,
 -	       offsetof(struct paca_struct, accounting.stime));
 -	DEFINE(PACA_TRAP_SAVE, offsetof(struct paca_struct, trap_save));
 -	DEFINE(PACA_NAPSTATELOST, offsetof(struct paca_struct, nap_state_lost));
 -	DEFINE(PACA_SPRG_VDSO, offsetof(struct paca_struct, sprg_vdso));
 +	OFFSET(PACAMCEMERGSP, paca_struct, mc_emergency_sp);
 +	OFFSET(PACA_IN_MCE, paca_struct, in_mce);
 +#endif
 +	OFFSET(PACAHWCPUID, paca_struct, hw_cpu_id);
 +	OFFSET(PACAKEXECSTATE, paca_struct, kexec_state);
 +	OFFSET(PACA_DSCR_DEFAULT, paca_struct, dscr_default);
 +	OFFSET(ACCOUNT_STARTTIME, paca_struct, accounting.starttime);
 +	OFFSET(ACCOUNT_STARTTIME_USER, paca_struct, accounting.starttime_user);
- 	OFFSET(ACCOUNT_USER_TIME, paca_struct, accounting.user_time);
- 	OFFSET(ACCOUNT_SYSTEM_TIME, paca_struct, accounting.system_time);
++	OFFSET(ACCOUNT_USER_TIME, paca_struct, accounting.utime);
++	OFFSET(ACCOUNT_SYSTEM_TIME, paca_struct, accounting.stime);
 +	OFFSET(PACA_TRAP_SAVE, paca_struct, trap_save);
 +	OFFSET(PACA_NAPSTATELOST, paca_struct, nap_state_lost);
 +	OFFSET(PACA_SPRG_VDSO, paca_struct, sprg_vdso);
  #else /* CONFIG_PPC64 */
  #ifdef CONFIG_VIRT_CPU_ACCOUNTING_NATIVE
 -	DEFINE(ACCOUNT_STARTTIME,
 -	       offsetof(struct thread_info, accounting.starttime));
 -	DEFINE(ACCOUNT_STARTTIME_USER,
 -	       offsetof(struct thread_info, accounting.starttime_user));
 -	DEFINE(ACCOUNT_USER_TIME,
 -	       offsetof(struct thread_info, accounting.utime));
 -	DEFINE(ACCOUNT_SYSTEM_TIME,
 -	       offsetof(struct thread_info, accounting.stime));
 +	OFFSET(ACCOUNT_STARTTIME, thread_info, accounting.starttime);
 +	OFFSET(ACCOUNT_STARTTIME_USER, thread_info, accounting.starttime_user);
- 	OFFSET(ACCOUNT_USER_TIME, thread_info, accounting.user_time);
- 	OFFSET(ACCOUNT_SYSTEM_TIME, thread_info, accounting.system_time);
++	OFFSET(ACCOUNT_USER_TIME, thread_info, accounting.utime);
++	OFFSET(ACCOUNT_SYSTEM_TIME, thread_info, accounting.stime);
  #endif
  #endif /* CONFIG_PPC64 */