]> git.baikalelectronics.ru Git - kernel.git/commit
bnxt_en: Don't use rtnl lock to protect link change logic in workqueue.
authorMichael Chan <michael.chan@broadcom.com>
Sat, 14 Oct 2017 01:09:30 +0000 (21:09 -0400)
committerDavid S. Miller <davem@davemloft.net>
Sun, 15 Oct 2017 01:51:51 +0000 (18:51 -0700)
commit84f62f122a74ffe77b73f4ae9c57d79dbb0a01c7
treeeb106a36e8399cc9263287705f6f5ef8e01d7c84
parent1051f667eb98ec75000c3a62d373f9e9969b31eb
bnxt_en: Don't use rtnl lock to protect link change logic in workqueue.

As a further improvement to the PF/VF link change logic, use a private
mutex instead of the rtnl lock to protect link change logic.  With the
new mutex, we don't have to take the rtnl lock in the workqueue when
we have to handle link related functions.  If the VF and PF drivers
are running on the same host and both take the rtnl lock and one is
waiting for the other, it will cause timeout.  This patch fixes these
timeouts.

Fixes: 4b7768bdbbd2 ("bnxt_en: Fix RTNL lock usage on bnxt_update_link().")
Signed-off-by: Michael Chan <michael.chan@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/broadcom/bnxt/bnxt.c
drivers/net/ethernet/broadcom/bnxt/bnxt.h
drivers/net/ethernet/broadcom/bnxt/bnxt_ethtool.c