Skip to contentSkip to conversation

vfs and procfs fixes

GIT PULL Al Viro 1 participant 1 message Mar 23, 2011 VFS

lore
Share & tools
lore

Al Viro

author maintainer
#0 lore raw

Fix for a couple of dumb leaks in path_lookupat() and a large pile of
procfs fixes. Please, pull from
git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6.git/ for-linus

Shortlog:
Al Viro (7):
fix leaks in path_lookupat()
make sessionid permissions in /proc/*/task/* match those in /proc/*
pagemap: close races with suid execve
report errors in /proc/*/*map* sanely
close race in /proc/*/environ
auxv: require the target to be tracable (or yourself) deal with races in /proc/*/{syscall,stack,personality}

Stephen Wilson (12):
x86: add context tag to mark mm when running a task in 32-bit compatibility mode
x86: mark associated mm when running a task in 32 bit compatibility mode
mm: arch: make get_gate_vma take an mm_struct instead of a task_struct
mm: arch: make in_gate_area take an mm_struct instead of a task_struct
mm: arch: rename in_gate_area_no_task to in_gate_area_no_mm
mm: use mm_struct to resolve gate vma's in __get_user_pages
mm: factor out main logic of access_process_vm
mm: implement access_remote_vm
proc: disable mem_write after exec
proc: hold cred_guard_mutex in check_mem_permission()
proc: make check_mem_permission() return an mm_struct on success
proc: enable writing to /proc/pid/mem

Diffstat:

 arch/powerpc/kernel/vdso.c         |    6 +-
 arch/s390/kernel/vdso.c            |    6 +-
 arch/sh/kernel/vsyscall/vsyscall.c |    6 +-
 arch/x86/ia32/ia32_aout.c          |    1 +
 arch/x86/include/asm/mmu.h         |    6 +
 arch/x86/kernel/process_64.c       |    8 ++
 arch/x86/mm/init_64.c              |   16 ++--
 arch/x86/vdso/vdso32-setup.c       |   15 ++--
 fs/binfmt_elf.c                    |    2 +-
 fs/namei.c                         |    7 +-
 fs/proc/base.c                     |  178 ++++++++++++++++++++++++------------
 fs/proc/task_mmu.c                 |   23 ++---
 fs/proc/task_nommu.c               |    6 +-
 include/linux/mm.h                 |   12 ++-
 kernel/kallsyms.c                  |    4 +-
 mm/memory.c                        |   73 +++++++++++----
 mm/mlock.c                         |    4 +-
 mm/nommu.c                         |    2 +-
 18 files changed, 244 insertions(+), 131 deletions(-)