| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
| |
* map.c: Change order of includes.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* map.h (struct map_root): Delete fields
used by old API.
* map.c: Remove old map API functions.
* map-stat.c (_stp_map_add_stat): Delete.
(_stp_pmap_new_hstat_linear): Move here from map.c.
(_stp_pmap_new_hstat_log): Ditto.
* list.c: Deleted.
* map-keys.c: Deleted.
* map-values.c: Deleted.
* map-int.c: Deleted.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* maps/map.test: Remove old map API tests.
* maps/ii2.c: Renamed ii.c.
* maps/iiss2.c: Renamed iiss.c.
* maps/is2.c: Renamed is.c.
* maps/issii2.c: Renamed issii.c.
* maps/isx2.c: Renamed isx.c.
* maps/map_format2.c: Renamed map_format.c.
* maps/si2.c: Renamed si.c.
* maps/keys.c: Deleted
* maps/test_list_int64.c: Deleted.
* maps/test_list_string.c: Deleted.
* maps/sort.c: Update to use new map API.
|
|
|
|
|
|
|
|
| |
* shellsnoop/shellsnoop.c: Updated to use new map API.
* where_func/kprobe_where_funct.c: Ditto.
* os_timer/os_timer.c (probe_start): Ditto.
* test4/test4.c: Ditto.
* scf/scf.c: Ditto.
|
|
|
|
|
| |
* alloc.c (__stp_valloc_percpu): Fix call to vmalloc_node.
(vmalloc_node): Remove nonworking code.
|
| |
|
|
|
|
| |
* alloc.c (__stp_valloc_percpu): Fix call to vmalloc_node.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* map.c (_stp_map_init): New function. Extracted from _stp_map_new()
so it can be used in _stp_pmap_new().
(_stp_map_new): Call _stp_map_init().
(_stp_pmap_new): New function.
(_stp_pmap_new_hstat_linear): New function.
(_stp_pmap_new_hstat_log): New function.
(_stp_pmap_del): New function.
(_stp_pmap_printn_cpu): New function.
(_stp_pmap_printn): New function.
(_stp_new_agg): New function.
(_stp_add_agg): New function.
(_stp_pmap_agg): New function.
(_new_map_clear_node): New function.
* map.h (struct map_root): Add Hist struct. Add copy
and cmp function pointers for pmaps.
* stat.h: Remove Stat struct. Replace with Hist struct
that is limited to only histogram params.
* map-stat.c: Fix up references to histogram params in map_root.
* stat-common.c: Ditto.
* stat.c: Ditto.
* pmap-gen.c: New file. Implements per-cpu maps.
* map-gen.c: Minor bug fixes. Use new VAL_IS_ZERO() macro.
* alloc.c (vmalloc_node): For NUMA, provide a vmalloc that
does node-local allocations.
(_stp_alloc_cpu): A version of _stp_alloc() that does
node-local allocations.
(_stp_valloc): A version of _stp_valloc() that does
node-local allocations.
(__stp_valloc_percpu): New function. Like alloc_percpu()
except uses _stp_valloc().
(_stp_vfree_percpu): New function. Like free_percpu().
|
|
|
|
|
|
| |
* tapsets.cxx (blacklisted_p): Tolerate NULL filename parameter.
* src/testsuite/semok/twenty.stp: New test to enumerate everything
dwarfly probeable.
|
|
|
|
|
|
| |
* recreate_links: Add link to pmap-gen.c
* print.c (next_fmt): Remove unneeded dbug().
* alloc.c: Update to reflect changes to runtime/alloc.c.
|
|
|
|
| |
* pmaps/*: Add new pmaps tests.
|
|
|
|
|
|
| |
* translate.cxx (c_unparser::visit_foreach_loop): With PR 1275
done, add back read lock around foreach loop. Add a write lock
around preceding sort operation. Leave a race condition window. :-(
|
|
|
|
| |
* translate.cxx (mapvar::exists): Correct some more.
|
|
|
|
|
| |
Patch from "Mao, Bibo" <bibo.mao@intel.com>
* translate.cxx (mapvar::exists): Correct 64-bit type mismatch.
|
|
|
|
|
|
|
| |
* tapsets.cxx (blacklisted_p): Add blacklist for some .return
probes to kludge around bug #1345.
* tapset/system_calls.stp: Add some %( %? %) conditionals to
get closer to using tapset on 2.6.9 kernel.
|
|
|
|
|
|
|
| |
PR 1828.
* tapsets.cxx (blacklisted_p): New function. Add a few blacklist
entries.
* testsuite/semko/thirtythree.stp: New test.
|
|
|
|
| |
* testsuite/buildok/twentytwo.stp: Add another test for PR 1271.
|
|
|
|
|
|
|
|
|
| |
* tapsets.cxx (dwarf_derived_probe::emit_registrations): Add
possible kprobe address prechecking logic. Set kretprobes
maxactive to zero.
* translate.cxx (emit_module_init): Set a more helpful default
probe_point value for use in registration errors. Exit properly
after registration failure of probe #0.
|
| |
|
|
|
|
|
| |
* tapsets.cxx (add_probe_point): Use dwfl_module_relocation_info to
get symbol name when dwfl_module_relocations has the info.
|
| |
|
|
|
|
|
|
| |
* runtime.h: #include <linux/version.h>.
(init_module): Remove old ppc comment.
ifdef _stp_kta so it only gets set for x86 and x86_64.
|
|
|
|
| |
anymore
|
| |
|
|
|
|
|
| |
* tapsets.cxx (add_probe_point): Use explicit test with assignment in
while condition.
|
|
|
|
|
|
|
| |
PR 1329.
* tapsets.cxx (dwarf_query::add_probe_point): Look up section name
containing given address. Skip request if it came from .init.*.
* testsuite/semko/thirtytwo.stp: New test.
|
| |
|
|
|
|
|
| |
* Makefile.am (EXTRA_DIST): Add session.h.
* Makefile.in: Regenerated.
|
|
|
|
|
|
|
|
| |
Sound advice from <drepper@redhat.com>:
* configure.ac: Undo last change.
* configure.ac: Unregenerated.
* parse.cxx: Use glibc strverscmp function instead of rpmlib.
* stap.1.in: Update correspondingly.
|
|
|
|
|
|
|
|
|
|
| |
* translate.cxx (c_unparser::collect_map_index_types)
(c_unparser::emit_map_type_instantiations)
(c_unparser::visit_arrayindex)
(c_unparser::visit_array_in)
(delete_statement_operand_visitor::visit_arrayindex)
(c_unparser_assignment::visit_arrayindex)
(mapvar::*): Update to new runtime map API.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
PR 1425.
* configure.ac: Look for rpm-devel headers and libs.
* configure: Regenerated.
* session.h: New file to contain systemtap_session decl.
* staptree.h: Likewise evict statistics_decl.
* elaborate.h: Corresponding changes.
* main.cxx (usage): Elaborate. Re-enable "-r RELEASE" option.
* parse.cxx (parser): Add systemtap_session& field. Update users.
(scan_pp, eval_pp_conditional): New routines for preprocessing.
(peek, next): Call it.
(lexer::scan): Lex the preprocessor operators.
(parser::parse): Include an extra level of exception catching
for parse errors that occur during recovery.
* parse.h: Corresponding changes.
(parse_error): Allow explicit token parameter.
* stap.1.in: Document preprocessing.
* testsuite/parseok/fourteen.stp: New test.
|
| |
|
|
|
|
|
| |
* systemtap.spec.in, configure.ac: Version 0.4.2 cooked.
* configure: Regenerated.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* configure.ac: Update libdw test to require 0.116 with dwarf_diecu.
* configure: Regenerated.
* systemtap.spec.in: Update elfutils requirement to 0.116.
* loc2c.c: Dwarf_Loc -> Dwarf_Op.
(location_from_address): dwarf_addrloclists -> dwarf_getlocation_addr.
(c_translate_location): Likewise.
(max_fetch_size): Remove fakeo dwarf_diecu macro.
* tapsets.cxx (dwflpp): Dwarf_Func -> Dwarf_Die;
dwarf_func_name -> dwarf_diename;
dwarf_func_entrypc -> dwarf_entrypc;
dwarf_func_file, dwarf_func_line -> dwarf_decl_file, dwarf_decl_line.
|
|
|
|
| |
* ALL: Cleanup copyrights.
|
|
|
|
|
|
|
| |
Systemtap should now be able to build on Ia64.
Includes supports for - function probes, return probes,
function parameter access and dumping stack backtrace.
Added by Anil S Keshavamurthy <Anil.s.keshavamurthy@intel.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* map-gen.c (MAP_GET_VAL): Use the _stp_get_*() functions.
(_stp_map_set_*): When setting to "", don't create
node if key not found.
(_stp_map_get_*): Use new MAP_GET_VAL. Return "" when
string lookups not found.
* map.c (_stp_get_int64): Check args and return
0 on bad args or wrong type.
(_stp_get_stat): Ditto.
(_stp_key_get_int64): Ditto.
(_stp_get_str): Check args and return
"bad type" on bad args or wrong type.
(_stp_key_get_str): Ditto.
(_new_map_set_str): If setting to "", delete node.
(_new_map_get_*): Delete. Use _stp_get_*().
|
|
|
|
|
|
|
|
|
|
|
|
| |
* maps/keys.c: New file. Tests specific to _stp_key_get_*().
* maps/iiss2.c (main): Add some comments to make clear expected
results.
* maps/is2.c (main): _stp_map_get_*s() now returns "" instead
of NULL when lookup fails. _stp_map_set_*s() now deletes a node
when setting to "" (as well as NULL).
* maps/setadd.c (main): Ditto.
* maps/map.test: update results.
|
| |
|
|
|
|
|
| |
* loc2c.c (max_fetch_size): Default to host pointer size,
while still waiting for new libdw entrypoint.
|
|
|
|
|
|
| |
* maps/map.test: Add results for iiiiii and ssssss.
* maps/iiiiii.c: New file.
* maps/ssssss.c: New file.
|
|
|
|
|
| |
* map-gen.c (KEY4CPY): Fix typo.
(KEYCPY): Add missing semicolon.
|
|
|
|
| |
* maps/map.test: Add results for issii2.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* map.c (_new_map_create, _new_map_del_node, _new_map_del_node,
_new_map_set_int64, _new_map_set_str,_new_map_get_int64,
_new_map_get_str, _new_map_get_stat, _new_map_set_stat):
New internal functions for the new API.
* map-int.c (__stp_map_set_int64): Modify to return an
error code.
* map-stat.c (_stp_map_add_stat): Ditto.
* map-str (_stp_map_set_str): Ditto.
* Doxyfile: Remove predefines NEED_STRING_VALS,
NEED_STATS, NEED_INT64.
* map-keys.c: Ditto.
* list.c (_stp_list_new): Ditto. Also set map->list.
* map-values.c: Ditto.
|
|
|
|
| |
* recreate_links: Add link to map-gen.c.
|
|
|
|
|
|
|
| |
* maps/map.test: Update with results for new tests.
* maps/*2.c: Tests for the new API.
* maps/ist.c: Renamed isx.c.
* maps/setadd.c: New test of adding and setting.
|
| |
|
|
|
|
|
|
|
| |
PR 1271 cont'd.
* testsuite/buildok/twentytwo.stp: New file.
* testsuite/buildok/twentythree.stp: New file.
* loc2c.c (discontiguify): Add missing ; in output.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
PR 917 (incomplete)
* staptree.h (struct statistic_decl): New struct.
(stapfile::stat_decls): New member.
* parse.h, parse.cxx
(parser::expect_known): Fix typo.
(parser::expect_number): New method.
(parser::parse_global): Parse global statistic_decls.
* elaborate.h (systemtap_session::stat_decls): New member.
* elaborate.cxx (semantic_pass_symbols): Copy per-file stat_decls
to session-wide.
(typeresolution_info::visit_assignment): Detect some semantic stats
errors in type resolution pass.
* translate.cxx (var::sd): New private member.
(var::var): Initialize it.
(var::sdecl): New accessor.
(var::init): Handle stats values.
(mapvar::mapvar): Pass through statistic_decl to var ctor.
(mapvar::get): Test for long explicitly.
(mapvar::set): Likewise.
(mapvar::init): Handle stats values.
(c_unparser::emit_common_header): Remove typedef of stats_t,
include stat.c when necessary.
(mapvar::key_typename): Typo.
(c_unparser::emit_map_type_instantiations): Thinko: value_typename not key_typename.
(c_unparser::c_typename): Implementation typename is "Stat", not "stats_t".
(c_unparser::c_assign): Fix bad error message.
(c_unparser_assignment::c_assignop): Handle operator <<<.
(c_unparser::getvar): Feed session statistic_decl into var.
(c_unparser::getmap): Likewise.
(c_unparser::visit_assignment): Handle operator <<<.
(c_tmpcounter_assignment::visit_symbol): Derive type from rvalue when present.
(c_unparser_assignment::visit_symbol)
(c_tmpcounter_assignment::visit_arrayindex)
(c_unparser_assignment::load_map_indices): Likewise.
(c_unparser::visit_arrayindex): Likewise, and Prohibit statistic rvalues.
(c_unparser_assignment::visit_arrayindex): Handle operator <<<.
* testsuite/semko/twentyfour.stp:
* testsuite/semko/twentyfive.stp:
* testsuite/semko/twentysix.stp:
* testsuite/semko/twentyseven.stp:
* testsuite/semko/twentyeight.stp:
* testsuite/semko/twentynine.stp:
* testsuite/semko/thirty.stp:
* testsuite/semko/thirtyone.stp: New tests for prohibited statistic contexts.
* testsuite/buildok/twentytwo.stp: New test for legal statistic contexts.
|