summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorSatish Kharat <satishkh@cisco.com>2026-08-30 15:22:52 -0700
committerJakub Kicinski <kuba@kernel.org>2026-09-03 19:10:18 -0700
commitb752e041d5845d03f285cf7a1f30b38ca7ef92bf (patch)
tree5b152fcb05e5064f50eeebede9780f3088f1e053 /include
parent39b23c1c40e1f73d2b94a09282cc476af647e438 (diff)
enic: preserve V2 VF carrier across netdev reopen
A V2 VF receives carrier state only from PF MBOX notifications. enic_stop() forces carrier off, but enic_open() does not request a fresh notification or restore the previous one. An ordinary down/up cycle therefore leaves the VF in NO-CARRIER and unable to pass traffic until the PF repeats the link-state command, even when the physical link remained up. Cache each valid PF link-state notification. Serialize updates with the V2 VF datapath running state. Keep carrier off while the netdev is stopped. Restore the cached state after an ordinary open. Before either internal reset reopens the datapath, invalidate the cache. Carrier then remains off until re-registration receives a fresh PF link-state notification. Fixes: 72b65c94058e ("enic: add MBOX VF handlers for capability, register and link state") Signed-off-by: Satish Kharat <satishkh@cisco.com> Link: https://patch.msgid.link/20260830-b4-enic-v2-mbox-fixes-net-v1-1-23adf9bfd426@cisco.com Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Diffstat (limited to 'include')
0 files changed, 0 insertions, 0 deletions