This is the mail archive of the systemtap@sourceware.org mailing list for the systemtap project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug tapsets/15913] New: on s390x, nd_syscall.execve fails when accessing filename


https://sourceware.org/bugzilla/show_bug.cgi?id=15913

            Bug ID: 15913
           Summary: on s390x, nd_syscall.execve fails when accessing
                    filename
           Product: systemtap
           Version: unspecified
            Status: NEW
          Severity: normal
          Priority: P2
         Component: tapsets
          Assignee: systemtap at sourceware dot org
          Reporter: dsmith at redhat dot com

When using the 'filename' convenience variable from 'execve', the
syscall.execve probe works correctly on s390x:

====
# stap -e 'probe syscall.execve { printf("%s\n", filename) }' -c "sleep 0.2"
/usr/lib64/qt-3.3/bin/sleep
/usr/local/sbin/sleep
/usr/local/bin/sleep
/usr/sbin/sleep
/usr/bin/sleep
====

However, the nd_syscall.execve probe gets a copy fault:

====
# stap -e 'probe nd_syscall.execve { printf("%s\n", filename) }' -c "sleep 0.2"
ERROR: user string copy fault -14 at 0000000028ef1648 near identifier
'user_string_n' at /usr/local/share/systemtap/tapset/uconversions.stp:120:10
WARNING: Number of errors: 1, skipped probes: 1
WARNING: /usr/local/bin/staprun exited with status: 1
Pass 5: run failed.  [man error::pass5]
====

(I'm sure this has something to do with the odd s390x argument passing.
Normally, if you are in a syscall, the 'orig_gpr2' register has the 1st
argument, while in a regular kernel function the 'r2' register has the 1st
argument.)

-- 
You are receiving this mail because:
You are the assignee for the bug.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]