From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 23861 invoked by alias); 21 Nov 2011 20:15:30 -0000 Received: (qmail 23655 invoked by uid 9156); 21 Nov 2011 20:15:11 -0000 Date: Mon, 21 Nov 2011 20:15:00 -0000 Message-ID: <20111121201511.23644.qmail@sourceware.org> From: dsmith@sourceware.org To: systemtap-cvs@sourceware.org Subject: [SCM] systemtap: system-wide probe/trace tool branch, master, updated. release-1.6-473-gc0f710f X-Git-Refname: refs/heads/master X-Git-Reftype: branch X-Git-Oldrev: adc4897a4336624303e5b8da760833942d52f360 X-Git-Newrev: c0f710f9912b68456f6b197cf59678e54110e738 Mailing-List: contact systemtap-cvs-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Post: List-Help: , Sender: systemtap-cvs-owner@sourceware.org List-Archive: Reply-To: systemtap@sourceware.org X-SW-Source: 2011-q4/txt/msg00142.txt.bz2 This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "systemtap: system-wide probe/trace tool". The branch, master has been updated via c0f710f9912b68456f6b197cf59678e54110e738 (commit) via 55352180f05e4ea5756d668202d3457645ad4d0e (commit) via 8c021542a44f77d886dca9050a0b8569b92924dc (commit) via 427a5a5c722fea98ef05e087934b4dbc1512ba93 (commit) via cb5f1ec4b19d12f425ba6420d00b9d27bc7c0f08 (commit) via 6b168eb2196eeaeab6373bd2efbb6545d444012f (commit) via 0e6235dfca0d4ac1846f244e3c18c6e6a94730ca (commit) via 06a01ec1fe11e412fa30b9e608a076a0a22e8655 (commit) via 665fbae24614d126750b2b6ce65c5a9a56dddf83 (commit) via 010d8671eb24fefad966fc7a2f37fe65dba0aaba (commit) via 0969973b53a299ab934777f8b526ca4ca655dd4d (commit) via c4a845516a6d08918fc76cde75c0378600fda8aa (commit) via d378bb5c39c180656be72f41dd674ca89c951708 (commit) via 830974abb77c911a25363e8594f1b291303735eb (commit) via 4975d15deb6acddd99b6033713f46ff2c1684e65 (commit) via b173179ed5af6b78b303fae08f133417f52c7c33 (commit) via 70bfc8dcbb9bf934b567c6dead9a3ddfde9a4ed0 (commit) via a302a0213aa51041275eaeb6f3263d931af267ec (commit) via db7dcdffc5687db14e44cb08896a173e60d8e3ac (commit) via 6d7287ac9e73d65401c2679e2531e37e0bf19ada (commit) via e3788742f276733de100bcef11940457ed36ea4a (commit) via 2382357622e1acd0c6488f647244be4daf91bcf8 (commit) via eb032788e69844946b62c75ab6389ae937b711f6 (commit) via 54e7e8f0122569091f780fc0f1acc1520b09f1c4 (commit) via 6ca28847b794e03744b3fc425a5f3e07d49154b4 (commit) via 40b8ed4d675c4b7cfd1f25499506e42795d0e38f (commit) via 5d22792f09defb6ca930611803e6b9ee197bfd0e (commit) via edab110ac822a53760c04e5e14d9e24d80af41ce (commit) via 7ba05f05fa2d5cc8b1f9b16a2c3e38e96c883c4f (commit) via b39e207e6e1170bcacf71229e722b75ce6e9ada5 (commit) via 8cfa05efc713d8f48c6f1e23b2688e9c8abc76ef (commit) via cbbafb9b2b2c4cb25bbd4cb19a41b7b4b50952ec (commit) via c278952ed0eabbe917d7544512377e3f060b3034 (commit) via e6969ff4ae319f1ddfc9bf7441ceee91701ec69a (commit) via deccd5236811c2655372e8d1c7fde73b52d13acd (commit) via d0afdcbf6bdab884f27f74e0ceb31f0c04b9203c (commit) via 580e803219cae2661570748e96a3b710bf651f0d (commit) via ea5e844ee6b3031c2b430e42e687ab00e6635dbd (commit) via f33510de4782d31cf07530b83f968090607540d2 (commit) via eb8e0555746eb7c55271960b51e2aa5ce9d2b073 (commit) via 9f73a70da9048c5b0ff3d8e7b323e9795f427cbb (commit) via 2a996c8bde10ec31dad781beb50d132acf936c5b (commit) from adc4897a4336624303e5b8da760833942d52f360 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit c0f710f9912b68456f6b197cf59678e54110e738 Merge: 5535218 adc4897 Author: David Smith Date: Mon Nov 21 13:28:40 2011 -0600 Merge branch 'master' into dsmith/task_finder2 commit 55352180f05e4ea5756d668202d3457645ad4d0e Author: David Smith Date: Mon Nov 21 12:03:03 2011 -0600 Update testsuite to check for new utrace requirements. * testsuite/lib/systemtap.exp (utrace_p): Properly tests for the new utrace requirements. * runtime/task_finder.c: Remove code that hardcoded new utrace. * runtime/uprobes/uprobes.h: Reset to "normal" version. commit 8c021542a44f77d886dca9050a0b8569b92924dc Author: David Smith Date: Fri Nov 18 14:37:11 2011 -0600 Check for the new task_finder config variable requirement. * tapsets.cxx (check_process_probe_kernel_support): Add support for the requirements of the new task_finder (and even look ahead to the new uprobes). * tapset-utrace.cxx (utrace_derived_probe_group::emit_module_decls): Minor change to match "real" tapset-utrace.cxx. commit 427a5a5c722fea98ef05e087934b4dbc1512ba93 Merge: cb5f1ec 5261f7a Author: David Smith Date: Fri Nov 18 13:35:02 2011 -0600 Merge branch 'master' into dsmith/task_finder2 commit cb5f1ec4b19d12f425ba6420d00b9d27bc7c0f08 Author: David Smith Date: Wed Nov 16 15:23:46 2011 -0600 Add UTRACE_API_VERSION to determine which utrace version we've got. * runtime/stp_utrace.h: Added UTRACE_API_VERSION back. * tapset-utrace.cxx (utrace_derived_probe_group::emit_module_decls): Use UTRACE_API_VERSION, which stp_utrace.h now provides, so that we don't have to check STP_TASK_FINDER2. commit 6b168eb2196eeaeab6373bd2efbb6545d444012f Merge: 0e6235d 2d7232c Author: David Smith Date: Wed Nov 16 15:04:16 2011 -0600 Merge branch 'master' into dsmith/task_finder2 commit 0e6235dfca0d4ac1846f244e3c18c6e6a94730ca Merge: 06a01ec cfd4b9f Author: David Smith Date: Fri Nov 11 07:56:28 2011 -0600 Merge branch 'master' into dsmith/task_finder2 commit 06a01ec1fe11e412fa30b9e608a076a0a22e8655 Merge: 665fbae 74b8d7b Author: David Smith Date: Wed Nov 9 16:11:42 2011 -0600 Merge branch 'master' into dsmith/task_finder2 commit 665fbae24614d126750b2b6ce65c5a9a56dddf83 Author: David Smith Date: Wed Nov 9 16:08:58 2011 -0600 Fix memory leak in new utrace code. * runtime/stp_utrace.c: Removed some unused code. (utrace_cleanup): Renamed from utrace_free() and added comments. (utrace_free): Renamed from utrace_free_task() and now takes a 'struct utrace' pointer instead of a 'task_struct' pointer. (utrace_report_death): To avoid a memory leak, call utrace_free(). commit 010d8671eb24fefad966fc7a2f37fe65dba0aaba Author: David Smith Date: Tue Nov 8 15:04:35 2011 -0600 Fix commented out code to avoid compile error. * runtime/stp_utrace.c (utrace_report_death): Fix comment. commit 0969973b53a299ab934777f8b526ca4ca655dd4d Author: David Smith Date: Tue Nov 8 13:28:10 2011 -0600 Switch UTRACE_EVENT(EXIT) support to UTRACE_EVENT(DEATH) support. * runtime/stp_utrace.c: Switch UTRACE_EVENT(EXIT) support to UTRACE_EVENT(DEATH) support to avoid leading utrace engines. * runtime/stp_utrace.h: Turn off UTRACE_EVENT(EXIT) support and turn on UTRACE_EVENT(DEATH) support. * runtime/task_finder2.c: Switch from UTRACE_EVENT(EXIT) handlers to UTRACE_EVENT(DEATH) handlers. * tapset-utrace.cxx (utrace_derived_probe_group::emit_probe_decl): Removed special STP_TASK_FINDER2 code. commit c4a845516a6d08918fc76cde75c0378600fda8aa Author: David Smith Date: Tue Nov 8 11:48:09 2011 -0600 Updated for v3 of the kernel exec tracepoint patch. * runtime/autoconf-utrace-via-tracepoints.c: Updated for v3 of the kernel exec tracepoint patch. * runtime/stp_utrace.c: Ditto. (utrace_free_task): Fix compile error. commit d378bb5c39c180656be72f41dd674ca89c951708 Merge: 830974a 6e9be5b Author: David Smith Date: Tue Nov 8 11:30:07 2011 -0600 Merge branch 'master' into dsmith/task_finder2 commit 830974abb77c911a25363e8594f1b291303735eb Merge: 4975d15 61019d8 Author: David Smith Date: Fri Nov 4 14:52:18 2011 -0500 Merge branch 'master' into dsmith/task_finder2 commit 4975d15deb6acddd99b6033713f46ff2c1684e65 Author: David Smith Date: Fri Nov 4 14:39:18 2011 -0500 Small fixes and cleanups in stp_utrace.c and task_finder2.c. * runtime/task_finder2.c (__stp_task_finder_cleanup): Removed unused code. * runtime/stp_utrace.c (utrace_init): Only declare 'report_exec_name' when STAPCONF_UTRACE_VIA_FTRACE is defined. (utrace_free_task): Updated (but still isn't called). commit b173179ed5af6b78b303fae08f133417f52c7c33 Author: David Smith Date: Thu Nov 3 14:44:56 2011 -0500 Ifdef'ed out unused internal utrace code. * runtime/stp_utrace.h: Ifdef'ed out more unused code. * runtime/stp_utrace.c: Ditto. commit 70bfc8dcbb9bf934b567c6dead9a3ddfde9a4ed0 Author: David Smith Date: Thu Nov 3 14:41:47 2011 -0500 Fix problem with last commit. * runtime/task_finder.c: Change define back to 'STP_TASK_FINDER2' to match up with tapset-utrace.cxx. commit a302a0213aa51041275eaeb6f3263d931af267ec Merge: db7dcdf ae0489a Author: David Smith Date: Thu Nov 3 14:32:31 2011 -0500 Merge branch 'master' into dsmith/task_finder2 commit db7dcdffc5687db14e44cb08896a173e60d8e3ac Author: David Smith Date: Thu Nov 3 11:19:04 2011 -0500 Added 'autoconf' tests to figure out which new utrace implementation to use. * runtime/autoconf-utrace-via-ftrace.c: New autoconf test. * runtime/autoconf-utrace-via-tracepoints.c: Ditto. * buildrun.cxx (compile_pass): Use 2 new autoconf tests. * runtime/stp_utrace.c: Handle STAPCONF_UTRACE_VIA_TRACEPOINTS and STAPCONF_UTRACE_VIA_FTRACE. * runtime/task_finder.c: Ditto. commit 6d7287ac9e73d65401c2679e2531e37e0bf19ada Author: David Smith Date: Tue Nov 1 15:53:26 2011 -0500 Cleanup task_finder2 by removing some unused code (ported). * runtime/task_finder2.c (__stp_utrace_attach_match_filename): Remove 'register_p' parameter (and associated code), since it was always set. (__stp_utrace_attach_match_tsk): Remove 'register_p' parameter. (__stp_utrace_task_finder_report_clone): Remove register_p parameter from __stp_utrace_attach_match_tsk() call. (__stp_utrace_task_finder_report_exec): Ditto. commit e3788742f276733de100bcef11940457ed36ea4a Merge: 2382357 f1a103f Author: David Smith Date: Tue Nov 1 14:50:02 2011 -0500 Merge branch 'master' into dsmith/task_finder2 commit 2382357622e1acd0c6488f647244be4daf91bcf8 Author: David Smith Date: Fri Oct 28 10:44:58 2011 -0500 PR 13128: Rework of commit f2013cc91ea1dba576661d6b746ee28658c8bc51 (ported) Based on peer feedback: - Compare privilege credentials as sets, not levels. - Send privilege credentials as a ctl message at startup. - Send startup ctl messages (tzinfo, relocations, privilege_credentials) on the same control channel. Ensure channel is closed properly on error. commit eb032788e69844946b62c75ab6389ae937b711f6 Author: David Smith Date: Thu Oct 27 11:09:05 2011 -0500 Avoid "sleeping function called from invalid context" kernel errors. * runtime/stp_utrace.c (utrace_task_alloc): Change memory allocation flags to avoid waiting. (utrace_attach_task): Ditto. (finish_callback): Remove call to might_sleep(), since tracepoint handlers (and now utrace handlers) can't sleep. commit 54e7e8f0122569091f780fc0f1acc1520b09f1c4 Author: David Smith Date: Thu Oct 27 11:06:14 2011 -0500 More PR13083 fixes to avoid sleeping in the task_finder (ported). * runtime/task_finder2.c (__stp_get_mm_path): Call down_read_trylock() instead of down_read() to avoid the possibility of sleeping. (stap_start_task_finder): Call task_lock() to make sure a task's mm doesn't go away while we're looking at it. commit 6ca28847b794e03744b3fc425a5f3e07d49154b4 Merge: 40b8ed4 93ee09d Author: David Smith Date: Thu Oct 27 10:27:24 2011 -0500 Merge branch 'master' of /es/scratch/dsmith/systemtap/src into dsmith/task_finder2 commit 40b8ed4d675c4b7cfd1f25499506e42795d0e38f Author: David Smith Date: Mon Oct 24 11:37:50 2011 -0500 Fixed PR13083 by no longer calling mmput() when possible (ported). * runtime/task_finder2.c (__stp_utrace_attach): Don't call get_task_mm()/mmput(). Since we're in the context of that task, the mm should stick around (and mmput() can sleep). (__stp_call_mmap_callbacks_with_addr): Ditto. (__stp_utrace_attach_match_tsk): Ditto. (__stp_call_mmap_callbacks_for_task): Ditto. commit 5d22792f09defb6ca930611803e6b9ee197bfd0e Author: David Smith Date: Mon Oct 24 11:36:44 2011 -0500 Fix spacing in runtime/task_finder2.c to match runtime/task_finder.c. * runtime/task_finder2.c (stap_start_task_finder): Fix indentation. commit edab110ac822a53760c04e5e14d9e24d80af41ce Author: David Smith Date: Mon Oct 24 11:27:16 2011 -0500 PR 13128: Modify unprivileged mode infrastructure to support a multi-privilege design (ported) commit 7ba05f05fa2d5cc8b1f9b16a2c3e38e96c883c4f Author: David Smith Date: Mon Oct 24 11:23:16 2011 -0500 Fixed PR13146 by not allowing memory allocations to sleep (ported). * runtime/task_finder.c (__stp_call_mmap_callbacks_with_addr): Better cleanup if memory allocation fails. commit b39e207e6e1170bcacf71229e722b75ce6e9ada5 Merge: 8cfa05e 8dc2d77 Author: David Smith Date: Mon Oct 24 11:08:28 2011 -0500 Merge branch 'master' into dsmith/task_finder2 commit 8cfa05efc713d8f48c6f1e23b2688e9c8abc76ef Merge: cbbafb9 08c2961 Author: David Smith Date: Mon Aug 22 11:49:23 2011 -0500 Merge branch 'master' into dsmith/task_finder2 commit cbbafb9b2b2c4cb25bbd4cb19a41b7b4b50952ec Merge: c278952 398e115 Author: David Smith Date: Tue Aug 16 10:05:47 2011 -0500 Merge branch 'master' into dsmith/task_finder2 commit c278952ed0eabbe917d7544512377e3f060b3034 Merge: e6969ff a9e19b3 Author: David Smith Date: Mon Aug 15 10:21:30 2011 -0500 Merge branch 'master' into dsmith/task_finder2 commit e6969ff4ae319f1ddfc9bf7441ceee91701ec69a Merge: deccd52 d4dc7eb Author: David Smith Date: Mon Aug 15 10:20:23 2011 -0500 Merge branch 'master' into dsmith/task_finder2 commit deccd5236811c2655372e8d1c7fde73b52d13acd Author: David Smith Date: Fri Aug 5 14:27:57 2011 -0500 Handles kernels where CONFIG_UTRACE isn't defined. * runtime/task_finder.c: When CONFIG_UTRACE isn't defined, use the new task_finder. Force the new task_finder to be always used. * testsuite/lib/systemtap.exp (utrace_p): Updated 'utrace_p' to test for tracepoint and an ftrace function. * tapsets.cxx (build): Ifdef'ed out check for CONFIG_UTRACE. * tapset-utrace.cxx (utrace_derived_probe): Ditto. commit d0afdcbf6bdab884f27f74e0ceb31f0c04b9203c Author: David Smith Date: Thu Aug 4 16:29:53 2011 -0500 Updated with ftrace_based function probe. * runtime/stp_utrace.c: Switched from kprobes-based function probe to ftrace-based function probe. * runtime/task_finder2.c: Switched back to allocating path buffers. Ifdef'ed out some debug prints. * tapset-utrace.cxx (utrace_derived_probe_group::emit_probe_decl): Updated emitted syscall probe code for STP_TASK_FINDER2. (utrace_derived_probe_group::emit_module_decls): Ditto. commit 580e803219cae2661570748e96a3b710bf651f0d Merge: ea5e844 4645e3a Author: David Smith Date: Thu Aug 4 12:27:42 2011 -0500 Merge branch 'master' into dsmith/task_finder2 commit ea5e844ee6b3031c2b430e42e687ab00e6635dbd Author: David Smith Date: Wed Aug 3 14:23:04 2011 -0500 Semi-working task_finder. * runtime/stp_utrace.c: Major revision. Uses kprobe for exec, since there is no exec tracepoint. * runtime/stp_utrace.h: Updated. * runtime/task_finder2.c: Updated. Exec kprobe handler causing problems, since a kprobe handler can't take a lock, allocate memory, etc. commit f33510de4782d31cf07530b83f968090607540d2 Author: David Smith Date: Mon Aug 1 10:43:18 2011 -0500 Removed global utrace handler support. * runtime/stp_utrace.c: Removed global utrace handler, which wasn't going to work when requesting a task to stop. * runtime/task_finder2.c (stap_start_task_finder): Instead of setting up a global utrace handler, attach one to every interesting thread. commit eb8e0555746eb7c55271960b51e2aa5ce9d2b073 Author: David Smith Date: Fri Jul 29 08:43:35 2011 -0500 Several fixes. * runtime/task_finder2.c (__stp_utrace_attach_match_filename): Attach to the task we found. * runtime/stp_utrace.c (utrace_shutdown): When tearing down everything, lock the list first. (utrace_task_alloc): Fixed a memory leak. (utrace_attach_task): Minor fix. commit 9f73a70da9048c5b0ff3d8e7b323e9795f427cbb Author: David Smith Date: Wed Jul 27 15:36:50 2011 -0500 task_finder2 now compiles. * runtime/stp_utrace.c: Ifdef'ed out code. * runtime/task_finder2.c: Ditto. commit 2a996c8bde10ec31dad781beb50d132acf936c5b Author: David Smith Date: Wed Jul 27 14:57:33 2011 -0500 Start of task_finder2. * runtime/task_finder.c: If STP_TASK_FINDER2 is defined, use task_finder2.c. * runtime/uprobes/uprobes.h: If STP_TASK_FINDER2 is defined, ignore entire file. * runtime/stp_utrace.c: New file. * runtime/stp_utrace.h: Ditto. * runtime/task_finder2.c: Ditto. ----------------------------------------------------------------------- Summary of changes: buildrun.cxx | 3 + runtime/autoconf-utrace-via-ftrace.c | 52 + runtime/autoconf-utrace-via-tracepoints.c | 51 + runtime/stp_utrace.c | 2896 +++++++++++++++++++++++++++++ runtime/stp_utrace.h | 429 +++++ runtime/task_finder.c | 27 +- runtime/{task_finder.c => task_finder2.c} | 361 ++--- tapsets.cxx | 22 +- testsuite/lib/systemtap.exp | 27 +- 9 files changed, 3607 insertions(+), 261 deletions(-) create mode 100644 runtime/autoconf-utrace-via-ftrace.c create mode 100644 runtime/autoconf-utrace-via-tracepoints.c create mode 100644 runtime/stp_utrace.c create mode 100644 runtime/stp_utrace.h copy runtime/{task_finder.c => task_finder2.c} (83%) hooks/post-receive -- systemtap: system-wide probe/trace tool