diff options
| author | Marcin Wojtas <mw@FreeBSD.org> | 2019-05-30 13:22:53 +0000 |
|---|---|---|
| committer | Marcin Wojtas <mw@FreeBSD.org> | 2019-05-30 13:22:53 +0000 |
| commit | 9151c55d024f5e59344d0bb951299a2e7e47b083 (patch) | |
| tree | 4d1361a9e5b21de9ea42e0f2be6206f86b6954f7 /sys/dev/ena | |
| parent | 2b5b60fe0db0f526fd3ff926593df6fc550174a7 (diff) | |
Notes
Diffstat (limited to 'sys/dev/ena')
| -rw-r--r-- | sys/dev/ena/ena.c | 9 |
1 files changed, 4 insertions, 5 deletions
diff --git a/sys/dev/ena/ena.c b/sys/dev/ena/ena.c index d03db819f8eeb..2f00469480d6b 100644 --- a/sys/dev/ena/ena.c +++ b/sys/dev/ena/ena.c @@ -3893,6 +3893,8 @@ ena_detach(device_t pdev) return (EBUSY); } + ether_ifdetach(adapter->ifp); + /* Free reset task and callout */ callout_drain(&adapter->timer_service); while (taskqueue_cancel(adapter->reset_tq, &adapter->reset_task, NULL)) @@ -3903,11 +3905,6 @@ ena_detach(device_t pdev) ena_down(adapter); sx_unlock(&adapter->ioctl_sx); - if (adapter->ifp != NULL) { - ether_ifdetach(adapter->ifp); - if_free(adapter->ifp); - } - ena_free_all_io_rings_resources(adapter); ena_free_counters((counter_u64_t *)&adapter->hw_stats, @@ -3949,6 +3946,8 @@ ena_detach(device_t pdev) mtx_destroy(&adapter->global_mtx); sx_destroy(&adapter->ioctl_sx); + if_free(adapter->ifp); + if (ena_dev->bus != NULL) free(ena_dev->bus, M_DEVBUF); |
