memcpy((void *)reboot_code_buffer, relocate_new_kernel, relocate_new_kernel_size); 
memcpy((void *)reboot_code_buffer, relocate_new_kernel, relocate_new_kernel_size); 
void machine_kexec_simple(struct kimage *image){	unsigned long page_list;	unsigned long reboot_code_buffer, reboot_code_buffer_phys;	relocate_new_kernel_t rnk;	/* Interrupts aren't acceptable while we reboot */	local_irq_disable();	page_list = image->head;	/* we need both effective and real address here */	reboot_code_buffer =		(unsigned long)page_address(image->control_code_page);	reboot_code_buffer_phys = virt_to_phys((void *)reboot_code_buffer);	/* copy our kernel relocation code to the control code page */	memcpy((void *)reboot_code_buffer,		relocate_new_kernel, relocate_new_kernel_size);	flush_icache_range(reboot_code_buffer,		reboot_code_buffer + KEXEC_CONTROL_CODE_SIZE);	printk(KERN_INFO "Bye!\n");	/* now call it */	rnk = (relocate_new_kernel_t) reboot_code_buffer;	(*rnk)(page_list, reboot_code_buffer_phys, image->start);}
10457	/local/tlutelli/issta_data/temp/c/2005_temp/2005/10457/72414d3f1d22fc3e311b162fca95c430048d38ce/machine_kexec.c/clean/arch/ppc/kernel/machine_kexec.c