Create the hypervisor package#1208
Conversation
|
@sameo looks like a refactor. any updates? still working through the tests? Thx! |
92308a8 to
54fab52
Compare
This is the minimal package to help us define the hypervisor interface into its own package. Fixes: kata-containers#1229 Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
There is currently a cyclic logical dependency between network, endpoint and hypervisor structures, types and APIs. Hypervisor interface implementations call into the Endpoint interface, which itself calls into the Network* APIs. Since we want to move all hypervisor implementations under the hypervisor package, we need to: - Split the network implementation into 3 pieces: Types definitions, core namespace API and Endpoints. - Move the Endpoint handling under the hypervisor package. This could be splitted further if we manage to decouple the Hypervisor interface from the Endpoint one, and vice-versa. Fixes: kata-containers#1229 Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
This is a generic type, shared across the agent and hypervisor implementations. Fixes: kata-containers#1229 Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
Max VCPUs is a QEMU specific configuration. In order to even decouple further the hypervisor interface from downward dependencies (e.g. qemu), we leave the hypervisor max VCPUs configuration handling down to the hypervisor implementation itself. Fixes: kata-containers#1229 Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
54fab52 to
66a6d7e
Compare
We can now move the qemu implementation and test under the hypervisor package. Fixes: kata-containers#1229 Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
We can now move the mock implementation and test under the hypervisor package. Fixes: kata-containers#1229 Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
We can now move the firecracker implementation and test under the hypervisor package. Fixes: kata-containers#1229 Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
66a6d7e to
c9fd159
Compare
|
/test |
sboeuf
left a comment
There was a problem hiding this comment.
@sameo
The whole PR looks globally good, but it feels really not natural to move endpoints under the hypervisor package as you did in the commit virtcontainers: hypervisor: Move endpoints under hypervisor.
You explained the cyclic dependency, and I understand the issue behind this, but aren't we making a mistake by moving Endpoints to this new hypervisor package just for the sake of getting the code to compile?
|
@sameo The PR looks good overall. But I agree with @sboeuf, moving the network endpoints under hypervisor package, although solves the cyclic issue, seems a bit counter-intuitive. |
|
@amshinde @sboeuf I fully agree that it's not entirely natural to put |
|
Adding |
I already did that a few days ago...See #1209 |
|
Needs a rebase though ;) |
|
@sameo - this still needs a rebase. @kata-containers/runtime - are you there? :) |
|
I guess this PR depend on #1233 being merged first. |
|
@sameo ping, any updates? Thx! |
|
@sameo nudge |
|
@sameo any updates? |
|
need help for driving this forward. Added 'needs-help' label |
|
Any takers? |
|
Pinging from your weekly herder, any takers? 😄 🙏 |
|
Hey guys, I want to take care of this, but it looks like this PR it's hard to reanimate, since there is to much conflicts, it's almost impossible to resolve them, believe me, I spent 4 hours trying to do that. |
|
@Zyqsempai Yes, you can create a new one. |
|
Also, I see that there is an open question about |
|
@raravena80 @caoruidong @egernst So, i am almost finished, the only one question is still open, is |
|
@Zyqsempai Any update on this PR? Thx |
|
@Zyqsempai any updates? Your weekly Kata herder. |
|
@Zyqsempai ping 😄 |
|
Sorry guys, didn't had enough time to work on it, will try to look into it on this week. |
|
@Zyqsempai friendly ping 😄 |
|
@Zyqsempai this is old, should we close this and move the work to 2.0? |
|
@Zyqsempai Two friendly pings, the last one in June, and in bad need of a rebase. |
With the
storepackage now merged in, we can finally create a standalonehypervisorpackage for all thing hypervisor/vmm related. We still want to decouple theEndpointinterface from thehypervisorpackage but that can be done as a follow up step.Fixes #1229