net/ice/base: handle critical FW error
authorQi Zhang <qi.z.zhang@intel.com>
Mon, 30 Mar 2020 11:45:32 +0000 (19:45 +0800)
committerFerruh Yigit <ferruh.yigit@intel.com>
Tue, 21 Apr 2020 11:57:05 +0000 (13:57 +0200)
commitaf0d0df350dda6fe125dbb341c14e79e385e613e
tree0db5b24b8ad34c45b023e4bcf1f79a27d39e0929
parent8fb908838516fb6ccfcf3d5ba89913974152f8ec
net/ice/base: handle critical FW error

A race condition between FW and SW can occur between admin queue setup
and the first command sent. A link event may occur and FW attempts to
notify a non-existent queue. FW will set the critical error bit and
disable the queue. When this happens retry queue setup.

Signed-off-by: Evan Swanson <evan.swanson@intel.com>
Signed-off-by: Paul M Stillwell Jr <paul.m.stillwell.jr@intel.com>
Signed-off-by: Qi Zhang <qi.z.zhang@intel.com>
Acked-by: Qiming Yang <qiming.yang@intel.com>
drivers/net/ice/base/ice_controlq.c
drivers/net/ice/base/ice_controlq.h
drivers/net/ice/base/ice_status.h