Skip to content

feat(virtio): Adding Virtio-net Support to Cloudlet#22

Merged
sylvain-pierrot merged 8 commits intovirt-do:mainfrom
sylvain-pierrot:main
Apr 29, 2024
Merged

feat(virtio): Adding Virtio-net Support to Cloudlet#22
sylvain-pierrot merged 8 commits intovirt-do:mainfrom
sylvain-pierrot:main

Conversation

@sylvain-pierrot
Copy link
Copy Markdown
Contributor

@sylvain-pierrot sylvain-pierrot commented Apr 21, 2024

Adding Virtio-net Support to Cloudlet

Description:

This Pull Request aims to enhance the functionality of Cloudlet by adding support for virtio-net, a paravirtualized network device.

Changes Introduced (checklist):

Virtio Over MMIO:

  • MMIO Device Discovery
    • MMIO provides no generic device discovery mechanism. Under Linux, discovery is performed via the kernel command line. Ref VMMIO from doc.
  • MMIO Device Register Layout
    • MMIO virtio devices provide a set of memory mapped control registers followed by a device-specific configuration space. Ref here.

Related Issues:

#3

@sylvain-pierrot sylvain-pierrot self-assigned this Apr 21, 2024
@sylvain-pierrot sylvain-pierrot added the enhancement New feature or request label Apr 21, 2024
@sylvain-pierrot sylvain-pierrot linked an issue Apr 21, 2024 that may be closed by this pull request
sylvain-pierrot added 6 commits April 29, 2024 15:44
- MMIO Device Discovery by the kernel command line
- irq allocator

Signed-off-by: sylvain-pierrot <sylvain.pierrot@etu.umontpellier.fr>
Signed-off-by: sylvain-pierrot <sylvain.pierrot@etu.umontpellier.fr>
Signed-off-by: sylvain-pierrot <sylvain.pierrot@etu.umontpellier.fr>
Signed-off-by: sylvain-pierrot <sylvain.pierrot@etu.umontpellier.fr>
Signed-off-by: sylvain-pierrot <sylvain.pierrot@etu.umontpellier.fr>
Signed-off-by: sylvain-pierrot <sylvain.pierrot@etu.umontpellier.fr>
@sylvain-pierrot sylvain-pierrot marked this pull request as ready for review April 29, 2024 15:35
Signed-off-by: sylvain-pierrot <sylvain.pierrot@etu.umontpellier.fr>
Signed-off-by: sylvain-pierrot <sylvain.pierrot@etu.umontpellier.fr>
@sylvain-pierrot sylvain-pierrot requested a review from Kuruyia April 29, 2024 18:45
Copy link
Copy Markdown
Contributor

@Kuruyia Kuruyia left a comment

Choose a reason for hiding this comment

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

LGTM, nice work!

@sylvain-pierrot sylvain-pierrot merged commit b547afa into virt-do:main Apr 29, 2024
sylvain-pierrot added a commit to sylvain-pierrot/cloudlet that referenced this pull request Apr 30, 2024
* feat(virtio): configure net device
- MMIO Device Discovery by the kernel command line
- irq allocator

Signed-off-by: sylvain-pierrot <sylvain.pierrot@etu.umontpellier.fr>

* feat: add simple handler

Signed-off-by: sylvain-pierrot <sylvain.pierrot@etu.umontpellier.fr>

* refactor code architecture about devices + add queue/handlers

Signed-off-by: sylvain-pierrot <sylvain.pierrot@etu.umontpellier.fr>

* chore: fix traits for generic + refactor code

Signed-off-by: sylvain-pierrot <sylvain.pierrot@etu.umontpellier.fr>

* feat: add working device

Signed-off-by: sylvain-pierrot <sylvain.pierrot@etu.umontpellier.fr>

* refactor: remove all unwrap

Signed-off-by: sylvain-pierrot <sylvain.pierrot@etu.umontpellier.fr>

* fix: cargo clippy

Signed-off-by: sylvain-pierrot <sylvain.pierrot@etu.umontpellier.fr>

* refactor: remove unnecessary comments

Signed-off-by: sylvain-pierrot <sylvain.pierrot@etu.umontpellier.fr>

---------

