2005-10-14 Tom Zanussi PR 1455 * string.c (_stp_sprintf): Restore overwritten NULL byte. * print.c: Change STP_PRINT_BUF_LEN to correct size. 2005-10-06 Frank Ch. Eigler PR 1332. * sym.h: New file to declare explicit symbol table struct. * runtime.h (_stp_kallsyms_lookup_tabled): Use it if available. * sym.c (_stp_symbol_sprint): HAS_LOOKUP mooted. 2005-09-30 Graydon Hoare * loc2c-runtime.h (_put_user_asm): Fix bracket-matching. 2005-09-23 Martin Hunt * map.c (_stp_map_sortn): Call _stp_map_sort() when n is 0. 2005-09-23 Martin Hunt * map.c (_stp_cmp): New comparison function for sorts. (_stp_swap): New swap function for bubble sort. (_stp_map_sortn): New function. (_stp_map_sort): New function. (_stp_map_printn): New function. (_stp_map_print): Convert to a macro. 2005-09-22 Martin Hunt * regs.h: PPC64 version from Ananth N Mavinakayanahalli * runtime.h (init_module): Only initialize _stp_kta and _stp_kallsyms_lookup on i386 and x86_64. Define HAS_LOOKUP. * sym.c (_stp_symbol_sprint): If HAS_LOOKUP is not defined, just print address in hex. * current.c (_stp_ret_addr): Add ppc64 version. (_stp_sprint_regs): PPC64 version from Ananth N Mavinakayanahalli 2005-09-14 Martin Hunt * map.c (_stp_map_clear): New function. CLears a map but does not free it. * copy.c (__stp_strncpy_from_user): Add ppc64 support. (_stp_strncpy_from_user): Call access_ok(). (_stp_string_from_user): Ditto. (_stp_copy_from_user): Ditto. 2005-09-12 Martin Hunt * io.c (ERR_STRING): Remove ansi codes. (WARN_STRING): Ditto. 2005-09-12 Martin Hunt * arith.c (_stp_div64): Check for division by 0 or -1 first. This simplifies things and removes the possibility of x86_64 trying LLONG_MIN/-1 and faulting. (_stp_mod64): Ditto. 2005-09-10 Frank Ch. Eigler * arith.c: Add some comments explaining why the last change works. 2005-09-09 Roland McGrath * loc2c-runtime.h [__powerpc__] (store_register): Add #undef. 2005-09-09 Martin Hunt * stat-common.c (_stp_stat_print_valtype): Use _stp_div64(). * arith.c (_stp_div64): Check error before writing to it. Remove check against 32-bit LONG_MIN and -1. That only applies to 64-bit. (_stp_mod64): Ditto. 2005-09-08 Martin Hunt * arith.c (_stp_div64): Check for overflow. (_stp_mod64): Ditto. 2005-09-08 Martin Hunt * arith.c (_stp_div64): For 64-bit cpus, just use native division. Otherwise call _div64(). (_stp_mod64): Call _mod64() isf necessary. (_div64): 64-bit division for 32-bit cpus. (_mod64): 64-bit modulo for 32-bit cpus. * map-values.c (_stp_map_entry_exists): Remove unused var. 2005-09-01 Martin Hunt * stack.c (_stp_stack_sprint): Add a verbose arg to pass along to underlying funcs. 2005-08-31 Martin Hunt * runtime.h (init_module): Include full prototype info in function cast to satisfy stap. * sym.c (_stp_kallsyms_lookup): Moved to runtime.h. * stack.c (_stp_kta): Moved to runtime.h. * runtime.h (init_module): Initialize _stp_kallsyms_lookup and _stp_kta. * probes.c (_stp_lookup_name): Replaced by kallsyms_lookup_name(). * list.c (_stp_copy_argv_from_user): ifdef this function NEED_STRING_VALS. 2005-08-30 Roland McGrath * loc2c-runtime.h (fetch_register, store_register): Rewritten to pass REGS to dwarf_register_ as a macro argument. [__i386__, __x86_64__]: Update dwarf_register_* macros. [__i386__] (dwarf_register_4): Define special case for stack pointer. 2005-08-29 Martin Hunt * list.c (_stp_copy_argv_from_user): Move to here. * copy.c (_stp_copy_argv_from_user): Delete. * runtime.h: Always include copy.h. 2005-08-25 Roland McGrath * loc2c-runtime.h (deref_string): Rewritten using deref. 2005-08-24 Roland McGrath * loc2c-runtime.h (deref_string): New macro. 2005-08-24 Martin Hunt * io.c (_stp_vlog): Send warnings and errors to STP_OOB_DATA. 2005-08-23 Martin Hunt * runtime.h: Add a prototype for _stp_dbug(). 2005-08-22 Martin Hunt * runtime.h (kbug): New dbug macros that calls printk. 2005-08-21 Frank Ch. Eigler * arith.c (*): Adapt to last_error context variable. 2005-08-19 Frank Ch. Eigler * arith.c (_stp_random_pm): New function. 2005-08-19 Martin Hunt * print.c: Change ifdefs to STP_RELAYFS. * runtime.h: Ditto. * io.c (_stp_vlog): Call _stp_write instead of _stp_ctrl_send. * Makefile: Don't build stp-control. * README.doc: Update. * TODO: Update. 2005-08-12 Graydon Hoare * map-values.c (_stp_map_entry_exists): New function. * map.h (_stp_map_entry_exists): Declare it. 2005-08-12 Frank Ch. Eigler * arith.c: New file to contain arithmetic helper functions. * builtin_functions.h: Remove, unused. * runtime.h: Include it. 2005-08-10 Roland McGrath * loc2c-runtime.h (store_bitfield): Fix argument use. (store_deref): New macro (three flavors). 2005-08-03 Martin Hunt * io.c (_stp_vlog): Revert previous change for now. * print.c (_stp_print_flush): Ditto. 2005-08-03 Tom Zanussi * io.c (_stp_vlog): Remove call to _stp_print_flush(). * print.c (_stp_print_flush): _stp_warn() on first transport failure. 2005-08-01 Martin Hunt * io.c (_stp_vlog): Use _stp_pid instead os _stp_tport->pid. * print.c (_stp_print_flush): Don't need _stp_tport. *runtime.h (probe_start): Just call _stp_transport_init(). (probe_exit): Just call _stp_transport_close(). 2005-07-28 Graydon Hoare * loc2c-runtime.h: New file from elfutils CVS. 2005-07-20 Martin Hunt * io.c (_stp_vlog): Don't count transport failures for these messages. 2005-07-19 Martin Hunt * print.c (_stp_print_flush): Check return value and increment transport failures. 2005-07-14 Frank Ch. Eigler * builtin_functions.h (printk): Use explicit format string. 2005-07-11 Graydon Hoare * builtin_functions.h: New file. 2005-07-10 Martin Hunt * runtime.h (init_module): Fix return value. 2005-07-08 Martin Hunt * runtime.h: Move some common pieces of modules into this file. Includes MODULE_LICENSE, cleanup_module and init_module. * print.c (_stp_print_flush): Rename "t" to "_stp_tport". * io.c (_stp_vlog): Ditto. 2005-07-01 Martin Hunt * string.c (_stp_string_init): CAll stp_error() on bad init. * list.c (_stp_list_clear): Call _stp_warn(). * probes.c: Convert all _stp_log() calls to either stp_warn() or dbug(). * print.c: Comment out dbug()s. * stat-common.c: Comment out dbug()s. * map.c (_stp_map_new): Call _stp_error() on a bad map type. Comment out dbug()s. * map-stat.c (_stp_map_new_hstat_log): Call _stp_warn(). (_stp_map_new_hstat_linear): Ditto. * map-int.c: Comment out dbug()s. * map-str.c: Comment out dbug()s. * map-keys.c: Use _stp_warn(). Comment out dbug()s. * alloc.c (_stp_alloc): Call _stp_error(). (_stp_valloc): Ditto. * io.c (_stp_warn): New function. (_stp_exit): New function. (_stp_error): New function. (_stp_dbug): New function. * runtime.h (dbug): Call _stp_dbug() if DEBUG is defined. 2005-06-29 Martin Hunt * map-values.c (_stp_map_add_int64): Fix docs. * map-str.c: Fix some docs * map.c: Ditto. * map.doc: Ditto. * current.c (_stp_ret_addr_r): New function. (_stp_probe_addr): New function. (_stp_probe_addr_r): New function. 2005-06-27 Martin Hunt * Doxyfile (PREDEFINED): Added USE_RET_PROBES. * probes.c (_stp_register_kretprobes): New function. (_stp_unregister_kretprobes): New function. 2005-06-20 Tom Zanussi * print.c: Made relayfs _stp_print_flush() use sequence counter. * runtime.h: Added sequence counter, moved subbuf_size etc to probes. 2005-06-18 Martin Hunt * counter.c: New file. Counter aggregations. * stat.c: New file. Stat aggregations. * stat.h: Header file for stats. * map-int.c: New file. Support for int64 values. * map-stat.c: New file. Support for stat values. * map-str.c: New file. Support for string values. * map-values.c: Now just includes the necessary map-*.c files. * stat-common.c: New file. Stats stuff common to Stats and maps containing stats. * Doxyfile: Bumped version to 0.6. * README: Renamed README.doc and reorganized. 2005-06-15 Martin Hunt * current.c (_stp_ret_addr): Fix computation for i386. 2005-06-14 Martin Hunt * README: Removed old docs and replaced with simple build instructions. * Makefile: New file. * probes/build: New file. 2005-06-13 Martin Hunt * print.c (next_fmt): Move this func to print.c. 2005-06-02 Martin Hunt * string.c (_stp_string_cat_cstr): Be sure result is always terminated. * print.c (_stp_vprintf): Fix typo. 2005-05-31 Martin Hunt * map.c (_stp_map_print): Now takes a format string instead of a name. * map.h (foreach): Update macro. * string.c (_stp_string_cat_char): New function. Append a char to a string. * map-keys.c: Don't forget to undef KEYSYM, ALLKEYS and ALLKEYSD. 2005-05-26 Martin Hunt * current.c (_stp_sprint_regs): Implement for i386. * sym.c (_stp_symbol_sprint): Check name before trying to print it. (_stp_symbol_print): Change to macro that calls _stp_symbol_sprint(). 2005-05-18 Martin Hunt * print.c: All functions except _stp_print_flush() are now macros which use _stp_stdout. * string.c: Add _stp_stdout support. Data written to _stp_stdout is automatically flushed when the print buffer is full. * runtime.h: Always include string.c. 2005-05-17 Martin Hunt * map.c (needed_space): Use do_div(). (_stp_map_print_histogram): Ditto. (_stp_map_print): Ditto. * map-values.c (_stp_map_add_int64_stat): Use do_div() when computing histogram bucket. * map-keys.c (_stp_map_key): Fix some warnings on 32-bit machines by using key_data casts. 2005-03-30 Martin Hunt * scbuf.c: Make functions use per-cpu buffers as documented. _stp_scbuf_clear(): Now returns a pointer to the buffer.