-
Notifications
You must be signed in to change notification settings - Fork 124
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[catpowder] Support NetVSC/VF dual NIC in hyper-V VMs #1453
Conversation
libos = catpowder
|
libos = catnip
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
- Could you add PR description?
- The commit message format is incorrect.
libos = catpowder
|
libos = catnip
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks fine to me. Is there a reason to keep the VF rx queues separate from the other rx queues? Could we just append them to the same vec?
I think we can merge them into one, although keeping them separate might serve some diagnostic purpose now or in the future. |
libos = catnap
|
libos = catnap
|
libos = catpowder
|
libos = catnip
|
d559bd2
to
a9bac1d
Compare
libos = catnap
|
libos = catpowder
|
libos = catnip
|
libos = catnap
|
libos = catpowder
|
libos = catnip
|
a9bac1d
to
7b4e60e
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good.
libos = catpowder
|
libos = catnap
|
libos = catnip
|
7b4e60e
to
46e2a6e
Compare
libos = catpowder
|
libos = catnip
|
libos = catnap
|
Motivation
On certain Hyper-V provisioned VMs, there're two NICs, one NetVSC, another VF. They can share same MAC address to act as single device from external point of view. Because VF is faster, it may be used to optimize data plane performance, while NetVSC is used for control plane. This is transparent to application layer if networking stack is done within the kernel. However, XDP bypasses the kernel, so we have to deal with it manually. This change would allow user to configure two interfaces for XDP to attach to and poll, as incoming packets could come from either the VF or the NetVSC.