Message ID | 20211230014543.1799867-1-jiasheng@iscas.ac.cn (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | soc: fsl: qe: Check of ioremap return value | expand |
On Thu, Dec 30, 2021 at 9:47 AM Jiasheng Jiang <jiasheng@iscas.ac.cn> wrote: > > As the possible failure of the ioremap(), the par_io could be NULL. > Therefore it should be better to check it and return error in order to > guarantee the success of the initiation. > But, I also notice that all the caller like mpc85xx_qe_par_io_init() in > `arch/powerpc/platforms/85xx/common.c` don't check the return value of > the par_io_init(). > Actually, par_io_init() needs to check to handle the potential error. > I will submit another patch to fix that. > Anyway, par_io_init() itsely should be fixed. > > Fixes: 7aa1aa6ecec2 ("QE: Move QE from arch/powerpc to drivers/soc") > Signed-off-by: Jiasheng Jiang <jiasheng@iscas.ac.cn> Applied for next. Thanks. > --- > drivers/soc/fsl/qe/qe_io.c | 2 ++ > 1 file changed, 2 insertions(+) > > diff --git a/drivers/soc/fsl/qe/qe_io.c b/drivers/soc/fsl/qe/qe_io.c > index e277c827bdf3..a5e2d0e5ab51 100644 > --- a/drivers/soc/fsl/qe/qe_io.c > +++ b/drivers/soc/fsl/qe/qe_io.c > @@ -35,6 +35,8 @@ int par_io_init(struct device_node *np) > if (ret) > return ret; > par_io = ioremap(res.start, resource_size(&res)); > + if (!par_io) > + return -ENOMEM; > > if (!of_property_read_u32(np, "num-ports", &num_ports)) > num_par_io_ports = num_ports; > -- > 2.25.1 >
diff --git a/drivers/soc/fsl/qe/qe_io.c b/drivers/soc/fsl/qe/qe_io.c index e277c827bdf3..a5e2d0e5ab51 100644 --- a/drivers/soc/fsl/qe/qe_io.c +++ b/drivers/soc/fsl/qe/qe_io.c @@ -35,6 +35,8 @@ int par_io_init(struct device_node *np) if (ret) return ret; par_io = ioremap(res.start, resource_size(&res)); + if (!par_io) + return -ENOMEM; if (!of_property_read_u32(np, "num-ports", &num_ports)) num_par_io_ports = num_ports;
As the possible failure of the ioremap(), the par_io could be NULL. Therefore it should be better to check it and return error in order to guarantee the success of the initiation. But, I also notice that all the caller like mpc85xx_qe_par_io_init() in `arch/powerpc/platforms/85xx/common.c` don't check the return value of the par_io_init(). Actually, par_io_init() needs to check to handle the potential error. I will submit another patch to fix that. Anyway, par_io_init() itsely should be fixed. Fixes: 7aa1aa6ecec2 ("QE: Move QE from arch/powerpc to drivers/soc") Signed-off-by: Jiasheng Jiang <jiasheng@iscas.ac.cn> --- drivers/soc/fsl/qe/qe_io.c | 2 ++ 1 file changed, 2 insertions(+)