summaryrefslogtreecommitdiffstats
path: root/buildrun.cxx
Commit message (Collapse)AuthorAgeFilesLines
* Adapt to linux-next commit changing __alloc_percpu API.Frank Ch. Eigler2009-03-081-0/+1
| | | | | After linux-next commit f2a8205c, it takes two parameters again, so we autoconf for it rather than use KERNEL_VERSION ifdefs.
* Support older tracepoints using DEFINE_TRACEJosh Stone2009-03-061-0/+5
| | | | | | | | | At one point, the tracepoints API didn't have DECLARE_TRACE, and the trace headers all used DEFINE_TRACE. This is what got pulled into RHEL, so we need to support this older usage. The rest of the API stays the same though. * buildrun.cxx (make_tracequery): Redefine DEFINE_TRACE as well.
* Build tracequery to scan for tracepointsJosh Stone2009-03-061-0/+70
| | | | | | | | | | * session.h (systemtap_session): add tracepoint_derived_probes * buildrun.cxx (make_tracequery): New - builds a kernel module that hijacks the tracepoint declarations, so we can query debuginfo. * buildrun.h: declare above * tapsets.cxx (tracepoint_builder): New builder for tracepoint probes. For now it just handles the initialization to build the tracequery kernel module.
* stap autoconf test for kernel stack trace supportTim Moore2009-03-041-0/+2
| | | | | | | | | | * buildrun.cxx (compile_pass): Add autoconf line for stack trace test, which defines STAPCONF_KERNEL_STACKTRACE. * runtime/autoconf-save-stack-trace.c: New file. * runtime/stack.c : Use STAPCONF_KERNEL_STACKTRACE instead of tests for kernel configuration and versions. * runtime/stack-i386.c : ditto * runtime/stack-x86_64.c : ditto
* Remove STAPCONF_CFLAGS from the generated MakefileJosh Stone2009-02-201-3/+0
| | | | | This was leftover from my initial draft of autoconf caching. It's not used at all anymore...
* Clean up the autoconf cachingJosh Stone2009-02-071-33/+43
| | | | | | | | | | | | | | | | | This makes the stapconf caching process quite a bit more transparent. The options are now cached in a header file as #defines, and this header file is a normal build dependency instead of calling so many make $(shell ...) commands. * buildrun.cxx (compile_pass): Pull in autoconf options in a header of #defines rather than -DXXX, and make that header a build dependency. * buildrun.cxx (output_autoconf): New function to consolidate the computation of each autoconf test. * cache.cxx (add_to_cache, get_from_cache, clean_cache): Start treating the stapconf header as a first-class cached item. * cache.h: Move definitions of things only needed in cache.cxx * hash.cxx (find_stapconf_hash): Generate stapconf_name as a .h now. * main.cxx (main): Default the stapconf_name based on getpid().
* Save kernel autoconf options in a cache fileJosh Stone2009-02-061-18/+36
| | | | | | | | | | We're getting enough autoconf tests now that it's a significant chunk of the build time. Adding this cache shaves several seconds off for me. * hash.cxx (find_hash): Compute a separate script-independent hash for caching autoconf values, saved in session.stapconf_path. * buildrun.cxx (compile_pass): Tweak the Makefile to read/save the autoconf values in the cache directory
* 2.6.29rc build fix: autoconf for proc_dir_entry->owner going awayFrank Ch. Eigler2009-02-061-1/+2
|
* PR9740/9816? - workaround for kernel valloc bugFrank Ch. Eigler2009-02-051-0/+1
|
* Add Vim modelines for GNU style in stapJosh Stone2009-01-281-0/+2
|
* PR9699: build fixes for kernel 2.6.28Frank Ch. Eigler2009-01-061-1/+2
|
* build: note inapplicability of kernel kbuild O=dir usr/include headers.Frank Ch. Eigler2009-01-061-0/+4
|
* PR7090: Support kernels built with O= option.Masami Hiramatsu2008-12-221-1/+4
|
* PR7062: base uprobes tree on s.runtime_path instead of PKGDATADIRFrank Ch. Eigler2008-12-081-2/+3
|
* PR7063: honor SYSTEMTAP_STAPRUN and SYSTEMTAP_STAPIO environment variablesRoland McGrath2008-12-031-5/+3
|
* PR5892: rename new -B /PATH to -r /PATH; merge functionalityFrank Ch. Eigler2008-12-031-15/+5
|
* BZ 5892: Add stap -B to sic systemtap at an alternate kernel build treeRajan Arora2008-12-011-6/+16
|
* buildrun/caching warning cleanupFrank Ch. Eigler2008-11-291-7/+3
|
* PR5947: make runtime code -Wpointer-arith-cleanFrank Ch. Eigler2008-11-281-0/+3
|
* safety: add paranoid call to synchronize_sched() during shutdown processFrank Ch. Eigler2008-11-261-0/+2
|
* Add a version of uprobes that works with the 2.6.27 version of utrace.Jim Keniston2008-11-031-4/+4
|
* Fix hrtimer.expires name change.Josh Stone2008-10-241-0/+1
| | | | | | The field is renamed to _expires starting in 2.6.28-rc1, and it's not meant to be directly manipulated. Instead hrtimer users are supposed to use hrtimer_get_expires and hrtimer_set_expires.
* add new stap -F (flight recorder) option that just passes through to staprun -LNobuhiro Tachino2008-09-161-0/+3
|
* trailing whitespace removal, as approved by emacsFrank Ch. Eigler2008-08-281-11/+11
| | | | (add-hook 'before-save-hook 'delete-trailing-whitespace)
* Uses STAPCONF_DPATH_PATH instead of a kernel version check.David Smith2008-08-261-0/+1
| | | | | | | | | | | | | | | | 2008-08-26 David Smith <dsmith@redhat.com> * buildrun.cxx (compile_pass): Added autoconf-dpath-path.c. 2008-08-26 David Smith <dsmith@redhat.com> * autoconf-d_path-path.c: New file. * task_finder.c (__stp_get_mm_path): Uses STAPCONF_DPATH_PATH instead of a kernel version check to determine how to call d_path(). (__stp_utrace_task_finder_target_quiesce): Ditto. (__stp_target_call_vm_callback): Ditto.
* small patch ...Michael Meeks2008-08-151-1/+5
| | | | | | | | | | | | | | | | Hi guys, I append a trivial patch for systemtap. I guess the SUSE wiki page also needs updating to point out that it's broken in 11.0 by default, and that you require HEAD with Frank's buildrun.cxx fix for the mach-default include. My patch will hopefully make similar problems easier to find in future (for lovers of -v options ;-) HTH, Michael.
* kbuild compatibility hack for separate-objdir O= buildsFrank Ch. Eigler2008-08-121-0/+8
|
* Fix on_each_cpu() call for kernels >2.6.26.Josh Stone2008-07-241-0/+1
| | | | | | | | This is a generalization of the patch from James Bottomley: http://sources.redhat.com/ml/systemtap/2008-q3/msg00220.html The on_each_cpu() change was merged *after* the 2.6.26 release, so I'm using an autoconf test instead of James' version check.
* Remove unused STAPCONF_MODULE_NSECTIONSJosh Stone2008-07-241-1/+0
|
* PR6738: restore support for rhel4-era (2.6.9) kernelsFrank Ch. Eigler2008-07-121-0/+1
|
* Fix PR 6732: Add runtime/autoconf-real-parent.c check for task_struct field.Mark Wielaard2008-07-091-0/+1
|
* Add prototypes for using the 2.6.26 probe_kernel_* functions.Josh Stone2008-05-271-0/+6
| | | | | | | | | For now, the autoconf for the new code is disabled, because it shows poorer performance than our existing dereferencing functions. This is probably because ours get inlined and optimized. The code is being committed so that we may re-evaluate its usefulness in the future. This addresses bugzilla 6432.
* PR6405: unwinder build compatibility with RHEL5Frank Ch. Eigler2008-04-151-1/+1
|
* Fixes for 2.6.25 pt_regs changes.Martin Hunt2008-04-091-2/+0
|
* 2008-03-14 Masami Hiramatsu <mhiramat@redhat.com>hiramatu2008-03-151-0/+1
| | | | | | | | | | | PR 3542 * buildrun.cxx (compile_pass): Add an autoconf to check the kernel supports batch unregistration. * tapsets.cxx (dwarf_derived_probe_group::emit_module_decls): Add an array of probe pointers for batch unregistration. * tapsets.cxx (dwarf_derived_probe_group::emit_module_exit): Use unregister_k(ret)probes if it is supported. * runtime/autoconf-unregister-kprobes.c : New file.
* 2008-03-13 Frank Ch. Eigler <fche@elastic.org>fche2008-03-131-4/+6
| | | | | | PR 5928. * buildrun.cxx (compile_pass): Use EXTRA_CFLAGS for autoconf'd values instead of CFLAGS_<module>.o.
* PR5045: clean up after interruptsfche2008-02-281-4/+1
| | | | | | | | | | | 2008-02-28 Frank Ch. Eigler <fche@elastic.org> PR5045 * session.h (pending_interrupts): New global. * main.cxx (handle_interrupts): New fn to handle SIGINT* etc. * elaborate.cxx, translate.cxx, tapsets.cxx, main.cxx (*): Insert pending_interrupts escape hatches inside potentially timetaking loops. * buildrun.cxx: Don't deal with signals.
* PR5787, PR2608: .statement(NUM) probing fixesfche2008-02-231-1/+1
| | | | | | | | | | | | | | | | | | | 2008-02-22 Frank Ch. Eigler <fche@elastic.org> PR5787, PR2608, .statement() * tapsets.cxx (query_dwarf_func): Process .statement(NUM) probes too. (query_cu): Ditto. (query_func_info): Bypass prologue searching for .statement() probes. (query_cu): Ditto. (build_blacklist): Remove unsightly empty first alternative in "^(|foo)$" regexps. Show them for -vvv. * buildrun.cxx (compile_pass): Don't turn on "gcc -Q" on until -vvvv. 2008-02-22 Frank Ch. Eigler <fche@elastic.org> * systemtap.base/stmtvars.exp: New test for PR 5787.
* 2008-02-07 Frank Ch. Eigler <fche@elastic.org>fche2008-02-071-2/+4
| | | | | * buildrun.cxx (run_make_cmd, compile_pass): Tweak kbuild parametrization to produce useful compile logs at -vv.
* From srinivasa@in.ibm.com, To make systemtap to work with register rename ↵srinivasa2008-01-181-0/+3
| | | | patch for x86/x86_64
* PR 5270kenistoj2007-11-131-17/+83
| | | | | | | | | | | | | * main.cxx: Restored pre-10-08 version: moved uprobes build to buildrun.cxx. * buildrun.cxx: Reworked uprobes build so that the resulting Module.symvers can be used in building the stap-generated module. If user isn't root, call verify_uprobes_uptodate() rather than trying (and failing) to rebuild uprobes.ko. * buildrun.h: uprobes_enabled() and make_uprobes() are no longer extern. * runtime/uprobes/Makefile: Added uprobes.ko target for use by verify_uprobes_uptodate().
* PR 5709kenistoj2007-10-081-19/+63
| | | | | | | | | | | | | | | | | | | | | | | * main.cxx: Add pass 4.5: make uprobes.ko in runtime/uprobes * buildrun.cxx: Add uprobes_enabled() and make_uprobes(). Factor run_make_cmd() out of compile_pass(). * buildrun.h: Add uprobes_enabled and make_uprobes decls. * tapsets.cxx: Do correct #include for modprobed uprobes.ko; set need_uprobes in pass 2. * session.h: Add need_uprobes * runtime/staprun/common.c: Add -u option -> need_uprobes * runtime/staprun/staprun_funcs.c: Generalize insert_module() to support inserting uprobes.ko. * runtime/staprun/staprun.c: Add enable_uprobes(). insert_module call becomes insert_stap_module(). * runtime/staprun/staprun.h: Reflect insert_module() and need_uprobes changes * runtime/uprobes/*.[c,h]: uprobes is built as a module, rather than included into the source of the stap-generated module. * runtime/uprobes/Makefile: Added
* 2007-10-04 David Smith <dsmith@redhat.com>dsmith2007-10-041-6/+6
| | | | | * buildrun.cxx (compile_pass): Tweaked build system for the 2.6.23-rc8-mm2 kernel.
* 2007-09-24 Masami Hiramatsu <mhiramat@redhat.com>hiramatu2007-09-241-0/+3
| | | | | | | | | | | | | | | | | | | | | PR 3916 * buildrun.cxx (compile_pass): Add new autoconf options for checking time related APIs. * time.c (stp_time_t): Rename cpufreq to freq. (__stp_get_freq): Rename from __stp_estimate_cpufreq. Use tsc_khz or cpu_khz if it is available. Use itc_freq on ia64. (__stp_ktime_get_real_ts): New function to get current kernel time. (__stp_time_timer_callback): Call __stp_ktime_get_real_ts to get base time. (__stp_init_time): Ditto. (__stp_constant_freq): New function to check the processor has constant frequency timestamp counter. (_stp_kill_time): Don't use the cpufreq notifier if the processor has constant frequency timestamp counter. (_stp_init_time): Ditto. * autoconf-ktime-get-real.c : New file. * autoconf-constant-tsc.c: Ditto. * autoconf-tsc-khz.c: Ditto.
* 2007-08-20 Martin Hunt <hunt@redhat.com>hunt2007-08-201-1/+1
| | | | | | | | | PR2424 From Lai Jiangshan <laijs@cn.fujitsu.com> * util.cxx (cmdstr_quoted): New. Properly quote command string. * buildrun.cxx (run_pass): Call cmdstr_quoted().
* 2007-08-14 David Smith <dsmith@redhat.com>dsmith2007-08-141-3/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Merge from setuid-branch. Changes also by Martin Hunt <hunt@redhat.com>. * Makefile.am: Added staprun_funcs.c and cap.c to staprun_SOURCES. Added -lcap to staprun_LDADD. Removed stp_check reference. Added stapio program. Staprun is now setuid. * Makefile.in: Rebuilt. * configure.ac: Version increase to 0.6 and checks for libcap availability. Removed stp_check reference. * configure: Regenerated. * stp_check.in: Removed. * systemtap.spec.in: Version increase to 0.6-1 and added BuildReq for libcap-devl (and removed sudo requirement). Added %pre script to create new groups. Staprun is now setuid. * NEWS: Added info on new security model. * INTERNALS: Removed sudo reference. * README.security: New file. * main.cxx (main): Make sure module name isn't too long. * hash.cxx: Moved MODULE_NAME_LEN define to hash.h. * hash.h: Moved MODULE_NAME_LEN define here from hash.cxx. * buildrun.cxx (run_pass): No longer runs staprun with "sudo". * stap.1.in: Removed sudo references and added information about the stapdev/stapusr groups. * staprun.8.in: Added information about module detaching and attaching. Removed sudo references and added information about the stapdev/stapusr groups. Removed reference to staprun needing to be run as root. Removed reference to removed '-u USERNAME' option. * .cvsignore: Removed stp_check and added stapio and stap_merge.
* 2007-06-20 David Smith <dsmith@redhat.com>dsmith2007-06-201-0/+12
| | | | | | | * buildrun.cxx (compile_pass): Unset environment variables that could interfere with building the kernel module. Fixes PR 4664. * main.cxx (main): Unsets a few standard environment variables for safety.
* 2007-05-25 Frank Ch. Eigler <fche@redhat.com>fche2007-05-261-1/+0
| | | | | | | | | | | | PR 4255 teaser. * elaborate.cxx (has_null_param): New function. * elaborate.h: Declare it. * session.h: Include uprobe_derived_probes group. * tapsets.cxx (uprobe_*): New classes. (all_session_groups): List uprobes in list. (register_standard_tapset): Interpret process(#).statement(#).absolute and process(#).statement(#).absolute.return probe points.
* 2007-05-08 Martin Hunt <hunt@redhat.com>hunt2007-05-081-0/+1
| | | | | * buildrun.cxx (run_pass): Send proper verbosity level to staprun
* 2007-04-27 Frank Ch. Eigler <fche@elastic.org>fche2007-04-271-3/+7
| | | | | | | | | | | PR 4432. * buildrun.cxx (compile_pass): Tweak autoconf CFLAGS handling to avoid macro recursion but still get the needed -I directives. Add the inode-private autoconf test. 2007-04-27 Frank Ch. Eigler <fche@elastic.org> * autoconf-inode-private.c: New file from hunt.