[PATCH 08/16] x86: use get_personality()

From: WANG Cong
Date: Sat Feb 23 2008 - 03:33:04 EST


Use get_personality() macro instead of explicit reference
for x86 code.

Signed-off-by: WANG Cong <xiyou.wangcong@xxxxxxxxx>
Cc: Ingo Molnar <mingo@xxxxxxxxxx>

---
arch/x86/ia32/sys_ia32.c | 6 +++---
arch/x86/kernel/process_32.c | 2 +-
arch/x86/kernel/process_64.c | 2 +-
arch/x86/kernel/sys_x86_64.c | 2 +-
arch/x86/mm/mmap.c | 2 +-
include/asm-x86/page.h | 2 +-
include/asm-x86/processor.h | 2 +-
7 files changed, 9 insertions(+), 9 deletions(-)

diff --git a/arch/x86/ia32/sys_ia32.c b/arch/x86/ia32/sys_ia32.c
index abf71d2..80e7431 100644
--- a/arch/x86/ia32/sys_ia32.c
+++ b/arch/x86/ia32/sys_ia32.c
@@ -666,7 +666,7 @@ asmlinkage long sys32_personality(unsigned long personality)
{
int ret;

- if (personality(current->personality) == PER_LINUX32 &&
+ if (personality(get_personality()) == PER_LINUX32 &&
personality == PER_LINUX)
personality = PER_LINUX32;
ret = sys_personality(personality);
@@ -744,7 +744,7 @@ asmlinkage long sys32_olduname(struct oldold_utsname __user *name)
__OLD_UTS_LEN);
err |= __put_user(0, name->version+__OLD_UTS_LEN);

- if (personality(current->personality) == PER_LINUX32)
+ if (personality(get_personality()) == PER_LINUX32)
arch = "i686";

err |= __copy_to_user(&name->machine, arch, strlen(arch) + 1);
@@ -765,7 +765,7 @@ long sys32_uname(struct old_utsname __user *name)
down_read(&uts_sem);
err = copy_to_user(name, utsname(), sizeof(*name));
up_read(&uts_sem);
- if (personality(current->personality) == PER_LINUX32)
+ if (personality(get_personality()) == PER_LINUX32)
err |= copy_to_user(&name->machine, "i686", 5);

return err ? -EFAULT : 0;
diff --git a/arch/x86/kernel/process_32.c b/arch/x86/kernel/process_32.c
index a7d50a5..c4992fc 100644
--- a/arch/x86/kernel/process_32.c
+++ b/arch/x86/kernel/process_32.c
@@ -837,7 +837,7 @@ unsigned long get_wchan(struct task_struct *p)

unsigned long arch_align_stack(unsigned long sp)
{
- if (!(current->personality & ADDR_NO_RANDOMIZE) && randomize_va_space)
+ if (!(get_personality() & ADDR_NO_RANDOMIZE) && randomize_va_space)
sp -= get_random_int() % 8192;
return sp & ~0xf;
}
diff --git a/arch/x86/kernel/process_64.c b/arch/x86/kernel/process_64.c
index b0cc8f0..8223f3f 100644
--- a/arch/x86/kernel/process_64.c
+++ b/arch/x86/kernel/process_64.c
@@ -915,7 +915,7 @@ long sys_arch_prctl(int code, unsigned long addr)

unsigned long arch_align_stack(unsigned long sp)
{
- if (!(current->personality & ADDR_NO_RANDOMIZE) && randomize_va_space)
+ if (!(get_personality() & ADDR_NO_RANDOMIZE) && randomize_va_space)
sp -= get_random_int() % 8192;
return sp & ~0xf;
}
diff --git a/arch/x86/kernel/sys_x86_64.c b/arch/x86/kernel/sys_x86_64.c
index bd802a5..0b7548b 100644
--- a/arch/x86/kernel/sys_x86_64.c
+++ b/arch/x86/kernel/sys_x86_64.c
@@ -247,7 +247,7 @@ asmlinkage long sys_uname(struct new_utsname __user * name)
down_read(&uts_sem);
err = copy_to_user(name, utsname(), sizeof (*name));
up_read(&uts_sem);
- if (personality(current->personality) == PER_LINUX32)
+ if (personality(get_personality()) == PER_LINUX32)
err |= copy_to_user(&name->machine, "i686", 5);
return err ? -EFAULT : 0;
}
diff --git a/arch/x86/mm/mmap.c b/arch/x86/mm/mmap.c
index 56fe712..f299d64 100644
--- a/arch/x86/mm/mmap.c
+++ b/arch/x86/mm/mmap.c
@@ -55,7 +55,7 @@ static int mmap_is_ia32(void)

static int mmap_is_legacy(void)
{
- if (current->personality & ADDR_COMPAT_LAYOUT)
+ if (get_personality() & ADDR_COMPAT_LAYOUT)
return 1;

if (current->signal->rlim[RLIMIT_STACK].rlim_cur == RLIM_INFINITY)
diff --git a/include/asm-x86/page.h b/include/asm-x86/page.h
index 1cb7c51..fd90c7a 100644
--- a/include/asm-x86/page.h
+++ b/include/asm-x86/page.h
@@ -42,7 +42,7 @@
#define PAGE_OFFSET ((unsigned long)__PAGE_OFFSET)

#define VM_DATA_DEFAULT_FLAGS \
- (((current->personality & READ_IMPLIES_EXEC) ? VM_EXEC : 0 ) | \
+ (((get_personality() & READ_IMPLIES_EXEC) ? VM_EXEC : 0 ) | \
VM_READ | VM_WRITE | VM_MAYREAD | VM_MAYWRITE | VM_MAYEXEC)


diff --git a/include/asm-x86/processor.h b/include/asm-x86/processor.h
index 45a2f0a..c426dc1 100644
--- a/include/asm-x86/processor.h
+++ b/include/asm-x86/processor.h
@@ -791,7 +791,7 @@ extern unsigned long thread_saved_pc(struct task_struct *tsk);
/* This decides where the kernel will search for a free chunk of vm
* space during mmap's.
*/
-#define IA32_PAGE_OFFSET ((current->personality & ADDR_LIMIT_3GB) ? \
+#define IA32_PAGE_OFFSET ((get_personality() & ADDR_LIMIT_3GB) ? \
0xc0000000 : 0xFFFFe000)

#define TASK_SIZE (test_thread_flag(TIF_IA32) ? \
--
1.5.3.8

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/