[Mesa-dev] [PATCH] i965/skl/gt4: Fix URB programming restriction.

Ben Widawsky ben at bwidawsk.net
Sat Nov 7 08:40:51 PST 2015


On Fri, Nov 06, 2015 at 07:29:18PM -0800, Kenneth Graunke wrote:
> On Friday, November 06, 2015 06:12:27 PM Ben Widawsky wrote:
> > The comment in the code details the restriction. Thanks to Ken for having a very
> > helpful conversation with me, and spotting the blurb in the link I sent him :P.
> > 
> > There are still stability problems for me on GT4, but this definitely helps with
> > some of the failures.
> > 
> > Cc: Kenneth Graunke <kenneth at whitecape.org>
> > Cc: Jordan Justen <jordan.l.justen at intel.com>
> > Cc: mesa-stable at lists.freedesktop.org (if the original gt4 patch goes to stable)
> > ---
> > 
> > Sarah, you should check this on KBL.
> > Cc: Sarah Sharp <sarah.a.sharp at linux.intel.com>
> > ---
> >  src/mesa/drivers/dri/i965/brw_device_info.c | 8 ++++++++
> >  1 file changed, 8 insertions(+)
> > 
> > diff --git a/src/mesa/drivers/dri/i965/brw_device_info.c b/src/mesa/drivers/dri/i965/brw_device_info.c
> > index 2ebc084..6117fd3 100644
> > --- a/src/mesa/drivers/dri/i965/brw_device_info.c
> > +++ b/src/mesa/drivers/dri/i965/brw_device_info.c
> > @@ -337,6 +337,14 @@ static const struct brw_device_info brw_device_info_skl_gt3 = {
> >  
> >  static const struct brw_device_info brw_device_info_skl_gt4 = {
> >     GEN9_FEATURES, .gt = 4,
> > +   /* From the docs:
> > +    *   URB is limited to 1008KB due to programming restrictions. This is not a
> > +    *   restriction of the L3 implementation, but of the FF and other clients.
> > +    *   Therefore, in a GT4 implementation it is possible for the programmed
> > +    *   allocation of the L3 data array to provide 3*384KB=1152MB [sic] for URB,
> > +    *   but only 1008KB of this will be used.
> > +    */
> 
> We should at least say which page/section this comes from (the section
> name exists in the Broadwell PRM, so it's not particularly secret).
> 
> Please put the text in quotes too.  My suggested formatting:
> 
>    /* From the "L3 Allocation and Programming" documentation:
>     *
>     * "URB is limited to 1008KB due to programming restrictions.  This
>     *  is not a restriction of the L3 implementation, but of the FF and
>     *  other clients.  Therefore, in a GT4 implementation it is
>     *  possible for the programmed allocation of the L3 data array to
>     *  provide 3*384KB=1152MB [sic] for URB, but only 1008KB of this
>     *  will be used."
>     */
> 
> Regardless,
> Reviewed-by: Kenneth Graunke <kenneth at whitecape.org>
> 

Thanks! I had no idea it was in the BDW PRMs.

> > +   .urb.size = 1008 / 3,
> >  };
> >  
> >  static const struct brw_device_info brw_device_info_bxt = {
> > 



> _______________________________________________
> mesa-dev mailing list
> mesa-dev at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/mesa-dev



More information about the mesa-dev mailing list