Signed-off-by: sylvain-pierrot <sylvain.pierrot@etu.umontpellier.fr>
sylvain-pierrot added a commit that referenced this pull request Apr 30, 2024
* feat(virtio): Adding Virtio-net Support to Cloudlet (#22)

* feat(virtio): configure net device
- MMIO Device Discovery by the kernel command line
- irq allocator

Signed-off-by: sylvain-pierrot <sylvain.pierrot@etu.umontpellier.fr>

* feat: add simple handler

Signed-off-by: sylvain-pierrot <sylvain.pierrot@etu.umontpellier.fr>

* refactor code architecture about devices + add queue/handlers

Signed-off-by: sylvain-pierrot <sylvain.pierrot@etu.umontpellier.fr>

* chore: fix traits for generic + refactor code

Signed-off-by: sylvain-pierrot <sylvain.pierrot@etu.umontpellier.fr>

* feat: add working device

Signed-off-by: sylvain-pierrot <sylvain.pierrot@etu.umontpellier.fr>

* refactor: remove all unwrap

Signed-off-by: sylvain-pierrot <sylvain.pierrot@etu.umontpellier.fr>

* fix: cargo clippy

Signed-off-by: sylvain-pierrot <sylvain.pierrot@etu.umontpellier.fr>

* refactor: remove unnecessary comments

Signed-off-by: sylvain-pierrot <sylvain.pierrot@etu.umontpellier.fr>

---------

Signed-off-by: sylvain-pierrot <sylvain.pierrot@etu.umontpellier.fr>

* feat: configure guest iface address + rename vmm cli args for better understanding

Signed-off-by: sylvain-pierrot <sylvain.pierrot@etu.umontpellier.fr>

* Feat/grpc streams (#31)

* feat: streaming and pty setup

---------

Signed-off-by: Mauran <thomas.mauran@etu.umontpellier.fr>
Signed-off-by: sylvain-pierrot <sylvain.pierrot@etu.umontpellier.fr>

---------

Signed-off-by: sylvain-pierrot <sylvain.pierrot@etu.umontpellier.fr>
Signed-off-by: Mauran <thomas.mauran@etu.umontpellier.fr>
Co-authored-by: Thomas Mauran <78204354+thomas-mauran@users.noreply.github.com>
remi-espie pushed a commit to remi-espie/cloudlet that referenced this pull request May 1, 2024
* feat(virtio): Adding Virtio-net Support to Cloudlet (virt-do#22)

* feat(virtio): configure net device
- MMIO Device Discovery by the kernel command line
- irq allocator

Signed-off-by: sylvain-pierrot <sylvain.pierrot@etu.umontpellier.fr>

* feat: add simple handler

Signed-off-by: sylvain-pierrot <sylvain.pierrot@etu.umontpellier.fr>

* refactor code architecture about devices + add queue/handlers

Signed-off-by: sylvain-pierrot <sylvain.pierrot@etu.umontpellier.fr>

* chore: fix traits for generic + refactor code

Signed-off-by: sylvain-pierrot <sylvain.pierrot@etu.umontpellier.fr>

* feat: add working device

Signed-off-by: sylvain-pierrot <sylvain.pierrot@etu.umontpellier.fr>

* refactor: remove all unwrap

Signed-off-by: sylvain-pierrot <sylvain.pierrot@etu.umontpellier.fr>

* fix: cargo clippy

Signed-off-by: sylvain-pierrot <sylvain.pierrot@etu.umontpellier.fr>

* refactor: remove unnecessary comments

Signed-off-by: sylvain-pierrot <sylvain.pierrot@etu.umontpellier.fr>

---------

Signed-off-by: sylvain-pierrot <sylvain.pierrot@etu.umontpellier.fr>

* feat: configure guest iface address + rename vmm cli args for better understanding

Signed-off-by: sylvain-pierrot <sylvain.pierrot@etu.umontpellier.fr>

* Feat/grpc streams (virt-do#31)

* feat: streaming and pty setup

---------

Signed-off-by: Mauran <thomas.mauran@etu.umontpellier.fr>
Signed-off-by: sylvain-pierrot <sylvain.pierrot@etu.umontpellier.fr>

---------

Signed-off-by: sylvain-pierrot <sylvain.pierrot@etu.umontpellier.fr>
Signed-off-by: Mauran <thomas.mauran@etu.umontpellier.fr>
Co-authored-by: Thomas Mauran <78204354+thomas-mauran@users.noreply.github.com>
Signed-off-by: ESPIE <remi.espie@etu.umontpellier.fr>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Add virtio-net support to Lumper

3 participants