From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754196AbbCYPTR (ORCPT ); Wed, 25 Mar 2015 11:19:17 -0400 Received: from mx1.redhat.com ([209.132.183.28]:34206 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753662AbbCYPTP (ORCPT ); Wed, 25 Mar 2015 11:19:15 -0400 Message-ID: <1427296740.23304.21.camel@nilsson.home.kraxel.org> Subject: Re: [PATCH] Add virtio gpu driver. From: Gerd Hoffmann To: Daniel Stone Cc: virtio-dev@lists.oasis-open.org, "Michael S. Tsirkin" , "open list:ABI/API" , Rusty Russell , open list , "open list:DRM DRIVERS" , "open list:VIRTIO CORE, NET..." , Dave Airlie Date: Wed, 25 Mar 2015 16:19:00 +0100 In-Reply-To: References: <1427213239-8775-1-git-send-email-kraxel@redhat.com> Content-Type: text/plain; charset="UTF-8" Mime-Version: 1.0 Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Di, 2015-03-24 at 22:50 +0000, Daniel Stone wrote: > Hi, > > On 24 March 2015 at 16:07, Gerd Hoffmann wrote: > > +static int virtio_gpu_crtc_page_flip(struct drm_crtc *crtc, > > + struct drm_framebuffer *fb, > > + struct drm_pending_vblank_event *event, > > + uint32_t flags) > > +{ > > + return -EINVAL; > > +} > > I'm not going to lie, I was really hoping the 5th (?) GPU option for > Qemu would support pageflipping. As Dave already pointed out there is a WIP patch for that, it'll be there. While being at it: - bochsdrm (qemu -vga std driver) supports pageflip since 3.19. - cirrus is more or less a lost case, we mimic existing hardware from the 90ies here and it simply isn't up to todays needs for many reasons. Just stop using it. - qxl -- hmm, not sure, there is this "primary surface" concept in the virtual hardware design, which doesn't mix very well with pageflip I suspect. > Daniel's comment about conversion to > atomic is relevant, but: do you have a mechanism which allows you to > post updates (e.g. 'start displaying this buffer now please') that > allows you to get events back when they have actually been displayed? It's possible to fence the framebuffer update requests, so you'll be notified when the update has reached the qemu ui code. Typically the ui code has queued the update at that point. So with a local display (sdl, gtk) showing up on the screen should be just a pageflip (on the host) away. With a remote display (vnc) it will take a little longer until the user will actually see the update. cheers, Gerd From mboxrd@z Thu Jan 1 00:00:00 1970 From: Gerd Hoffmann Subject: Re: [PATCH] Add virtio gpu driver. Date: Wed, 25 Mar 2015 16:19:00 +0100 Message-ID: <1427296740.23304.21.camel@nilsson.home.kraxel.org> References: <1427213239-8775-1-git-send-email-kraxel@redhat.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Daniel Stone Cc: virtio-dev@lists.oasis-open.org, "Michael S. Tsirkin" , "open list:ABI/API" , Rusty Russell , open list , "open list:DRM DRIVERS" , "open list:VIRTIO CORE, NET..." , Dave Airlie List-Id: linux-api@vger.kernel.org T24gRGksIDIwMTUtMDMtMjQgYXQgMjI6NTAgKzAwMDAsIERhbmllbCBTdG9uZSB3cm90ZToKPiBI aSwKPiAKPiBPbiAyNCBNYXJjaCAyMDE1IGF0IDE2OjA3LCBHZXJkIEhvZmZtYW5uIDxrcmF4ZWxA cmVkaGF0LmNvbT4gd3JvdGU6Cj4gPiArc3RhdGljIGludCB2aXJ0aW9fZ3B1X2NydGNfcGFnZV9m bGlwKHN0cnVjdCBkcm1fY3J0YyAqY3J0YywKPiA+ICsgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICBzdHJ1Y3QgZHJtX2ZyYW1lYnVmZmVyICpmYiwKPiA+ICsgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBzdHJ1Y3QgZHJtX3BlbmRpbmdfdmJsYW5rX2V2ZW50ICpl dmVudCwKPiA+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1aW50MzJfdCBm bGFncykKPiA+ICt7Cj4gPiArICAgICAgIHJldHVybiAtRUlOVkFMOwo+ID4gK30KPiAKPiBJJ20g bm90IGdvaW5nIHRvIGxpZSwgSSB3YXMgcmVhbGx5IGhvcGluZyB0aGUgNXRoICg/KSBHUFUgb3B0 aW9uIGZvcgo+IFFlbXUgd291bGQgc3VwcG9ydCBwYWdlZmxpcHBpbmcuCgpBcyBEYXZlIGFscmVh ZHkgcG9pbnRlZCBvdXQgdGhlcmUgaXMgYSBXSVAgcGF0Y2ggZm9yIHRoYXQsIGl0J2xsIGJlCnRo ZXJlLgoKV2hpbGUgYmVpbmcgYXQgaXQ6CiAtIGJvY2hzZHJtIChxZW11IC12Z2Egc3RkIGRyaXZl cikgc3VwcG9ydHMgcGFnZWZsaXAgc2luY2UgMy4xOS4KIC0gY2lycnVzIGlzIG1vcmUgb3IgbGVz cyBhIGxvc3QgY2FzZSwgd2UgbWltaWMgZXhpc3RpbmcgaGFyZHdhcmUKICAgZnJvbSB0aGUgOTBp ZXMgaGVyZSBhbmQgaXQgc2ltcGx5IGlzbid0IHVwIHRvIHRvZGF5cyBuZWVkcyBmb3IKICAgbWFu eSByZWFzb25zLiAgSnVzdCBzdG9wIHVzaW5nIGl0LgogLSBxeGwgLS0gaG1tLCBub3Qgc3VyZSwg dGhlcmUgaXMgdGhpcyAicHJpbWFyeSBzdXJmYWNlIiBjb25jZXB0IGluCiAgIHRoZSB2aXJ0dWFs IGhhcmR3YXJlIGRlc2lnbiwgd2hpY2ggZG9lc24ndCBtaXggdmVyeSB3ZWxsIHdpdGgKICAgcGFn ZWZsaXAgSSBzdXNwZWN0LgoKPiBEYW5pZWwncyBjb21tZW50IGFib3V0IGNvbnZlcnNpb24gdG8K PiBhdG9taWMgaXMgcmVsZXZhbnQsIGJ1dDogZG8geW91IGhhdmUgYSBtZWNoYW5pc20gd2hpY2gg YWxsb3dzIHlvdSB0bwo+IHBvc3QgdXBkYXRlcyAoZS5nLiAnc3RhcnQgZGlzcGxheWluZyB0aGlz IGJ1ZmZlciBub3cgcGxlYXNlJykgdGhhdAo+IGFsbG93cyB5b3UgdG8gZ2V0IGV2ZW50cyBiYWNr IHdoZW4gdGhleSBoYXZlIGFjdHVhbGx5IGJlZW4gZGlzcGxheWVkPwoKSXQncyBwb3NzaWJsZSB0 byBmZW5jZSB0aGUgZnJhbWVidWZmZXIgdXBkYXRlIHJlcXVlc3RzLCBzbyB5b3UnbGwgYmUKbm90 aWZpZWQgd2hlbiB0aGUgdXBkYXRlIGhhcyByZWFjaGVkIHRoZSBxZW11IHVpIGNvZGUuICBUeXBp Y2FsbHkgdGhlIHVpCmNvZGUgaGFzIHF1ZXVlZCB0aGUgdXBkYXRlIGF0IHRoYXQgcG9pbnQuICBT byB3aXRoIGEgbG9jYWwgZGlzcGxheSAoc2RsLApndGspIHNob3dpbmcgdXAgb24gdGhlIHNjcmVl biBzaG91bGQgYmUganVzdCBhIHBhZ2VmbGlwIChvbiB0aGUgaG9zdCkKYXdheS4gIFdpdGggYSBy ZW1vdGUgZGlzcGxheSAodm5jKSBpdCB3aWxsIHRha2UgYSBsaXR0bGUgbG9uZ2VyIHVudGlsCnRo ZSB1c2VyIHdpbGwgYWN0dWFsbHkgc2VlIHRoZSB1cGRhdGUuCgpjaGVlcnMsCiAgR2VyZAoKCl9f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCmRyaS1kZXZlbCBt YWlsaW5nIGxpc3QKZHJpLWRldmVsQGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwOi8vbGlzdHMu ZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vZHJpLWRldmVsCg==