]> git.baikalelectronics.ru Git - kernel.git/commit
nfp: reset local locks on init
authorJakub Kicinski <jakub.kicinski@netronome.com>
Wed, 25 Apr 2018 04:17:01 +0000 (21:17 -0700)
committerDavid S. Miller <davem@davemloft.net>
Wed, 25 Apr 2018 18:07:04 +0000 (14:07 -0400)
commit7181f06c3609e32e9b4a9ee36b02b41334a339ec
tree2c224ad747e799472ce88c6c0dee3deb6f293db1
parent5ff9d5eef96aad190071eb6abb4ea8c9377bcc33
nfp: reset local locks on init

NFP locks record the owner when held, for PCIe devices the owner
ID will be the PCIe link number.  When driver loads it should scan
known locks and if they indicate that they are held by local
endpoint but the driver doesn't hold them - release them.

Locks can be left taken for instance when kernel gets kexec-ed or
after a crash.  Management FW tries to clean up stale locks too,
but it currently depends on PCIe link going down which doesn't
always happen.

Signed-off-by: Jakub Kicinski <jakub.kicinski@netronome.com>
Reviewed-by: Dirk van der Merwe <dirk.vandermerwe@netronome.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/netronome/nfp/nfp_main.c
drivers/net/ethernet/netronome/nfp/nfpcore/nfp.h
drivers/net/ethernet/netronome/nfp/nfpcore/nfp_cpp.h
drivers/net/ethernet/netronome/nfp/nfpcore/nfp_mutex.c
drivers/net/ethernet/netronome/nfp/nfpcore/nfp_resource.c