-
Notifications
You must be signed in to change notification settings - Fork 73
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
End-user documentation and bug reporting #347
Comments
I'll give my two cents since I know a bit about the logger. So,
The firmware itself needs to have logs enabled (the default settings only log errors AFAIK). Dynamic debug fine tunes what kernel messages will show up in dmesg or not. As far as I know (I may be wrong) it doesn't affect the firmware logger messages. |
Thanks @fxthomas, we are working on this, I think all the developers know the debug tooling so this was missed when we looked at the docs. |
@paulstelian97 Thank you, that clears a lot of my questions already!
Do I absolutely need to recompile it to do that, or can I enable more verbose logs at run- or boot-time? On my custom builds where I'm able to properly get logs, the messages themselves (not their order) in @lgirdwood Great! We've all written docs that omit some "obvious" stuff that is absolutely not obvious at all, I know I'm guilty of it too. Looking forward to the updates. |
With most configurations of the firmware (including the default one), yes, there is an expected difference in verbosity, though I believe not in the way you describe it. If you recompile the firmware with a custom configuration that enables Trace error (default on) and Trace mailbox (default off, will send more messages to etrace buffer) you should see they're pretty similar over time. With DMA trace you should start the logger, then try to use the firmware (e.g. aplay) and see the logs in real time as they are produced. With |
Okay, that explains a bit more, and I can indeed see the logs in real time with DMA trace on my custom kernel. Thanks! (Just noticed that I mixed up the two in my earlier messages; |
Just want to add that I just discovered how to enable DMA trace in official builds! I should have discovered much earlier than I did — the mention of being able to enable firmware trace "dynamically by setting flags in the SOF core module parameter" in SND_SOC_SOF_DEBUG_ENABLE_FIRMWARE_TRACE led me to find out commit 2ab4c50f6955514150. Adding
|
shameless plug: thesofproject/sof-test#666 |
@ujfalusi Thanks, that looks good to me, it'll be a good way to get started for future bug reports! |
I'm not sure if this is the correct place for documentation requests, feel free to point me to the right place.
I had a rather difficult time finding SOF firmware logs with the official kernel from my distribution when trying to debug thesofproject/sof#3868. One of the reasons is that it is still not clear to me, as an end-user relatively unfamiliar with SOF/kernel development, exactly how to get logs in a reliable way in either my own or my distribution's kernel builds.
The questions below are things I'm wondering or found out while doing research.
What's the difference between
trace
andetrace
?The documentation on the Logger mentions the existence of two files,
/sys/kernel/debug/sof/trace
and/sys/kernel/debug/sof/etrace
.Since there are two options, and my distro's official kernel only has
etrace
enabled by default, my hypothesis is thattrace
has more overhead/is more detailed, and as such is not enabled in default builds. Am I correct?How to enable log tracing?
By default on my distro's official build
etrace
is empty andtrace
doesn't exist, but in custom builds I do following the build instructions both show messages.What is dynamic debug, is that different from the logger?
This page suggests to use dynamic debug options. Should I expect to get different kinds of information than from the logger (other than the fact that the logs go into the
dmesg
output instead of a separate tool)?The text was updated successfully, but these errors were encountered: