linux_dsm_epyc7002/drivers/net/ethernet/qlogic
Mintz, Yuval 567b3c127a qede: Revise state locking scheme
As qede utilizes an internal-reload sequence as result of various
configuration changes, the netif state wouldn't always accurately describe
the status of the configuration.
To compensate, we're storing an internal state of the device, which should
only be accessed under the qede_lock.

This patch fixes and improves several state/lock interactions:
  - The internal state should only be checked while locked.
  - While holding lock, it's preferable to check state rather than
    the netdevice's state.
  - The reload sequence is not 'atomic' - unload and subsequent load
    are not in the same critical section.

This also add the 'locked' variant for the reload, which would later be
used by XDP - useful in the case where the correct sequence is 'lock,
check state and re-configure if good', instead of allowing the reload
itself to make the decision regarding the configurability of the device.

Signed-off-by: Yuval Mintz <Yuval.Mintz@cavium.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2016-11-30 14:32:04 -05:00
..
netxen ethernet: use net core MTU range checking in more drivers 2016-10-20 14:51:08 -04:00
qed qed: Optimize qed_chain datapath usage 2016-11-30 14:32:02 -05:00
qede qede: Revise state locking scheme 2016-11-30 14:32:04 -05:00
qlcnic ethernet/qlogic: use core min/max MTU checking 2016-10-18 11:34:19 -04:00
qlge ethernet: use net core MTU range checking in more drivers 2016-10-20 14:51:08 -04:00
Kconfig Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2016-10-29 20:33:20 -07:00
Makefile qede: Add basic Network driver 2015-10-27 19:34:47 -07:00
qla3xxx.c net: deprecate eth_change_mtu, remove usage 2016-10-13 09:36:57 -04:00
qla3xxx.h