From: Abdiel Janulgue <abdiel.janulgue@linux.intel.com>
To: Daniel Vetter <daniel@ffwll.ch>
Cc: intel-gfx@lists.freedesktop.org
Subject: Re: [RFC] xf86-video-intel: enable hw-generated binding tables
Date: Wed, 23 Apr 2014 14:21:19 +0300 [thread overview]
Message-ID: <2708085.fAZvMqpTni@abj-desktop> (raw)
In-Reply-To: <20140422172058.GW10722@phenom.ffwll.local>
On Tuesday, April 22, 2014 07:20:58 PM Daniel Vetter wrote:
> On Tue, Apr 22, 2014 at 04:23:12PM +0100, Chris Wilson wrote:
> > On Tue, Apr 22, 2014 at 06:16:34PM +0300, Abdiel Janulgue wrote:
> > > This patch series enables resource streamer for xf86-video-intel UXA.
> > >
> > > Fixes i965 Mesa driver that makes use of resource streamer optimization
> > > to survive a full piglit run without bricking the machine. Previously,
> > > I get random hungs when doing a full piglit round when enabling RS.
> > > After months of head-scratching, I noticed I didn't quite pay attention
> > >
> > > to this small detail in bspec:
> > > "The binding table generator feature has a simple all or nothing
> > >
> > > model. If HW generated binding tables are enabled, the driver must
> > > enable
> > > the pool and use 3D_HW_BINDING_TABLE_POINTER_* commands."
> > >
> > > I realized that our xf86-video-intel driver is piping out 3D commands
> > > as well that used the older manual-generated binding table format
> > > that caused a conflict when Mesa is using the hw-generated binding table
> > > format.
> >
> > This has to be per-context right? Otherwise how do you intend to
> > coordinate multiple clients submitting to the kernel using incompatible
> > command sets? Even in the restricted X/DRI sense, how do you intend to
> > negotiate which to use?
>
> Hm, I've thought that the MI_BB_START should synchronize with the
> asynchronous RS parsing/processing? Is there no way to disable RS again
> for the next batch in a different context?
I've already tried disabling RS at the end of every batch so that next batch
in different context can continue to use older non-RS format. That does not
work either and still causes hangs.
What I've seen so far, it seems GPU does not like switching the format of
commands from RS-format to non-RS format. It's either one way or the other. If
switched on, it affects subsequent contexes henceforth expecting RS-format
commands until the GPU gets reset. That's probably the note in bspec:
"the binding table generator feature has a simple all or nothing model".
>
> If there's no way to solve this with contexts or some manual reset trick
> using LRIs then we're pretty decently screwed up. Worst case we need to
> stop the gpu and reset it to keep backwards compat :(
next prev parent reply other threads:[~2014-04-23 11:15 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-04-22 15:16 [RFC] xf86-video-intel: enable hw-generated binding tables Abdiel Janulgue
2014-04-22 15:16 ` [RFC PATCH 1/2] xf86-video-intel: Add "ResourceStreamer" option Abdiel Janulgue
2014-04-22 15:16 ` [RFC PATCH 2/2] xf86-video-intel: Enable hw-generated binding tables for UXA Abdiel Janulgue
2014-04-22 15:23 ` [RFC] xf86-video-intel: enable hw-generated binding tables Chris Wilson
2014-04-22 17:20 ` Daniel Vetter
2014-04-23 11:21 ` Abdiel Janulgue [this message]
2014-04-23 16:52 ` Daniel Vetter
2014-04-23 17:50 ` Ville Syrjälä
2014-04-24 6:08 ` Abdiel Janulgue
2014-04-24 6:06 ` Chris Wilson
2014-04-24 8:25 ` Abdiel Janulgue
2014-04-24 10:04 ` Daniel Vetter
2014-04-24 10:17 ` Ville Syrjälä
2014-04-24 11:22 ` Abdiel Janulgue
2014-05-02 18:24 ` Abdiel Janulgue
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=2708085.fAZvMqpTni@abj-desktop \
--to=abdiel.janulgue@linux.intel.com \
--cc=daniel@ffwll.ch \
--cc=intel-gfx@lists.freedesktop.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