2006-07-14  Josh Stone  <joshua.i.stone@intel.com>

	PR 2922
	* time.c (_stp_init_time): call cpufreq_get for each cpu from 
	a non-atomic context (module init time).
	* time.c (__stp_init_time): remove call to cpufreq_get from IPI.

	* time.c (__stp_time_timer_callback): disable IRQ's to avoid
	perturbations in measurements.
	* time.c (_stp_gettimeofday_us): disable preemption to avoid CPU
	swaps while we're computing the time.

2006-07-12  Martin Hunt  <hunt@redhat.com>

	* runtime.h (for_each_cpu): Define for new kernels
	which no longer define it.

2006-07-11  Martin Hunt  <hunt@redhat.com>
	* string.c (_stp_text_str): Use __get_user().

2006-07-11  Martin Hunt  <hunt@redhat.com>

	* string.c (_stp_text_str): Add a parameter to support
	userspace strings too.
	* string.h: (_stp_text_str): Fix proto.

2006-07-11  Li Guanglei <guanglei@cn.ibm.com>

	* lket/b2a/lket_b2a.c: modified to be sync with 
	the new addevent.process event hooks
	
2006-06-29  Li Guanglei <guanglei@cn.ibm.com>

	* lket/b2a/lket_b2a.c, lket/b2a/lket_b2a.h: modified to be
	sync with new _lket_trace()
	
2006-06-27  Roland McGrath  <roland@redhat.com>

	* loc2c-runtime.h: Add some comments.

2006-06-23  Josh Stone  <joshua.i.stone@intel.com>

	* time.c: Do cpufreq notification only if CONFIG_CPU_FREQ defined.

2006-06-21  Josh Stone  <joshua.i.stone@intel.com>

	PR 2525
	* time.c: Time-estimation with minimal dependency on xtime.

2006-06-16  Roland McGrath  <roland@redhat.com>

	* lket/b2a/Makefile.in: Regenerated with automake-1.9.6-2.

2006-06-09  Li Guanglei <guanglei@cn.ibm.com>

	* lket/b2a/lket_b2a.c, lket/b2a/lket_b2a.h: Rewrite
	according to the latest LKET's tapsets. Make it able
	to read the metainfo wrote by tapsets.

2006-06-02  Li Guanglei <guanglei@cn.ibm.com>

	* lket/b2a/lket_b2a.c: eliminate some compile warnings

2006-06-01  Li Guanglei <guanglei@cn.ibm.com>

	* lket/b2a/lket_b2a.h, lket/b2a/lket_b2a.c: make it able to
	read user added trace data and backtrace

2006-05-30  Martin Hunt  <hunt@redhat.com>

	* string.c (_stp_text_str): New function.
	* string.h (_stp_text_str): Declare.

2006-05-25  Martin Hunt  <hunt@redhat.com>

	* vsprintf.c (_stp_vsnprintf): Change %p to work like
	libc and automatically insert "0x" before the pointer.

2006-05-24  Josh Stone  <joshua.i.stone@intel.com>

	PR 2677
	* sym.c (_stp_symbol_sprint_basic): New function that returns
	just the symbol name, and doesn't bother with String.

2006-05-24  Li Guanglei <guanglei@cn.ibm.com>
	* lket/b2a/Makefile.am, lket/b2a/Makefile.in,
	lket/b2a/README, lket/b2a/lket_b2a.c,
	lket/b2a/lket_b2a.h: a binary to ascii converter used
	to convert LKET's default binary trace data.

2006-05-09  Li Guanglei <guanglei@cn.ibm.com>
	PR 2647
	Patch given by Gui Jian <guij@cn.ibm.com>
	* vsprintf.c: %0s support to print null-terminated string

2006-05-03  Josh Stone  <joshua.i.stone@intel.com>

	* loc2c-runtime.h (deref_string): resolved gcc "warning:
	assignment makes integer from pointer without a cast" when
	using a pointer as the source address.

