mikelangelo-project / capstan

Capstan, a tool for packaging and running your application on OSv.
http://osv.io/capstan/
Other
19 stars 7 forks source link

Use QEMU aio=threads by default #77

Closed miha-plesko closed 6 years ago

miha-plesko commented 6 years ago

Currently we use aio=native by default and then conditionally swap it to aio=threads depending on the platform where run. But it seems like that support for "native" is fading away. On Ubuntu 16 it still works, but on Ubuntu 17 it doesn't work anymore. With this commit we therefore use a more general option by default and allow user to explicitly set "native" in $HOME/.capstan/config.yaml when desired.

miha-plesko commented 6 years ago

With @gasper-vrhovsek we were debugging why capstan package compose fails on his Ubuntu 17. Our guess is that it's because of newer QEMU version (he has 2.8, and I have 2.5). However, then we've tried @wkozaczuk 's fix for OSX and it worked on Ubuntu 17 as well. Therefore we decided to make the fix active by default.

gasper-vrhovsek commented 6 years ago

Correct. FYI I am appending the result of

$ virsh version
Compiled against library: libvirt 2.5.0
Using library: libvirt 2.5.0
Using API: QEMU 2.5.0
Running hypervisor: QEMU 2.8.0

I also suspect libvirt, as @miha-plesko has version 1.3.1 and I have 2.5.0

gberginc commented 6 years ago

https://wiki.qemu.org/ChangeLog/2.6 -- can you check that the native option is really fully disabled? I am a bit puzzled about the options.

miha-plesko commented 6 years ago

@gberginc thanks for the link. Look what does it say there:

capture

In other words: we should really go with aio=threads by default. Please merge.

miha-plesko commented 6 years ago

Merging this one since the review converged, only Merge button wasn't pushed.