lkml.org 
[lkml]   [2008]   [Feb]   [23]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 08/16] x86: use get_personality()
    Date
    Use get_personality() macro instead of explicit reference
    for x86 code.

    Signed-off-by: WANG Cong <xiyou.wangcong@gmail.com>
    Cc: Ingo Molnar <mingo@redhat.com>

    ---
    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


    \
     
     \ /
      Last update: 2008-02-23 09:35    [W:3.269 / U:0.000 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site