Commit Graph

114 Commits

Author SHA1 Message Date
e2811ea4f7 Reserve space in the samples label for large numbers.
This way, we don't need to reallocate the label every time it changes.
2009-08-17 09:34:10 -04:00
4dc5bc2276 Tweak percent sign format 2009-02-22 11:11:18 -05:00
d3b3393903 Add percent signs in screenshot window 2009-02-22 04:29:09 -05:00
fcfd231cb5 Give the samples label a minium width of "Samples: 888888"
We do this by putting the samples label and a sizer label into a
notebook where show_tabs is false. The benefits of this is that w
avoid the hack of connecting to the size request signal, and that the
samples label will be right adjusted.
2009-02-21 22:37:16 -05:00
18da1cd0be new enter_display_mode() function 2009-02-21 04:07:07 -05:00
b3893d6c75 Don't delete profile when toggling on_profile 2009-02-21 03:54:36 -05:00
ed34b54ef2 Select the first row in the object view when making the profile 2009-02-21 03:38:08 -05:00
af294337bd Add percent signs; update TODO 2009-02-20 07:33:24 -05:00
e11dfce31f Apply patch from binutils to demangle local-source names. Binutils
Wed Jun  4 21:52:17 2008  Søren Sandmann  <sandmann@redhat.com>

	* demangle.c: Apply patch from binutils to demangle local-source
	names. Binutils changelog:

	2007-05-05  Geoffrey Keating  <geoffk@apple.com>

		* cp-demangle.c (d_name): Detect local-source-name.
		(d_prefix): Likewise.
		(d_unqualified_name): Implement local-source-name.

	* sysprof.c: Update copyright statement
	


svn path=/trunk/; revision=434
2008-06-05 02:09:33 +00:00
1d1d5dd945 Don't leak kallsyms
2008-04-26  Soren Sandmann <sandmann@daimi.au.dk>

        * process.c (get_kernel_symbols): Don't leak kallsyms

        * sysprof.c (gather_widgets): Don't leak the GladeXML


svn path=/trunk/; revision=415
2008-04-26 08:47:29 +00:00
3e465571bb Get rid of all calls to glade_xml_get_widget(). (gather_widgets): Instead
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-04-26 08:31:23 +00:00
b7619004e6 Remove all calls to g_signal_connect() Instead connect all signals here
2008-04-26  Soren Sandmann <sandmann@daimi.au.dk>

        * sysprof.c (build_gui): Remove all calls to g_signal_connect()
        * sysprof.c (connect_signals): Instead connect all signals here


svn path=/trunk/; revision=413
2008-04-26 08:09:48 +00:00
12de20b938 Constrain the samples label to only grow wider instead of bouncing around.
2008-04-01  Owen Taylor  <otaylor@redhat.com>

        * sysprof.c (on_samples_label_size_request): Constrain the
        samples label to only grow wider instead of bouncing around.

svn path=/trunk/; revision=409
2008-04-01 17:46:06 +00:00
a2f8d00fc2 Work around GTK+ ABI break.
2008-03-29  Soren Sandmann <sandmann@daimi.au.dk>

        Work around GTK+ ABI break.

        * sysprof.c (on_about_activated): Use "program-name" instead of
        "name" when the gtk+ minor version is >= 14.




svn path=/trunk/; revision=407
2008-03-29 22:18:42 +00:00
ae59a75be4 Remove unnecessary show_samples
svn path=/trunk/; revision=403
2008-03-24 03:04:14 +00:00
26822b100c +2008-03-23 Soren Sandmann <sandmann@daimi.au.dk>
+
+       * sysprof.c (queue_show_samples): Update samples immediately when
+       reset and start is clicked.
+


svn path=/trunk/; revision=402
2008-03-24 03:00:49 +00:00
1867b97a8d Use an array instead of a list. Look for vmlinux in the source directory.
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-25 02:45:54 +00:00
002f00a950 Fix some spelling errors
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-10-22 13:48:30 +00:00
476e6f0c1b Call callback with an extra boolean indicating whether the sample read was
2007-10-20  Soren Sandmann <sandmann@daimi.au.dk>

       * collector.c (on_read): Call callback with an extra boolean
       indicating whether the sample read was the first one

       * collector.c (add_trace_to_stash): Allocate addresses on the
       stack if possible.

       * sysprof.c (on_new_sample): Only call update_sensitivity() on the
       first sample.

       * stackstash.c (stack_stash_add_trace): Move match to front


svn path=/trunk/; revision=373
2007-10-20 23:51:35 +00:00
f1cbdbf27c Add support for looking up kernel symbols from /proc/kallsyms
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-09-17 01:43:07 +00:00
bf65f08594 Update to use new tree view API.
2007-08-04  Soren Sandmann <sandmann@daimi.au.dk>

        * sysprof.c: Update to use new tree view API.

        * treeviewutils.c: Do customized sorting to get default sort
        orders on columns. Workaround GTK+ bug 333791.



