public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Gerd Hoffmann <kraxel@redhat.com>
To: Daniel Vetter <daniel@ffwll.ch>
Cc: dri-devel <dri-devel@lists.freedesktop.org>,
	open list <linux-kernel@vger.kernel.org>,
	"open list:VIRTIO GPU DRIVER" 
	<virtualization@lists.linux-foundation.org>
Subject: Re: [PATCH v3 7/7] [wip] virtio-gpu: add page flip support
Date: Tue, 31 May 2016 08:18:20 +0200	[thread overview]
Message-ID: <1464675500.5978.15.camel@redhat.com> (raw)
In-Reply-To: <20160530144325.GJ27098@phenom.ffwll.local>

  Hi,

> > https://lists.freedesktop.org/archives/dri-devel/2016-May/108772.html
> 
> Hm, smells more like virtio isn't too happy with the default ordering of
> the commit operation. The default is:
> 
> - Disable any crtc/encoders that need to be disabled/change.
> - Bash new plane setup into hw.
> - Enable all crtcs/encoders that need to be enabled/have changed.
> 
> There's two problems:
> - some hw gets real grumpy if you bash in plane state without the crtc
>   state yet matching.
> - if you do runtime pm nothing is enabled and the writes get lost at best,
>   or hang your interconnect at worst.
> 
> That's why you can overwrite atomic_commit_tail, and use something more
> sensible. See for example what it looks like for rockchip. I have a gut
> feeling that should also take care of your troubles. Using the old crtc is
> definitely not what you want.

> Another option is that virtio isn't happy about bashing in plane state for
> disabled crtc. Again helpers have you covered, look at the active_only
> parameter for drm_atomic_helper_commit_planes().

virtio-gpu is a bit simplified compared to real hardware, so there isn't
really separate plane/crtc state.

Right now the virtual outputs are linked to drm_crtc.  To apply any
changes I need to lookup the crtc to figure which virtual output should
be updated.

So, setting active_only should make sure I have a valid crtc pointer on
plane updates, right?  It probably also skips the disable + enable crtc
steps on commit?  What happens when outputs are disabled?

Maybe it makes sense to link our virtual outputs to (primary) planes not
crtcs?

cheers,
  Gerd

  reply	other threads:[~2016-05-31  6:18 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <1443787104-24243-1-git-send-email-kraxel@redhat.com>
2015-10-02 11:58 ` [PATCH v3 1/7] virtio-gpu: add virtio_gpu_queue_ctrl_buffer_locked Gerd Hoffmann
2015-10-02 11:58 ` [PATCH v3 2/7] virtio-gpu: add & use virtio_gpu_queue_fenced_ctrl_buffer Gerd Hoffmann
2015-10-02 11:58 ` [PATCH v3 3/7] virtio-gpu: wait for cursor updates finish Gerd Hoffmann
2015-10-02 11:58 ` [PATCH v3 4/7] virtio-gpu: add 3d/virgl support Gerd Hoffmann
2015-10-02 11:58 ` [PATCH v3 5/7] virtio-gpu: add basic prime support Gerd Hoffmann
2015-10-02 11:58 ` [PATCH v3 6/7] virtio-gpu: mark as a render gpu Gerd Hoffmann
2015-10-02 11:58 ` [PATCH v3 7/7] [wip] virtio-gpu: add page flip support Gerd Hoffmann
2016-05-25 16:37   ` Daniel Vetter
2016-05-27  7:46     ` Gerd Hoffmann
2016-05-27  7:50       ` Daniel Vetter
2016-05-30  8:42         ` Daniel Vetter
2016-05-30 12:06           ` Gerd Hoffmann
2016-05-30 14:43             ` Daniel Vetter
2016-05-31  6:18               ` Gerd Hoffmann [this message]
2016-05-31  6:37                 ` Daniel Vetter
2016-05-31  7:34                   ` Gerd Hoffmann
2016-05-31  7:39                     ` Daniel Vetter

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1464675500.5978.15.camel@redhat.com \
    --to=kraxel@redhat.com \
    --cc=daniel@ffwll.ch \
    --cc=dri-devel@lists.freedesktop.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=virtualization@lists.linux-foundation.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox