linux-next: manual merge of the akpm tree with the arm-current tree

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Andrew,

Today's linux-next merge of the akpm tree got a conflict in
arch/arm/kernel/process.c between commit 19ab428f4b79 ("ARM: 7759/1:
decouple CPU offlining from reboot/shutdown") from the  tree and commit
("reboot: move arch/x86 reboot= handling to generic kernel") from the
akpm tree.

I fixed it up (see below) and can carry the fix as necessary (no action
is required).

-- 
Cheers,
Stephen Rothwell                    sfr@xxxxxxxxxxxxxxxx

diff --cc arch/arm/kernel/process.c
index 4f569dc,5cbd139..0000000
--- a/arch/arm/kernel/process.c
+++ b/arch/arm/kernel/process.c
@@@ -175,39 -176,16 +175,29 @@@ void arch_cpu_idle(void
  		default_idle();
  }
  
- enum reboot_mode reboot_mode = REBOOT_HARD;
- 
- static int __init reboot_setup(char *str)
- {
- 	if ('s' == str[0])
- 		reboot_mode = REBOOT_SOFT;
- 	return 1;
- }
- __setup("reboot=", reboot_setup);
- 
 +/*
 + * Called by kexec, immediately prior to machine_kexec().
 + *
 + * This must completely disable all secondary CPUs; simply causing those CPUs
 + * to execute e.g. a RAM-based pin loop is not sufficient. This allows the
 + * kexec'd kernel to use any and all RAM as it sees fit, without having to
 + * avoid any code or data used by any SW CPU pin loop. The CPU hotplug
 + * functionality embodied in disable_nonboot_cpus() to achieve this.
 + */
  void machine_shutdown(void)
  {
 -#ifdef CONFIG_SMP
 -	smp_send_stop();
 -#endif
 +	disable_nonboot_cpus();
  }
  
 +/*
 + * Halting simply requires that the secondary CPUs stop performing any
 + * activity (executing tasks, handling interrupts). smp_send_stop()
 + * achieves this.
 + */
  void machine_halt(void)
  {
 -	machine_shutdown();
 +	smp_send_stop();
 +
  	local_irq_disable();
  	while (1);
  }

Attachment: pgp91yfzIAwrO.pgp
Description: PGP signature


[Index of Archives]     [Linux Kernel]     [Linux USB Development]     [Yosemite News]     [Linux SCSI]

  Powered by Linux