lkml.org 
[lkml]   [2012]   [Feb]   [27]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [PATCH v11 10/12] ptrace,seccomp: Add PTRACE_SECCOMP support
    On 02/24, Will Drewry wrote:
    >
    > arch/Kconfig | 1 +
    > include/linux/ptrace.h | 7 +++++--
    > include/linux/seccomp.h | 4 +++-
    > include/linux/tracehook.h | 6 ++++++
    > kernel/ptrace.c | 4 ++++
    > kernel/seccomp.c | 18 ++++++++++++++++++

    FYI, this conflicts with the changes -mm tree.

    The changes in ptrace.* confict with Denys's
    "ptrace: simplify PTRACE_foo constants and PTRACE_SETOPTIONS code"

    The change in tracehook.h conflicts with
    "ptrace: the killed tracee should not enter the syscall"

    > --- a/kernel/seccomp.c
    > +++ b/kernel/seccomp.c
    > @@ -354,6 +354,24 @@ int __secure_computing_int(int this_syscall)
    > seccomp_send_sigsys(this_syscall, reason_code);
    > return -1;
    > }
    > + case SECCOMP_RET_TRACE: {
    > + int ret;
    > + struct pt_regs *regs = task_pt_regs(current);
    > + if (!(test_tsk_thread_flag(current, TIF_SYSCALL_TRACE)) ||
    > + !(current->ptrace & PT_TRACE_SECCOMP))
    > + return -1;
    > + /*
    > + * PT_TRACE_SECCOMP and seccomp.trace indicate whether
    > + * tracehook_report_syscall_entry needs to signal the
    > + * tracer. This avoids race conditions in hand off and
    > + * the requirement for TIF_SYSCALL_TRACE ensures that
    > + * we are in the syscall slow path.
    > + */
    > + current->seccomp.trace = 1;
    > + ret = tracehook_report_syscall_entry(regs);
    > + current->seccomp.trace = 0;
    > + return ret;

    To be honest, this interface looks a bit strange to me...

    Once again, sorry if this was already discussed. But perhaps it would
    be better to introduce PTRACE_EVENT_SECCOMP/PTRACE_O_SECCOMP instead?

    SECCOMP_RET_TRACE: could simply do ptrace_event(PTRACE_EVENT_SECCOMP)
    unconditionaly. The tracer can set the option and do PTRACE_CONT if it
    doesn't want the system call notifications.

    This is also much simpler, no need to change ptrace/tracehook files.

    Oleg.



    \
     
     \ /
      Last update: 2012-02-27 19:05    [from the cache]
    ©2003-2014 Jasper Spaans. hosted at Digital Ocean