Require QEMU 7.2.0+ in machine 5 and switch to Unix domain socket networking #21544
Labels
kind/feature
Categorizes issue or PR as related to a new feature.
locked - please file new issue/PR
Assist humans wanting to comment on an old issue or PR with locked comments.
machine
Feature request description
Historically QEMU machine was wiring QEMU networking by forwarding file descriptor, because there was no API exposed to use unix machine socket. Since 7.2.0 this is API is public. There was also no ready to use machinery to define this socket, but now there is one, which is used by AppleHV with its networking device https://github.com/containers/podman/blob/8f8af49a4ee6f177c210f580b00cd7b5b21b8625/pkg/machine/applehv/stubber.go#L100C25-L100C38
Suggest potential solution
Change from FD to Unix domain socket. This is breaking for old machines, but I believe machine 5 is the only good time to do it. The solution has been prototyped for machine 4 as an alternative option in #15852 but with machine 5 it should be possible to just switch and ultimately simplify the code. It would also be more uniform with how AppleHV networking is implemented.
Additional benefit of using Unix domain sockets is that they are more cross platform than FDs.
Have you considered any alternatives?
Provide Unix domain socket alternative as an opt in option, but this increases implementation complexity.
Additional context
This issue is created in scope to discuss and propose more ideas for the large refactoring of the Podman Machine 5.
The text was updated successfully, but these errors were encountered: