Re: [PATCH] driver core: drop __must_check from driver_for_each_device

From: Heiner Kallweit
Date: Tue Aug 20 2024 - 11:24:31 EST


On 20.08.2024 15:31, Greg Kroah-Hartman wrote:
> On Tue, Aug 20, 2024 at 11:00:29AM +0200, Heiner Kallweit wrote:
>> There are several users of driver_for_each_device where the worker
>> function doesn't actually have a return value. One example is
>> __igb_notify_dca(). This results in dead code just to make __must_check
>> happy. So drop this annotation.
>
> No, that code looks correct, the only "odd" thing is that it's a
> notifier callback and so it requires a different translation of an error
> message.
>
> Personally, attempting for a driver to iterate over all devices assigned
> to it just to print out a kernel log message seems like the big abuse
> here, why is any of that needed at all? Ah, that's a side affect of the
> dca api there. Ok, still looks correct, I don't see a problem.
>
__igb_notify_dca() always returns 0, for other worker functions of
driver_for_each_device it's the same. So we have several cases where
driver_for_each_device always returns 0. Then I think it doesn't make
sense to urge the caller to check the return value.

> Ignoring error values is not a good idea, let's not make it simple to do
> so.
>
> thanks,
>
> greg k-h

Heiner