Message ID | 20190114050237.32140-1-Bharat.Bhushan@nxp.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | soc: fsl: dpio: fix cpu range check | expand |
On Sun, Jan 13, 2019 at 11:13 PM Bharat Bhushan <bharat.bhushan@nxp.com> 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://lore.kernel.org/patchwork/patch/1020905/ Leo > > Signed-off-by: Bharat Bhushan <Bharat.Bhushan@nxp.com> > --- > 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 >
> -----Original Message----- > From: Li Yang <leoyang.li@nxp.com> > Sent: Tuesday, January 15, 2019 12:47 AM > To: Bharat Bhushan <bharat.bhushan@nxp.com> > Cc: Roy Pledge <roy.pledge@nxp.com>; linux-kernel@vger.kernel.org; > linuxppc-dev@lists.ozlabs.org; linux-arm-kernel@lists.infradead.org; > bharatb.yadav@gmail.com > Subject: Re: [PATCH] soc: fsl: dpio: fix cpu range check > > On Sun, Jan 13, 2019 at 11:13 PM Bharat Bhushan > <bharat.bhushan@nxp.com> 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&data=02%7C01% > 7Cbharat.bhushan%40nxp.com%7C47af6861c3f84094434c08d67a54e1c4%7C6 > 86ea1d3bc2b4c6fa92cd99c5c301635%7C0%7C0%7C636830902314446677& > ;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@nxp.com> > > --- > > 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 > >
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;
cpu_possible(cpu) will always return true when cpu parameter is from cpumask_next(). Check for nr_cpu_ids rather than !cpu_possible(cpu). Signed-off-by: Bharat Bhushan <Bharat.Bhushan@nxp.com> --- drivers/soc/fsl/dpio/dpio-driver.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)