2006-04-28  Martin Hunt  <hunt@redhat.com>

	* vsprintf.c (_stp_vsnprintf): Fix argument size for %p.

2006-04-17  Martin Hunt  <hunt@redhat.com>

	* vsprintf.c (_stp_vsnprintf): Fix endian
	before writing binary.
	(_stp_endian): New variable to control endianess.

2006-04-11  Tom Zanussi  <zanussi@us.ibm.com>

	* print.c (_stp_print_flush): Change TIMESTAMP_SIZE to
	STP_TIMESTAMP_SIZE to avoid conflicts with Suse kernels.

2006-04-10  Martin Hunt  <hunt@redhat.com>

	* string.c (_stp_string_cat_cstr): No need to copy
	terminating 0.

	* vsprintf.c (_stp_snprintf): New function.

	* stat-common.c (_stp_stat_print_histogram): Write a
	newline at the end of the histogram.

2006-04-09  Martin Hunt  <hunt@redhat.com>

	* print.c (_stp_print_flush): Send 'len" bytes
	instead of 'len+1', which included terminating 0.

	* string.c (_stp_sprintf): Call _stp_vsnprintf()
	instead of vsnprintf().
	(_stp_vsprintf): Ditto.

	* vsprintf.c: New file.

2006-04-05  Will Cohen  <wcohen@redhat.com>

	* string.h (__stp_stdout): Correct initialization.

2006-03-30  Martin Hunt  <hunt@redhat.com>

	* string.c (_stp_string_cat_cstr): Use memcpy() instead of strncpy().

2006-03-26  Martin Hunt  <hunt@redhat.com>

	* bench2/bench.rb (Bench::run): Instead of loading the module
	once and running against different numbers of threads, load
	and unload the module each time. Then keep track of failures
	per thread. Also use the new itest to keep the tests the same
	size regardless of the number of threads.
	(Bench::initialize): Make itest if needed.
	(Bench::load, Stapbench::load): Increase buffer size to 8MB.

	* bench2/itest.c: Change arg to be the number of threads
	instead of the number of millions of calls to make.
	This makes it easy to divide the work among multiple threads
	without making the test run many times longer.

2006-03-09  Martin Hunt  <hunt@redhat.com>

	* bench2: New directory containing a benchmark framework.

2006-02-10  Martin Hunt  <hunt@redhat.com>

	* copy.c (_stp_copy_from_user): Revert previous incorrect change.

2006-02-09  Martin Hunt  <hunt@redhat.com>

	* copy.c (_stp_copy_from_user): If access fails,
	return -1.

2006-01-25  Martin Hunt  <hunt@redhat.com>

	* stat.c (_stp_stat_init): Use _stp_alloc_percpu().
	(_stp_stat_del): New function.

	* alloc.c (_stp_alloc_percpu): New function.
	(_stp_free_percpu): New function.

2006-01-19  Martin Hunt  <hunt@redhat.com>

	* pmap-gen.c (_stp_pmap_get): Fix bug where old data
	from agg map could be returned after element was deleted.

2006-01-16  Josh Stone  <joshua.i.stone@intel.com>

	* stat.c (_stp_stat_clear): add a function that just
	clears a Stat, so we can use delete in the translator.

2006-01-16  Martin Hunt  <hunt@redhat.com>

	* map.c (_stp_pmap_agg): Return NULL when aggregation
	fails.

2006-01-15  Frank Ch. Eigler  <fche@elastic.org>

	* io.c (_stp_exit): Revert.

2006-01-10  Martin Hunt  <hunt@redhat.com>

	* io.c (_stp_exit): set STAP_SESSION_STOPPING.

2006-01-03  Frank Ch. Eigler  <fche@redhat.com>

	* io.c (_stp_softerror): New function.

