-
Notifications
You must be signed in to change notification settings - Fork 140
ALSA/ASoC: Intel: log probe details once #4977
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
ALSA/ASoC: Intel: log probe details once #4977
Conversation
With the deferred probe mechanism used by the gfx/display subsystem, we see this message repeated for no good reason. Print the information only once. Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
|
Will there still be a way to monitor (and count!) the deferred probe iterations with a higher log level? |
I'm asking because interactions between audio work in progress and display work in progress have always been incredibly time-consuming - so I'd hate losing any information in debug logs. Examples:
|
I don't think so. The deferred probe is pretty simple, every time there's a new driver probe the kernel walks through the list of deferred probes and sees if some dependencies have been resolved. This is completely non-repeatable, so the level may change from one run to the other. |
Thanks!
I don't mind "non-repeatable" as long as we have some sort of record of what happened.
Not sure what "level" you're referring to; I was referring to log levels (ERR, WARN, INFO, DEBUG,...) Is there a way to increase the log level of the deferred probe "resolver" and would that answer my concerns? Considering it's non-deterministic / full of races by design, I really hope there is away to get good logs out of it... PS: @lucasdemarchi just pointed me to e6d0c13 |
|
@fredoh9 the test results have been published but Github has not been notified by Jenkins... https://sof-ci.01.org/linuxpr/PR4977/build2732/devicetest/index.html OK Not OK:
|
The information on PCI class/subclass was interesting in the Skylake timeframe, since the DSP was only enabled on a limited number of platforms. Now most Intel platforms do enable the DSP, so the information is less interesting to log. When a DSP driver is used, the common helper may be called multiple times due to deferred probes, but there's no reason to print the same information multiple times. Using dev_info_once() covers all the existing usages for internal cards with DSPs. External cards don't rely on DSPs so far. Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
d7ecb50 to
f1458eb
Compare
I thought you wanted the number of times the deferred probe was attempted. That's not really useful.
deferred probe is NEVER an error, so we're never going to change the logs depending on when we attempt the probe |
I'm interesting in everything that happened when something goes wrong and we've had a lot of timeouts and somewhat complex interactions in the past.
I meant increasing the log levels of the "resolver" always. Test failures cannot be predicted. Should be a small volume compared to what we currently enable for SOF. |
|
@marc-hb we rely on the deferred probe for codec drivers and machine drivers already. I don't think we want to log everything that happens when the probe is deferred, it'd be way too verbose and bring limited information. |
|
@ujfalusi you good with this? |

Reported by @marc-hb, we keep printing the same information multiple times, e.g. in https://intel-gfx-ci.01.org/tree/intel-xe/xe-1239-5a43da669cdb9b8df66e32a661b09cd9c52e35f2/shard-lnl-1/boot21.txt
Use dev_info_once() for all those logs.