From: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
To: Zhiyuan Lv <zhiyuan.lv@intel.com>,
Chris Wilson <chris@chris-wilson.co.uk>
Cc: intel-gfx@lists.freedesktop.org, igvt-g@lists.01.org
Subject: Re: [PATCH 3/7] drm/i915: Always enable execlists on BDW for vgpu
Date: Mon, 24 Aug 2015 15:36:46 +0300 [thread overview]
Message-ID: <1440419806.5564.2.camel@linux.intel.com> (raw)
In-Reply-To: <20150821022423.GA19197@zlv-hp-dev>
On pe, 2015-08-21 at 10:24 +0800, Zhiyuan Lv wrote:
> Hi Joonas,
>
> Thanks for the review! And my reply inline.
>
> Regards,
> -Zhiyuan
>
> On Thu, Aug 20, 2015 at 02:23:11PM +0300, Joonas Lahtinen wrote:
> > Hi,
> >
> > On to, 2015-08-20 at 17:40 +0800, Zhiyuan Lv wrote:
> > > On Thu, Aug 20, 2015 at 10:22:37AM +0100, Chris Wilson wrote:
> > > > On Thu, Aug 20, 2015 at 04:55:08PM +0800, Zhiyuan Lv wrote:
> > > > > Hi Chris,
> > > > >
> > > > > On Thu, Aug 20, 2015 at 09:34:05AM +0100, Chris Wilson wrote:
> > > > > > On Thu, Aug 20, 2015 at 03:45:20PM +0800, Zhiyuan Lv wrote:
> > > > > > > Broadwell hardware supports both ring buffer mode and
> > > > > > > execlist mode.
> > > > > > > When i915 runs inside a VM with Intel GVT-g, we allow
> > > > > > > execlist mode
> > > > > > > only. The reason is that GVT-g does not support the
> > > > > > > dynamic
> > > > > > > mode
> > > > > > > switch between ring buffer mode and execlist mode when
> > > > > > > running
> > > > > > > multiple virtual machines. Consider that ring buffer mode
> > > > > > > is
> > > > > > > legacy
> > > > > > > mode, it makes sense to drop it inside virtual machines.
> > > > > >
> > > > > > If that is the case, you should query the host as to what
> > > > > > mode
> > > > > > it is
> > > > > > running.
> > > > >
> > > > > Thanks for the reply! You mean we query the host mode, then
> > > > > tell
> > > > > the
> > > > > guest driver inside VM, so that it could use the same mode as
> > > > > host
> > > > > right? That might be a little complicated, and the only
> > > > > benefit
> > > > > is to
> > > > > support legacy ring buffer mode ...
> > > >
> > > > The only benefit being that the guest works no matter what the
> > > > host
> > > > does?
> > >
> > > Supporting ring buffer mode may need more work in GVT-g. When we
> > > started to
> > > enable BDW support, ring buffer mode used to work but was not
> > > well
> > > tested. And
> > > the inter-VM switch (all in ringbuffer mode) may be tricker
> > > comparing
> > > with
> > > driver context switch with "MI_SET_CONTEXT", because we need to
> > > switch ring
> > > buffer whereas driver does not. Regarding this, the EXECLIST mode
> > > looks
> > > cleaner. In order to support that, we may have to: 1, change more
> > > LRI
> > > commands
> > > to MMIO in current driver; 2, more testing/debugging of inter-VM
> > > context
> > > switch flow.
> > >
> > > Based on that, I think we should really make statement that "ring
> > > buffer mode"
> > > is not supported by GVT-g on BDW :-)
> > >
> >
> > I think just move the vpgu test even before test for GEN9 just
> > making
> > it return true on intel_vgpu_active(dev) and add a comment that
> > currently vGPU only supports execlist command submission, and then
> > add
>
> Will do. Thanks!
>
> > an error early in the init in some appropriate spot if
> > intel_vgpu_active is true but logical ring context are not
> > available
> > (which would practically mean GEN < 8).
> >
> > Does that sound OK?
>
> Ring buffer mode for Haswell with vgpu is still supported. So
> probably I have
> the check like below? Thanks!
>
Ah sorry, I missed that.
> @@ -332,6 +332,12 @@ int i915_gem_context_init(struct drm_device
> *dev)
> if (WARN_ON(dev_priv->ring[RCS].default_context))
> return 0;
>
> + if (intel_vgpu_active(dev)) {
> + if (WARN_ON(HAS_LOGICAL_RING_CONTEXTS(dev) &&
> + !i915.enable_execlist))
> + return 0;
> + }
> +
This looks fine to me. Maybe comment might be in place stating that
support is not yet implemented, but could be.
Regards, Joonas
> if (i915.enable_execlists) {
> /* NB: intentionally left blank. We will allocate our
> own
> * backing objects as we need them, thank you very
> much */
>
> >
> > Regards, Joonas
> >
> > > > -Chris
> > > >
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/intel-gfx
next prev parent reply other threads:[~2015-08-24 12:36 UTC|newest]
Thread overview: 44+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-08-20 7:45 [PATCH 0/7] drm/intel: guest i915 changes for Broadwell to run inside VM with Intel GVT-g Zhiyuan Lv
2015-08-20 7:45 ` [PATCH 1/7] drm/i915: preallocate pdps for 32 bit vgpu Zhiyuan Lv
2015-08-20 10:56 ` Joonas Lahtinen
2015-08-26 13:21 ` Mika Kuoppala
2015-08-20 7:45 ` [PATCH 2/7] drm/i915: Enable full ppgtt for vgpu Zhiyuan Lv
2015-08-20 10:57 ` Joonas Lahtinen
2015-08-26 8:47 ` Daniel Vetter
2015-08-27 2:28 ` Zhiyuan Lv
2015-09-02 8:06 ` Daniel Vetter
2015-08-20 7:45 ` [PATCH 3/7] drm/i915: Always enable execlists on BDW " Zhiyuan Lv
2015-08-20 8:34 ` Chris Wilson
2015-08-20 8:55 ` Zhiyuan Lv
2015-08-20 9:22 ` Chris Wilson
2015-08-20 9:40 ` Zhiyuan Lv
2015-08-20 11:23 ` Joonas Lahtinen
2015-08-21 2:24 ` Zhiyuan Lv
2015-08-24 12:36 ` Joonas Lahtinen [this message]
2015-08-26 8:50 ` Daniel Vetter
2015-08-27 2:49 ` Zhiyuan Lv
2015-09-02 8:06 ` Daniel Vetter
2015-08-21 5:37 ` [iGVT-g] " Tian, Kevin
2015-08-20 7:45 ` [PATCH 4/7] drm/i915: always pin lrc context for vgpu with Intel GVT-g Zhiyuan Lv
2015-08-20 8:36 ` Chris Wilson
2015-08-20 9:16 ` Zhiyuan Lv
2015-08-21 6:13 ` Zhiyuan Lv
2015-08-24 10:04 ` About the iGVT-g's requirement to pin guest contexts in VM Zhiyuan Lv
2015-08-24 10:23 ` Chris Wilson
2015-08-24 17:18 ` Wang, Zhi A
2015-08-26 16:42 ` Wang, Zhi A
2015-08-25 0:17 ` Zhiyuan Lv
2015-08-26 8:56 ` Daniel Vetter
2015-08-27 1:50 ` Zhiyuan Lv
2015-09-02 8:19 ` Daniel Vetter
2015-09-02 9:20 ` Zhiyuan Lv
2015-09-02 9:40 ` Daniel Vetter
2015-08-20 7:45 ` [PATCH 5/7] drm/i915: Update PV INFO page definition for Intel GVT-g Zhiyuan Lv
2015-08-20 12:58 ` Joonas Lahtinen
2015-08-21 2:27 ` Zhiyuan Lv
2015-08-20 7:45 ` [PATCH 6/7] drm/i915: guest i915 notification for Intel-GVTg Zhiyuan Lv
2015-08-20 13:11 ` Joonas Lahtinen
2015-08-21 2:39 ` Zhiyuan Lv
2015-08-20 7:45 ` [PATCH 7/7] drm/i915: Allow Broadwell guest with Intel GVT-g Zhiyuan Lv
2015-08-20 13:15 ` Joonas Lahtinen
-- strict thread matches above, loose matches on Subject: below --
2015-08-20 3:17 [PATCH 3/7] drm/i915: Always enable execlists on BDW for vgpu Zhiyuan Lv
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=1440419806.5564.2.camel@linux.intel.com \
--to=joonas.lahtinen@linux.intel.com \
--cc=chris@chris-wilson.co.uk \
--cc=igvt-g@lists.01.org \
--cc=intel-gfx@lists.freedesktop.org \
--cc=zhiyuan.lv@intel.com \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.