+5
−0
+21
−0
+3
−0
drivers/lguest/lguest_device.c
0 → 100644
+373
−0
+19
−28
Loading
Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more
This makes lguest able to use the virtio devices.
We change the device descriptor page from a simple array to a variable
length "type, config_len, status, config data..." format, and
implement virtio_config_ops to read from that config data.
We use the virtio ring implementation for an efficient Guest <-> Host
virtqueue mechanism, and the new LHCALL_NOTIFY hypercall to kick the
host when it changes.
We also use LHCALL_NOTIFY on kernel addresses for very very early
console output. We could have another hypercall, but this hack works
quite well.
Signed-off-by:
Rusty Russell <rusty@rustcorp.com.au>