Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

sparc64: get rid of fake_swapper_regs

no reason to have ->kregs of initial thread set up in a special
way - we can keep them on stack, same as for every other thread.

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>

Al Viro d17b9ec7 5c8fe583

+2 -5
+1
arch/sparc/include/asm/thread_info_64.h
··· 118 118 .task = &tsk, \ 119 119 .current_ds = ASI_P, \ 120 120 .preempt_count = INIT_PREEMPT_COUNT, \ 121 + .kregs = (struct pt_regs *)(init_stack+THREAD_SIZE)-1 \ 121 122 } 122 123 123 124 /* how to get the thread information struct from C */
+1 -1
arch/sparc/kernel/head_64.S
··· 706 706 wr %g0, ASI_P, %asi 707 707 mov 1, %g1 708 708 sllx %g1, THREAD_SHIFT, %g1 709 - sub %g1, (STACKFRAME_SZ + STACK_BIAS), %g1 709 + sub %g1, (STACKFRAME_SZ + STACK_BIAS + TRACEREG_SZ), %g1 710 710 add %g6, %g1, %sp 711 711 712 712 /* Set per-cpu pointer initially to zero, this makes
-4
arch/sparc/kernel/setup_64.c
··· 165 165 166 166 char reboot_command[COMMAND_LINE_SIZE]; 167 167 168 - static struct pt_regs fake_swapper_regs = { { 0, }, 0, 0, 0, 0 }; 169 - 170 168 static void __init per_cpu_patch(void) 171 169 { 172 170 struct cpuid_patch_entry *p; ··· 658 660 #ifdef CONFIG_BLK_DEV_RAM 659 661 rd_image_start = ram_flags & RAMDISK_IMAGE_START_MASK; 660 662 #endif 661 - 662 - task_thread_info(&init_task)->kregs = &fake_swapper_regs; 663 663 664 664 #ifdef CONFIG_IP_PNP 665 665 if (!ic_set_manually) {