From: Thomas Gleixner <tglx@linutronix.de> To: LKML <linux-kernel@vger.kernel.org> Cc: Ralf Baechle <ralf@linux-mips.org> Subject: [patch V2 17/31] mips: Use generic init_task Date: Thu, 03 May 2012 09:02:55 -0000 Message-ID: <20120503085034.941344764@linutronix.de> (raw) In-Reply-To: <20120503083859.991965503@linutronix.de> [-- Attachment #0: mips-use-generic-init-task.patch --] [-- Type: text/plain, Size: 3575 bytes --] Same code. Use the generic version. The special Makefile treatment is pointless anyway as init_task.o contains only data which is handled by the linker script. So no point on being treated like head text. Make the linker script align the task on THREAD_SIZE and not on PAGE_SIZE, as PAGE_SIZE might be smaller than THREAD_SIZE. Signed-off-by: Thomas Gleixner <tglx@linutronix.de> Cc: Ralf Baechle <ralf@linux-mips.org> --- arch/mips/Kconfig | 1 + arch/mips/Makefile | 2 +- arch/mips/kernel/Makefile | 2 +- arch/mips/kernel/init_task.c | 35 ----------------------------------- arch/mips/kernel/vmlinux.lds.S | 2 +- 5 files changed, 4 insertions(+), 38 deletions(-) Index: tip/arch/mips/Kconfig =================================================================== --- tip.orig/arch/mips/Kconfig +++ tip/arch/mips/Kconfig @@ -30,6 +30,7 @@ config MIPS select HAVE_MEMBLOCK_NODE_MAP select ARCH_DISCARD_MEMBLOCK select GENERIC_SMP_IDLE_THREAD + select HAVE_GENERIC_INIT_TASK menu "Machine selection" Index: tip/arch/mips/Makefile =================================================================== --- tip.orig/arch/mips/Makefile +++ tip/arch/mips/Makefile @@ -235,7 +235,7 @@ endif OBJCOPYFLAGS += --remove-section=.reginfo -head-y := arch/mips/kernel/head.o arch/mips/kernel/init_task.o +head-y := arch/mips/kernel/head.o libs-y += arch/mips/lib/ Index: tip/arch/mips/kernel/Makefile =================================================================== --- tip.orig/arch/mips/kernel/Makefile +++ tip/arch/mips/kernel/Makefile @@ -2,7 +2,7 @@ # Makefile for the Linux/MIPS kernel. # -extra-y := head.o init_task.o vmlinux.lds +extra-y := head.o vmlinux.lds obj-y += cpu-probe.o branch.o entry.o genex.o irq.o process.o \ ptrace.o reset.o setup.o signal.o syscall.o \ Index: tip/arch/mips/kernel/init_task.c =================================================================== --- tip.orig/arch/mips/kernel/init_task.c +++ /dev/null @@ -1,35 +0,0 @@ -#include <linux/mm.h> -#include <linux/export.h> -#include <linux/sched.h> -#include <linux/init_task.h> -#include <linux/fs.h> -#include <linux/mqueue.h> - -#include <asm/thread_info.h> -#include <asm/uaccess.h> -#include <asm/pgtable.h> - -static struct signal_struct init_signals = INIT_SIGNALS(init_signals); -static struct sighand_struct init_sighand = INIT_SIGHAND(init_sighand); -/* - * Initial thread structure. - * - * We need to make sure that this is 8192-byte aligned due to the - * way process stacks are handled. This is done by making sure - * the linker maps this in the .text segment right after head.S, - * and making head.S ensure the proper alignment. - * - * The things we do for performance.. - */ -union thread_union init_thread_union __init_task_data - __attribute__((__aligned__(THREAD_SIZE))) = - { INIT_THREAD_INFO(init_task) }; - -/* - * Initial task structure. - * - * All other task structs will be allocated on slabs in fork.c - */ -struct task_struct init_task = INIT_TASK(init_task); - -EXPORT_SYMBOL(init_task); Index: tip/arch/mips/kernel/vmlinux.lds.S =================================================================== --- tip.orig/arch/mips/kernel/vmlinux.lds.S +++ tip/arch/mips/kernel/vmlinux.lds.S @@ -72,7 +72,7 @@ SECTIONS .data : { /* Data */ . = . + DATAOFFSET; /* for CONFIG_MAPPED_KERNEL */ - INIT_TASK_DATA(PAGE_SIZE) + INIT_TASK_DATA(THREAD_SIZE) NOSAVE_DATA CACHELINE_ALIGNED_DATA(1 << CONFIG_MIPS_L1_CACHE_SHIFT) READ_MOSTLY_DATA(1 << CONFIG_MIPS_L1_CACHE_SHIFT)
next prev parent reply index Thread overview: 69+ messages / expand[flat|nested] mbox.gz Atom feed top 2012-05-03 9:02 [patch V2 00/31] init_task: Use a generic init_task variant Thomas Gleixner 2012-05-03 9:02 ` [patch V2 01/31] frv: Use correct size for task_struct allocation Thomas Gleixner 2012-05-05 18:46 ` [tip:smp/hotplug] " tip-bot for Thomas Gleixner 2012-05-03 9:02 ` [patch V2 02/31] frv: Use core allocator for task_struct Thomas Gleixner 2012-05-05 18:47 ` [tip:smp/hotplug] " tip-bot for Thomas Gleixner 2012-05-03 9:02 ` [patch V2 03/31] task_allocator: Use config switches instead of magic defines Thomas Gleixner 2012-05-03 9:02 ` [patch V2 04/31] init_task: Create generic init_task instance Thomas Gleixner 2012-05-05 18:49 ` [tip:smp/hotplug] " tip-bot for Thomas Gleixner 2012-05-03 9:02 ` [patch V2 05/31] alpha: Use generic init_task Thomas Gleixner 2012-05-05 18:50 ` [tip:smp/hotplug] " tip-bot for Thomas Gleixner 2012-05-03 9:02 ` [patch V2 06/31] arm: " Thomas Gleixner 2012-05-05 18:51 ` [tip:smp/hotplug] " tip-bot for Thomas Gleixner 2012-05-03 9:02 ` [patch V2 07/31] avr32: " Thomas Gleixner 2012-05-05 18:51 ` [tip:smp/hotplug] " tip-bot for Thomas Gleixner 2012-05-03 9:02 ` [patch V2 08/31] blackfin: " Thomas Gleixner 2012-05-05 18:52 ` [tip:smp/hotplug] " tip-bot for Thomas Gleixner 2012-05-03 9:02 ` [patch V2 10/31] cris: " Thomas Gleixner 2012-05-05 18:54 ` [tip:smp/hotplug] " tip-bot for Thomas Gleixner 2012-05-03 9:02 ` [patch V2 09/31] cx6: " Thomas Gleixner 2012-05-03 13:45 ` Mark Salter 2012-05-03 15:25 ` Thomas Gleixner 2012-05-05 18:53 ` [tip:smp/hotplug] c6x: " tip-bot for Thomas Gleixner 2012-05-03 9:02 ` [patch V2 11/31] frv: " Thomas Gleixner 2012-05-05 18:55 ` [tip:smp/hotplug] " tip-bot for Thomas Gleixner 2012-05-03 9:02 ` [patch V2 12/31] h8300: " Thomas Gleixner 2012-05-05 18:56 ` [tip:smp/hotplug] h8300-use-generic-init_task tip-bot for Thomas Gleixner 2012-05-03 9:02 ` [patch V2 14/31] m32r: Use generic init_task Thomas Gleixner 2012-05-05 18:57 ` [tip:smp/hotplug] " tip-bot for Thomas Gleixner 2012-05-03 9:02 ` [patch V2 13/31] hexagon: Use generic idle_task Thomas Gleixner 2012-05-05 18:56 ` [tip:smp/hotplug] " tip-bot for Thomas Gleixner 2012-05-03 9:02 ` [patch V2 15/31] m68k: Use generic init_task Thomas Gleixner 2012-05-05 18:58 ` [tip:smp/hotplug] " tip-bot for Thomas Gleixner 2012-05-03 9:02 ` [patch V2 16/31] microblaze: " Thomas Gleixner 2012-05-05 18:59 ` [tip:smp/hotplug] " tip-bot for Thomas Gleixner 2012-05-03 9:02 ` Thomas Gleixner [this message] 2012-05-05 19:00 ` [tip:smp/hotplug] mips: " tip-bot for Thomas Gleixner 2012-05-03 9:02 ` [patch V2 19/31] openrisc: " Thomas Gleixner 2012-05-05 19:01 ` [tip:smp/hotplug] " tip-bot for Thomas Gleixner 2012-05-08 9:37 ` [patch V2 19/31] " Jonas Bonn 2012-05-03 9:02 ` [patch V2 18/31] mn10300: " Thomas Gleixner 2012-05-05 19:01 ` [tip:smp/hotplug] " tip-bot for Thomas Gleixner 2012-05-03 9:02 ` [patch V2 21/31] powerpc: " Thomas Gleixner 2012-05-05 19:03 ` [tip:smp/hotplug] " tip-bot for Thomas Gleixner 2012-05-03 9:02 ` [patch V2 20/31] parisc: " Thomas Gleixner 2012-05-05 19:02 ` [tip:smp/hotplug] " tip-bot for Thomas Gleixner 2012-05-03 9:02 ` [patch V2 22/31] s390: " Thomas Gleixner 2012-05-03 10:00 ` Heiko Carstens 2012-05-05 19:04 ` [tip:smp/hotplug] " tip-bot for Thomas Gleixner 2012-05-03 9:02 ` [patch V2 23/31] score: " Thomas Gleixner 2012-05-05 19:05 ` [tip:smp/hotplug] " tip-bot for Thomas Gleixner 2012-05-03 9:02 ` [patch V2 26/31] tile: " Thomas Gleixner 2012-05-05 19:07 ` [tip:smp/hotplug] " tip-bot for Thomas Gleixner 2012-05-03 9:02 ` [patch V2 24/31] sh: " Thomas Gleixner 2012-05-05 19:06 ` [tip:smp/hotplug] " tip-bot for Thomas Gleixner 2012-05-03 9:02 ` [patch V2 25/31] sparc: " Thomas Gleixner 2012-05-05 19:06 ` [tip:smp/hotplug] " tip-bot for Thomas Gleixner 2012-05-03 9:03 ` [patch V2 27/31] um: " Thomas Gleixner 2012-05-05 19:09 ` [tip:smp/hotplug] " tip-bot for Thomas Gleixner 2012-05-03 9:03 ` [patch V2 28/31] unicore32: " Thomas Gleixner 2012-05-05 19:08 ` [tip:smp/hotplug] " tip-bot for Thomas Gleixner 2012-05-03 9:03 ` [patch V2 29/31] x86: " Thomas Gleixner 2012-05-05 19:10 ` [tip:smp/hotplug] " tip-bot for Thomas Gleixner 2012-05-03 9:03 ` [patch V2 30/31] xtensa: " Thomas Gleixner 2012-05-05 19:11 ` [tip:smp/hotplug] " tip-bot for Thomas Gleixner 2012-05-03 9:03 ` [patch V2 31/31] init_task: Replace CONFIG_HAVE_GENERIC_INIT_TASK Thomas Gleixner 2012-05-05 19:11 ` [tip:smp/hotplug] " tip-bot for Thomas Gleixner 2012-05-04 17:28 ` [patch V2 03/31] task_allocator: Use config switches instead of magic defines David Howells 2012-05-05 10:54 ` Thomas Gleixner 2012-05-04 17:30 ` [patch V2 02/31] frv: Use core allocator for task_struct David Howells
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=20120503085034.941344764@linutronix.de \ --to=tglx@linutronix.de \ --cc=linux-kernel@vger.kernel.org \ --cc=ralf@linux-mips.org \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: link
LKML Archive on lore.kernel.org Archives are clonable: git clone --mirror https://lore.kernel.org/lkml/0 lkml/git/0.git git clone --mirror https://lore.kernel.org/lkml/1 lkml/git/1.git git clone --mirror https://lore.kernel.org/lkml/2 lkml/git/2.git git clone --mirror https://lore.kernel.org/lkml/3 lkml/git/3.git git clone --mirror https://lore.kernel.org/lkml/4 lkml/git/4.git git clone --mirror https://lore.kernel.org/lkml/5 lkml/git/5.git git clone --mirror https://lore.kernel.org/lkml/6 lkml/git/6.git git clone --mirror https://lore.kernel.org/lkml/7 lkml/git/7.git git clone --mirror https://lore.kernel.org/lkml/8 lkml/git/8.git git clone --mirror https://lore.kernel.org/lkml/9 lkml/git/9.git # If you have public-inbox 1.1+ installed, you may # initialize and index your mirror using the following commands: public-inbox-init -V2 lkml lkml/ https://lore.kernel.org/lkml \ linux-kernel@vger.kernel.org public-inbox-index lkml Example config snippet for mirrors Newsgroup available over NNTP: nntp://nntp.lore.kernel.org/org.kernel.vger.linux-kernel AGPL code for this site: git clone https://public-inbox.org/public-inbox.git