• Linus Torvalds's avatar
    proc: try to remove use of FOLL_FORCE entirely · 8ee74a91
    Linus Torvalds authored
    We fixed the bugs in it, but it's still an ugly interface, so let's see
    if anybody actually depends on it.  It's entirely possible that nothing
    actually requires the whole "punch through read-only mappings"
    semantics.
    
    For example, gdb definitely uses the /proc/<pid>/mem interface, but it
    looks like it mainly does it for regular reads of the target (that don't
    need FOLL_FORCE), and looking at the gdb source code seems to fall back
    on the traditional ptrace(PTRACE_POKEDATA) interface if it needs to.
    
    If this breaks something, I do have a (more complex) version that only
    enables FOLL_FORCE when somebody has PTRACE_ATTACH'ed to the target,
    like the comment here used to say ("Maybe we should limit FOLL_FORCE to
    actual ptrace users?").
    
    Cc: Kees Cook <keescook@chromium.org>
    Cc: Andy Lutomirski <luto@amacapital.net>
    Cc: Eric Biederman <ebiederm@xmission.com>
    Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
    8ee74a91
Name
Last commit
Last update
..
Kconfig Loading commit data...
Makefile Loading commit data...
array.c Loading commit data...
base.c Loading commit data...
cmdline.c Loading commit data...
consoles.c Loading commit data...
cpuinfo.c Loading commit data...
devices.c Loading commit data...
fd.c Loading commit data...
fd.h Loading commit data...
generic.c Loading commit data...
inode.c Loading commit data...
internal.h Loading commit data...
interrupts.c Loading commit data...
kcore.c Loading commit data...
kmsg.c Loading commit data...
loadavg.c Loading commit data...
meminfo.c Loading commit data...
namespaces.c Loading commit data...
nommu.c Loading commit data...
page.c Loading commit data...
proc_net.c Loading commit data...
proc_sysctl.c Loading commit data...
proc_tty.c Loading commit data...
root.c Loading commit data...
self.c Loading commit data...
softirqs.c Loading commit data...
stat.c Loading commit data...
task_mmu.c Loading commit data...
task_nommu.c Loading commit data...
thread_self.c Loading commit data...
uptime.c Loading commit data...
version.c Loading commit data...
vmcore.c Loading commit data...