lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:	Wed, 2 May 2012 19:46:38 -0500
From:	Richard Kuo <rkuo@...eaurora.org>
To:	Thomas Gleixner <tglx@...utronix.de>
Cc:	LKML <linux-kernel@...r.kernel.org>, linux-arch@...r.kernel.org,
	linux-hexagon@...r.kernel.org
Subject: Re: [patch 10/29] hexagon: Use generic idle_task

On Mon, Apr 30, 2012 at 08:15:56PM -0000, Thomas Gleixner wrote:
> 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.
> 
> Signed-off-by: Thomas Gleixner <tglx@...utronix.de>
> Cc: Richard Kuo <rkuo@...eaurora.org>
> ---
>  arch/hexagon/Kconfig            |    1 
>  arch/hexagon/Makefile           |    3 --
>  arch/hexagon/kernel/Makefile    |    2 -
>  arch/hexagon/kernel/init_task.c |   54 ----------------------------------------
>  4 files changed, 3 insertions(+), 57 deletions(-)
> 
> Index: tip/arch/hexagon/Kconfig
> ===================================================================
> --- tip.orig/arch/hexagon/Kconfig
> +++ tip/arch/hexagon/Kconfig
> @@ -28,6 +28,7 @@ config HEXAGON
>  	select NO_IOPORT
>  	select GENERIC_IOMAP
>  	select GENERIC_SMP_IDLE_THREAD
> +	select HAVE_GENERIC_INIT_TASK
>  	# mostly generic routines, with some accelerated ones
>  	---help---
>  	  Qualcomm Hexagon is a processor architecture designed for high
> Index: tip/arch/hexagon/Makefile
> ===================================================================
> --- tip.orig/arch/hexagon/Makefile
> +++ tip/arch/hexagon/Makefile
> @@ -45,8 +45,7 @@ KBUILD_AFLAGS += -DTHREADINFO_REG=$(TIR_
>  LIBGCC := $(shell $(CC) $(KBUILD_CFLAGS) -print-libgcc-file-name)
>  libs-y += $(LIBGCC)
>  
> -head-y := arch/hexagon/kernel/head.o \
> -	arch/hexagon/kernel/init_task.o
> +head-y := arch/hexagon/kernel/head.o
>  
>  core-y += arch/hexagon/kernel/ \
>  	arch/hexagon/mm/ \
> Index: tip/arch/hexagon/kernel/Makefile
> ===================================================================
> --- tip.orig/arch/hexagon/kernel/Makefile
> +++ tip/arch/hexagon/kernel/Makefile
> @@ -1,4 +1,4 @@
> -extra-y := head.o vmlinux.lds init_task.o
> +extra-y := head.o vmlinux.lds
>  
>  obj-$(CONFIG_SMP) += smp.o topology.o
>  
> Index: tip/arch/hexagon/kernel/init_task.c
> ===================================================================
> --- tip.orig/arch/hexagon/kernel/init_task.c
> +++ /dev/null
> @@ -1,54 +0,0 @@
> -/*
> - * Init task definition
> - *
> - * Copyright (c) 2010-2011, Code Aurora Forum. All rights reserved.
> - *
> - * This program is free software; you can redistribute it and/or modify
> - * it under the terms of the GNU General Public License version 2 and
> - * only version 2 as published by the Free Software Foundation.
> - *
> - * This program is distributed in the hope that it will be useful,
> - * but WITHOUT ANY WARRANTY; without even the implied warranty of
> - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
> - * GNU General Public License for more details.
> - *
> - * You should have received a copy of the GNU General Public License
> - * along with this program; if not, write to the Free Software
> - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
> - * 02110-1301, USA.
> - */
> -
> -#include <linux/mm.h>
> -#include <linux/module.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.
> - */
> -union thread_union init_thread_union
> -	__attribute__((__section__(".data.init_task"),
> -		__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);
> 
> 

Acked-and-tested-by: Richard Kuo <rkuo@...eaurora.org>


-- 

Sent by an employee of the Qualcomm Innovation Center, Inc.
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