lkml.org 
[lkml]   [2007]   [Dec]   [5]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    Date
    From
    Subject[patch-RFC 09/26] LTTng Kernel Trace Thread Flag ia64
    Add a thread flag to activate system-wide syscall tracing.

    Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@polymtl.ca>
    ---
    arch/ia64/kernel/entry.S | 6 ++++--
    include/asm-ia64/thread_info.h | 13 +++++++++----
    2 files changed, 13 insertions(+), 6 deletions(-)

    Index: linux-2.6-lttng/include/asm-ia64/thread_info.h
    ===================================================================
    --- linux-2.6-lttng.orig/include/asm-ia64/thread_info.h 2007-11-20 10:43:04.000000000 -0500
    +++ linux-2.6-lttng/include/asm-ia64/thread_info.h 2007-11-20 10:43:28.000000000 -0500
    @@ -86,6 +86,7 @@
    #define TIF_SINGLESTEP 4 /* restore singlestep on return to user mode */
    #define TIF_RESTORE_SIGMASK 5 /* restore signal mask in do_signal() */
    #define TIF_PERFMON_WORK 6 /* work for pfm_handle_work() */
    +#define TIF_KERNEL_TRACE 7 /* kernel trace active */
    #define TIF_POLLING_NRFLAG 16 /* true if poll_idle() is polling TIF_NEED_RESCHED */
    #define TIF_MEMDIE 17
    #define TIF_MCA_INIT 18 /* this task is processing MCA or INIT */
    @@ -95,7 +96,8 @@
    #define _TIF_SYSCALL_TRACE (1 << TIF_SYSCALL_TRACE)
    #define _TIF_SYSCALL_AUDIT (1 << TIF_SYSCALL_AUDIT)
    #define _TIF_SINGLESTEP (1 << TIF_SINGLESTEP)
    -#define _TIF_SYSCALL_TRACEAUDIT (_TIF_SYSCALL_TRACE|_TIF_SYSCALL_AUDIT|_TIF_SINGLESTEP)
    +#define _TIF_KERNEL_TRACE (1 << TIF_KERNEL_TRACE)
    +#define _TIF_SYSCALL_TRACEAUDIT (_TIF_SYSCALL_TRACE|_TIF_SYSCALL_AUDIT|_TIF_SINGLESTEP|_TIF_KERNEL_TRACE)
    #define _TIF_RESTORE_SIGMASK (1 << TIF_RESTORE_SIGMASK)
    #define _TIF_PERFMON_WORK (1 << TIF_PERFMON_WORK)
    #define _TIF_SIGPENDING (1 << TIF_SIGPENDING)
    @@ -108,9 +110,12 @@
    /* "work to do on user-return" bits */
    #define TIF_ALLWORK_MASK (_TIF_SIGPENDING|_TIF_PERFMON_WORK|_TIF_SYSCALL_AUDIT|\
    _TIF_NEED_RESCHED| _TIF_SYSCALL_TRACE|\
    - _TIF_RESTORE_SIGMASK)
    -/* like TIF_ALLWORK_BITS but sans TIF_SYSCALL_TRACE or TIF_SYSCALL_AUDIT */
    -#define TIF_WORK_MASK (TIF_ALLWORK_MASK&~(_TIF_SYSCALL_TRACE|_TIF_SYSCALL_AUDIT))
    + _TIF_RESTORE_SIGMASK|_TIF_KERNEL_TRACE)
    +/*
    + * like TIF_ALLWORK_BITS but sans TIF_SYSCALL_TRACE, TIF_KERNEL_TRACE
    + * or TIF_SYSCALL_AUDIT
    + */
    +#define TIF_WORK_MASK (TIF_ALLWORK_MASK&~(_TIF_SYSCALL_TRACE|_TIF_SYSCALL_AUDIT|_TIF_KERNEL_TRACE))

    #define TS_POLLING 1 /* true if in idle loop and not sleeping */

    Index: linux-2.6-lttng/arch/ia64/kernel/entry.S
    ===================================================================
    --- linux-2.6-lttng.orig/arch/ia64/kernel/entry.S 2007-11-20 10:43:04.000000000 -0500
    +++ linux-2.6-lttng/arch/ia64/kernel/entry.S 2007-11-20 10:50:48.000000000 -0500
    @@ -621,9 +621,11 @@
    ;;
    ld4 r2=[r2]
    ;;
    + movl r8=_TIF_SYSCALL_TRACEAUDIT
    + ;; // added stop bits to prevent r8 dependency
    + and r2=r8,r2
    mov r8=0
    - and r2=_TIF_SYSCALL_TRACEAUDIT,r2
    - ;;
    + ;; // added stop bits to prevent r2 dependency
    cmp.ne p6,p0=r2,r0
    (p6) br.cond.spnt .strace_check_retval
    ;; // added stop bits to prevent r8 dependency
    --
    Mathieu Desnoyers
    Computer Engineering Ph.D. Student, Ecole Polytechnique de Montreal
    OpenPGP key fingerprint: 8CD5 52C3 8E3C 4140 715F BA06 3F25 A8FE 3BAE 9A68


    \
     
     \ /
      Last update: 2007-12-06 03:51    [W:0.022 / U:154.888 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site