vmm: fix console resizing #6704
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
DeviceManager::add_virtio_console_deviceused to create the console resize pipe and assign it toself.console_resize_pipe, but when this was changed to use console_info, that was deleted without replacement. This meant that, even though the console resize pipe was created bypre_create_console_devices, theDeviceManagernever found out about it, so console resize didn't work (at least for pty consoles).To fix this, the console resize pipe needs to be passed to the
Vminitializer, which is already supported, it was just previously not used for new VMs.Since
DeviceManageralready stores the console resize pipe in anArc, andVmmalso needs a copy of it, the sensible thing to do is changeDeviceManager::newto takeArc, and then we don't need to dup the file descriptor, which could fail.Fixes: 52eebaf ("vmm: refactor DeviceManager to use console_info")