Re: [PATCH] kvm tools, ui: Optimize SDL updates

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



* Alexander Graf <agraf@xxxxxxx> wrote:

> 
> On 04.06.2011, at 12:42, Ingo Molnar wrote:
> 
> > 
> > * Alexander Graf <agraf@xxxxxxx> wrote:
> > 
> >> I wrote up 2 virtio-fb implementations a while back and I still 
> >> believe it's a bad idea. Better implement QXL in kvm-tool, so work 
> >> doesn't get needlessly duplicated. If you really have to use virtio 
> >> for whatever reason (no PCI available), just write a small QXL over 
> >> virtio transport that allows you to reuse the protocol.
> >> 
> >> I really don't want to see people waste time on reinventing the 
> >> wheel over and over again.
> > 
> > Oh, we are just ignorantly blundering around trying to find a good 
> > solution! :-)
> > 
> > We are not trying to reimplement the wheel (at all), if you check we 
> > started with VNC GUI support which is as far from NIH as it gets! :-)
> > 
> > I didn't know about QXL but it looks interesting at first sight: a 
> > virtual GPU seen by the guest OS with Xorg support for it in the 
> > guest Xorg. But i do not see guest kernel framebuffer support for it 
> > - how does that aspect work, if one boots without Xorg, etc.?
> 
> IIUC it implements VESA and just goes through the respective fb. 
> [...]

So, if you look at the context of this dicussion our motivation is 
slow scrolling and our desire to support smooth scrolling on 64-bit 
too. It was unclear whether VESA would proper panning/scrolling on 
64-bit as well - Pekka thinks that it is not supported there.

> [...] I would love to see a QXL fb implementation though. I'd also 
> love to see QXL working on !PCI, so we can potentially use it on 
> s390x and ppc-hv which can't easily do MMIO.
> 
> So instead of putting effort into writing virtio-fb host and guest 
> sides, why not implement QXL-fb against a working target (qemu) and 
> then implement the QXL host side against a working target (working 
> guest support)? That probably makes the development process a lot 
> easier.

Have a look at the 'kvm' tool:

  git pull git://github.com/penberg/linux-kvm master

We'd like to implement better graphics support there, in a gradual 
fashion if possible. Right now we have VNC and SDL support - two 
rather primitive 2D framebuffer concepts with no acceleration at all.

If you think qxl-fb can be done gradually in that context then that's 
probably the right solution. Is there *any* QXL code in the kernel 
that would allow us to get started? I really know nothing about QXL.

The natural steps for us would be:

 - add primitive 2D acceleration support: scrolling

 - check what it would require to get good guest Xorg support. QXL has
   a full driver on the guest side Xorg server - but how does this
   get channeled over to the virtualizer - is it a magic PCI device
   that the host has to provide to the guest and which the guest Xorg
   server uses as a PCI device? Or does the guest side DRM code know
   about this GPU and uses it in KMS?

Thanks,

	Ingo
--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [KVM ARM]     [KVM ia64]     [KVM ppc]     [Virtualization Tools]     [Spice Development]     [Libvirt]     [Libvirt Users]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite Questions]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux