> On Sep 9, 2015, at 9:07 PM, Jarod Wilson <ja...@redhat.com> wrote: > > diff --git a/drivers/net/ethernet/intel/igb/igb_main.c > b/drivers/net/ethernet/intel/igb/igb_main.c > index e174fbb..a5e0022 100644 > --- a/drivers/net/ethernet/intel/igb/igb_main.c > +++ b/drivers/net/ethernet/intel/igb/igb_main.c > @@ -2823,7 +2823,8 @@ static void igb_remove(struct pci_dev *pdev) > > igb_clear_interrupt_scheme(adapter); > > - pci_iounmap(pdev, hw->hw_addr); > + if (hw->hw_addr) > + pci_iounmap(pdev, hw->hw_addr); > if (hw->flash_address) > iounmap(hw->flash_address); > pci_release_selected_regions(pdev,
I don't think that this is entirely the right solution. In ixgbe we have a separate pointer, io_addr, used to manage the resource, so that the space can be freed even after hw_addr is cleared. With the approach above, the pci_iounmap will not ever be called on the space. You can see how ixgbe is doing it. -- Mark Rustad, Networking Division, Intel Corporation
signature.asc
Description: Message signed with OpenPGP using GPGMail