Hi all, On Tue, 15 Jun 2021 09:20:25 +1000 Stephen Rothwell <sfr@xxxxxxxxxxxxxxxx> wrote: > > Hi all, > > Today's linux-next merge of the arm64 tree got a conflict in: > > arch/arm64/kernel/process.c > > between commit: > > ab6cef1d1447 ("ARM: 9095/1: ARM64: Remove arm_pm_restart()") > > from the arm tree and commit: > > b5df5b8307b1 ("arm64: idle: don't instrument idle code with KCOV") > > from the arm64 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. > > > diff --cc arch/arm64/kernel/process.c > index 5591725cebcc,161e8df31a0d..000000000000 > --- a/arch/arm64/kernel/process.c > +++ b/arch/arm64/kernel/process.c > @@@ -72,63 -71,8 +71,6 @@@ EXPORT_SYMBOL(__stack_chk_guard) > void (*pm_power_off)(void); > EXPORT_SYMBOL_GPL(pm_power_off); > > - static void noinstr __cpu_do_idle(void) > - { > - dsb(sy); > - wfi(); > - } > - > - static void noinstr __cpu_do_idle_irqprio(void) > - { > - unsigned long pmr; > - unsigned long daif_bits; > - > - daif_bits = read_sysreg(daif); > - write_sysreg(daif_bits | PSR_I_BIT | PSR_F_BIT, daif); > - > - /* > - * Unmask PMR before going idle to make sure interrupts can > - * be raised. > - */ > - pmr = gic_read_pmr(); > - gic_write_pmr(GIC_PRIO_IRQON | GIC_PRIO_PSR_I_SET); > - > - __cpu_do_idle(); > - > - gic_write_pmr(pmr); > - write_sysreg(daif_bits, daif); > - } > - > - /* > - * cpu_do_idle() > - * > - * Idle the processor (wait for interrupt). > - * > - * If the CPU supports priority masking we must do additional work to > - * ensure that interrupts are not masked at the PMR (because the core will > - * not wake up if we block the wake up signal in the interrupt controller). > - */ > - void noinstr cpu_do_idle(void) > - { > - if (system_uses_irq_prio_masking()) > - __cpu_do_idle_irqprio(); > - else > - __cpu_do_idle(); > - } > - > - /* > - * This is our default idle handler. > - */ > - void noinstr arch_cpu_idle(void) > - { > - /* > - * This should do all the clock switching and wait for interrupt > - * tricks > - */ > - cpu_do_idle(); > - raw_local_irq_enable(); > - } > -void (*arm_pm_restart)(enum reboot_mode reboot_mode, const char *cmd); > -- > #ifdef CONFIG_HOTPLUG_CPU > void arch_cpu_idle_dead(void) > { This is now a conflict between Linus' tree and the arm tree. -- Cheers, Stephen Rothwell
Attachment:
pgp_3mEPVOHBp.pgp
Description: OpenPGP digital signature