-
Notifications
You must be signed in to change notification settings - Fork 19
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
Configurability of cache
mode for disks with qemu
#67
Comments
Seems reasonable. Is there a reason to use |
Pondering about this a bit, I don't really see any reason for this action to use |
Then I suggest we just change the hardcoded value to |
Yes, that sounds good to me 👍. |
One more thought: Of course, if GitHub already uses |
I agree, I think the default can be |
Added - Added support for using the action in multiple steps in the same job ([cross-platform-actions#26](cross-platform-actions#26)). All the inputs need to be the same for all steps, except for the following inputs: `sync_files`, `shutdown_vm` and `run`. - Added support for specifying that the VM should not shutdown after the action has run. This adds a new input parameter: `shutdown_vm`. When set to `false`, this will hopefully mitigate very frequent freezing of VM during teardown ([cross-platform-actions#61](cross-platform-actions#61), [cross-platform-actions#72](cross-platform-actions#72)). Changed - Always terminate VM instead of shutting down. This is more efficient and this will hopefully mitigate very frequent freezing of VM during teardown ([cross-platform-actions#61](cross-platform-actions#61), [cross-platform-actions#72](cross-platform-actions#72)). - Use `unsafe` as the cache mode for QEMU disks. This should improve performance ([cross-platform-actions#67](cross-platform-actions#67)).
For most CI use cases, using
unsafe
instead ofwriteback
is very reasonable for a significant performance gain. It seems reasonable whenever the file systems on the actual disk images do not need to stay intact in case of unexpected hardware (or kernel) failure, which is a reasonable assumption for CI (if it fails, it fails, no salvaging from the broken disk images will be done usually).Behaviour is effectively similar to ignoring
fsync()
system calls, which e.g.eatmydata
does which is commonly used on Debian systems e.g. for package builds to gain performance.So my proposal would be to allow to configure the
cache
mode forqemu
VMs, currently,writeback
is hardcoded (which of course is a reasonable default, since it works well for any usecase):https://github.com/cross-platform-actions/action/blob/de0e1f18a909bf9562ca13842e70a71b8b0c8938/src/qemu_vm.ts#L60C1-L64
The text was updated successfully, but these errors were encountered: