On 8/19/22 06:15, Li Qiong wrote: > As the possible failure of the kmalloc(), it should be better > to fix this error path, check and return '-ENOMEM' error code. > > Signed-off-by: Li Qiong <liqiong@xxxxxxxxxxxx> applied. Thanks! Helge > --- > drivers/parisc/ccio-dma.c | 11 ++++++++--- > 1 file changed, 8 insertions(+), 3 deletions(-) > > diff --git a/drivers/parisc/ccio-dma.c b/drivers/parisc/ccio-dma.c > index 9be007c9420f..f69ab90b5e22 100644 > --- a/drivers/parisc/ccio-dma.c > +++ b/drivers/parisc/ccio-dma.c > @@ -1380,15 +1380,17 @@ ccio_init_resource(struct resource *res, char *name, void __iomem *ioaddr) > } > } > > -static void __init ccio_init_resources(struct ioc *ioc) > +static int __init ccio_init_resources(struct ioc *ioc) > { > struct resource *res = ioc->mmio_region; > char *name = kmalloc(14, GFP_KERNEL); > - > + if (unlikely(!name)) > + return -ENOMEM; > snprintf(name, 14, "GSC Bus [%d/]", ioc->hw_path); > > ccio_init_resource(res, name, &ioc->ioc_regs->io_io_low); > ccio_init_resource(res + 1, name, &ioc->ioc_regs->io_io_low_hv); > + return 0; > } > > static int new_ioc_area(struct resource *res, unsigned long size, > @@ -1543,7 +1545,10 @@ static int __init ccio_probe(struct parisc_device *dev) > return -ENOMEM; > } > ccio_ioc_init(ioc); > - ccio_init_resources(ioc); > + if (ccio_init_resources(ioc)) { > + kfree(ioc); > + return -ENOMEM; > + } > hppa_dma_ops = &ccio_ops; > > hba = kzalloc(sizeof(*hba), GFP_KERNEL);