2005-12-14  Martin Hunt  <hunt@redhat.com>

	* pmap-gen.c (_stp_pmap_new_*): Initialize lock.
	(_stp_pmap_set_*): Lock map while in use.
	(_stp_pmap_add_*): Lock map while in use.
	(_stp_pmap_get_cpu): Ditto.
	(_stp_pmap_get): Lock each per-cpu map.

	* map-gen.c: Define and use NULLRET for a NULL return value.
	* map.c (_stp_pmap_clear): New function.
	(_stp_pmap_agg): Lock each per-cpu map as
	it gets aggregated.

2005-12-13  Martin Hunt  <hunt@redhat.com>

	* map.c (_stp_map_sortn): Set a limit of 30 for n.  Automatically
	call _stp_map_sort() if more is requested.

2005-12-08  Martin Hunt  <hunt@redhat.com>

	* map.c (_new_map_create): Only increment map size if a node
	was moved off the free list.
	(_stp_map_size): New function.
	(_stp_pmap_size): New function.

2005-12-07  Martin Hunt  <hunt@redhat.com>
	 PR1923
	* map.h (struct map_root): Remove membuf.
	(struct pmap): Define.
	(PMAP): Declare.

	* map.c (_stp_map_init): Use kmalloc() to allocate individual
	nodes instead of using vmalloc() to allocate one big chunk.
	(_stp_map_new): Use kmalloc.
	(_stp_pmap_new): Use kmalloc. Return a PMAP.
	(__stp_map_del): New function. Free all the nodes in a map.
	(_stp_map_del): Call __stp_map_del() then free map struct.
	(_stp_pmap_del): Takes a PMAP. Calls __stp_map_del() for
	each cpu.
	(_stp_pmap_printn_cpu): Change arg to PMAP.
	(_stp_pmap_agg): Change arg to PMAP.
	(_stp_pmap_get_agg): Change arg to PMAP.

	* map-stat.c (_stp_pmap_new_hstat_linear): Use PMAP
	instead of MAP. Fix allocations.
	(_stp_pmap_new_hstat_log): Ditto.

	* pmap-gen.c Fix all functions to take or return PMAPS
	instead of MAPS.

	* alloc.c: Remove everything except kmalloc_node().
	All runtime code now uses kmalloc() directly.

2005-11-30  Martin Hunt  <hunt@redhat.com>

	* io.c (_stp_exit): To prevent any possible interactions
	with the probed function, just set a flag here.

2005-11-28  Graydon Hoare  <graydon@redhat.com>

	* stat-common.c (_stp_stat_print_histogram): Various formatting
	corrections and aesthetic tweaks.
	(__stp_stat_add): Correction to linear bucket underflow cases.

2005-11-28  Martin Hunt  <hunt@redhat.com>

	* alloc.c (__stp_valloc_percpu): Use same code for up and smp.
	(_stp_per_cpu_ptr): New macro.
	* user/alloc.c: Ditto.
	* map.c: Use _stp_map_cpu_ptr().
	* map-stat.c: Ditto.
	* pmap-gen.c: Ditto.
	* runtime.h: Include alloc.c
	* user/runtime.h: Ditto.

	* map.c (_stp_pmap_del): Use _stp_free_percpu() to
	free pmaps.

	* map-stat.c (_stp_pmap_new_hstat_log): Fix typo. Call
	_stp_pmap_new() instead of _stp_map_new().

2005-11-11  Martin Hunt  <hunt@redhat.com>

	* map.h: Removed old API macros and prototypes.

2005-11-10  Martin Hunt  <hunt@redhat.com>

	* pmap-gen.c (_stp_pmap_get()): New function. Aggregates
	the per-cpu map nodes into an aggregation map node.

	* map.c (_stp_new_agg): Return a struct map_node *.
	(_stp_add_agg): If count is 0  when adding,
	just set the stats.

2005-11-10  Martin Hunt  <hunt@redhat.com>
	* map.c: Doc updates.
	(_stp_new_agg):

	* pmap-gen.c: Change a bunch of generated function names to
	avoid conflicts with maps with the same key and value types.

