RE: [PATCH] soc: fsl: dpio: fix cpu range check

From: Bharat Bhushan
Date: Mon Jan 14 2019 - 22:21:03 EST




> -----Original Message-----
> From: Li Yang <leoyang.li@xxxxxxx>
> Sent: Tuesday, January 15, 2019 12:47 AM
> To: Bharat Bhushan <bharat.bhushan@xxxxxxx>
> Cc: Roy Pledge <roy.pledge@xxxxxxx>; linux-kernel@xxxxxxxxxxxxxxx;
> linuxppc-dev@xxxxxxxxxxxxxxxx; linux-arm-kernel@xxxxxxxxxxxxxxxxxxx;
> bharatb.yadav@xxxxxxxxx
> Subject: Re: [PATCH] soc: fsl: dpio: fix cpu range check
>
> On Sun, Jan 13, 2019 at 11:13 PM Bharat Bhushan
> <bharat.bhushan@xxxxxxx> wrote:
> >
> > cpu_possible(cpu) will always return true when cpu parameter is from
> > cpumask_next().
> > Check for nr_cpu_ids rather than !cpu_possible(cpu).
>
> There is another patch pending merge seems to cover this issue too.
> Please let me know if it doesn't.
>
> https://emea01.safelinks.protection.outlook.com/?url=https%3A%2F%2Flor
> e.kernel.org%2Fpatchwork%2Fpatch%2F1020905%2F&amp;data=02%7C01%
> 7Cbharat.bhushan%40nxp.com%7C47af6861c3f84094434c08d67a54e1c4%7C6
> 86ea1d3bc2b4c6fa92cd99c5c301635%7C0%7C0%7C636830902314446677&amp
> ;sdata=wLPuMGosXOT48Gm9K%2FBjm1IRbGQEWR4D%2FSqRt0I0XyE%3D&a
> mp;reserved=0

Description and intention of the patch was to fix some other issue but this also fixes the cpu range check issue in my patch.
My patch can be ignored.

Thanks
-Bharat

>
> Leo
> >
> > Signed-off-by: Bharat Bhushan <Bharat.Bhushan@xxxxxxx>
> > ---
> > drivers/soc/fsl/dpio/dpio-driver.c | 2 +-
> > 1 file changed, 1 insertion(+), 1 deletion(-)
> >
> > diff --git a/drivers/soc/fsl/dpio/dpio-driver.c
> > b/drivers/soc/fsl/dpio/dpio-driver.c
> > index e58fcc9096e8..eb369dd9e0a7 100644
> > --- a/drivers/soc/fsl/dpio/dpio-driver.c
> > +++ b/drivers/soc/fsl/dpio/dpio-driver.c
> > @@ -133,7 +133,7 @@ static int dpaa2_dpio_probe(struct fsl_mc_device
> *dpio_dev)
> > else
> > next_cpu = cpumask_next(next_cpu, cpu_online_mask);
> >
> > - if (!cpu_possible(next_cpu)) {
> > + if (next_cpu >= nr_cpu_ids) {
> > dev_err(dev, "probe failed. Number of DPIOs exceeds
> NR_CPUS.\n");
> > err = -ERANGE;
> > goto err_allocate_irqs;
> > --
> > 2.20.1
> >