This is a major redesign a modernization of Sysprof. The core data
structures and design are largely the same, but it has been ported to
Gtk3 and has lots of additions that should make your profiling experience
smoother. Especially for those that are new to profiling.
There are some very simple help docs added, but we really need the
experts to come in and write some documentation here.
2008-05-07 Soren Sandmann Pedersen <sandmann@daimi.au.dk>
* binfile.c (get_build_id_file): Fix bug where the build id name
was generated incorrectly.
Make a copy of the debug name, not the input name.
svn path=/trunk/; revision=418
2008-04-26 Soren Sandmann <sandmann@daimi.au.dk>
* sysprof.c (build_gui): Get rid of all calls to
glade_xml_get_widget().
(gather_widgets): Instead get all the widgets here.
* TODO: updates
svn path=/trunk/; revision=414
2008-02-17 Soren Sandmann <sandmann@redhat.com>
* collector.c (lookup_symbol): Add commented out code to reject
callback.
* elfparser.c (struct ElfParser): Store the filename if any
(elf_parser_get_sym_address): Subtract the load address, so the
result will be an offset into the text section.
* process.[ch] (process_lookup_symbol): Add an offset out-argument
* binfile.[ch] (bin_symbol_get_address): New function
* TODO: updates
svn path=/trunk/; revision=397
2007-11-16 Soren Sandmann <sandmann@daimi.au.dk>
* TODO: updates
* module/sysprof-module.c (sysprof_poll): Only select readable
when there is at least eight traces available
* collector.c (collect_traces): New function, old on_read()
* collector.c (collector_create_profile): Collect traces here as
well.
svn path=/trunk/; revision=388
2007-11-16 Soren Sandmann <sandmann@daimi.au.dk>
* TODO: Updates
* process.c (process_locate_map): Move map to front
* profile.c (profile_load): Ignore the toplevel field in the file
since we can compute it ourselves.
* stackstash.c (stack_stash_decorate): New function
* stackstash.c (stack_stash_add_trace): Decorate the tree lazily
instead of on each sample.
svn path=/trunk/; revision=387
2007-10-22 Soren Sandmann <sandmann@daimi.au.dk>
* process.c (look_for_vmlinux): Use an array instead of a
list. Look for vmlinux in the source directory.
* elfparser.c (elf_parser_get_crc32): Only use MADV_DONTNEED if
the data is file-backed.
* TODO: updates.
Various formatting fixes
svn path=/trunk/; revision=385
2007-10-22 Soren Sandmann <sandmann@daimi.au.dk>
* profile.c (add_trace_to_tree): Make this a two-pass
algorithm, one pass to add the trace, and one to do the
accounting.
svn path=/trunk/; revision=384
2007-10-22 Soren Sandmann <sandmann@daimi.au.dk>
* sfile.c: Fix some spelling errors
* profile.[ch], sysprof.[ch]: Change "non_recursive" to
"cumulative" to match the UI
* profile.c (add_trace_to_tree): Add a couple of asserts.
* TODO: updates
svn path=/trunk/; revision=383
2007-09-16 Soren Sandmann <sandmann@daimi.au.dk>
* process.c (process_lookup_kernel_symbol): Add support for
looking up kernel symbols from /proc/kallsyms
* sysprof-text.c (dump_data): Print note that the file is being
saved.
* module/sysprof-module.[ch] (timer_notify): Send a copy of the
kernel stack to userspace.
* collector.c: Do kernel symbol lookups.
svn path=/trunk/; revision=372
2007-02-24 Soren Sandmann <sandmann@daimi.au.dk>
* TODO: Updates
* binparser.[ch]: Get rid of BIN_UINTn types; replace with single
BIN_UINT, where the user must provide the width
* elfparser.c: Update to new binparser API
svn path=/trunk/; revision=354
Thu Nov 9 16:47:35 2006 Søren Sandmann <sandmann@redhat.com>
Look in the correct directory for debug info files. (Tim Rowley)
* binfile.c (N_TRIES): Add this instead of hardcoding '3'
* binfile.c (get_debug_file): Also look in "/usr/lib/debug", in
addition to "$(libdir)/debug".
* binfile.c: Comment out the debug spew.
2006-10-26 Soren Sandmann <sandmann@daimi.au.dk>
* module/sysprof-module.h (struct SysprofStackTrace): Increase the
max number of addresses to 1021, reorganise SysprofMmapArea to
make the traces naturally page aligned.
* TODO: Update
+2006-10-25 Soren Sandmann <sandmann@daimi.au.dk>
+
+ * process.c (free_maps): Take a pointer to a variable that
+
+ * process.c: Stop coalescing processes with the same cmdline.
+
+ * TODO: updates.
+
2006-10-09 Soren Sandmann <sandmann@daimi.au.dk>
* profile.c (profile_list_callers): Make this function return a
list of immediate callers again.
* sysprof.c (build_gui): Change label back to "Callers"
* process.c (get_kernel_symbols): Only attempt to read the kernel
symbols once.