Skip to content

mana: Support selective revoke of vtl0 vf#3571

Open
sunilmut wants to merge 3 commits into
microsoft:mainfrom
sunilmut:user/sunilmut/gdma_eqe_135_vtl0_vf_revoke
Open

mana: Support selective revoke of vtl0 vf#3571
sunilmut wants to merge 3 commits into
microsoft:mainfrom
sunilmut:user/sunilmut/gdma_eqe_135_vtl0_vf_revoke

Conversation

@sunilmut
Copy link
Copy Markdown
Member

EQE 135 now indicates whether to revoke vtl0 VF or not using the EQE data field. Also added a new feature flag to report to HWC about this supported feature.

EQE 135 now indicates whether to revoke vtl0 VF
or not using the EQE data field. Also added a
new feature flag to report to HWC about this
supported feature.
@sunilmut sunilmut requested a review from a team as a code owner May 27, 2026 01:01
Copilot AI review requested due to automatic review settings May 27, 2026 01:01
@sunilmut sunilmut changed the title gdma: Support selective revoke of vtl0 vf mana: Support selective revoke of vtl0 vf May 27, 2026
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Extends MANA HWC reset request handling so that EQE 135 can selectively indicate whether the VTL0 VF must be revoked. The reset-pending state changes from bool to Option<bool>, with Some(revoke_vtl0_vf) propagated from the EQE payload through GdmaDriver and ManaDevice to the netvsp worker's reconfigure_vf path. A new driver capability flag (DRIVER_CAP_FLAG_1_VTL2_SELECTIVE_REVOKE_SUB_ON_RESET_EQE = 0x8000000) is advertised to HWC.

Changes:

  • New EqeVfReset bitfield and capability flag in gdma_defs, parsed in GdmaDriver::process_all_eqs.
  • get_reset_request_pending and the vf_reset_request_* mesh channel now carry Option<bool> / bool.
  • HclNetworkVFManagerWorker::reconfigure_vf now takes revoke_vtl0_vf and only revokes the VTL0 VF when set.

Reviewed changes

Copilot reviewed 6 out of 6 changed files in this pull request and generated 3 comments.

Show a summary per file
File Description
vm/devices/net/gdma_defs/src/lib.rs Adds EqeVfReset bitfield and DRIVER_CAP_FLAG_1_VTL2_SELECTIVE_REVOKE_SUB_ON_RESET_EQE.
vm/devices/net/mana_driver/src/gdma_driver.rs Switches reset_request_pending to Option<bool>, parses EQE 135 payload, advertises new cap flag.
vm/devices/net/mana_driver/src/mana.rs Propagates bool through vf_reset_request_sender/subscribe_vf_reset_request.
vm/devices/net/mana_driver/src/resources.rs Updates skip_hwc check to use .is_some().
vm/devices/net/mana_driver/src/tests.rs Adjusts existing assertions to the new Option<bool> API.
openhcl/underhill_core/src/emuplat/netvsp.rs Threads revoke_vtl0_vf through NextWorkItem::VfReconfig(bool) and reconfigure_vf.

Comment thread vm/devices/net/mana_driver/src/tests.rs Outdated
Comment thread vm/devices/net/mana_driver/src/mana.rs Outdated
{
sender.send(());
sender.send(revoke_vtl0_vf);


assert!(
gdma.get_reset_request_pending(),
gdma.get_reset_request_pending().is_some(),
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Copilot AI review requested due to automatic review settings May 27, 2026 04:28
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 6 out of 6 changed files in this pull request and generated 1 comment.

Comment thread vm/devices/net/mana_driver/src/mana.rs Outdated
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Copilot AI review requested due to automatic review settings May 28, 2026 00:41
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 6 out of 6 changed files in this pull request and generated no new comments.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants