RE: [PATCH 2/3] Input: da9063 - Use dev_err_probe()

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Geert,

Thanks for the feedback.

> -----Original Message-----
> From: Geert Uytterhoeven <geert@xxxxxxxxxxxxxx>
> Sent: Tuesday, December 12, 2023 8:02 AM
> Subject: Re: [PATCH 2/3] Input: da9063 - Use dev_err_probe()
> 
> Hi Biju,
> 
> On Mon, Dec 11, 2023 at 5:57 PM Biju Das <biju.das.jz@xxxxxxxxxxxxxx>
> wrote:
> > Replace dev_err()->dev_err_probe() to simpilfy probe().
> >
> > Signed-off-by: Biju Das <biju.das.jz@xxxxxxxxxxxxxx>
> 
> Thanks for your patch!
> 
> > --- a/drivers/input/misc/da9063_onkey.c
> > +++ b/drivers/input/misc/da9063_onkey.c
> > @@ -185,10 +185,9 @@ static int da9063_onkey_probe(struct
> > platform_device *pdev)
> >
> >         onkey = devm_kzalloc(&pdev->dev, sizeof(struct da9063_onkey),
> >                              GFP_KERNEL);
> > -       if (!onkey) {
> > -               dev_err(&pdev->dev, "Failed to allocate memory.\n");
> > -               return -ENOMEM;
> > -       }
> > +       if (!onkey)
> > +               return dev_err_probe(&pdev->dev, -ENOMEM,
> > +                                    "Failed to allocate memory.\n");
> 
> Please drop the error printing instead, the memory allocation core code
> already takes care of that in case of OOM.

OK.

> 
> >
> >         onkey->config = device_get_match_data(&pdev->dev);
> >         if (!onkey->config)
> > @@ -197,19 +196,17 @@ static int da9063_onkey_probe(struct
> platform_device *pdev)
> >         onkey->dev = &pdev->dev;
> >
> >         onkey->regmap = dev_get_regmap(pdev->dev.parent, NULL);
> > -       if (!onkey->regmap) {
> > -               dev_err(&pdev->dev, "Parent regmap unavailable.\n");
> > -               return -ENXIO;
> > -       }
> > +       if (!onkey->regmap)
> > +               return dev_err_probe(&pdev->dev, -ENXIO,
> > +                                    "Parent regmap unavailable.\n");
> >
> >         onkey->key_power = !of_property_read_bool(pdev->dev.of_node,
> >
> > "dlg,disable-key-power");
> >
> >         onkey->input = devm_input_allocate_device(&pdev->dev);
> > -       if (!onkey->input) {
> > -               dev_err(&pdev->dev, "Failed to allocated input
> device.\n");
> > -               return -ENOMEM;
> > -       }
> > +       if (!onkey->input)
> > +               return dev_err_probe(&pdev->dev, -ENOMEM,
> > +                                    "Failed to allocated input
> > + device.\n");
> 
> devm_input_allocate_device() only fails on OOM, so no need to print
> anything.

OK.

> 
> >
> >         onkey->input->name = onkey->config->name;
> >         snprintf(onkey->phys, sizeof(onkey->phys), "%s/input0", @@
> > -221,12 +218,9 @@ static int da9063_onkey_probe(struct platform_device
> > *pdev)
> >
> >         error = devm_delayed_work_autocancel(&pdev->dev, &onkey->work,
> >                                              da9063_poll_on);
> > -       if (error) {
> > -               dev_err(&pdev->dev,
> > -                       "Failed to add cancel poll action: %d\n",
> > -                       error);
> > -               return error;
> > -       }
> > +       if (error)
> > +               return dev_err_probe(&pdev->dev, error,
> > +                                    "Failed to add cancel poll
> > + action\n");
> 
> devm_delayed_work_autocancel() only fails on OOM, so no need to print
> anything.

OK.

> 
> >
> >         irq = platform_get_irq_byname(pdev, "ONKEY");
> >         if (irq < 0)
> > @@ -236,11 +230,9 @@ static int da9063_onkey_probe(struct
> platform_device *pdev)
> >                                           NULL,
> da9063_onkey_irq_handler,
> >                                           IRQF_TRIGGER_LOW |
> IRQF_ONESHOT,
> >                                           "ONKEY", onkey);
> > -       if (error) {
> > -               dev_err(&pdev->dev,
> > -                       "Failed to request IRQ %d: %d\n", irq, error);
> > -               return error;
> > -       }
> > +       if (error)
> > +               return dev_err_probe(&pdev->dev, error,
> > +                                    "Failed to request IRQ %d\n",
> > + irq);
> 
> platform_get_irq_byname() already prints an error message on failure.

I will change the print message as " Failed to allocate onkey irq"??

> 
> >
> >         error = dev_pm_set_wake_irq(&pdev->dev, irq);
> >         if (error)
> > @@ -251,11 +243,9 @@ static int da9063_onkey_probe(struct
> platform_device *pdev)
> >                 device_init_wakeup(&pdev->dev, true);
> >
> >         error = input_register_device(onkey->input);
> > -       if (error) {
> > -               dev_err(&pdev->dev,
> > -                       "Failed to register input device: %d\n", error);
> > -               return error;
> > -       }
> > +       if (error)
> > +               return dev_err_probe(&pdev->dev, error,
> > +                                    "Failed to register input
> > + device\n");
> 
> Looks like all non-OOM failure paths in input_register_device() already
> print an error message, too...

OK, I will send

1) separate patch for dropping unneeded prints related to OOM
2) A patch for replacing dev_err()->dev_err_probe() + Update error message for devm_request_threaded_irq()
3) separate patch for dropping print message for input_register_device();

Is it ok?

Cheers,
Biju




[Index of Archives]     [Linux Samsung SOC]     [Linux Wireless]     [Linux Kernel]     [ATH6KL]     [Linux Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Samba]     [Device Mapper]

  Powered by Linux