2005-11-10  Martin Hunt  <hunt@redhat.com>
	* map.c (_stp_cmp): Use _stp_div64().

2005-11-09  Martin Hunt  <hunt@redhat.com>

	* map.h: Remove HSTAT_LOG and HSTAT_LINEAR.
	* map-gen.c: Fix comment.
	* pmap-gen.c: Ditto.

2005-11-09  Martin Hunt  <hunt@redhat.com>
	* map.c (_stp_cmp): Patch to sort on stats.
	(_stp_map_sort): Ditto.
	(_stp_map_sortn): Ditto.

2005-11-09  Martin Hunt  <hunt@redhat.com>
	* map.c: Change order of includes.

2005-11-09  Martin Hunt  <hunt@redhat.com>
	* 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.

2005-11-08  Martin Hunt  <hunt@redhat.com>

	* alloc.c (__stp_valloc_percpu): Fix call to vmalloc_node.
	(vmalloc_node): Remove nonworking code.

2005-11-08  Martin Hunt  <hunt@redhat.com>

	* 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().

2005-11-04  Martin Hunt  <hunt@redhat.com>

	* 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.

2005-10-31  Martin Hunt  <hunt@redhat.com>

	* ALL: Cleanup copyrights.

2005-10-28  Martin Hunt  <hunt@redhat.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_*().


2005-10-26  Martin Hunt  <hunt@redhat.com>

	* map-gen.c (KEY4CPY): Fix typo.
	(KEYCPY): Add missing semicolon.

2005-10-26  Martin Hunt  <hunt@redhat.com>
	* map-gen.c: New file.

	* 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.

2005-10-19  Martin Hunt  <hunt@redhat.com>

	* runtime.h (_stp_kallsyms_lookup_tabled): Only
	compile this for systemtap. Runtime-only examples
	don't need it.

2005-10-19  Tom Zanussi  <zanussi@us.ibm.com>

	* print.c (_stp_print_flush): Switch to binary TIMESTAMP.

2005-10-14  Tom Zanussi  <zanussi@us.ibm.com>

	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  <fche@elastic.org>

	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  <graydon@redhat.com>

	* loc2c-runtime.h (_put_user_asm): Fix bracket-matching.

2005-09-23  Martin Hunt  <hunt@redhat.com>

	* map.c (_stp_map_sortn):  Call _stp_map_sort()
	when n is 0.

2005-09-23  Martin Hunt  <hunt@redhat.com>

	* 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  <hunt@redhat.com>

	* regs.h: PPC64 version from
	Ananth N Mavinakayanahalli <ananth@in.ibm.com>

	* 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 <ananth@in.ibm.com>

2005-09-14  Martin Hunt  <hunt@redhat.com>

	* 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  <hunt@redhat.com>

	* io.c (ERR_STRING): Remove ansi codes.
	 (WARN_STRING): Ditto.

2005-09-12  Martin Hunt  <hunt@redhat.com>

	* 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  <fche@elastic.org>

	* arith.c: Add some comments explaining why the last change works.

2005-09-09  Roland McGrath  <roland@redhat.com>

	* loc2c-runtime.h [__powerpc__] (store_register): Add #undef.

2005-09-09  Martin Hunt  <hunt@redhat.com>

	* 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  <hunt@redhat.com>
	* arith.c (_stp_div64): Check for overflow.
	(_stp_mod64): Ditto.

2005-09-08  Martin Hunt  <hunt@redhat.com>

	* 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  <hunt@redhat.com>

	* stack.c (_stp_stack_sprint): Add a verbose arg
	to pass along to underlying funcs.

2005-08-31  Martin Hunt  <hunt@redhat.com>

	* 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  <roland@redhat.com>

	* loc2c-runtime.h (fetch_register, store_register): Rewritten to pass
	REGS to dwarf_register_<N> 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  <hunt@redhat.com>

	* 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  <roland@redhat.com>

	* loc2c-runtime.h (deref_string): Rewritten using deref.

