avsm changed the topic of #mirage to: Good news everyone! Mirage 3.0 released!
brson has joined #mirage
copy` has quit [Quit: Connection closed for inactivity]
twold has quit [Ping timeout: 240 seconds]
twold has joined #mirage
tchell has quit [Ping timeout: 240 seconds]
tchell has joined #mirage
brson has quit [Quit: leaving]
insitu has joined #mirage
insitu has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
insitu has joined #mirage
insitu has quit [Client Quit]
insitu has joined #mirage
insitu has quit [Client Quit]
fgimenez has joined #mirage
fgimenez has joined #mirage
fgimenez has quit [Changing host]
insitu has joined #mirage
tomboy64 has quit [Quit: WeeChat 1.7]
tomboy64 has joined #mirage
smkz has quit [Quit: reboot]
smkz has joined #mirage
mort___ has joined #mirage
argent_smith has joined #mirage
smondet[m] has quit [Remote host closed the connection]
srenatus[m] has quit [Remote host closed the connection]
smondet[m] has joined #mirage
insitu has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
tomboy64 has quit [Ping timeout: 240 seconds]
tomboy64 has joined #mirage
insitu has joined #mirage
insitu has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
srenatus[m] has joined #mirage
<dmj`>
hannes: was curious, if solo5 is the unikernel base layer for bhyve and kvm hypervisors, what is the base layer for targeting osx’s hypervisor.framework, using mirage.
<dmj`>
kensan: this seems to be a fork of solo5 which reynir linked to as well. I think solo5 is meant to target the kvm and bhyve hypervisors, which I don’t believe run on osx
<dstolfa>
dmj`: They're supporting Hypervisor.Framework as well
<dstolfa>
dmj`: Look at the pull requests
<dstolfa>
dmj`: Native bhyve and Mac OS X support is coming
* dmj`
looks at Solo5’s PR's
<dmj`>
dstolfa: you did mean the the Solo5 Pull Requests right? Not hyperkit
<kensan>
dmj`: Solo5 supports KVM and virtio as backend currently but others are in the works.
<kensan>
dmj`: One is OS X which djwillia is doing, mato is working on native bhyve support afaict.
<kensan>
dmj`: I did a port for Muen.
<kensan>
but I am waiting for PR 171 to land.
<dstolfa>
kensan: Indeed :)
<dstolfa>
That one seems very good
<dmj`>
kensan, dstolfa: so would you say the development effort of Solo5 is converging on a hypervisor independent architecture
<dstolfa>
dmj`: Yep, that seems to be the case
<dmj`>
dstolfa: that’s pretty awesome
<dmj`>
dstolfa: once that happens, would the plan be to obviate hyperkit usage w/ mirage? (I’m assuming mirage -t osx is using https://github.com/docker/hyperkit under the hood)
<dstolfa>
dmj`: I don't actually know, I don't know the Mac OS X architecture that detailed, as I'm on FreeBSD
<dstolfa>
But I'm fairly sure that the person doing it does :)
<dmj`>
mato seems to be in every github group related to unikernels
<dmj`>
dstolfa: wait, what about Xen? Would this work be inclusive of that?
<dmj`>
I’m under the assumption Xen is “different enough” to warrant it’s own backend (MiniOS)
<dstolfa>
dmj`: Think so, mato might be best to ask actually
<dstolfa>
dmj`: Well yes, Xen has more of a microkernel design
<dstolfa>
But I'm fairly sure that there is interest in that
<dmj`>
geez, this is crazy
<dmj`>
in a good way
* dmj`
looks at kernel/solo5.h & ukvm/ukvm.h
<dmj`>
debugging the unikernel… now that’s something that is painful in xen w/ gdbsx
<dmj`>
what does the ‘5’ in solo5 mean
<dmj`>
5 hypervisors?
<mato>
dmj`: mirage -t osx (or whatever the target is) is just a unix process, no hypervisor involved
<mato>
dmj`: I forget the exact reason why osx can't just use `-t unix`...
<mato>
dmj`: If you're reading ukvm.h, go read the one in PR 171 instead, it's much better :)
<dmj`>
mato: hah, ok
* dmj`
looks at PR 171
<dmj`>
wow, you’re testing unikernels on travis
<dmj`>
I didn’t know travis supported tap devices
<mato>
only the virtio ones unfortunately. ukvm (and vmmapi, and hvf, and ...) all need actual bare metal.
<mato>
(which i have, and hooking it up to github as ci is somewhere deep on the stack of things to do)
<dmj`>
speaking of the list of things to do :) had mentioned Xen earlier to dstolfa, in the quest for hypervisor independence, is Xen a viable target for solo5
<dmj`>
is the goal to have an abstraction over all hyper calls?
<mato>
re Xen, not really
<dstolfa>
dmj`: That's kind of difficult to do as hypervisors provide different hypercalls, at least on the level of VMCALL/VMMCALL
<mato>
the mirage xen target needs updating to be based on top of ocaml-freestanding and upstream mini-os
<mato>
but xen is quite a different beast since its a type I hypervisor
<mato>
the ukvm approach only really works for type II hypervisors, which is fine for the moment
<dmj`>
ah, so Xen is the black sheep of hypervisors. So type II being bhyve, Hypervisor.Framework, and KVM?
<mato>
i wouldn't call it a black sheep, nothing wrong with xen :)
<mato>
type II are KVM, FreeBSD vmm (bhyve is the userspace monitor bit), OpenBSD vmm, Hypervisor.framework, among others.
<dmj`>
heh ok :] Maybe that’s Hyper-V and Esxi (the black sheep)… or could solo5 target them as well
<mato>
ESXi is type I AFAIK. Hyper-V I'm not sure, but it exposes no public API that would give us the control we need.
<dmj`>
Hmm, interesting. So it seems like solo5 is the most mature unikernel base layer then. Outside of miniOS and Xen, mirage can run on only the hypervisors solo5 supports, correct?
<dmj`>
Or is mirage somehow targeting Hypervisor.Framework outside of PR171
<mato>
Nope, only via Solo5, you are correct.
insitu has joined #mirage
<dmj`>
Very cool. So then docker must be targeting Hypervisor.Framework w/o using a mirage unikernel…
<mattg>
dmj` my understanding is that Docker for Mac runs a minimal linux VM (iirc based on Alpine) on Hypervisr.Framework, and uses some Mirage libs to help with various tasks
<dmj`>
mattg: Ah, very interesting... “minimal” :P
mort___ has quit [Quit: Leaving.]
<kensan>
Muen could also be considered a Type-I hypervisor but its main function is not to be a hv.
mort___ has joined #mirage
insitu has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
insitu has joined #mirage
insitu has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
yomimono has joined #mirage
lars_kurth_ is now known as lars_kurth
insitu has joined #mirage
yegods has joined #mirage
yegods has quit []
tomboy64 has quit [Ping timeout: 240 seconds]
mort___ has quit [Quit: Leaving.]
yomimono has quit [Ping timeout: 260 seconds]
yomimono has joined #mirage
fgimenez has quit [Ping timeout: 258 seconds]
fgimenez has joined #mirage
fgimenez has joined #mirage
fgimenez has quit [Changing host]
insitu has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
insitu has joined #mirage
mort___ has joined #mirage
fgimenez has quit [Remote host closed the connection]