Re: [V2] [PATCH] net/ethernet: update ret when ptp_clock is ERROR
From: Richard Cochran
Date: Sat Nov 07 2020 - 09:58:24 EST
On Sat, Nov 07, 2020 at 11:38:38AM +0800, Wang Qing wrote:
> We always have to update the value of ret, otherwise the error value
> may be the previous one. And ptp_clock_register() never return NULL
> when PTP_1588_CLOCK enable, so we use IS_ERR here.
>
> Signed-off-by: Wang Qing <wangqing@xxxxxxxx>
> ---
> drivers/net/ethernet/ti/am65-cpts.c | 5 ++---
> 1 file changed, 2 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/net/ethernet/ti/am65-cpts.c b/drivers/net/ethernet/ti/am65-cpts.c
> index 75056c1..ec8e56d
> --- a/drivers/net/ethernet/ti/am65-cpts.c
> +++ b/drivers/net/ethernet/ti/am65-cpts.c
> @@ -998,11 +998,10 @@ struct am65_cpts *am65_cpts_create(struct device *dev, void __iomem *regs,
> am65_cpts_settime(cpts, ktime_to_ns(ktime_get_real()));
>
> cpts->ptp_clock = ptp_clock_register(&cpts->ptp_info, cpts->dev);
> - if (IS_ERR_OR_NULL(cpts->ptp_clock)) {
This test was correct.
> + if (IS_ERR(cpts->ptp_clock)) {
This one is wrong.
Thanks,
Richard
> dev_err(dev, "Failed to register ptp clk %ld\n",
> PTR_ERR(cpts->ptp_clock));
> - if (!cpts->ptp_clock)
> - ret = -ENODEV;
> + ret = PTR_ERR(cpts->ptp_clock);
> goto refclk_disable;
> }
> cpts->phc_index = ptp_clock_index(cpts->ptp_clock);
> --
> 2.7.4
>