On 04/26/2011 04:14 AM, Gerd Hoffmann wrote:
Hi,
I think that would work well for spice. Spice uses shared memory from
the
pci device for both the framebuffer and surfaces/commands, but this is
Is that the only DMA do you do? That's good for this model.
Yes. Spice does both reads and writes though, so a way to tag pages as
dirty is needed.
Just implementing Spice as it currently is in a separate process isn't
going to be useful IMHO.
I would think that the best approach would be to parse all of the ring
requests in QEMU itself, and issue higher level commands to a separate
process. You can still have the video memory segment mapped in a
separate process but QEMU should know enough about what's going on to
take care of dirtying the memory.
Sort of like how we deal with SCSI passthrough. We interpret enough of
the command to hand it off to something else and then handle the return
logic.
Having QEMU as an intermediary is important to preserve our current
security model. We shouldn't be passing unsanitized guest input to an
external process.
Regards,
Anthony Liguori
cheers,
Gerd