From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jesse Barnes Subject: Re: [RFC] Async flips Date: Wed, 31 Oct 2012 09:27:02 -0700 Message-ID: <20121031092702.2aecead3@jbarnes-desktop> References: <1351622029-2276-1-git-send-email-jbarnes@virtuousgeek.org> <20121031125324.GD3791@intel.com> <20121031082349.37933396@jbarnes-desktop> <20121031083909.7c2eecec@jbarnes-desktop> <84c8a8$6bko2f@orsmga001.jf.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Return-path: Received: from oproxy7-pub.bluehost.com (oproxy7-pub.bluehost.com [67.222.55.9]) by gabe.freedesktop.org (Postfix) with SMTP id 7B4519ECF7 for ; Wed, 31 Oct 2012 09:26:55 -0700 (PDT) In-Reply-To: <84c8a8$6bko2f@orsmga001.jf.intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: intel-gfx-bounces+gcfxdi-intel-gfx=m.gmane.org@lists.freedesktop.org Errors-To: intel-gfx-bounces+gcfxdi-intel-gfx=m.gmane.org@lists.freedesktop.org To: Chris Wilson Cc: intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org On Wed, 31 Oct 2012 15:49:36 +0000 Chris Wilson wrote: > On Wed, 31 Oct 2012 08:39:09 -0700, Jesse Barnes wrote: > > On Wed, 31 Oct 2012 16:26:54 +0100 > > Daniel Vetter wrote: > > > > > On Wed, Oct 31, 2012 at 4:23 PM, Jesse Barnes wrote: > > > > > > > >> On Tue, Oct 30, 2012 at 01:33:47PM -0500, Jesse Barnes wrote: > > > >> > The hw supports async flips through the render ring, so why not expose it? > > > >> > It gives us one more "tear me harder" option we can use in the DDX and > > > >> > for other cases where simply flipping to the latest buffer is more > > > >> > important than visual quality. > > > >> > > > >> The only reason I can see why anyone would really want async flips is > > > >> when you're restricted to double buffering. With triple buffering you > > > >> should be able to override the previous flip w/o tearing. > > > >> > > > >> Well, actually if you use the ring based flips, then you can't do the > > > >> override. My atomic page flip code can do it because it's using mmio > > > >> flips. There were also other reasons favoring mmio over ring. > > > >> > > > >> Once the atomic code is deemed ready, I would suggest we just nuke the > > > >> ring based flip code (pun intended). > > > > > > > > Yeah, I agree. In fact one of the first versions of the flip code used > > > > mmio, and I think it's a better way to go. > > > > > > How are we gonna sync up with outstanding rendering before issuing the > > > flip? If the answer is involves enabling the render irq, I'm not gonna > > > like it ;-) > > > > Why are you afraid of irqs when rendering is active? We'll already be > > awake at those times anyway... > > Because it involves the driver stalling. Can you elaborate? I know there are pros & cons to mmio vs ring. Synchronization is different in each case, and getting the flip to happen when you want can be tough too in both cases. -- Jesse Barnes, Intel Open Source Technology Center