[Mesa-dev] [PATCH 10/10] i965: Require softpin support for Cannonlake and later.
Daniel Vetter
daniel at ffwll.ch
Fri May 4 09:10:19 UTC 2018
On Fri, May 04, 2018 at 11:07:45AM +0200, Daniel Vetter wrote:
> On Fri, May 04, 2018 at 01:28:02AM -0700, Kenneth Graunke wrote:
> > On Friday, May 4, 2018 1:16:29 AM PDT Kenneth Graunke wrote:
> > > On Friday, May 4, 2018 12:39:12 AM PDT Chris Wilson wrote:
> > > > Quoting Kenneth Graunke (2018-05-04 08:34:07)
> > > > > On Thursday, May 3, 2018 11:53:24 PM PDT Chris Wilson wrote:
> > > > > > Quoting Kenneth Graunke (2018-05-04 02:12:40)
> > > > > > > This isn't strictly necessary, but anyone running Cannonlake will
> > > > > > > already have Kernel 4.5 or later, so there's no reason to support
> > > > > > > the relocation model on Gen10+.
> > > > > >
> > > > > > /o\ gvt. Need I say more?
> > > > > > -Chris
> > > > >
> > > > > Yes. What's the deal with GVT?
> > > >
> > > > Their current restrictions involve forcing the use of a 32b
> > > > aliasing-ppgtt. Not that they support cnl+ yet, so they might remember
> > > > to lift that restriction in time.
> > > > -Chris
> > >
> > > Wow, that's really miserable. So, we can't actually depend on real
> > > PPGTT existing? Do you know if/when they might fix this?
> > >
> > > This seriously wrecks a lot of my plans if we can't assume PPGTT
> > > and have to deal with relocations for all of eternity. Jason and I
> > > have been planning on doing PPGTT-only drivers for months. We figured
> > > that full PPGTT had been working since Gen8 and surely would be viable
> > > on anything modern. If it weren't for enterprise kernels, I would have
> > > required this all the way back to Gen8 in a heartbeat.
> > >
> > > --Ken
> >
> > Okay, whew, it looks like we were wrong. There's a bit of confusing
> > code in the kernel:
> >
> > if (intel_vgpu_active(dev_priv)) {
> > /* GVT-g has no support for 32bit ppgtt */
> > has_full_ppgtt = false;
> > has_full_48bit_ppgtt = intel_vgpu_has_full_48bit_ppgtt(dev_priv);
> > }
> >
> > But Joonas explained that this means GVT-g does support full PPGTT
> > with 48-bit addresses, it just never did the 32-bit only thing.
> >
> > So, I think we're fine here after all.
>
> Oh indeed. But only fixed in 4.14 by:
>
> commit 6b3816d69628becb7ff35978aa0751798b4a940a
> Author: Tina Zhang <tina.zhang at intel.com>
> Date: Mon Aug 14 15:24:14 2017 +0800
>
> drm/i915/gvt: Fix guest i915 full ppgtt blocking issue
>
> Maybe note that somewhere in your huge table of "stuff the kernel
> supports" ...
Also, for you patch here this means you're fine - since cnl support isn't
merged yet, but will have full 48bit ppgtt support (since it's there
already) I think it's safe to require it.
-Daniel
--
Daniel Vetter
Software Engineer, Intel Corporation
http://blog.ffwll.ch
More information about the mesa-dev
mailing list