> 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

Attachment: signature.asc
Description: Message signed with OpenPGP using GPGMail

Reply via email to