[Crash-utility] [PATCH]: symbol filtering

Dave Anderson anderson at redhat.com
Tue Jan 29 14:57:54 UTC 2013



----- Original Message -----
> Hi again,
> 
> On Tue, Jan 29, 2013 at 11:34 AM, Per Fransson
> <per.fransson.ml at gmail.com> wrote:

> >
> > Another thing. The ARM kernel potentially includes a symbol 'PRRR' 
> > with a value of 0xff0a81a8, defined in arch/arm/mm/proc-v7-2level.S.
> > The problem with this is that it's the symbol which ends up
> > st->symtable[st->symcnt-1] instead of '_end' which means a lot of
> > values will pass this check in in_ksymbol_range():
> >
> >         if ((value >= st->symtable[0].value) &&
> >             (value <= st->symtable[st->symcnt-1].value)) {
> >                 if ((st->flags & PERCPU_SYMS) && (value <
> >                 st->first_ksymbol))
> >                         return FALSE;
> >                 else
> >                         return TRUE;
> >         }
> >
> > How would you prefer dealing with this? How about excluding any
> > symbols with values > '_end'? A KSYMS_END flag could be added to the
> > machdep->flags. Or just unsetting KSYM_START when '_end' is
> > encountered in verify_symbol().
> >
> > Regards,
> > Per
> 
> Like this (and you can blame this one on me).

But checking for "_end" or adding a KSYMS_END flag would subsequently
prevent module symbols from being stored by "mod [-sS], right? 

I suppose if it's that predictable, why not just reject "PRRR"?

Dave




More information about the Crash-utility mailing list