svn path=/trunk/; revision=364
2007-08-04 19:54:17 +00:00
0cc4c86195 Update screenshot window in an idle handler to deal with the case where
2007-03-24  Soren Sandmann <sandmann@daimi.au.dk>

        * sysprof.c (update_screenshot_window): Update screenshot window
        in an idle handler to deal with the case where someone presses
        "Shift Right Arrow" 



svn path=/trunk/; revision=362
2007-03-24 17:53:43 +00:00
7b821752f9 New function. Only warn once about bad CRC's.
Mon Mar  5 16:55:39 2007  Søren Sandmann  <sandmann@redhat.com>

        * binfile.c (already_warned): New function. Only warn once about
        bad CRC's.


svn path=/trunk/; revision=361
2007-03-05 21:53:57 +00:00
c541052c19 Update copyright notices
Fri Feb  9 16:53:29 2007  Søren Sandmann  <sandmann@redhat.com>

	* Update copyright notices



svn path=/trunk/; revision=350
2007-02-09 21:59:15 +00:00
e8c2a59906 sysprof-icon-32.png Add a 32x32 version (also from Diana) of the icon.
Mon Jan 22 17:42:29 2007  Søren Sandmann  <sandmann@redhat.com>

	* sysprof-icon-32.png
	* sysprof.c: Add a 32x32 version (also from Diana) of the icon.

Mon Jan 22 16:37:12 2007  Søren Sandmann  <sandmann@redhat.com>

	* sysprof-icon-16/24/48.png:
	* sysprof.c: Add new icons from Diana.



svn path=/trunk/; revision=348
2007-01-22 22:48:33 +00:00
f33e3b06f4 Add new icons
svn path=/trunk/; revision=347
2007-01-22 21:43:36 +00:00
d1a082ffec reset the collector after generating the profile.
2006-11-20  Soren Sandmann <sandmann@daimi.au.dk>

        * sysprof.c (ensure_profile): reset the collector after generating
        the profile.

        * stackstash.c (struct StackStash): Add cached_nodes and blocks.
        (stack_node_new): Allocate stack nodes in blocks.
2006-11-20 07:25:02 +00:00
55fc6d7805 New function
2006-11-02  Soren Sandmann <sandmann@daimi.au.dk>

       * sysprof.c (disable_g_slice): New function

       * sysprof.c (main): Call it from here.
2006-11-11 03:34:40 +00:00
0513ed87e8 Valgrind:
2006-11-02  Soren Sandmann <sandmann@daimi.au.dk>

        Valgrind:

        * binparser.c (bin_parser_free): Add this function

        * elfparser.c (elf_parser_free): Call bin_parser_free()

        * sysprof.c (compute_text_width, add_text): Plug leaks

        * collector.c (add_trace_to_stash): Copy n_addresses to a stack
        variable instead of reading it out of the mmap'ed area all the
        time. (That way if there is an overrun, we won't write too much
        into the address array).
2006-11-02 08:33:35 +00:00
9a1ed3d336 Increase the max number of addresses to 1021, reorganise SysprofMmapArea
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-11-02 06:54:12 +00:00
df07f71539 Make this function return a list of immediate callers again.
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.
2006-10-11 05:37:24 +00:00
a6145207ca New function to support --version option
2006-10-08  Soren Sandmann <sandmann@redhat.com>

	* sysprof.c (process_options): New function to support --version option
2006-10-08 22:05:47 +00:00
f06e272ea7 Make the load_file() idle low priority to avoid weird toolbar flash.
2006-08-08  Soren Sandmann  <ssp@localhost.localdomain>

	* sysprof.c (main): Make the load_file() idle low priority to
	avoid weird toolbar flash.

	* TODO: updates.
2006-08-09 03:05:34 +00:00
23d3a36a4a small cleanup 2006-07-31 18:52:12 +00:00
d43cdf3c14 Add a destroy notifier to StackStash
2006-07-31  Soren Sandmann <sandmann@redhat.com>

	* stackstash.[ch]: Add a destroy notifier to StackStash

	* collector.c (collector_create_profile): Pass g_free as destroy
	notifier.

	* collector.c (collector_reset): Pass NULL as destroy notifier

	* profile.c (profile_load): Pass g_free here.

	* profile.c (struct Profile): Remove unused "Node" typedef

	* collector.c (resolve_symbols): Free the array here.

	* TODO: various updates.
2006-07-31 04:50:34 +00:00
849efc820d Do proper error-handling.
2006-03-05 Soeren Sandmann <sandmann@redhat.com>

        * sysprof-text.c, collector.c, sysprof.c: Do proper
        error-handling.
2006-03-05 21:11:07 +00:00
ebb7728768 Check that the inodes match.
Fri Mar  3 22:28:03 2006  Soeren Sandmann  <sandmann@redhat.com>

        * process.c (process_lookup_symbol): Check that the inodes match.

        * binfile.c (read_symbols): Read the inode of the file

        * binfile.c (read_symbols): Close the bfd if the symbol table
        could not be read.
