Re: [PATCH] pci: Make pci_dev struct point to NULL.

From: Alex Chiang
Date: Fri Dec 04 2009 - 23:36:45 EST


* Rakib Mullick <rakib.mullick@xxxxxxxxx>:
> On 12/5/09, Alex Chiang <achiang@xxxxxx> wrote:
> > * Rakib Mullick <rakib.mullick@xxxxxxxxx>:
> >
> > This is from Linus's latest tree:
> >
> > 974
> > 975 if (slot->flags & SLOT_ENABLED)
> > 976 goto err_exit;
>
> I'm talking about this line. From here we can hit 'goto err_exit' without
> using pci_get_slot.

Right, so what's the problem? If the slot is not enabled, we goto
err_exit and return, never touching dev.

> > 977
> > 978 /* sanity check: dev should be NULL when hot-plugged in */
> > 979 dev = pci_get_slot(bus, PCI_DEVFN(slot->device, 0));
> > 980 if (dev) {
> >
> > I assume your line 975 is my line 980.
>
> Nope, my line 975 is also yours.
> >
> > pci_get_slot() returns NULL if it doesn't find the devfn, so as
> > far as I can tell, there's no need to initialize dev to NULL.
> >
> > Were you fixing a real bug with this patch? Did you actually get
> > the "pci_dev structure already exists.\n" error message?
> >
> No - i'm trying to make sure that we're not referencing into a trash.

I must be slow, because I don't understand how we might reference
trash.

Care to explain it to me?

Thanks,
/ac

--
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/