diff options
Diffstat (limited to 'sys/pci/if_sf.c')
-rw-r--r-- | sys/pci/if_sf.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/sys/pci/if_sf.c b/sys/pci/if_sf.c index e14ce26..fa7eb83 100644 --- a/sys/pci/if_sf.c +++ b/sys/pci/if_sf.c @@ -766,7 +766,6 @@ sf_attach(dev) if (error) { device_printf(dev, "couldn't set up irq\n"); ether_ifdetach(ifp); - if_free(ifp); goto fail; } @@ -802,8 +801,9 @@ sf_detach(dev) SF_UNLOCK(sc); callout_drain(&sc->sf_stat_callout); ether_ifdetach(ifp); - if_free(ifp); } + if (ifp) + if_free(ifp); if (sc->sf_miibus) device_delete_child(dev, sc->sf_miibus); bus_generic_detach(dev); |