Resolve deadlock between epoch(9) and various network interface SX-locks, by not allowing to hold the epoch read lock over typical network interface driver IOCTL code paths. The remaining race for double free will be solved separately.
Not allowed behaviour for the network subsystem global epoch:
epoch_enter()
sx_xlock();
sx_xunlock();
epoch_exit();
Allowed behaviour for the network subsystems global epoch:
sx_xlock();
epoch_wait();
sx_xunlock();
MFC after: 1 week
Sponsored by: Mellanox Technologies