Rework usage of the control PF pointer in struct ice_adapter, so that it is always has a consistent state, since it is global for an adapter. Utilize RCU for reading the pointer value and atomic operations for changing it. Zero out the ctrl_pf pointer when the control PF is removed.
Sergey Temerkhanov (3): ice: Convert ctrl_pf pointer in struct ice_adapter to RCU ice: Zero out the PTP control PF pointer at ice_adapter cleanup ice: Cache struct ice_hw pointer for split register reads drivers/net/ethernet/intel/ice/ice.h | 10 ++- drivers/net/ethernet/intel/ice/ice_adapter.h | 2 +- drivers/net/ethernet/intel/ice/ice_ptp.c | 66 +++++++++++++++++--- drivers/net/ethernet/intel/ice/ice_ptp_hw.c | 26 ++++++-- 4 files changed, 89 insertions(+), 15 deletions(-) -- 2.53.0
