
On Thu, Jun 01, 2023 at 11:34:10AM -0500, Pierre-Louis Bossart wrote:
On 6/1/23 11:16, Charles Keepax wrote:
Every error path in do_bank_switch prints an error message so there is no need for the callers to also print error messages. Indeed in multi-master cases these extra messages are confusing because they print out against a random bus device whereas the do_bank_switch messages print against the bus that actually failed.
Errm, what?
There is no way to know which bus failed in multi-master mode, and the 'stream' can span multiple buses so the use of pr_err was intentional.
Apologies this is the commit message not quite keeping pace with the code base. Originally when I wrote the patch the error message after do_bank_switch were a "dev_err(bus->dev", that was then fixed up in commit d014688eb373 ("soundwire: stream: remove bus->dev from logs on multiple buses").
There's just no other way to report issues, and I don't see why one would remove such logs and fail silently.
I just don't get what you are trying to address.
The current code would say produce something like:
Bank switch failed: -5 _sdw_prepare_stream: do_bank_switch failed: -5
I am sensing you are keen to keep both error messages, so fair enough I will drop that. Although worth noting originally before that patch I mention above this would have been:
Bank switch failed: -5 do_bank_switch failed: -5
Which is really what I was attempting to address, that is clearly redundant. Now with the addition of the function in the print I guess it is slightly less redundant.
This also allows clean up of a couple of if's and variable initialisations that were only there to silence potentially uninitialised variable warnings on the bus variable.
That should be a separate patch IMHO.
I will trim the patch down to leave the duplicate error messages and just remove those bits.
Thanks, Charles