Hi Greg, I meant to CC you but I screwed up and added you to the From header instead... :( Why did you commit 3b1ad360acad ("pps: using ERR_PTR instead of NULL while pps_register_source fails")? You're not listed as a maintainer so I wouldn't have known to CC you. The back story is that the last chunk which changes drivers/ptp/ptp_clock.c was dropped by mistake and it's not there in linux-next. I wrote a patch which adds it, but everyone is super confused now... Here is YueHaibing's original patch btw, for reference. https://www.spinics.net/lists/netdev/msg535929.html regards, dan carpenter On Mon, Dec 03, 2018 at 08:42:57PM -0800, Richard Cochran wrote: > On Mon, Dec 03, 2018 at 01:55:06PM +0300, Dan Carpenter wrote: > > We recently modified pps_register_source() to return error pointers > > instead of NULL but this check wasn't updated. > > But it *was* updated! > > > Fixes: 3b1ad360acad ("pps: using ERR_PTR instead of NULL while pps_register_source fails") > > Signed-off-by: Dan Carpenter <dan.carpenter@xxxxxxxxxx> > > --- > > v2: Use the correct Fixes tag. Add Greg to the CC list, because he > > is maintaining this driver. > > What driver? (I am maintaining drivers/ptp/ptp_clock.c) > > > drivers/ptp/ptp_clock.c | 4 ++-- > > 1 file changed, 2 insertions(+), 2 deletions(-) > > > > diff --git a/drivers/ptp/ptp_clock.c b/drivers/ptp/ptp_clock.c > > index 8a81eecc0ecd..48f3594a7458 100644 > > --- a/drivers/ptp/ptp_clock.c > > +++ b/drivers/ptp/ptp_clock.c > > @@ -265,8 +265,8 @@ struct ptp_clock *ptp_clock_register(struct ptp_clock_info *info, > > pps.mode = PTP_PPS_MODE; > > pps.owner = info->owner; > > ptp->pps_source = pps_register_source(&pps, PTP_PPS_DEFAULTS); > > - if (!ptp->pps_source) { > > - err = -EINVAL; > > + if (IS_ERR(ptp->pps_source)) { > > + err = PTR_ERR(ptp->pps_source); > > pr_err("failed to register pps source\n"); > > goto no_pps; > > } > > YueHaibing's patch has the following hunk. It really is already > there. I don't see it yet on Linus' master branch, but the patch > should update drivers/pps/kapi.c and the callers all in one commit. > > diff --git a/drivers/ptp/ptp_clock.c b/drivers/ptp/ptp_clock.c > index 8a81eec..48f3594 100644 > --- a/drivers/ptp/ptp_clock.c > +++ b/drivers/ptp/ptp_clock.c > @@ -265,8 +265,8 @@ struct ptp_clock *ptp_clock_register(struct ptp_clock_info *info, > pps.mode = PTP_PPS_MODE; > pps.owner = info->owner; > ptp->pps_source = pps_register_source(&pps, PTP_PPS_DEFAULTS); > - if (!ptp->pps_source) { > - err = -EINVAL; > + if (IS_ERR(ptp->pps_source)) { > + err = PTR_ERR(ptp->pps_source); > pr_err("failed to register pps source\n"); > goto no_pps; > } > > Thanks, > Richard