• T
    ptrace: kill clone/exec tracehooks · 4b9d33e6
    Tejun Heo 提交于
    At this point, tracehooks aren't useful to mainline kernel and mostly
    just add an extra layer of obfuscation.  Although they have comments,
    without actual in-kernel users, it is difficult to tell what are their
    assumptions and they're actually trying to achieve.  To mainline
    kernel, they just aren't worth keeping around.
    
    This patch kills the following clone and exec related tracehooks.
    
    	tracehook_prepare_clone()
    	tracehook_finish_clone()
    	tracehook_report_clone()
    	tracehook_report_clone_complete()
    	tracehook_unsafe_exec()
    
    The changes are mostly trivial - logic is moved to the caller and
    comments are merged and adjusted appropriately.
    
    The only exception is in check_unsafe_exec() where LSM_UNSAFE_PTRACE*
    are OR'd to bprm->unsafe instead of setting it, which produces the
    same result as the field is always zero on entry.  It also tests
    p->ptrace instead of (p->ptrace & PT_PTRACED) for consistency, which
    also gives the same result.
    
    This doesn't introduce any behavior change.
    Signed-off-by: NTejun Heo <tj@kernel.org>
    Cc: Christoph Hellwig <hch@infradead.org>
    Signed-off-by: NOleg Nesterov <oleg@redhat.com>
    4b9d33e6
fork.c 42.7 KB