Re: [PATCH] mvsas: always iounmap resources
On Fri, Jun 12, 2015 at 08:31:38AM +0200, Hannes Reinecke wrote: > On 05/22/2015 11:15 AM, Johannes Thumshirn wrote: > > In case pci_resource_start() or pci_resource_len() reutrn 0, mvsas_ioremap > > returns without doing an iounmap() of mvi->regs_ex. > > > > Found by the cocinelle tool. > > > > Signed-off-by: Johannes Thumshirn > > --- > > drivers/scsi/mvsas/mv_init.c | 5 - > > 1 file changed, 4 insertions(+), 1 deletion(-) > > > > diff --git a/drivers/scsi/mvsas/mv_init.c b/drivers/scsi/mvsas/mv_init.c > > index 53030b0..04a3205 100644 > > --- a/drivers/scsi/mvsas/mv_init.c > > +++ b/drivers/scsi/mvsas/mv_init.c > > @@ -339,8 +339,11 @@ int mvs_ioremap(struct mvs_info *mvi, int bar, int > > bar_ex) > > > > res_start = pci_resource_start(pdev, bar); > > res_len = pci_resource_len(pdev, bar); > > - if (!res_start || !res_len) > > + if (!res_start || !res_len) { > > + iounmap(mvi->regs_ex); > > + mvi->regs_ex = NULL; > > goto err_out; > > + } > > > > res_flag = pci_resource_flags(pdev, bar); > > if (res_flag & IORESOURCE_CACHEABLE) > > > Reviewed-by: Hannes Reinecke > James, any update on this? Do you intent to take it for 4.2? Thank, Johannes -- To unsubscribe from this list: send the line "unsubscribe linux-scsi" in
Re: [PATCH] mvsas: always iounmap resources
On 05/22/2015 11:15 AM, Johannes Thumshirn wrote: > In case pci_resource_start() or pci_resource_len() reutrn 0, mvsas_ioremap > returns without doing an iounmap() of mvi->regs_ex. > > Found by the cocinelle tool. > > Signed-off-by: Johannes Thumshirn > --- > drivers/scsi/mvsas/mv_init.c | 5 - > 1 file changed, 4 insertions(+), 1 deletion(-) > > diff --git a/drivers/scsi/mvsas/mv_init.c b/drivers/scsi/mvsas/mv_init.c > index 53030b0..04a3205 100644 > --- a/drivers/scsi/mvsas/mv_init.c > +++ b/drivers/scsi/mvsas/mv_init.c > @@ -339,8 +339,11 @@ int mvs_ioremap(struct mvs_info *mvi, int bar, int > bar_ex) > > res_start = pci_resource_start(pdev, bar); > res_len = pci_resource_len(pdev, bar); > - if (!res_start || !res_len) > + if (!res_start || !res_len) { > + iounmap(mvi->regs_ex); > + mvi->regs_ex = NULL; > goto err_out; > + } > > res_flag = pci_resource_flags(pdev, bar); > if (res_flag & IORESOURCE_CACHEABLE) > Reviewed-by: Hannes Reinecke Cheers, Hannes -- Dr. Hannes ReineckezSeries & Storage h...@suse.de +49 911 74053 688 SUSE LINUX GmbH, Maxfeldstr. 5, 90409 Nürnberg GF: F. Imendörffer, J. Smithard, J. Guild, D. Upmanyu, G. Norton HRB 21284 (AG Nürnberg) -- To unsubscribe from this list: send the line "unsubscribe linux-scsi" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
[PATCH] mvsas: always iounmap resources
In case pci_resource_start() or pci_resource_len() reutrn 0, mvsas_ioremap returns without doing an iounmap() of mvi->regs_ex. Found by the cocinelle tool. Signed-off-by: Johannes Thumshirn --- drivers/scsi/mvsas/mv_init.c | 5 - 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/drivers/scsi/mvsas/mv_init.c b/drivers/scsi/mvsas/mv_init.c index 53030b0..04a3205 100644 --- a/drivers/scsi/mvsas/mv_init.c +++ b/drivers/scsi/mvsas/mv_init.c @@ -339,8 +339,11 @@ int mvs_ioremap(struct mvs_info *mvi, int bar, int bar_ex) res_start = pci_resource_start(pdev, bar); res_len = pci_resource_len(pdev, bar); - if (!res_start || !res_len) + if (!res_start || !res_len) { + iounmap(mvi->regs_ex); + mvi->regs_ex = NULL; goto err_out; + } res_flag = pci_resource_flags(pdev, bar); if (res_flag & IORESOURCE_CACHEABLE) -- 2.4.1 -- To unsubscribe from this list: send the line "unsubscribe linux-scsi" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html