2005-08-24  Roland McGrath  <roland@redhat.com>

	* loc2c-runtime.h (deref_string): New macro.

2005-08-24  Martin Hunt  <hunt@redhat.com>

	* io.c (_stp_vlog): Send warnings and errors to STP_OOB_DATA.

2005-08-23  Martin Hunt  <hunt@redhat.com>

	* runtime.h: Add a prototype for _stp_dbug().

2005-08-22  Martin Hunt  <hunt@redhat.com>

	* runtime.h (kbug): New dbug macros that calls printk.

2005-08-21  Frank Ch. Eigler  <fche@redhat.com>

	* arith.c (*): Adapt to last_error context variable.

2005-08-19  Frank Ch. Eigler  <fche@elastic.org>

	* arith.c (_stp_random_pm): New function.

2005-08-19  Martin Hunt  <hunt@redhat.com>

	* 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  <graydon@redhat.com>

	* map-values.c (_stp_map_entry_exists): New function.
	* map.h (_stp_map_entry_exists): Declare it.

2005-08-12  Frank Ch. Eigler  <fche@elastic.org>

	* arith.c: New file to contain arithmetic helper functions.
	* builtin_functions.h: Remove, unused.
	* runtime.h: Include it.

2005-08-10  Roland McGrath  <roland@redhat.com>

	* loc2c-runtime.h (store_bitfield): Fix argument use.
	(store_deref): New macro (three flavors).

2005-08-03  Martin Hunt  <hunt@redhat.com>

	* io.c 	(_stp_vlog): Revert previous change for now.
	* print.c (_stp_print_flush): Ditto.

2005-08-03  Tom Zanussi  <trz@us.ibm.com>

	* 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  <hunt@redhat.com>

	* 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  <graydon@redhat.com>

	* loc2c-runtime.h: New file from elfutils CVS.

2005-07-20  Martin Hunt  <hunt@redhat.com>

	* io.c (_stp_vlog): Don't count transport failures for
	these messages.

2005-07-19  Martin Hunt  <hunt@redhat.com>

	* print.c (_stp_print_flush): Check return value and increment
	transport failures.

2005-07-14  Frank Ch. Eigler  <fche@redhat.com>

	* builtin_functions.h (printk): Use explicit format string.

2005-07-11  Graydon Hoare  <graydon@redhat.com>

	* builtin_functions.h: New file.

2005-07-10  Martin Hunt  <hunt@redhat.com>

	* runtime.h (init_module): Fix return value.

2005-07-08  Martin Hunt  <hunt@redhat.com>

	* 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  <hunt@redhat.com>

	* 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  <hunt@redhat.com>

	* 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  <hunt@redhat.com>

	* Doxyfile (PREDEFINED): Added USE_RET_PROBES.

	* probes.c (_stp_register_kretprobes): New function.
	(_stp_unregister_kretprobes): New function.

2005-06-20  Tom Zanussi  <zanussi@us.ibm.com>

	* 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  <hunt@redhat.com>

	* 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  <hunt@redhat.com>

	* current.c (_stp_ret_addr): Fix computation for i386.

2005-06-14  Martin Hunt  <hunt@redhat.com>

	* README: Removed old docs and replaced with simple build
	instructions.

	* Makefile: New file.

	* probes/build: New file.

2005-06-13  Martin Hunt  <hunt@redhat.com>

	* print.c (next_fmt): Move this func to print.c.

2005-06-02  Martin Hunt  <hunt@redhat.com>

	* string.c (_stp_string_cat_cstr): Be sure result is
	always terminated.

	* print.c (_stp_vprintf): Fix typo.

2005-05-31  Martin Hunt  <hunt@redhat.com>

	* 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  <hunt@redhat.com>

	* 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  <hunt@redhat.com>

	* 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  <hunt@redhat.com>

	* 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  <hunt@redhat.com>

	* scbuf.c:  Make functions use per-cpu buffers as documented.
	_stp_scbuf_clear(): Now returns a pointer to the buffer.
