]> git.proxmox.com Git - mirror_ubuntu-hirsute-kernel.git/commit
ionic: centralize queue reset code
authorShannon Nelson <snelson@pensando.io>
Tue, 7 Jul 2020 21:13:26 +0000 (14:13 -0700)
committerDavid S. Miller <davem@davemloft.net>
Tue, 7 Jul 2020 22:50:31 +0000 (15:50 -0700)
commit086c18f2452d0028f81e319f098bcb8e53133dbf
tree0a19f2b8a34fec5402f5c8897e311c3185e81547
parent469aceddfa3ed16e17ee30533fae45e90f62efd8
ionic: centralize queue reset code

The queue reset pattern is used in a couple different places,
only slightly different from each other, and could cause
issues if one gets changed and the other didn't.  This puts
them together so that only one version is needed, yet each
can have slighty different effects by passing in a pointer
to a work function to do whatever configuration twiddling is
needed in the middle of the reset.

This specifically addresses issues seen where under loops
of changing ring size or queue count parameters we could
occasionally bump into the netdev watchdog.

v2: added more commit message commentary

Fixes: 4d03e00a2140 ("ionic: Add initial ethtool support")
Signed-off-by: Shannon Nelson <snelson@pensando.io>
Acked-by: Jakub Kicinski <kuba@kernel.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/pensando/ionic/ionic_ethtool.c
drivers/net/ethernet/pensando/ionic/ionic_lif.c
drivers/net/ethernet/pensando/ionic/ionic_lif.h