aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHannes Frederic Sowa <[email protected]>2016-04-18 21:19:45 +0200
committerDavid S. Miller <[email protected]>2016-04-21 15:35:43 -0400
commitb1f99a787e8239da3ea859709f5fb60b3fd02c13 (patch)
treed974a926c455dd6914139c2a9259f696a6d2a0ed
parent0c5c3252c43cc935bef05c2211fc7cb32facddf7 (diff)
ixgbe: protect vxlan_get_rx_port in ixgbe_service_task with rtnl_lock
vxlan_get_rx_port requires rtnl_lock to be held. Cc: Jeff Kirsher <[email protected]> Cc: Jesse Brandeburg <[email protected]> Cc: Shannon Nelson <[email protected]> Cc: Carolyn Wyborny <[email protected]> Cc: Don Skidmore <[email protected]> Cc: Bruce Allan <[email protected]> Cc: John Ronciak <[email protected]> Cc: Mitch Williams <[email protected]> Signed-off-by: Hannes Frederic Sowa <[email protected]> Signed-off-by: David S. Miller <[email protected]>
-rw-r--r--drivers/net/ethernet/intel/ixgbe/ixgbe_main.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c b/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c
index 2976df77bf14..b2f2cf40f06a 100644
--- a/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c
+++ b/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c
@@ -7192,10 +7192,12 @@ static void ixgbe_service_task(struct work_struct *work)
return;
}
#ifdef CONFIG_IXGBE_VXLAN
+ rtnl_lock();
if (adapter->flags2 & IXGBE_FLAG2_VXLAN_REREG_NEEDED) {
adapter->flags2 &= ~IXGBE_FLAG2_VXLAN_REREG_NEEDED;
vxlan_get_rx_port(adapter->netdev);
}
+ rtnl_unlock();
#endif /* CONFIG_IXGBE_VXLAN */
ixgbe_reset_subtask(adapter);
ixgbe_phy_interrupt_subtask(adapter);