[PATCH 5/5] driver core: let dev_set_drvdata return int instead of void as it can fail

Michał Mirosław mirqus at gmail.com
Wed Apr 6 07:25:04 EDT 2011


2011/4/6 Uwe Kleine-König <u.kleine-koenig at pengutronix.de>:
> Hello,
> On Wed, Apr 06, 2011 at 11:36:46AM +0200, Michał Mirosław wrote:
>> 2011/4/6 Uwe Kleine-König <u.kleine-koenig at pengutronix.de>:
>> > Signed-off-by: Uwe Kleine-König <u.kleine-koenig at pengutronix.de>
>> > ---
>> > Hello,
>> >
>> > I wasn't sure what to return when dev_set_drvdata is called with
>> > dev=NULL.  I choosed 0, but -EINVAL would be OK for me, too. What do you
>> > think?
>> Why not just BUG_ON(!dev)? Is there a case when you might call this
>> with dev==NULL that's not a driver bug?
> I think BUG_ON is too harsh. Will resend with -EINVAL.

Maybe just WARN_ON, then? Please? ;-)

Error return with no other visible sign is easy to miss for driver
writers. Big bad backtrace in dmesg on the other hand attracts
attention.

Best Regards,
Michał Mirosław



More information about the linux-arm-kernel mailing list