2006-03-04 03:28:26 +00:00
0d6d997f4a Handle NULL models.
Thu Mar  2 22:54:37 2006  Soeren Sandmann  <sandmann@redhat.com>

        * treeviewutils.c (tree_view_foreach_visible): Handle NULL models.

        * sysprof.glade, sysprof.c: Revert back to three pane layout.
2006-03-03 03:55:04 +00:00
dc51fea3b4 Clear screenshot window when start is toggled.
Fri Feb 24 02:09:33 2006  Soeren Sandmann  <sandmann@redhat.com>

        * sysprof.c (on_start_toggled): Clear screenshot window when start
        is toggled.

        * TODO: Add some notes about stack handling on the x86
2006-02-24 07:10:42 +00:00
58a1cf37ef Remove ancestors pane in favor of radiobuttons in the right pane.
Sat Feb  4 23:53:05 2006  Søren Sandmann  <sandmann@redhat.com>

	* sysprof.glade: Remove ancestors pane in favor of radiobuttons in
	the right pane.

	* sysprof.c: Corresponding changes.

	* TODO: Updates
2006-02-05 04:54:04 +00:00
135ce0e2ea Updates
Sun Jan 15 00:24:02 2006  Soeren Sandmann  <sandmann@redhat.com>

        * TODO: Updates

        * sysprof.c (build_gui): Rename 'callers' column 'ancestors'

        * profile.c (profile_list_callers): Make this function list all
        ancestors of the function. Also make it report correct numbers
        again.
2006-01-15 05:28:04 +00:00
98308836af Only build GUI when the necessary dependencies are found.
Sat Jan 14 18:24:43 2006  Soeren Sandmann  <sandmann@redhat.com>

        * configure.ac, Makefile.am: Only build GUI when the necessary
        dependencies are found.

        * sysprof.c (compute_text_width): Remove unused variable

        * profile.c (build_object_list): Follow next instead of siblings.
2006-01-14 23:26:34 +00:00
f6d7a34ccf small updates cosmetic updates cosmetic updates
Thu Jan  5 17:52:10 2006  Søren Sandmann  <sandmann@redhat.com>

	* TODO: small updates
	* sysprof.c: cosmetic updates
	* module/sysprof-module.c: cosmetic updates
2006-01-05 22:52:59 +00:00
ad5ffd749b Dist and install udev rule.
2005-12-20  Kristian Høgsberg  <krh@redhat.com>

        * Makefile.am: Dist and install udev rule.

        * collector.c: (open_fd):
        * sysprof-text.c: (no_module):
        * sysprof.c: (on_start_toggled): Update device filename.

        * 60-sysprof.rules: New udev rule file to set permissions for
        sysprof char device.

        * module/sysprof-module.c: Switch kernel module to use a misc char
        device instead.  Start and stop the timer on device open and
        close instead of module load and unload.
2005-12-20 17:55:03 +00:00
02242d500b Make the tree tree-shapeed.
Mon Dec 19 17:39:09 2005  Søren Sandmann  <sandmann@redhat.com>

	* sysprof.c (add_text): Make the tree tree-shapeed.
2005-12-19 22:39:34 +00:00
35de8d36a0 New function. Update screenshot window when rows are expanded and
2005-11-29  Soeren Sandmann  <sandmann@redhat.com>

        * sysprof.c (on_descendants_row_expanded_or_collapsed): New
        function. Update screenshot window when rows are expanded and
        collapsed.
2005-11-30 07:12:32 +00:00
96188f3c99 Update the screenshot window.
2005-11-23  Soeren Sandmann  <sandmann@redhat.com>

	* sysprof.c (update_screenshot_window): Update the screenshot
	window.
2005-11-24 04:53:19 +00:00
b6e9105cd2 Put the vertical splitter at 3/8 * screen_width.
Sat Nov 12 23:39:29 2005  Soeren Sandmann  <sandmann@redhat.com>

        * sysprof.c (set_sizes): Put the vertical splitter at 3/8 *
        screen_width.

        * configure.ac: Disable warning.
2005-11-13 04:28:57 +00:00
c3ce4ef8c5 Add new tree_view_foreach_visible() function.
Wed Nov  9 00:24:11 2005  Soeren Sandmann  <sandmann@redhat.com>

        * treeviewutils.[ch]: Add new tree_view_foreach_visible()
        function.

        * sysprof.c: Add update_screenshot_window() function.
2005-11-09 05:39:25 +00:00
00244118a2 Add beginning of a screenshot window.
Mon Nov  7 23:42:26 2005  Soeren Sandmann  <sandmann@redhat.com>

        * sysprof.c: Add beginning of a screenshot
        window.

        * sysprof.glade: Add screenshot window plus menu items.

        * stackstash.c: Remove unused function stack_node_list_leaves()

        * xmlstore.c: Various crack
2005-11-08 04:32:19 +00:00