mirror of
https://github.com/varun-r-mallya/sysprof.git
synced 2026-02-12 16:10:54 +00:00
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
This commit is contained in:
committed by
Søren Sandmann Pedersen
parent
3c8bde00b4
commit
f6d7a34ccf
@ -1,3 +1,9 @@
|
|||||||
|
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
|
||||||
|
|
||||||
2005-12-20 Kristian Høgsberg <krh@redhat.com>
|
2005-12-20 Kristian Høgsberg <krh@redhat.com>
|
||||||
|
|
||||||
* module/sysprof-module.c: Remove left over debug print out and
|
* module/sysprof-module.c: Remove left over debug print out and
|
||||||
|
|||||||
16
TODO
16
TODO
@ -1,4 +1,4 @@
|
|||||||
Before 1.0.1:
|
Before 1.0.2:
|
||||||
|
|
||||||
* See if we can reproduce the problem where libraries didn't get correctly
|
* See if we can reproduce the problem where libraries didn't get correctly
|
||||||
reloaded after new versions were installed.
|
reloaded after new versions were installed.
|
||||||
@ -96,8 +96,8 @@ Before 1.2:
|
|||||||
if it doesn't, load as 1.0, otherwise as whatever the version claims
|
if it doesn't, load as 1.0, otherwise as whatever the version claims
|
||||||
it is.
|
it is.
|
||||||
|
|
||||||
* Make provisions for forward compatibility: maybe it should be possible
|
* Make provisions for forward compatibility: maybe it should be
|
||||||
to load records with more fields than specified.
|
possible to load records with more fields than specified.
|
||||||
|
|
||||||
* Figure out how to make sfile.[ch] use less memory.
|
* Figure out how to make sfile.[ch] use less memory.
|
||||||
|
|
||||||
@ -154,7 +154,7 @@ Before 1.2:
|
|||||||
|
|
||||||
- See if there is a way to make it distcheck
|
- See if there is a way to make it distcheck
|
||||||
|
|
||||||
- grep FIXME - not10
|
- grep "FIXME - not10"
|
||||||
|
|
||||||
- translation should be hooked up
|
- translation should be hooked up
|
||||||
|
|
||||||
@ -201,9 +201,6 @@ http://www.linuxbase.org/spec/booksets/LSB-Embedded/LSB-Embedded/ehframe.html
|
|||||||
- Charge 'self' properly to processes that don't get any stack trace at all
|
- Charge 'self' properly to processes that don't get any stack trace at all
|
||||||
(probably we get that for free with stackstash reorganisation)
|
(probably we get that for free with stackstash reorganisation)
|
||||||
|
|
||||||
- support more than one reader of the samples properly
|
|
||||||
- Don't generate them if noone cares
|
|
||||||
|
|
||||||
- Add ability to show more than one function at a time. Algorithm:
|
- Add ability to show more than one function at a time. Algorithm:
|
||||||
Find all relevant nodes;
|
Find all relevant nodes;
|
||||||
For each relevant node
|
For each relevant node
|
||||||
@ -218,6 +215,7 @@ http://www.linuxbase.org/spec/booksets/LSB-Embedded/LSB-Embedded/ehframe.html
|
|||||||
add trace to tree (leaf, interesting)
|
add trace to tree (leaf, interesting)
|
||||||
- Consider adding KDE-style nested callgraph view
|
- Consider adding KDE-style nested callgraph view
|
||||||
- probably need a dependency on gtk+ 2.8 (cairo) for this.
|
- probably need a dependency on gtk+ 2.8 (cairo) for this.
|
||||||
|
- Matthias has code for something like this.
|
||||||
- Add support for line numbers within functions
|
- Add support for line numbers within functions
|
||||||
- Possibly a special "view details" mode, assuming that
|
- Possibly a special "view details" mode, assuming that
|
||||||
the details of a function are not that interesting
|
the details of a function are not that interesting
|
||||||
@ -226,7 +224,6 @@ http://www.linuxbase.org/spec/booksets/LSB-Embedded/LSB-Embedded/ehframe.html
|
|||||||
- rethink caller list, not terribly useful at the moment. Federico suggested
|
- rethink caller list, not terribly useful at the moment. Federico suggested
|
||||||
listing all ancestors.
|
listing all ancestors.
|
||||||
|
|
||||||
|
|
||||||
- Have kernel module report the file the address was found in
|
- Have kernel module report the file the address was found in
|
||||||
Should avoid a lot of potential broken/raciness with dlopen etc.
|
Should avoid a lot of potential broken/raciness with dlopen etc.
|
||||||
Probably better to send a list of maps with each trace.
|
Probably better to send a list of maps with each trace.
|
||||||
@ -419,6 +416,9 @@ Later:
|
|||||||
|
|
||||||
DONE:
|
DONE:
|
||||||
|
|
||||||
|
* support more than one reader of the samples properly
|
||||||
|
- Don't generate them if noone cares
|
||||||
|
|
||||||
* Correctness
|
* Correctness
|
||||||
- When the module is unloaded, kill all processes blocking in read
|
- When the module is unloaded, kill all processes blocking in read
|
||||||
- or block unloading until all processes have exited
|
- or block unloading until all processes have exited
|
||||||
|
|||||||
@ -95,7 +95,7 @@ read_frame (void *frame_pointer, StackFrame *frame)
|
|||||||
|
|
||||||
if (__copy_from_user_inatomic (
|
if (__copy_from_user_inatomic (
|
||||||
frame, frame_pointer, sizeof (StackFrame)))
|
frame, frame_pointer, sizeof (StackFrame)))
|
||||||
return 2;
|
return 1;
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|||||||
11
sysprof.c
11
sysprof.c
@ -918,6 +918,9 @@ on_delete (GtkWidget *window,
|
|||||||
Application *app)
|
Application *app)
|
||||||
{
|
{
|
||||||
/* Workaround for http://bugzilla.gnome.org/show_bug.cgi?id=317775
|
/* Workaround for http://bugzilla.gnome.org/show_bug.cgi?id=317775
|
||||||
|
*
|
||||||
|
* Without it, the read callbacks can fire _after_ gtk_main_quit()
|
||||||
|
* has been called and cause stuff to be called on destroyed widgets.
|
||||||
*/
|
*/
|
||||||
while (gtk_main_iteration ())
|
while (gtk_main_iteration ())
|
||||||
;
|
;
|
||||||
@ -1430,7 +1433,8 @@ build_gui (Application *app)
|
|||||||
/* TreeViews */
|
/* TreeViews */
|
||||||
|
|
||||||
/* object view */
|
/* object view */
|
||||||
app->object_view = (GtkTreeView *)glade_xml_get_widget (xml, "object_view");
|
app->object_view =
|
||||||
|
(GtkTreeView *)glade_xml_get_widget (xml, "object_view");
|
||||||
gtk_tree_view_set_enable_search (app->object_view, FALSE);
|
gtk_tree_view_set_enable_search (app->object_view, FALSE);
|
||||||
col = add_plain_text_column (app->object_view, _("Functions"), OBJECT_NAME);
|
col = add_plain_text_column (app->object_view, _("Functions"), OBJECT_NAME);
|
||||||
add_double_format_column (app->object_view, _("Self"), OBJECT_SELF, "%.2f ");
|
add_double_format_column (app->object_view, _("Self"), OBJECT_SELF, "%.2f ");
|
||||||
@ -1463,8 +1467,6 @@ build_gui (Application *app)
|
|||||||
G_CALLBACK (on_descendants_row_expanded_or_collapsed), app);
|
G_CALLBACK (on_descendants_row_expanded_or_collapsed), app);
|
||||||
gtk_tree_view_column_set_expand (col, TRUE);
|
gtk_tree_view_column_set_expand (col, TRUE);
|
||||||
|
|
||||||
gtk_widget_grab_focus (GTK_WIDGET (app->object_view));
|
|
||||||
|
|
||||||
/* screenshot window */
|
/* screenshot window */
|
||||||
app->screenshot_window = glade_xml_get_widget (xml, "screenshot_window");
|
app->screenshot_window = glade_xml_get_widget (xml, "screenshot_window");
|
||||||
app->screenshot_textview = glade_xml_get_widget (xml, "screenshot_textview");
|
app->screenshot_textview = glade_xml_get_widget (xml, "screenshot_textview");
|
||||||
@ -1486,7 +1488,8 @@ build_gui (Application *app)
|
|||||||
gtk_widget_show_all (app->main_window);
|
gtk_widget_show_all (app->main_window);
|
||||||
gtk_widget_hide (app->dummy_button);
|
gtk_widget_hide (app->dummy_button);
|
||||||
gtk_widget_hide (app->screenshot_window);
|
gtk_widget_hide (app->screenshot_window);
|
||||||
|
|
||||||
|
gtk_widget_grab_focus (GTK_WIDGET (app->object_view));
|
||||||
queue_show_samples (app);
|
queue_show_samples (app);
|
||||||
|
|
||||||
return TRUE;
|
return TRUE;
|
||||||
|
|||||||
Reference in New Issue
Block a user