Collection of useless top functions in Apport stack traces

Sebastien Bacher seb128 at ubuntu.com
Fri Jun 1 10:59:57 BST 2007


Le jeudi 31 mai 2007 à 15:27 +0200, Martin Pitt a écrit :

> For example, glibc's assert(3) function always leaves an "abort()"
> behind. Firefox's internal crash handler has a raise() and a
> nsProfileLock::FatalSignalHandler() on top of it.
> 
> Since we will use StacktraceTop for identifying duplicates, those
> default functions will impede the precision and lead to wrong
> duplication of crashes, so we need to unwind them for generating
> StacktraceTop.
> 
> If you regularly deal with Apport crash report bugs and saw examples
> of those, please point me to them (to a bug number, for example).

Hey Martin,

The bugzilla.gnome.org seems to be using that for the duplicate finder:

"  my $possible_starts = join('|', ('<signal handler called>',
                                   'killpg',
                                   'sigaction',
                                   'sigsuspend',
                                   '\(gdb\) bt',
                                   'gnome_init',
                                   'g_log'));
  my $bad_functions = join('|', ('__kernel_vsyscall',
                                 'raise',
                                 'abort'));"

They start counting 5 functions after the "possible_starts" and skip the
"bad_functions" ones


Cheers,

Sebastien Bacher






More information about the Ubuntu-devel-discuss mailing list