[Crash-utility] Re: [PATCH] symbols: expand kernel modules symtable when loading by mod -s/-S

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Kazu,

On Thu, Nov 16, 2023 at 1:30 PM HAGIO KAZUHITO(萩尾 一仁)
<k-hagio-ab@xxxxxxx> wrote:
>
> On 2023/11/15 18:16, Tao Liu wrote:
>
> >> a question, is "mod -S -r" a workaround for it?
> >>
> > Yes, it can work as expected with "mod -S -r", I didn't know "-r"
> > parameter can trigger such symble expansion.
>
> Thank you for the check.
>
> >> I'm thinking that, if the current gdb's auto expansion is not good for
> >> crash, maybe we can make the behavior of "mod -r" option default.  The
> >> option adds "-readnow" to the add-symbol-file command and it looks same
> >> as your patch to me:
> >>
> >> $ vim gdb-10.2/gdb/symfile.c
> >>
> >>     /* We now have at least a partial symbol table.  Check to see if the
> >>        user requested that all symbols be read on initial access via either
> >>        the gdb startup command line or on a per symbol file basis.  Expand
> >>        all partial symbol tables for this objfile if so.  */
> >>
> >>     if ((flags & OBJF_READNOW))
> >>       {
> >>         if (should_print)
> >>           printf_filtered (_("Expanding full symbols from %ps...\n"),
> >>                            styled_string (file_name_style.style (), name));
> >>
> >>         if (objfile->sf)
> >>           objfile->sf->qf->expand_all_symtabs (objfile);
> >>       }
> >>
> > Agreed, they do the same work. Thanks again for your suggestions. Do
> > you want me to draft the "making mod -r option default" patch now or
> > later?
>
> This is an idea, I think it's better to evaluate more whether we can
> make it default.  Any trade-off?  For example, the -r option uses much
> memory..
>
> after startup:
> root      327522 53.3  3.9 1814472 545756 pts/2  Sl+  14:05   0:03 crash
> after "mod -S":
> root      327522 24.9  4.1 1851184 585052 pts/2  Sl+  14:05   0:04 crash
> after "mod -D":
> root      327522 19.6  4.1 1843360 578408 pts/2  Sl+  14:05   0:04 crash
> after "mod -S -r":
> root      327522 23.3 11.6 2884148 1621016 pts/2 Sl+  14:05   0:11 crash
>
> This seems too much and a bit dangerous to make it default..  So I think
> it's better to try to search for another way with the on-demand
> expansion if possible.

Thanks for testing the memory usage, agreed.
>
> BTW, according to your commit log,
>
> > !objfile_has_full_symbols(objfile) check will fail, so it cannot display
> > the proper code line number data.
>
> this check seems a fault, is there no way to improve this?
>
I drafted a new patch to deal with the faulty check, please check out
the v2: [PATCH v2] symbols: expand all kernel module symtable if not
all expanded previously.

Thanks,
Tao Liu

> Thanks,
> Kazu
--
Crash-utility mailing list -- devel@xxxxxxxxxxxxxxxxxxxxxxxxxxx
To unsubscribe send an email to devel-leave@xxxxxxxxxxxxxxxxxxxxxxxxxxx
%(web_page_url)slistinfo%(cgiext)s/%(_internal_name)s
Contribution Guidelines: https://github.com/crash-utility/crash/wiki




[Index of Archives]     [Fedora Development]     [Fedora Desktop]     [Fedora SELinux]     [Yosemite News]     [KDE Users]     [Fedora Tools]

 

Powered by Linux