Hello Zvika,

On 2024-04-02 23:52, Zvi Vered wrote:
Hi Erica,

Thank you very much for your answer.
Can you please tell what is the added value of ftrace (compared to using only lttng) ?

I don't think I understand the intention behind your question. I'll make some guesses below and you're welcome to clarify if you wish.

ftrace and LTTng are different tools that have some overlap in the tracing use cases they can address. ftrace is a Linux kernel tracer that is included in the kernel; it isn't an LTTng add-on.

Both ftrace and LTTng can trace the Linux kernel if the tracepoints have been included. LTTng doesn't use ftrace, but most kernels that are configured to include the tracepoints typically also include ftrace.

That being said, if you only want to trace userspace applications with LTTng and don't also want kernel traces, then you don't need an ftrace-enabled kernel.

Best,
Erica


Best regards,
Zvika


On Tue, Apr 2, 2024 at 5:11 PM Erica Bugden <ebug...@efficios.com <mailto:ebug...@efficios.com>> wrote:

    Hello Zvika,

    On 2024-03-29 01:09, Zvi Vered via lttng-dev wrote:
     > Hi Christopher,
     >
     > Thank you very much for your reply.
     > Can you please explain what do you mean by ftrace-enabled kernel ?

    I believe what Christopher means by "ftrace-enabled" kernel is that the
    Linux kernel has been configured to include ftrace. Both the ftrace
    tracer and the LTTng tracer use the same kernel tracepoints to extract
    execution information and these tracepoints are included in the kernel
    if ftrace is included.

    Most Linux distributions will include ftrace by default. However, you
    can check whether this is the case by searching for `tracefs` in
    `/proc/filesystems` (assuming it's already mounted) or by trying to
    mount `tracefs`. `tracefs` is the filesystem ftrace uses to communicate
    with users.

    More details about how to check if ftrace is enabled and how to enable
    it if not:
    https://wiki.linuxfoundation.org/realtime/documentation/howto/tools/ftrace 
<https://wiki.linuxfoundation.org/realtime/documentation/howto/tools/ftrace>

    The "More Information" section points to the primary sources (Linux
    kernel documentation), but I find this page to be a good starting point.

    Best,
    Erica

     >
     > Best regards,
     > Zvika
     >
     > On Wed, Mar 27, 2024 at 7:32 PM Christopher Harvey via lttng-dev
     > <lttng-dev@lists.lttng.org <mailto:lttng-dev@lists.lttng.org>
    <mailto:lttng-dev@lists.lttng.org
    <mailto:lttng-dev@lists.lttng.org>>> wrote:
     >
     >     you can use an ftrace-enabled kernel with lttng (maybe even just
     >     tracecompass) or perfetto to get that kind of trace
     >
     >
    
https://archive.eclipse.org/tracecompass.incubator/doc/org.eclipse.tracecompass.incubator.ftrace.doc.user/User-Guide.html
 
<https://archive.eclipse.org/tracecompass.incubator/doc/org.eclipse.tracecompass.incubator.ftrace.doc.user/User-Guide.html>
 
<https://archive.eclipse.org/tracecompass.incubator/doc/org.eclipse.tracecompass.incubator.ftrace.doc.user/User-Guide.html
 
<https://archive.eclipse.org/tracecompass.incubator/doc/org.eclipse.tracecompass.incubator.ftrace.doc.user/User-Guide.html>>
     >
     >     or
     >
     > https://ui.perfetto.dev/ <https://ui.perfetto.dev/>
    <https://ui.perfetto.dev/ <https://ui.perfetto.dev/>>
     >
     >     On Wed, Mar 27, 2024, at 5:26 AM, Zvi Vered via lttng-dev wrote:
     >      > Hello,
     >      >
     >      > I have an application with 4 threads.
     >      > I'm required to display on the graph when thread starts
    working
     >     till it
     >      > blocks for the next semaphore.
     >      >
     >      > But without using the lttng userspace library.
     >      >
     >      > Is it possible ?
     >      >
     >      > Thank you,
     >      > Zvika
     >      > _______________________________________________
     >      > lttng-dev mailing list
     >      > lttng-dev@lists.lttng.org
    <mailto:lttng-dev@lists.lttng.org> <mailto:lttng-dev@lists.lttng.org
    <mailto:lttng-dev@lists.lttng.org>>
     >      > https://lists.lttng.org/cgi-bin/mailman/listinfo/lttng-dev
    <https://lists.lttng.org/cgi-bin/mailman/listinfo/lttng-dev>
     >     <https://lists.lttng.org/cgi-bin/mailman/listinfo/lttng-dev
    <https://lists.lttng.org/cgi-bin/mailman/listinfo/lttng-dev>>
     >     _______________________________________________
     >     lttng-dev mailing list
     > lttng-dev@lists.lttng.org <mailto:lttng-dev@lists.lttng.org>
    <mailto:lttng-dev@lists.lttng.org <mailto:lttng-dev@lists.lttng.org>>
     > https://lists.lttng.org/cgi-bin/mailman/listinfo/lttng-dev
    <https://lists.lttng.org/cgi-bin/mailman/listinfo/lttng-dev>
     >     <https://lists.lttng.org/cgi-bin/mailman/listinfo/lttng-dev
    <https://lists.lttng.org/cgi-bin/mailman/listinfo/lttng-dev>>
     >
     >
     > _______________________________________________
     > lttng-dev mailing list
     > lttng-dev@lists.lttng.org <mailto:lttng-dev@lists.lttng.org>
     > https://lists.lttng.org/cgi-bin/mailman/listinfo/lttng-dev
    <https://lists.lttng.org/cgi-bin/mailman/listinfo/lttng-dev>

_______________________________________________
lttng-dev mailing list
lttng-dev@lists.lttng.org
https://lists.lttng.org/cgi-bin/mailman/listinfo/lttng-dev

Reply via email to