liquidio: fix for iq and droq cnts going negative
authorSatanand Burla <satananda.burla@cavium.com>
Tue, 31 Jan 2017 21:04:42 +0000 (13:04 -0800)
committerDavid S. Miller <davem@davemloft.net>
Wed, 1 Feb 2017 17:25:40 +0000 (12:25 -0500)
commitcdb478e5e413864df73096ef4f0e5d518395a92b
tree4ebd2ed508b7a6aa5a5aba99f35308d0226fc1cf
parent1f5e29ce7989eb75652774004b962ee1eb6e56ca
liquidio: fix for iq and droq cnts going negative

Flush the mmio writes before releasing spin locks.
if the maintained counts get too high > 2M force
writeback of the counts to clear them

Signed-off-by: Satanand Burla <satananda.burla@cavium.com>
Signed-off-by: Felix Manlunas <felix.manlunas@cavium.com>
Signed-off-by: Raghu Vatsavayi <raghu.vatsavayi@cavium.com>
Signed-off-by: Derek Chickles <derek.chickles@cavium.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/cavium/liquidio/lio_main.c
drivers/net/ethernet/cavium/liquidio/lio_vf_main.c
drivers/net/ethernet/cavium/liquidio/liquidio_common.h
drivers/net/ethernet/cavium/liquidio/octeon_device.c