On Fri, Jun 17, 2022 at 12:14 AM Frank Ch. Eigler <fche(a)redhat.com> wrote:
>
https://fedoraproject.org/wiki/Changes/fno-omit-frame-pointer
> [...]
> === Unwinding ===
> [...]
> * Kernel 4.8 frame pointer benchmarks by Suse showed 5%-10%
> regressions in some benchmarks
> (
https://lore.kernel.org/all/20170602104048.jkkzssljsompjdwy@suse.de/T/#u)
Regressions of such magnitude can veto such changes, especially when
they hit everyone, not just those who are highly dependent on the
profiling tools the proposal is concerned about.
The 4.8 kernel is comparatively ancient now and a lot had changed in
this area of the kernel, I think we need benchmarks on a more modern
kernel with gcc12 to see if any of this has since been mitigated
before we rule out the change in it's entirety.
> > === Alternatives to frame pointers ===
> >
> > There are a few alternative ways to unwind stacks instead of using the
> > frame pointer:
>
> > * [
https://dwarfstd.org DWARF] data - The compiler can emit extra
> > [...] The problem is that we need to unwind the stack in kernel space
>
> (Are you referring to a novel kernel-resident tool?)
>
>
> > To summarize, if we want complete stacks with reasonably low overhead
> > (which we do, there's no other way to get accurate profiling data from
> > running services), frame pointers are currently the best option.
>
> The proposal doesn't characterize the "reasonably low overhead" that
> this operation targets. That makes it hard to judge the tradeoffs.
>
>
> > [...]
> > Fedora users will be more likely to have a streamlined experience when
> > trying to debug/profile system executables/libraries. Tools such as
> > perf will work out of the box instead of requiring to users to provide
> > extra options (e.g. --call-graph=dwarf/LBR) [...]
>
> If typing that option were a hardship, it could be made default on
> Fedora. With broad debuginfod auto-downloading capability, maybe it's
> worth considering.
>
>
> - FChE
> _______________________________________________
> devel mailing list -- devel(a)lists.fedoraproject.org
> To unsubscribe send an email to devel-leave(a)lists.fedoraproject.org
> Fedora Code of Conduct:
https://docs.fedoraproject.org/en-US/project/code-of-conduct/
> List Guidelines:
https://fedoraproject.org/wiki/Mailing_list_guidelines
> List Archives:
https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org
> Do not reply to spam on the list, report it:
https://pagure.io/fedora-infrastructure