Merge tag 'denywrite-for-5.15' of git://github.com/davidhildenbrand/linux
Pull MAP_DENYWRITE removal from David Hildenbrand: "Remove all in-tree usage of MAP_DENYWRITE from the kernel and remove VM_DENYWRITE. There are some (minor) user-visible changes: - We no longer deny write access to shared libaries loaded via legacy uselib(); this behavior matches modern user space e.g. dlopen(). - We no longer deny write access to the elf interpreter after exec completed, treating it just like shared libraries (which it often is). - We always deny write access to the file linked via /proc/pid/exe: sys_prctl(PR_SET_MM_MAP/EXE_FILE) will fail if write access to the file cannot be denied, and write access to the file will remain denied until the link is effectivel gone (exec, termination, sys_prctl(PR_SET_MM_MAP/EXE_FILE)) -- just as if exec'ing the file. Cross-compiled for a bunch of architectures (alpha, microblaze, i386, s390x, ...) and verified via ltp that especially the relevant tests (i.e., creat07 and execve04) continue working as expected" * tag 'denywrite-for-5.15' of git://github.com/davidhildenbrand/linux: fs: update documentation of get_write_access() and friends mm: ignore MAP_DENYWRITE in ksys_mmap_pgoff() mm: remove VM_DENYWRITE binfmt: remove in-tree usage of MAP_DENYWRITE kernel/fork: always deny write access to current MM exe_file kernel/fork: factor out replacing the current MM exe_file binfmt: don't use MAP_DENYWRITE when loading shared libraries via uselib()
No related branches found
No related tags found
Showing
- arch/x86/ia32/ia32_aout.c 3 additions, 5 deletionsarch/x86/ia32/ia32_aout.c
- fs/binfmt_aout.c 3 additions, 4 deletionsfs/binfmt_aout.c
- fs/binfmt_elf.c 3 additions, 3 deletionsfs/binfmt_elf.c
- fs/binfmt_elf_fdpic.c 1 addition, 1 deletionfs/binfmt_elf_fdpic.c
- fs/exec.c 3 additions, 1 deletionfs/exec.c
- fs/proc/task_mmu.c 0 additions, 1 deletionfs/proc/task_mmu.c
- include/linux/fs.h 12 additions, 7 deletionsinclude/linux/fs.h
- include/linux/mm.h 2 additions, 2 deletionsinclude/linux/mm.h
- include/linux/mman.h 2 additions, 2 deletionsinclude/linux/mman.h
- include/trace/events/mmflags.h 0 additions, 1 deletioninclude/trace/events/mmflags.h
- kernel/events/core.c 0 additions, 2 deletionskernel/events/core.c
- kernel/fork.c 84 additions, 11 deletionskernel/fork.c
- kernel/sys.c 1 addition, 32 deletionskernel/sys.c
- lib/test_printf.c 2 additions, 3 deletionslib/test_printf.c
- mm/mmap.c 3 additions, 26 deletionsmm/mmap.c
- mm/nommu.c 0 additions, 2 deletionsmm/nommu.c
Loading
Please register or sign in to comment