1
0
mirror of https://git.FreeBSD.org/src.git synced 2024-11-27 08:00:11 +00:00
freebsd/sys/dev/mlx4
Hans Petter Selasky e0ba1be6d7 Don't hold state lock while detaching network device instance in mlx4en(4).
It can happen during shutdown that the lock will recurse when the mlx4en(4)
instance is part of a lagg interface. Call ether_ifdetach() unlocked.

Backtrace:
panic(): _sx_xlock_hard: recursed on non-recursive sx &mdev->state_lock
_sx_xlock_hard()
_sx_xlock()
mlx4_en_ioctl()
if_setlladdr()
lagg_port_destroy()
lagg_port_ifdetach()
if_detach()
mlx4_en_destroy_netdev()
mlx4_en_remove()
mlx4_remove_device()
mlx4_unregister_device()
mlx4_unload_one()
mlx4_shutdown()
linux_pci_shutdown()
bus_generic_shutdown()

MFC after:		1 week
Sponsored by:		Mellanox Technologies
2019-03-08 09:16:29 +00:00
..
mlx4_core mlx4/mlx5: Updated driver version to 3.5.0 2018-12-05 14:25:34 +00:00
mlx4_en Don't hold state lock while detaching network device instance in mlx4en(4). 2019-03-08 09:16:29 +00:00
mlx4_ib mlx4/mlx5: Updated driver version to 3.5.0 2018-12-05 14:25:34 +00:00
cmd.h Update the mlx4 core and mlx4en(4) modules towards Linux v4.9. 2017-11-15 11:14:39 +00:00
cq.h sys/dev/mlx[45]: fix uses of 1 << 31 2018-01-12 06:36:44 +00:00
device.h mlx4: Add board identifier and firmware version to sysctl 2018-12-05 13:30:48 +00:00
doorbell.h
driver.h mlx4en: Add support for netdump. 2018-12-05 13:32:15 +00:00
qp.h sys/dev/mlx[45]: fix uses of 1 << 31 2018-01-12 06:36:44 +00:00
srq.h
stats.h Update the mlx4 core and mlx4en(4) modules towards Linux v4.9. 2017-11-15 11:14:39 +00:00