Skip to content

feat(phase10): reserve virtio net refill descriptors#10600

Closed
adybag14-cyber wants to merge 3 commits into
zigux-builder/p7-l14-refill-batch-20260523T121719Zfrom
zigux-builder/p7-l14-refill-descriptor-budget-20260525T1225Z
Closed

feat(phase10): reserve virtio net refill descriptors#10600
adybag14-cyber wants to merge 3 commits into
zigux-builder/p7-l14-refill-batch-20260523T121719Zfrom
zigux-builder/p7-l14-refill-descriptor-budget-20260525T1225Z

Conversation

@adybag14-cyber
Copy link
Copy Markdown
Owner

Summary

  • add a bounded reserveReceiveQueueRefillDescriptors() helper to drivers/net/virtio_net.zig so one refill pass can be clamped against the descriptors currently available on the receive queue
  • extend zigux/tests/phase10_virtio_net.zig with focused coverage for descriptor-budget exhaustion, exact-fit recycled-room reservations, and the zero-descriptors-per-buffer guard
  • refresh Documentation/zigux/phase10-virtio-net-slice.md so the current lane note records the new reservation boundary

Why this lane

  • the schedule prompt still says Phase 7, but the roadmap and prior P7-L14 history keep truthful packet-path work in the existing Phase 10 virtio_net lab-driver family
  • the prior same-lane packet on draft PR #8032 already planned one refill batch from the saved mergeable-buffer plan
  • the next bounded, non-overlapping move in that same family was to clamp that refill pass against available receive-queue descriptors without widening into live descriptor writes, DMA submission, kicks, receive completion, NAPI, or netdev lifecycle work

Validation

  • /workspace/.toolchains/p7-l14/zig-x86_64-linux-0.17.0-dev.87+9b177a7d2/zig fmt --check /workspace/.scratch/p7-l14-refill-descriptor-budget/drivers/net/virtio_net.zig /workspace/.scratch/p7-l14-refill-descriptor-budget/drivers/virtio/virtio.zig /workspace/.scratch/p7-l14-refill-descriptor-budget/zigux/tests/phase10_virtio_net.zig /workspace/.scratch/p7-l14-refill-descriptor-budget/zigux/tests/phase10_build.zig
  • cd /workspace/.scratch/p7-l14-refill-descriptor-budget/zigux/tests && /workspace/.toolchains/p7-l14/zig-x86_64-linux-0.17.0-dev.87+9b177a7d2/zig build test --build-file phase10_build.zig --summary all
    • result: Build Summary: 3/3 steps succeeded; 7/7 tests passed

Scope

  • lane: P7-L14
  • branch: zigux-builder/p7-l14-refill-descriptor-budget-20260525T1225Z
  • files:
    • drivers/net/virtio_net.zig
    • zigux/tests/phase10_virtio_net.zig
    • Documentation/zigux/phase10-virtio-net-slice.md
  • intentionally no edits to drivers/virtio/virtio.zig, shared Phase 10 build wiring, DMA paths, kicks, NAPI, or receive-completion code

Coordination

  • stacked on draft PR #8032 because master still does not carry the bounded virtio_net packet this lane extends
  • the next honest same-lane move is one queue-local publish or notify-decision helper that consumes the new reservation plan without entering live submission

@coderabbitai
Copy link
Copy Markdown

coderabbitai Bot commented May 25, 2026

Important

Review skipped

Draft detected.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: 60a6c8b4-36c4-478a-b479-a5b8169f59b5

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch zigux-builder/p7-l14-refill-descriptor-budget-20260525T1225Z

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@adybag14-cyber adybag14-cyber deleted the branch zigux-builder/p7-l14-refill-batch-20260523T121719Z June 2, 2026 19:49
@adybag14-cyber adybag14-cyber deleted the zigux-builder/p7-l14-refill-descriptor-budget-20260525T1225Z branch June 2, 2026 19:49
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.

1 participant