RE: [PATCH 3/5] drivers/infiniband: correct size computation

From: Julia Lawall
Date: Mon Dec 07 2009 - 11:22:24 EST


On Mon, 7 Dec 2009, Tung, Chien Tin wrote:

> Thanks for pointing out the bug.
>
> > /* Remap the PCI registers in adapter BAR0 to kernel VA space */
> >- mmio_regs = ioremap_nocache(pci_resource_start(pcidev, BAR_0), sizeof(mmio_regs));
> >+ mmio_regs = ioremap_nocache(pci_resource_start(pcidev, BAR_0),
> >+ sizeof(*mmio_regs));
> > if (mmio_regs == NULL) {
> > printk(KERN_ERR PFX "Unable to remap BAR0\n");
> > ret = -EIO;
>
> mmio_regs is initialized to NULL at the top of the function so
> *mmio_regs wouldn't be a good idea. Instead of sizeof(*mmio_regs) use
> pci_resource_len(pcidev, BAR_0). If you can recreate the patch with
> this change I will ack it.

When you say that it isn't a good idea, do you mean that the result is
wrong, or that it looks odd? I didn't think sizeof looked at the value,
but only at the type?

julia
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/