On Wed 23 Apr 2025 at 11:17, Dan Carpenter <dan.carpenter@xxxxxxxxxx> wrote: > The auxiliary_device_create() function returns NULL. It doesn't return > error pointers. Update the checking to match. > > Fixes: eaa0d30216c1 ("driver core: auxiliary bus: add device creation helpers") > Signed-off-by: Dan Carpenter <dan.carpenter@xxxxxxxxxx> Thanks for catching this mistake Dan. The thing was initially setup to return error code. Greg asked to simply return NULL on error and I forgot to re-align the devm variant. So I think the fix should be to check for NULL as you did but return NULL too so it is aligned with non-devm variant. If you wish, I can handle a v2. > --- > drivers/base/auxiliary.c | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > > diff --git a/drivers/base/auxiliary.c b/drivers/base/auxiliary.c > index 810b6105a75d..61b876d90b7f 100644 > --- a/drivers/base/auxiliary.c > +++ b/drivers/base/auxiliary.c > @@ -491,8 +491,8 @@ struct auxiliary_device *__devm_auxiliary_device_create(struct device *dev, > int ret; > > auxdev = auxiliary_device_create(dev, modname, devname, platform_data, id); > - if (IS_ERR(auxdev)) > - return auxdev; > + if (!auxdev) > + return ERR_PTR(-ENOMEM); > > ret = devm_add_action_or_reset(dev, auxiliary_device_destroy, > auxdev); -- Jerome