[1/2] drm/i915/guc: Don't enable GuC when vGPU is active
diff mbox

Message ID 1515688278-5583-1-git-send-email-sagar.a.kamble@intel.com
State New
Headers show

Commit Message

sagar.a.kamble@intel.com Jan. 11, 2018, 4:31 p.m. UTC
In GVT-g, if GuC is to be used it is to be loaded by Host and not by
VM/vGPU. Currently, GVT-g host is not supported with GuC submission.
Also currently vGPU is to be not supported with GuC submission AFAIK.
CI BAT highlighted GuC init issue on skl-gvtdvm due to lack of movntdqa
needed for logging with below warning:

 WARN_ON(!i915_memcpy_from_wc(((void *)0), ((void *)0), 0))
 WARNING: CPU: 0 PID: 216 at drivers/gpu/drm/i915/intel_guc_log.c:383

This patch disables GuC when vGPU is active.

Signed-off-by: Sagar Arun Kamble <sagar.a.kamble@intel.com>
Cc: Chris Wilson <chris@chris-wilson.co.uk>
Cc: Michal Wajdeczko <michal.wajdeczko@intel.com>
Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
Cc: Changbin Du <changbin.du@intel.com>
---
 drivers/gpu/drm/i915/intel_uc.c | 2 ++
 1 file changed, 2 insertions(+)

Comments

sagar.a.kamble@intel.com Jan. 12, 2018, 6:02 a.m. UTC | #1
Is skl-gvtdvm not having vGPU active?

It has flag X86_FEATURE_HYPERVISOR set however it might be set on host 
too so relying intel_vgpu_active().


On 1/11/2018 10:27 PM, Patchwork wrote:
> == Series Details ==
>
> Series: series starting with [1/2] drm/i915/guc: Don't enable GuC when vGPU is active
> URL   : https://patchwork.freedesktop.org/series/36343/
> State : failure
>
> == Summary ==
>
> Series 36343v1 series starting with [1/2] drm/i915/guc: Don't enable GuC when vGPU is active
> https://patchwork.freedesktop.org/api/1.0/series/36343/revisions/1/mbox/
>
> Test core_auth:
>          Subgroup basic-auth:
>                  pass       -> SKIP       (fi-skl-gvtdvm)
> Test core_prop_blob:
>          Subgroup basic:
>                  pass       -> SKIP       (fi-skl-gvtdvm)
> Test debugfs_test:
>          Subgroup read_all_entries:
>                  dmesg-warn -> DMESG-FAIL (fi-elk-e7500) fdo#103989
>                  pass       -> SKIP       (fi-skl-gvtdvm)
> Test drv_getparams_basic:
>          Subgroup basic-eu-total:
>                  pass       -> SKIP       (fi-skl-gvtdvm)
>          Subgroup basic-subslice-total:
>                  pass       -> SKIP       (fi-skl-gvtdvm)
> Test drv_hangman:
>          Subgroup error-state-basic:
>                  pass       -> SKIP       (fi-skl-gvtdvm)
> Test gem_basic:
>          Subgroup bad-close:
>                  pass       -> SKIP       (fi-skl-gvtdvm)
>          Subgroup create-close:
>                  pass       -> SKIP       (fi-skl-gvtdvm)
>          Subgroup create-fd-close:
>                  pass       -> SKIP       (fi-skl-gvtdvm)
> Test gem_busy:
>          Subgroup basic-busy-default:
>                  pass       -> SKIP       (fi-skl-gvtdvm)
>          Subgroup basic-hang-default:
>                  pass       -> SKIP       (fi-skl-gvtdvm) fdo#104108 +2
> Test gem_close_race:
>          Subgroup basic-process:
>                  pass       -> SKIP       (fi-skl-gvtdvm)
>          Subgroup basic-threads:
>                  pass       -> SKIP       (fi-skl-gvtdvm)
> Test gem_cpu_reloc:
>          Subgroup basic:
>                  pass       -> SKIP       (fi-skl-gvtdvm)
> Test gem_cs_tlb:
>          Subgroup basic-default:
>                  pass       -> SKIP       (fi-skl-gvtdvm)
> Test gem_ctx_create:
>          Subgroup basic:
>                  pass       -> SKIP       (fi-skl-gvtdvm)
>          Subgroup basic-files:
>                  pass       -> SKIP       (fi-skl-gvtdvm)
> Test gem_ctx_exec:
>          Subgroup basic:
>                  pass       -> SKIP       (fi-skl-gvtdvm)
> Test gem_ctx_param:
>          Subgroup basic:
>                  pass       -> SKIP       (fi-skl-gvtdvm)
>          Subgroup basic-default:
>                  pass       -> SKIP       (fi-skl-gvtdvm)
> Test gem_ctx_switch:
>          Subgroup basic-default:
>                  pass       -> SKIP       (fi-skl-gvtdvm)
>          Subgroup basic-default-heavy:
>                  pass       -> SKIP       (fi-skl-gvtdvm)
> Test gem_exec_basic:
>          Subgroup basic-blt:
>                  pass       -> SKIP       (fi-skl-gvtdvm)
>          Subgroup basic-bsd:
>                  pass       -> SKIP       (fi-skl-gvtdvm)
>          Subgroup basic-bsd1:
>                  pass       -> SKIP       (fi-skl-gvtdvm)
>          Subgroup basic-bsd2:
>                  pass       -> SKIP       (fi-skl-gvtdvm)
>          Subgroup basic-default:
>                  pass       -> SKIP       (fi-skl-gvtdvm)
>          Subgroup basic-render:
>                  pass       -> SKIP       (fi-skl-gvtdvm)
>          Subgroup basic-vebox:
>                  pass       -> SKIP       (fi-skl-gvtdvm)
>          Subgroup gtt-blt:
>                  pass       -> SKIP       (fi-skl-gvtdvm)
>          Subgroup gtt-bsd:
>                  pass       -> SKIP       (fi-skl-gvtdvm)
>          Subgroup gtt-bsd1:
>                  pass       -> SKIP       (fi-skl-gvtdvm)
>          Subgroup gtt-bsd2:
>                  pass       -> SKIP       (fi-skl-gvtdvm)
>          Subgroup gtt-default:
>                  pass       -> SKIP       (fi-skl-gvtdvm)
>          Subgroup gtt-render:
>                  pass       -> SKIP       (fi-skl-gvtdvm)
>          Subgroup gtt-vebox:
>                  pass       -> SKIP       (fi-skl-gvtdvm)
>          Subgroup readonly-blt:
>                  pass       -> SKIP       (fi-skl-gvtdvm)
>          Subgroup readonly-bsd:
>                  pass       -> SKIP       (fi-skl-gvtdvm)
>          Subgroup readonly-bsd1:
>                  pass       -> SKIP       (fi-skl-gvtdvm)
>          Subgroup readonly-bsd2:
>                  pass       -> SKIP       (fi-skl-gvtdvm)
>          Subgroup readonly-default:
> WARNING: Long output truncated
>
> da4321c7c088d01ad62b18d37dcfe5ef8d0b855d drm-tip: 2018y-01m-11d-14h-59m-37s UTC integration manifest
> a0e8e84432b0 HAX: drm/i915/uc: Enable GuC/HuC for CI
> 973357da236a drm/i915/guc: Don't enable GuC when vGPU is active
>
> == Logs ==
>
> For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_7651/issues.html
Du, Changbin Jan. 12, 2018, 6:08 a.m. UTC | #2
On Fri, Jan 12, 2018 at 11:32:30AM +0530, Sagar Arun Kamble wrote:
> Is skl-gvtdvm not having vGPU active?
> 
> It has flag X86_FEATURE_HYPERVISOR set however it might be set on host too
> so relying intel_vgpu_active().
>
Do you mean flag X86_FEATURE_HYPERVISOR is set on host, too? This is weird since this
flag indicates the OS is running on a hypervisor.

> 
> On 1/11/2018 10:27 PM, Patchwork wrote:
> > == Series Details ==
> > 
> > Series: series starting with [1/2] drm/i915/guc: Don't enable GuC when vGPU is active
> > URL   : https://patchwork.freedesktop.org/series/36343/
> > State : failure
> > 
> > == Summary ==
> > 
> > Series 36343v1 series starting with [1/2] drm/i915/guc: Don't enable GuC when vGPU is active
> > https://patchwork.freedesktop.org/api/1.0/series/36343/revisions/1/mbox/
> > 
> > Test core_auth:
> >          Subgroup basic-auth:
> >                  pass       -> SKIP       (fi-skl-gvtdvm)
> > Test core_prop_blob:
> >          Subgroup basic:
> >                  pass       -> SKIP       (fi-skl-gvtdvm)
> > Test debugfs_test:
> >          Subgroup read_all_entries:
> >                  dmesg-warn -> DMESG-FAIL (fi-elk-e7500) fdo#103989
> >                  pass       -> SKIP       (fi-skl-gvtdvm)
> > Test drv_getparams_basic:
> >          Subgroup basic-eu-total:
> >                  pass       -> SKIP       (fi-skl-gvtdvm)
> >          Subgroup basic-subslice-total:
> >                  pass       -> SKIP       (fi-skl-gvtdvm)
> > Test drv_hangman:
> >          Subgroup error-state-basic:
> >                  pass       -> SKIP       (fi-skl-gvtdvm)
> > Test gem_basic:
> >          Subgroup bad-close:
> >                  pass       -> SKIP       (fi-skl-gvtdvm)
> >          Subgroup create-close:
> >                  pass       -> SKIP       (fi-skl-gvtdvm)
> >          Subgroup create-fd-close:
> >                  pass       -> SKIP       (fi-skl-gvtdvm)
> > Test gem_busy:
> >          Subgroup basic-busy-default:
> >                  pass       -> SKIP       (fi-skl-gvtdvm)
> >          Subgroup basic-hang-default:
> >                  pass       -> SKIP       (fi-skl-gvtdvm) fdo#104108 +2
> > Test gem_close_race:
> >          Subgroup basic-process:
> >                  pass       -> SKIP       (fi-skl-gvtdvm)
> >          Subgroup basic-threads:
> >                  pass       -> SKIP       (fi-skl-gvtdvm)
> > Test gem_cpu_reloc:
> >          Subgroup basic:
> >                  pass       -> SKIP       (fi-skl-gvtdvm)
> > Test gem_cs_tlb:
> >          Subgroup basic-default:
> >                  pass       -> SKIP       (fi-skl-gvtdvm)
> > Test gem_ctx_create:
> >          Subgroup basic:
> >                  pass       -> SKIP       (fi-skl-gvtdvm)
> >          Subgroup basic-files:
> >                  pass       -> SKIP       (fi-skl-gvtdvm)
> > Test gem_ctx_exec:
> >          Subgroup basic:
> >                  pass       -> SKIP       (fi-skl-gvtdvm)
> > Test gem_ctx_param:
> >          Subgroup basic:
> >                  pass       -> SKIP       (fi-skl-gvtdvm)
> >          Subgroup basic-default:
> >                  pass       -> SKIP       (fi-skl-gvtdvm)
> > Test gem_ctx_switch:
> >          Subgroup basic-default:
> >                  pass       -> SKIP       (fi-skl-gvtdvm)
> >          Subgroup basic-default-heavy:
> >                  pass       -> SKIP       (fi-skl-gvtdvm)
> > Test gem_exec_basic:
> >          Subgroup basic-blt:
> >                  pass       -> SKIP       (fi-skl-gvtdvm)
> >          Subgroup basic-bsd:
> >                  pass       -> SKIP       (fi-skl-gvtdvm)
> >          Subgroup basic-bsd1:
> >                  pass       -> SKIP       (fi-skl-gvtdvm)
> >          Subgroup basic-bsd2:
> >                  pass       -> SKIP       (fi-skl-gvtdvm)
> >          Subgroup basic-default:
> >                  pass       -> SKIP       (fi-skl-gvtdvm)
> >          Subgroup basic-render:
> >                  pass       -> SKIP       (fi-skl-gvtdvm)
> >          Subgroup basic-vebox:
> >                  pass       -> SKIP       (fi-skl-gvtdvm)
> >          Subgroup gtt-blt:
> >                  pass       -> SKIP       (fi-skl-gvtdvm)
> >          Subgroup gtt-bsd:
> >                  pass       -> SKIP       (fi-skl-gvtdvm)
> >          Subgroup gtt-bsd1:
> >                  pass       -> SKIP       (fi-skl-gvtdvm)
> >          Subgroup gtt-bsd2:
> >                  pass       -> SKIP       (fi-skl-gvtdvm)
> >          Subgroup gtt-default:
> >                  pass       -> SKIP       (fi-skl-gvtdvm)
> >          Subgroup gtt-render:
> >                  pass       -> SKIP       (fi-skl-gvtdvm)
> >          Subgroup gtt-vebox:
> >                  pass       -> SKIP       (fi-skl-gvtdvm)
> >          Subgroup readonly-blt:
> >                  pass       -> SKIP       (fi-skl-gvtdvm)
> >          Subgroup readonly-bsd:
> >                  pass       -> SKIP       (fi-skl-gvtdvm)
> >          Subgroup readonly-bsd1:
> >                  pass       -> SKIP       (fi-skl-gvtdvm)
> >          Subgroup readonly-bsd2:
> >                  pass       -> SKIP       (fi-skl-gvtdvm)
> >          Subgroup readonly-default:
> > WARNING: Long output truncated
> > 
> > da4321c7c088d01ad62b18d37dcfe5ef8d0b855d drm-tip: 2018y-01m-11d-14h-59m-37s UTC integration manifest
> > a0e8e84432b0 HAX: drm/i915/uc: Enable GuC/HuC for CI
> > 973357da236a drm/i915/guc: Don't enable GuC when vGPU is active
> > 
> > == Logs ==
> > 
> > For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_7651/issues.html
>
Joonas Lahtinen Jan. 15, 2018, 10:07 a.m. UTC | #3
On Fri, 2018-01-12 at 14:08 +0800, Du, Changbin wrote:
> On Fri, Jan 12, 2018 at 11:32:30AM +0530, Sagar Arun Kamble wrote:
> > Is skl-gvtdvm not having vGPU active?
> > 
> > It has flag X86_FEATURE_HYPERVISOR set however it might be set on host too
> > so relying intel_vgpu_active().
> > 
> 
> Do you mean flag X86_FEATURE_HYPERVISOR is set on host, too? This is weird since this
> flag indicates the OS is running on a hypervisor.

+ CI folks and Zhenyu

Somehow, magically, the virtual machine seems to starts skipping all
tests when GuC is disabled?

Has somebody actually validated that the tests results are valid for
the virtual machine? Or is this a one-off CI quirk?

PS. I'd do the check as early return condition at the top, like vGPU
feature disabling elsewhere. It's not much point calculating the
details (calling into functions like intel_uc_fw_is_selected) and then
throwing results out afterwards :)

> 
> > 
> > On 1/11/2018 10:27 PM, Patchwork wrote:
> > > == Series Details ==
> > > 
> > > Series: series starting with [1/2] drm/i915/guc: Don't enable GuC when vGPU is active
> > > URL   : https://patchwork.freedesktop.org/series/36343/
> > > State : failure
> > > 
> > > == Summary ==
> > > 
> > > Series 36343v1 series starting with [1/2] drm/i915/guc: Don't enable GuC when vGPU is active
> > > https://patchwork.freedesktop.org/api/1.0/series/36343/revisions/1/mbox/
> > > 
> > > Test core_auth:
> > >          Subgroup basic-auth:
> > >                  pass       -> SKIP       (fi-skl-gvtdvm)
> > > Test core_prop_blob:
> > >          Subgroup basic:
> > >                  pass       -> SKIP       (fi-skl-gvtdvm)
> > > Test debugfs_test:
> > >          Subgroup read_all_entries:
> > >                  dmesg-warn -> DMESG-FAIL (fi-elk-e7500) fdo#103989
> > >                  pass       -> SKIP       (fi-skl-gvtdvm)
> > > Test drv_getparams_basic:
> > >          Subgroup basic-eu-total:
> > >                  pass       -> SKIP       (fi-skl-gvtdvm)
> > >          Subgroup basic-subslice-total:
> > >                  pass       -> SKIP       (fi-skl-gvtdvm)
> > > Test drv_hangman:
> > >          Subgroup error-state-basic:
> > >                  pass       -> SKIP       (fi-skl-gvtdvm)
> > > Test gem_basic:
> > >          Subgroup bad-close:
> > >                  pass       -> SKIP       (fi-skl-gvtdvm)
> > >          Subgroup create-close:
> > >                  pass       -> SKIP       (fi-skl-gvtdvm)
> > >          Subgroup create-fd-close:
> > >                  pass       -> SKIP       (fi-skl-gvtdvm)
> > > Test gem_busy:
> > >          Subgroup basic-busy-default:
> > >                  pass       -> SKIP       (fi-skl-gvtdvm)
> > >          Subgroup basic-hang-default:
> > >                  pass       -> SKIP       (fi-skl-gvtdvm) fdo#104108 +2
> > > Test gem_close_race:
> > >          Subgroup basic-process:
> > >                  pass       -> SKIP       (fi-skl-gvtdvm)
> > >          Subgroup basic-threads:
> > >                  pass       -> SKIP       (fi-skl-gvtdvm)
> > > Test gem_cpu_reloc:
> > >          Subgroup basic:
> > >                  pass       -> SKIP       (fi-skl-gvtdvm)
> > > Test gem_cs_tlb:
> > >          Subgroup basic-default:
> > >                  pass       -> SKIP       (fi-skl-gvtdvm)
> > > Test gem_ctx_create:
> > >          Subgroup basic:
> > >                  pass       -> SKIP       (fi-skl-gvtdvm)
> > >          Subgroup basic-files:
> > >                  pass       -> SKIP       (fi-skl-gvtdvm)
> > > Test gem_ctx_exec:
> > >          Subgroup basic:
> > >                  pass       -> SKIP       (fi-skl-gvtdvm)
> > > Test gem_ctx_param:
> > >          Subgroup basic:
> > >                  pass       -> SKIP       (fi-skl-gvtdvm)
> > >          Subgroup basic-default:
> > >                  pass       -> SKIP       (fi-skl-gvtdvm)
> > > Test gem_ctx_switch:
> > >          Subgroup basic-default:
> > >                  pass       -> SKIP       (fi-skl-gvtdvm)
> > >          Subgroup basic-default-heavy:
> > >                  pass       -> SKIP       (fi-skl-gvtdvm)
> > > Test gem_exec_basic:
> > >          Subgroup basic-blt:
> > >                  pass       -> SKIP       (fi-skl-gvtdvm)
> > >          Subgroup basic-bsd:
> > >                  pass       -> SKIP       (fi-skl-gvtdvm)
> > >          Subgroup basic-bsd1:
> > >                  pass       -> SKIP       (fi-skl-gvtdvm)
> > >          Subgroup basic-bsd2:
> > >                  pass       -> SKIP       (fi-skl-gvtdvm)
> > >          Subgroup basic-default:
> > >                  pass       -> SKIP       (fi-skl-gvtdvm)
> > >          Subgroup basic-render:
> > >                  pass       -> SKIP       (fi-skl-gvtdvm)
> > >          Subgroup basic-vebox:
> > >                  pass       -> SKIP       (fi-skl-gvtdvm)
> > >          Subgroup gtt-blt:
> > >                  pass       -> SKIP       (fi-skl-gvtdvm)
> > >          Subgroup gtt-bsd:
> > >                  pass       -> SKIP       (fi-skl-gvtdvm)
> > >          Subgroup gtt-bsd1:
> > >                  pass       -> SKIP       (fi-skl-gvtdvm)
> > >          Subgroup gtt-bsd2:
> > >                  pass       -> SKIP       (fi-skl-gvtdvm)
> > >          Subgroup gtt-default:
> > >                  pass       -> SKIP       (fi-skl-gvtdvm)
> > >          Subgroup gtt-render:
> > >                  pass       -> SKIP       (fi-skl-gvtdvm)
> > >          Subgroup gtt-vebox:
> > >                  pass       -> SKIP       (fi-skl-gvtdvm)
> > >          Subgroup readonly-blt:
> > >                  pass       -> SKIP       (fi-skl-gvtdvm)
> > >          Subgroup readonly-bsd:
> > >                  pass       -> SKIP       (fi-skl-gvtdvm)
> > >          Subgroup readonly-bsd1:
> > >                  pass       -> SKIP       (fi-skl-gvtdvm)
> > >          Subgroup readonly-bsd2:
> > >                  pass       -> SKIP       (fi-skl-gvtdvm)
> > >          Subgroup readonly-default:
> > > WARNING: Long output truncated
> > > 
> > > da4321c7c088d01ad62b18d37dcfe5ef8d0b855d drm-tip: 2018y-01m-11d-14h-59m-37s UTC integration manifest
> > > a0e8e84432b0 HAX: drm/i915/uc: Enable GuC/HuC for CI
> > > 973357da236a drm/i915/guc: Don't enable GuC when vGPU is active
> > > 
> > > == Logs ==
> > > 
> > > For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_7651/issues.html
> 
>
Zhenyu Wang Jan. 15, 2018, 10:28 a.m. UTC | #4
On 2018.01.15 12:07:28 +0200, Joonas Lahtinen wrote:
> On Fri, 2018-01-12 at 14:08 +0800, Du, Changbin wrote:
> > On Fri, Jan 12, 2018 at 11:32:30AM +0530, Sagar Arun Kamble wrote:
> > > Is skl-gvtdvm not having vGPU active?
> > > 
> > > It has flag X86_FEATURE_HYPERVISOR set however it might be set on host too
> > > so relying intel_vgpu_active().
> > > 
> > 
> > Do you mean flag X86_FEATURE_HYPERVISOR is set on host, too? This is weird since this
> > flag indicates the OS is running on a hypervisor.
> 
> + CI folks and Zhenyu
> 
> Somehow, magically, the virtual machine seems to starts skipping all
> tests when GuC is disabled?
> 
> Has somebody actually validated that the tests results are valid for
> the virtual machine? Or is this a one-off CI quirk?

Are these tests really run in VM with GVT-g enabled on host?

> 
> PS. I'd do the check as early return condition at the top, like vGPU
> feature disabling elsewhere. It's not much point calculating the
> details (calling into functions like intel_uc_fw_is_selected) and then
> throwing results out afterwards :)
>

yeah, better, and we do plan to support vGuC from ICL for vGPU.

> > 
> > > 
> > > On 1/11/2018 10:27 PM, Patchwork wrote:
> > > > == Series Details ==
> > > > 
> > > > Series: series starting with [1/2] drm/i915/guc: Don't enable GuC when vGPU is active
> > > > URL   : https://patchwork.freedesktop.org/series/36343/
> > > > State : failure
> > > > 
> > > > == Summary ==
> > > > 
> > > > Series 36343v1 series starting with [1/2] drm/i915/guc: Don't enable GuC when vGPU is active
> > > > https://patchwork.freedesktop.org/api/1.0/series/36343/revisions/1/mbox/
> > > > 
> > > > Test core_auth:
> > > >          Subgroup basic-auth:
> > > >                  pass       -> SKIP       (fi-skl-gvtdvm)
> > > > Test core_prop_blob:
> > > >          Subgroup basic:
> > > >                  pass       -> SKIP       (fi-skl-gvtdvm)
> > > > Test debugfs_test:
> > > >          Subgroup read_all_entries:
> > > >                  dmesg-warn -> DMESG-FAIL (fi-elk-e7500) fdo#103989
> > > >                  pass       -> SKIP       (fi-skl-gvtdvm)
> > > > Test drv_getparams_basic:
> > > >          Subgroup basic-eu-total:
> > > >                  pass       -> SKIP       (fi-skl-gvtdvm)
> > > >          Subgroup basic-subslice-total:
> > > >                  pass       -> SKIP       (fi-skl-gvtdvm)
> > > > Test drv_hangman:
> > > >          Subgroup error-state-basic:
> > > >                  pass       -> SKIP       (fi-skl-gvtdvm)
> > > > Test gem_basic:
> > > >          Subgroup bad-close:
> > > >                  pass       -> SKIP       (fi-skl-gvtdvm)
> > > >          Subgroup create-close:
> > > >                  pass       -> SKIP       (fi-skl-gvtdvm)
> > > >          Subgroup create-fd-close:
> > > >                  pass       -> SKIP       (fi-skl-gvtdvm)
> > > > Test gem_busy:
> > > >          Subgroup basic-busy-default:
> > > >                  pass       -> SKIP       (fi-skl-gvtdvm)
> > > >          Subgroup basic-hang-default:
> > > >                  pass       -> SKIP       (fi-skl-gvtdvm) fdo#104108 +2
> > > > Test gem_close_race:
> > > >          Subgroup basic-process:
> > > >                  pass       -> SKIP       (fi-skl-gvtdvm)
> > > >          Subgroup basic-threads:
> > > >                  pass       -> SKIP       (fi-skl-gvtdvm)
> > > > Test gem_cpu_reloc:
> > > >          Subgroup basic:
> > > >                  pass       -> SKIP       (fi-skl-gvtdvm)
> > > > Test gem_cs_tlb:
> > > >          Subgroup basic-default:
> > > >                  pass       -> SKIP       (fi-skl-gvtdvm)
> > > > Test gem_ctx_create:
> > > >          Subgroup basic:
> > > >                  pass       -> SKIP       (fi-skl-gvtdvm)
> > > >          Subgroup basic-files:
> > > >                  pass       -> SKIP       (fi-skl-gvtdvm)
> > > > Test gem_ctx_exec:
> > > >          Subgroup basic:
> > > >                  pass       -> SKIP       (fi-skl-gvtdvm)
> > > > Test gem_ctx_param:
> > > >          Subgroup basic:
> > > >                  pass       -> SKIP       (fi-skl-gvtdvm)
> > > >          Subgroup basic-default:
> > > >                  pass       -> SKIP       (fi-skl-gvtdvm)
> > > > Test gem_ctx_switch:
> > > >          Subgroup basic-default:
> > > >                  pass       -> SKIP       (fi-skl-gvtdvm)
> > > >          Subgroup basic-default-heavy:
> > > >                  pass       -> SKIP       (fi-skl-gvtdvm)
> > > > Test gem_exec_basic:
> > > >          Subgroup basic-blt:
> > > >                  pass       -> SKIP       (fi-skl-gvtdvm)
> > > >          Subgroup basic-bsd:
> > > >                  pass       -> SKIP       (fi-skl-gvtdvm)
> > > >          Subgroup basic-bsd1:
> > > >                  pass       -> SKIP       (fi-skl-gvtdvm)
> > > >          Subgroup basic-bsd2:
> > > >                  pass       -> SKIP       (fi-skl-gvtdvm)
> > > >          Subgroup basic-default:
> > > >                  pass       -> SKIP       (fi-skl-gvtdvm)
> > > >          Subgroup basic-render:
> > > >                  pass       -> SKIP       (fi-skl-gvtdvm)
> > > >          Subgroup basic-vebox:
> > > >                  pass       -> SKIP       (fi-skl-gvtdvm)
> > > >          Subgroup gtt-blt:
> > > >                  pass       -> SKIP       (fi-skl-gvtdvm)
> > > >          Subgroup gtt-bsd:
> > > >                  pass       -> SKIP       (fi-skl-gvtdvm)
> > > >          Subgroup gtt-bsd1:
> > > >                  pass       -> SKIP       (fi-skl-gvtdvm)
> > > >          Subgroup gtt-bsd2:
> > > >                  pass       -> SKIP       (fi-skl-gvtdvm)
> > > >          Subgroup gtt-default:
> > > >                  pass       -> SKIP       (fi-skl-gvtdvm)
> > > >          Subgroup gtt-render:
> > > >                  pass       -> SKIP       (fi-skl-gvtdvm)
> > > >          Subgroup gtt-vebox:
> > > >                  pass       -> SKIP       (fi-skl-gvtdvm)
> > > >          Subgroup readonly-blt:
> > > >                  pass       -> SKIP       (fi-skl-gvtdvm)
> > > >          Subgroup readonly-bsd:
> > > >                  pass       -> SKIP       (fi-skl-gvtdvm)
> > > >          Subgroup readonly-bsd1:
> > > >                  pass       -> SKIP       (fi-skl-gvtdvm)
> > > >          Subgroup readonly-bsd2:
> > > >                  pass       -> SKIP       (fi-skl-gvtdvm)
> > > >          Subgroup readonly-default:
> > > > WARNING: Long output truncated
> > > > 
> > > > da4321c7c088d01ad62b18d37dcfe5ef8d0b855d drm-tip: 2018y-01m-11d-14h-59m-37s UTC integration manifest
> > > > a0e8e84432b0 HAX: drm/i915/uc: Enable GuC/HuC for CI
> > > > 973357da236a drm/i915/guc: Don't enable GuC when vGPU is active
> > > > 
> > > > == Logs ==
> > > > 
> > > > For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_7651/issues.html
> > 
> > 
> -- 
> Joonas Lahtinen
> Open Source Technology Center
> Intel Corporation
Tomi Sarvela Jan. 15, 2018, 11:10 a.m. UTC | #5
On 15/01/18 12:28, Zhenyu Wang wrote:
> On 2018.01.15 12:07:28 +0200, Joonas Lahtinen wrote:
>> On Fri, 2018-01-12 at 14:08 +0800, Du, Changbin wrote:
>>> On Fri, Jan 12, 2018 at 11:32:30AM +0530, Sagar Arun Kamble wrote:
>>>> Is skl-gvtdvm not having vGPU active?
>>>>
>>>> It has flag X86_FEATURE_HYPERVISOR set however it might be set on host too
>>>> so relying intel_vgpu_active().
>>>>
>>>
>>> Do you mean flag X86_FEATURE_HYPERVISOR is set on host, too? This is weird since this
>>> flag indicates the OS is running on a hypervisor.
>>
>> + CI folks and Zhenyu
>>
>> Somehow, magically, the virtual machine seems to starts skipping all
>> tests when GuC is disabled?
>>
>> Has somebody actually validated that the tests results are valid for
>> the virtual machine? Or is this a one-off CI quirk?
> 
> Are these tests really run in VM with GVT-g enabled on host?

These tests are ran on VM running on GVT-d (as name implies), not GVT-g.

Tomi

>> PS. I'd do the check as early return condition at the top, like vGPU
>> feature disabling elsewhere. It's not much point calculating the
>> details (calling into functions like intel_uc_fw_is_selected) and then
>> throwing results out afterwards :)
>>
> 
> yeah, better, and we do plan to support vGuC from ICL for vGPU.
> 
>>>
>>>>
>>>> On 1/11/2018 10:27 PM, Patchwork wrote:
>>>>> == Series Details ==
>>>>>
>>>>> Series: series starting with [1/2] drm/i915/guc: Don't enable GuC when vGPU is active
>>>>> URL   : https://patchwork.freedesktop.org/series/36343/
>>>>> State : failure
>>>>>
>>>>> == Summary ==
>>>>>
>>>>> Series 36343v1 series starting with [1/2] drm/i915/guc: Don't enable GuC when vGPU is active
>>>>> https://patchwork.freedesktop.org/api/1.0/series/36343/revisions/1/mbox/
>>>>>
>>>>> Test core_auth:
>>>>>           Subgroup basic-auth:
>>>>>                   pass       -> SKIP       (fi-skl-gvtdvm)
>>>>> Test core_prop_blob:
>>>>>           Subgroup basic:
>>>>>                   pass       -> SKIP       (fi-skl-gvtdvm)
>>>>> Test debugfs_test:
>>>>>           Subgroup read_all_entries:
>>>>>                   dmesg-warn -> DMESG-FAIL (fi-elk-e7500) fdo#103989
>>>>>                   pass       -> SKIP       (fi-skl-gvtdvm)
>>>>> Test drv_getparams_basic:
>>>>>           Subgroup basic-eu-total:
>>>>>                   pass       -> SKIP       (fi-skl-gvtdvm)
>>>>>           Subgroup basic-subslice-total:
>>>>>                   pass       -> SKIP       (fi-skl-gvtdvm)
>>>>> Test drv_hangman:
>>>>>           Subgroup error-state-basic:
>>>>>                   pass       -> SKIP       (fi-skl-gvtdvm)
>>>>> Test gem_basic:
>>>>>           Subgroup bad-close:
>>>>>                   pass       -> SKIP       (fi-skl-gvtdvm)
>>>>>           Subgroup create-close:
>>>>>                   pass       -> SKIP       (fi-skl-gvtdvm)
>>>>>           Subgroup create-fd-close:
>>>>>                   pass       -> SKIP       (fi-skl-gvtdvm)
>>>>> Test gem_busy:
>>>>>           Subgroup basic-busy-default:
>>>>>                   pass       -> SKIP       (fi-skl-gvtdvm)
>>>>>           Subgroup basic-hang-default:
>>>>>                   pass       -> SKIP       (fi-skl-gvtdvm) fdo#104108 +2
>>>>> Test gem_close_race:
>>>>>           Subgroup basic-process:
>>>>>                   pass       -> SKIP       (fi-skl-gvtdvm)
>>>>>           Subgroup basic-threads:
>>>>>                   pass       -> SKIP       (fi-skl-gvtdvm)
>>>>> Test gem_cpu_reloc:
>>>>>           Subgroup basic:
>>>>>                   pass       -> SKIP       (fi-skl-gvtdvm)
>>>>> Test gem_cs_tlb:
>>>>>           Subgroup basic-default:
>>>>>                   pass       -> SKIP       (fi-skl-gvtdvm)
>>>>> Test gem_ctx_create:
>>>>>           Subgroup basic:
>>>>>                   pass       -> SKIP       (fi-skl-gvtdvm)
>>>>>           Subgroup basic-files:
>>>>>                   pass       -> SKIP       (fi-skl-gvtdvm)
>>>>> Test gem_ctx_exec:
>>>>>           Subgroup basic:
>>>>>                   pass       -> SKIP       (fi-skl-gvtdvm)
>>>>> Test gem_ctx_param:
>>>>>           Subgroup basic:
>>>>>                   pass       -> SKIP       (fi-skl-gvtdvm)
>>>>>           Subgroup basic-default:
>>>>>                   pass       -> SKIP       (fi-skl-gvtdvm)
>>>>> Test gem_ctx_switch:
>>>>>           Subgroup basic-default:
>>>>>                   pass       -> SKIP       (fi-skl-gvtdvm)
>>>>>           Subgroup basic-default-heavy:
>>>>>                   pass       -> SKIP       (fi-skl-gvtdvm)
>>>>> Test gem_exec_basic:
>>>>>           Subgroup basic-blt:
>>>>>                   pass       -> SKIP       (fi-skl-gvtdvm)
>>>>>           Subgroup basic-bsd:
>>>>>                   pass       -> SKIP       (fi-skl-gvtdvm)
>>>>>           Subgroup basic-bsd1:
>>>>>                   pass       -> SKIP       (fi-skl-gvtdvm)
>>>>>           Subgroup basic-bsd2:
>>>>>                   pass       -> SKIP       (fi-skl-gvtdvm)
>>>>>           Subgroup basic-default:
>>>>>                   pass       -> SKIP       (fi-skl-gvtdvm)
>>>>>           Subgroup basic-render:
>>>>>                   pass       -> SKIP       (fi-skl-gvtdvm)
>>>>>           Subgroup basic-vebox:
>>>>>                   pass       -> SKIP       (fi-skl-gvtdvm)
>>>>>           Subgroup gtt-blt:
>>>>>                   pass       -> SKIP       (fi-skl-gvtdvm)
>>>>>           Subgroup gtt-bsd:
>>>>>                   pass       -> SKIP       (fi-skl-gvtdvm)
>>>>>           Subgroup gtt-bsd1:
>>>>>                   pass       -> SKIP       (fi-skl-gvtdvm)
>>>>>           Subgroup gtt-bsd2:
>>>>>                   pass       -> SKIP       (fi-skl-gvtdvm)
>>>>>           Subgroup gtt-default:
>>>>>                   pass       -> SKIP       (fi-skl-gvtdvm)
>>>>>           Subgroup gtt-render:
>>>>>                   pass       -> SKIP       (fi-skl-gvtdvm)
>>>>>           Subgroup gtt-vebox:
>>>>>                   pass       -> SKIP       (fi-skl-gvtdvm)
>>>>>           Subgroup readonly-blt:
>>>>>                   pass       -> SKIP       (fi-skl-gvtdvm)
>>>>>           Subgroup readonly-bsd:
>>>>>                   pass       -> SKIP       (fi-skl-gvtdvm)
>>>>>           Subgroup readonly-bsd1:
>>>>>                   pass       -> SKIP       (fi-skl-gvtdvm)
>>>>>           Subgroup readonly-bsd2:
>>>>>                   pass       -> SKIP       (fi-skl-gvtdvm)
>>>>>           Subgroup readonly-default:
>>>>> WARNING: Long output truncated
>>>>>
>>>>> da4321c7c088d01ad62b18d37dcfe5ef8d0b855d drm-tip: 2018y-01m-11d-14h-59m-37s UTC integration manifest
>>>>> a0e8e84432b0 HAX: drm/i915/uc: Enable GuC/HuC for CI
>>>>> 973357da236a drm/i915/guc: Don't enable GuC when vGPU is active
>>>>>
>>>>> == Logs ==
>>>>>
>>>>> For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_7651/issues.html
>>>
>>>
>> -- 
>> Joonas Lahtinen
>> Open Source Technology Center
>> Intel Corporation
> 


Tomi
Joonas Lahtinen Jan. 16, 2018, 9:53 a.m. UTC | #6
On Mon, 2018-01-15 at 13:10 +0200, Tomi Sarvela wrote:
> On 15/01/18 12:28, Zhenyu Wang wrote:
> > On 2018.01.15 12:07:28 +0200, Joonas Lahtinen wrote:
> > > On Fri, 2018-01-12 at 14:08 +0800, Du, Changbin wrote:
> > > > On Fri, Jan 12, 2018 at 11:32:30AM +0530, Sagar Arun Kamble wrote:
> > > > > Is skl-gvtdvm not having vGPU active?
> > > > > 
> > > > > It has flag X86_FEATURE_HYPERVISOR set however it might be set on host too
> > > > > so relying intel_vgpu_active().
> > > > > 
> > > > 
> > > > Do you mean flag X86_FEATURE_HYPERVISOR is set on host, too? This is weird since this
> > > > flag indicates the OS is running on a hypervisor.
> > > 
> > > + CI folks and Zhenyu
> > > 
> > > Somehow, magically, the virtual machine seems to starts skipping all
> > > tests when GuC is disabled?
> > > 
> > > Has somebody actually validated that the tests results are valid for
> > > the virtual machine? Or is this a one-off CI quirk?
> > 
> > Are these tests really run in VM with GVT-g enabled on host?
> 
> These tests are ran on VM running on GVT-d (as name implies), not GVT-g.

I don't still understand how explicitly disabling GuC could make all
the tests skip on a machine that didn't use GuC to begin with. There
must be something wrong in the initialization code.

That intel_vgpu_active() check by my logic should not trigger in GVT-d
(because we don't have virtual GPU, we have the real deal, just without
stolen etc.), so I'm bit baffled.

Regards, Joonas

> 
> Tomi
> 
> > > PS. I'd do the check as early return condition at the top, like vGPU
> > > feature disabling elsewhere. It's not much point calculating the
> > > details (calling into functions like intel_uc_fw_is_selected) and then
> > > throwing results out afterwards :)
> > > 
> > 
> > yeah, better, and we do plan to support vGuC from ICL for vGPU.
> > 
> > > > 
> > > > > 
> > > > > On 1/11/2018 10:27 PM, Patchwork wrote:
> > > > > > == Series Details ==
> > > > > > 
> > > > > > Series: series starting with [1/2] drm/i915/guc: Don't enable GuC when vGPU is active
> > > > > > URL   : https://patchwork.freedesktop.org/series/36343/
> > > > > > State : failure
> > > > > > 
> > > > > > == Summary ==
> > > > > > 
> > > > > > Series 36343v1 series starting with [1/2] drm/i915/guc: Don't enable GuC when vGPU is active
> > > > > > https://patchwork.freedesktop.org/api/1.0/series/36343/revisions/1/mbox/
> > > > > > 
> > > > > > Test core_auth:
> > > > > >           Subgroup basic-auth:
> > > > > >                   pass       -> SKIP       (fi-skl-gvtdvm)
> > > > > > Test core_prop_blob:
> > > > > >           Subgroup basic:
> > > > > >                   pass       -> SKIP       (fi-skl-gvtdvm)
> > > > > > Test debugfs_test:
> > > > > >           Subgroup read_all_entries:
> > > > > >                   dmesg-warn -> DMESG-FAIL (fi-elk-e7500) fdo#103989
> > > > > >                   pass       -> SKIP       (fi-skl-gvtdvm)
> > > > > > Test drv_getparams_basic:
> > > > > >           Subgroup basic-eu-total:
> > > > > >                   pass       -> SKIP       (fi-skl-gvtdvm)
> > > > > >           Subgroup basic-subslice-total:
> > > > > >                   pass       -> SKIP       (fi-skl-gvtdvm)
> > > > > > Test drv_hangman:
> > > > > >           Subgroup error-state-basic:
> > > > > >                   pass       -> SKIP       (fi-skl-gvtdvm)
> > > > > > Test gem_basic:
> > > > > >           Subgroup bad-close:
> > > > > >                   pass       -> SKIP       (fi-skl-gvtdvm)
> > > > > >           Subgroup create-close:
> > > > > >                   pass       -> SKIP       (fi-skl-gvtdvm)
> > > > > >           Subgroup create-fd-close:
> > > > > >                   pass       -> SKIP       (fi-skl-gvtdvm)
> > > > > > Test gem_busy:
> > > > > >           Subgroup basic-busy-default:
> > > > > >                   pass       -> SKIP       (fi-skl-gvtdvm)
> > > > > >           Subgroup basic-hang-default:
> > > > > >                   pass       -> SKIP       (fi-skl-gvtdvm) fdo#104108 +2
> > > > > > Test gem_close_race:
> > > > > >           Subgroup basic-process:
> > > > > >                   pass       -> SKIP       (fi-skl-gvtdvm)
> > > > > >           Subgroup basic-threads:
> > > > > >                   pass       -> SKIP       (fi-skl-gvtdvm)
> > > > > > Test gem_cpu_reloc:
> > > > > >           Subgroup basic:
> > > > > >                   pass       -> SKIP       (fi-skl-gvtdvm)
> > > > > > Test gem_cs_tlb:
> > > > > >           Subgroup basic-default:
> > > > > >                   pass       -> SKIP       (fi-skl-gvtdvm)
> > > > > > Test gem_ctx_create:
> > > > > >           Subgroup basic:
> > > > > >                   pass       -> SKIP       (fi-skl-gvtdvm)
> > > > > >           Subgroup basic-files:
> > > > > >                   pass       -> SKIP       (fi-skl-gvtdvm)
> > > > > > Test gem_ctx_exec:
> > > > > >           Subgroup basic:
> > > > > >                   pass       -> SKIP       (fi-skl-gvtdvm)
> > > > > > Test gem_ctx_param:
> > > > > >           Subgroup basic:
> > > > > >                   pass       -> SKIP       (fi-skl-gvtdvm)
> > > > > >           Subgroup basic-default:
> > > > > >                   pass       -> SKIP       (fi-skl-gvtdvm)
> > > > > > Test gem_ctx_switch:
> > > > > >           Subgroup basic-default:
> > > > > >                   pass       -> SKIP       (fi-skl-gvtdvm)
> > > > > >           Subgroup basic-default-heavy:
> > > > > >                   pass       -> SKIP       (fi-skl-gvtdvm)
> > > > > > Test gem_exec_basic:
> > > > > >           Subgroup basic-blt:
> > > > > >                   pass       -> SKIP       (fi-skl-gvtdvm)
> > > > > >           Subgroup basic-bsd:
> > > > > >                   pass       -> SKIP       (fi-skl-gvtdvm)
> > > > > >           Subgroup basic-bsd1:
> > > > > >                   pass       -> SKIP       (fi-skl-gvtdvm)
> > > > > >           Subgroup basic-bsd2:
> > > > > >                   pass       -> SKIP       (fi-skl-gvtdvm)
> > > > > >           Subgroup basic-default:
> > > > > >                   pass       -> SKIP       (fi-skl-gvtdvm)
> > > > > >           Subgroup basic-render:
> > > > > >                   pass       -> SKIP       (fi-skl-gvtdvm)
> > > > > >           Subgroup basic-vebox:
> > > > > >                   pass       -> SKIP       (fi-skl-gvtdvm)
> > > > > >           Subgroup gtt-blt:
> > > > > >                   pass       -> SKIP       (fi-skl-gvtdvm)
> > > > > >           Subgroup gtt-bsd:
> > > > > >                   pass       -> SKIP       (fi-skl-gvtdvm)
> > > > > >           Subgroup gtt-bsd1:
> > > > > >                   pass       -> SKIP       (fi-skl-gvtdvm)
> > > > > >           Subgroup gtt-bsd2:
> > > > > >                   pass       -> SKIP       (fi-skl-gvtdvm)
> > > > > >           Subgroup gtt-default:
> > > > > >                   pass       -> SKIP       (fi-skl-gvtdvm)
> > > > > >           Subgroup gtt-render:
> > > > > >                   pass       -> SKIP       (fi-skl-gvtdvm)
> > > > > >           Subgroup gtt-vebox:
> > > > > >                   pass       -> SKIP       (fi-skl-gvtdvm)
> > > > > >           Subgroup readonly-blt:
> > > > > >                   pass       -> SKIP       (fi-skl-gvtdvm)
> > > > > >           Subgroup readonly-bsd:
> > > > > >                   pass       -> SKIP       (fi-skl-gvtdvm)
> > > > > >           Subgroup readonly-bsd1:
> > > > > >                   pass       -> SKIP       (fi-skl-gvtdvm)
> > > > > >           Subgroup readonly-bsd2:
> > > > > >                   pass       -> SKIP       (fi-skl-gvtdvm)
> > > > > >           Subgroup readonly-default:
> > > > > > WARNING: Long output truncated
> > > > > > 
> > > > > > da4321c7c088d01ad62b18d37dcfe5ef8d0b855d drm-tip: 2018y-01m-11d-14h-59m-37s UTC integration manifest
> > > > > > a0e8e84432b0 HAX: drm/i915/uc: Enable GuC/HuC for CI
> > > > > > 973357da236a drm/i915/guc: Don't enable GuC when vGPU is active
> > > > > > 
> > > > > > == Logs ==
> > > > > > 
> > > > > > For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_7651/issues.html
> > > > 
> > > > 
> > > 
> > > -- 
> > > Joonas Lahtinen
> > > Open Source Technology Center
> > > Intel Corporation
> 
> 
> Tomi
Michal Wajdeczko Jan. 16, 2018, 10:17 a.m. UTC | #7
On Tue, 16 Jan 2018 10:53:47 +0100, Joonas Lahtinen  
<joonas.lahtinen@linux.intel.com> wrote:

> On Mon, 2018-01-15 at 13:10 +0200, Tomi Sarvela wrote:
>> On 15/01/18 12:28, Zhenyu Wang wrote:
>> > On 2018.01.15 12:07:28 +0200, Joonas Lahtinen wrote:
>> > > On Fri, 2018-01-12 at 14:08 +0800, Du, Changbin wrote:
>> > > > On Fri, Jan 12, 2018 at 11:32:30AM +0530, Sagar Arun Kamble wrote:
>> > > > > Is skl-gvtdvm not having vGPU active?
>> > > > >
>> > > > > It has flag X86_FEATURE_HYPERVISOR set however it might be set  
>> on host too
>> > > > > so relying intel_vgpu_active().
>> > > > >
>> > > >
>> > > > Do you mean flag X86_FEATURE_HYPERVISOR is set on host, too? This  
>> is weird since this
>> > > > flag indicates the OS is running on a hypervisor.
>> > >
>> > > + CI folks and Zhenyu
>> > >
>> > > Somehow, magically, the virtual machine seems to starts skipping all
>> > > tests when GuC is disabled?
>> > >
>> > > Has somebody actually validated that the tests results are valid for
>> > > the virtual machine? Or is this a one-off CI quirk?
>> >
>> > Are these tests really run in VM with GVT-g enabled on host?
>>
>> These tests are ran on VM running on GVT-d (as name implies), not GVT-g.
>
> I don't still understand how explicitly disabling GuC could make all
> the tests skip on a machine that didn't use GuC to begin with. There
> must be something wrong in the initialization code.
>
> That intel_vgpu_active() check by my logic should not trigger in GVT-d
> (because we don't have virtual GPU, we have the real deal, just without
> stolen etc.), so I'm bit baffled.

True. This intel_vgpu_active() check added by Sagar is not active in these
scenarios so we keep turn on GuC on that platform (as default from auto)

-	param(int, enable_guc, 0) \
+	param(int, enable_guc, -1) \

[drm:intel_uc_sanitize_options [i915]] enable_guc=3 (submission:yes  
huc:yes)

but since i915_memcpy_from_wc() check still fails due to running under
hypervisor (introduced by "drm/i915: Do not enable movntdqa optimization
in hypervisor guest"), initialization of the GuC log fails

WARN_ON(!i915_memcpy_from_wc(((void *)0), ((void *)0), 0))
WARNING: CPU: 0 PID: 228 at drivers/gpu/drm/i915/intel_guc_log.c:527  
intel_guc_log_create

and that is treated as driver load error (as we no longer support silent
fallback from GuC to execlist, if GuC was selected using auto(-1) or  
explicit
load(1) modparam option.

On the other mail thread there was proposal to make GuC log optional in
case of running under hypervisor and disable it, but in my opinion it is
not a solution but just short term fix, as we want to keep GuC log enabled
since it works as is with other hypervisors.

Michal

>
> Regards, Joonas
>
>>
>> Tomi
>>
>> > > PS. I'd do the check as early return condition at the top, like vGPU
>> > > feature disabling elsewhere. It's not much point calculating the
>> > > details (calling into functions like intel_uc_fw_is_selected) and  
>> then
>> > > throwing results out afterwards :)
>> > >
>> >
>> > yeah, better, and we do plan to support vGuC from ICL for vGPU.
>> >
>> > > >
>> > > > >
>> > > > > On 1/11/2018 10:27 PM, Patchwork wrote:
>> > > > > > == Series Details ==
>> > > > > >
>> > > > > > Series: series starting with [1/2] drm/i915/guc: Don't enable  
>> GuC when vGPU is active
>> > > > > > URL   : https://patchwork.freedesktop.org/series/36343/
>> > > > > > State : failure
>> > > > > >
>> > > > > > == Summary ==
>> > > > > >
>> > > > > > Series 36343v1 series starting with [1/2] drm/i915/guc: Don't  
>> enable GuC when vGPU is active
>> > > > > >  
>> https://patchwork.freedesktop.org/api/1.0/series/36343/revisions/1/mbox/
>> > > > > >
>> > > > > > Test core_auth:
>> > > > > >           Subgroup basic-auth:
>> > > > > >                   pass       -> SKIP       (fi-skl-gvtdvm)
>> > > > > > Test core_prop_blob:
>> > > > > >           Subgroup basic:
>> > > > > >                   pass       -> SKIP       (fi-skl-gvtdvm)
>> > > > > > Test debugfs_test:
>> > > > > >           Subgroup read_all_entries:
>> > > > > >                   dmesg-warn -> DMESG-FAIL (fi-elk-e7500)  
>> fdo#103989
>> > > > > >                   pass       -> SKIP       (fi-skl-gvtdvm)
>> > > > > > Test drv_getparams_basic:
>> > > > > >           Subgroup basic-eu-total:
>> > > > > >                   pass       -> SKIP       (fi-skl-gvtdvm)
>> > > > > >           Subgroup basic-subslice-total:
>> > > > > >                   pass       -> SKIP       (fi-skl-gvtdvm)
>> > > > > > Test drv_hangman:
>> > > > > >           Subgroup error-state-basic:
>> > > > > >                   pass       -> SKIP       (fi-skl-gvtdvm)
>> > > > > > Test gem_basic:
>> > > > > >           Subgroup bad-close:
>> > > > > >                   pass       -> SKIP       (fi-skl-gvtdvm)
>> > > > > >           Subgroup create-close:
>> > > > > >                   pass       -> SKIP       (fi-skl-gvtdvm)
>> > > > > >           Subgroup create-fd-close:
>> > > > > >                   pass       -> SKIP       (fi-skl-gvtdvm)
>> > > > > > Test gem_busy:
>> > > > > >           Subgroup basic-busy-default:
>> > > > > >                   pass       -> SKIP       (fi-skl-gvtdvm)
>> > > > > >           Subgroup basic-hang-default:
>> > > > > >                   pass       -> SKIP       (fi-skl-gvtdvm)  
>> fdo#104108 +2
>> > > > > > Test gem_close_race:
>> > > > > >           Subgroup basic-process:
>> > > > > >                   pass       -> SKIP       (fi-skl-gvtdvm)
>> > > > > >           Subgroup basic-threads:
>> > > > > >                   pass       -> SKIP       (fi-skl-gvtdvm)
>> > > > > > Test gem_cpu_reloc:
>> > > > > >           Subgroup basic:
>> > > > > >                   pass       -> SKIP       (fi-skl-gvtdvm)
>> > > > > > Test gem_cs_tlb:
>> > > > > >           Subgroup basic-default:
>> > > > > >                   pass       -> SKIP       (fi-skl-gvtdvm)
>> > > > > > Test gem_ctx_create:
>> > > > > >           Subgroup basic:
>> > > > > >                   pass       -> SKIP       (fi-skl-gvtdvm)
>> > > > > >           Subgroup basic-files:
>> > > > > >                   pass       -> SKIP       (fi-skl-gvtdvm)
>> > > > > > Test gem_ctx_exec:
>> > > > > >           Subgroup basic:
>> > > > > >                   pass       -> SKIP       (fi-skl-gvtdvm)
>> > > > > > Test gem_ctx_param:
>> > > > > >           Subgroup basic:
>> > > > > >                   pass       -> SKIP       (fi-skl-gvtdvm)
>> > > > > >           Subgroup basic-default:
>> > > > > >                   pass       -> SKIP       (fi-skl-gvtdvm)
>> > > > > > Test gem_ctx_switch:
>> > > > > >           Subgroup basic-default:
>> > > > > >                   pass       -> SKIP       (fi-skl-gvtdvm)
>> > > > > >           Subgroup basic-default-heavy:
>> > > > > >                   pass       -> SKIP       (fi-skl-gvtdvm)
>> > > > > > Test gem_exec_basic:
>> > > > > >           Subgroup basic-blt:
>> > > > > >                   pass       -> SKIP       (fi-skl-gvtdvm)
>> > > > > >           Subgroup basic-bsd:
>> > > > > >                   pass       -> SKIP       (fi-skl-gvtdvm)
>> > > > > >           Subgroup basic-bsd1:
>> > > > > >                   pass       -> SKIP       (fi-skl-gvtdvm)
>> > > > > >           Subgroup basic-bsd2:
>> > > > > >                   pass       -> SKIP       (fi-skl-gvtdvm)
>> > > > > >           Subgroup basic-default:
>> > > > > >                   pass       -> SKIP       (fi-skl-gvtdvm)
>> > > > > >           Subgroup basic-render:
>> > > > > >                   pass       -> SKIP       (fi-skl-gvtdvm)
>> > > > > >           Subgroup basic-vebox:
>> > > > > >                   pass       -> SKIP       (fi-skl-gvtdvm)
>> > > > > >           Subgroup gtt-blt:
>> > > > > >                   pass       -> SKIP       (fi-skl-gvtdvm)
>> > > > > >           Subgroup gtt-bsd:
>> > > > > >                   pass       -> SKIP       (fi-skl-gvtdvm)
>> > > > > >           Subgroup gtt-bsd1:
>> > > > > >                   pass       -> SKIP       (fi-skl-gvtdvm)
>> > > > > >           Subgroup gtt-bsd2:
>> > > > > >                   pass       -> SKIP       (fi-skl-gvtdvm)
>> > > > > >           Subgroup gtt-default:
>> > > > > >                   pass       -> SKIP       (fi-skl-gvtdvm)
>> > > > > >           Subgroup gtt-render:
>> > > > > >                   pass       -> SKIP       (fi-skl-gvtdvm)
>> > > > > >           Subgroup gtt-vebox:
>> > > > > >                   pass       -> SKIP       (fi-skl-gvtdvm)
>> > > > > >           Subgroup readonly-blt:
>> > > > > >                   pass       -> SKIP       (fi-skl-gvtdvm)
>> > > > > >           Subgroup readonly-bsd:
>> > > > > >                   pass       -> SKIP       (fi-skl-gvtdvm)
>> > > > > >           Subgroup readonly-bsd1:
>> > > > > >                   pass       -> SKIP       (fi-skl-gvtdvm)
>> > > > > >           Subgroup readonly-bsd2:
>> > > > > >                   pass       -> SKIP       (fi-skl-gvtdvm)
>> > > > > >           Subgroup readonly-default:
>> > > > > > WARNING: Long output truncated
>> > > > > >
>> > > > > > da4321c7c088d01ad62b18d37dcfe5ef8d0b855d drm-tip:  
>> 2018y-01m-11d-14h-59m-37s UTC integration manifest
>> > > > > > a0e8e84432b0 HAX: drm/i915/uc: Enable GuC/HuC for CI
>> > > > > > 973357da236a drm/i915/guc: Don't enable GuC when vGPU is  
>> active
>> > > > > >
>> > > > > > == Logs ==
>> > > > > >
>> > > > > > For more details see:  
>> https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_7651/issues.html
>> > > >
>> > > >
>> > >
>> > > --
>> > > Joonas Lahtinen
>> > > Open Source Technology Center
>> > > Intel Corporation
>>
>>
>> Tomi
Du, Changbin Jan. 17, 2018, 2:36 a.m. UTC | #8
On Tue, Jan 16, 2018 at 11:17:39AM +0100, Michal Wajdeczko wrote:
> On Tue, 16 Jan 2018 10:53:47 +0100, Joonas Lahtinen
> <joonas.lahtinen@linux.intel.com> wrote:
> 
> > On Mon, 2018-01-15 at 13:10 +0200, Tomi Sarvela wrote:
> > > On 15/01/18 12:28, Zhenyu Wang wrote:
> > > > On 2018.01.15 12:07:28 +0200, Joonas Lahtinen wrote:
> > > > > On Fri, 2018-01-12 at 14:08 +0800, Du, Changbin wrote:
> > > > > > On Fri, Jan 12, 2018 at 11:32:30AM +0530, Sagar Arun Kamble wrote:
> > > > > > > Is skl-gvtdvm not having vGPU active?
> > > > > > >
> > > > > > > It has flag X86_FEATURE_HYPERVISOR set however it might be
> > > set on host too
> > > > > > > so relying intel_vgpu_active().
> > > > > > >
> > > > > >
> > > > > > Do you mean flag X86_FEATURE_HYPERVISOR is set on host, too?
> > > This is weird since this
> > > > > > flag indicates the OS is running on a hypervisor.
> > > > >
> > > > > + CI folks and Zhenyu
> > > > >
> > > > > Somehow, magically, the virtual machine seems to starts skipping all
> > > > > tests when GuC is disabled?
> > > > >
> > > > > Has somebody actually validated that the tests results are valid for
> > > > > the virtual machine? Or is this a one-off CI quirk?
> > > >
> > > > Are these tests really run in VM with GVT-g enabled on host?
> > > 
> > > These tests are ran on VM running on GVT-d (as name implies), not GVT-g.
> > 
> > I don't still understand how explicitly disabling GuC could make all
> > the tests skip on a machine that didn't use GuC to begin with. There
> > must be something wrong in the initialization code.
> > 
> > That intel_vgpu_active() check by my logic should not trigger in GVT-d
> > (because we don't have virtual GPU, we have the real deal, just without
> > stolen etc.), so I'm bit baffled.
> 
> True. This intel_vgpu_active() check added by Sagar is not active in these
> scenarios so we keep turn on GuC on that platform (as default from auto)
> 
> -	param(int, enable_guc, 0) \
> +	param(int, enable_guc, -1) \
> 
> [drm:intel_uc_sanitize_options [i915]] enable_guc=3 (submission:yes huc:yes)
> 
> but since i915_memcpy_from_wc() check still fails due to running under
> hypervisor (introduced by "drm/i915: Do not enable movntdqa optimization
> in hypervisor guest"), initialization of the GuC log fails
> 
> WARN_ON(!i915_memcpy_from_wc(((void *)0), ((void *)0), 0))
> WARNING: CPU: 0 PID: 228 at drivers/gpu/drm/i915/intel_guc_log.c:527
> intel_guc_log_create
> 
> and that is treated as driver load error (as we no longer support silent
> fallback from GuC to execlist, if GuC was selected using auto(-1) or
> explicit
> load(1) modparam option.
> 
> On the other mail thread there was proposal to make GuC log optional in
> case of running under hypervisor and disable it, but in my opinion it is
> not a solution but just short term fix, as we want to keep GuC log enabled
> since it works as is with other hypervisors.
>
> Michal

To enable Guc logging on hypervisor guest, I think the correct solution is to
fallback to memcpy() after i915_has_memcpy_from_wc(). At least for kvm, it needs
this change considering GPU passthrough.

Thanks,
Changbin Du
Tvrtko Ursulin Jan. 17, 2018, 11:18 a.m. UTC | #9
On 17/01/2018 02:36, Du, Changbin wrote:
> On Tue, Jan 16, 2018 at 11:17:39AM +0100, Michal Wajdeczko wrote:
>> On Tue, 16 Jan 2018 10:53:47 +0100, Joonas Lahtinen
>> <joonas.lahtinen@linux.intel.com> wrote:
>>
>>> On Mon, 2018-01-15 at 13:10 +0200, Tomi Sarvela wrote:
>>>> On 15/01/18 12:28, Zhenyu Wang wrote:
>>>>> On 2018.01.15 12:07:28 +0200, Joonas Lahtinen wrote:
>>>>>> On Fri, 2018-01-12 at 14:08 +0800, Du, Changbin wrote:
>>>>>>> On Fri, Jan 12, 2018 at 11:32:30AM +0530, Sagar Arun Kamble wrote:
>>>>>>>> Is skl-gvtdvm not having vGPU active?
>>>>>>>>
>>>>>>>> It has flag X86_FEATURE_HYPERVISOR set however it might be
>>>> set on host too
>>>>>>>> so relying intel_vgpu_active().
>>>>>>>>
>>>>>>>
>>>>>>> Do you mean flag X86_FEATURE_HYPERVISOR is set on host, too?
>>>> This is weird since this
>>>>>>> flag indicates the OS is running on a hypervisor.
>>>>>>
>>>>>> + CI folks and Zhenyu
>>>>>>
>>>>>> Somehow, magically, the virtual machine seems to starts skipping all
>>>>>> tests when GuC is disabled?
>>>>>>
>>>>>> Has somebody actually validated that the tests results are valid for
>>>>>> the virtual machine? Or is this a one-off CI quirk?
>>>>>
>>>>> Are these tests really run in VM with GVT-g enabled on host?
>>>>
>>>> These tests are ran on VM running on GVT-d (as name implies), not GVT-g.
>>>
>>> I don't still understand how explicitly disabling GuC could make all
>>> the tests skip on a machine that didn't use GuC to begin with. There
>>> must be something wrong in the initialization code.
>>>
>>> That intel_vgpu_active() check by my logic should not trigger in GVT-d
>>> (because we don't have virtual GPU, we have the real deal, just without
>>> stolen etc.), so I'm bit baffled.
>>
>> True. This intel_vgpu_active() check added by Sagar is not active in these
>> scenarios so we keep turn on GuC on that platform (as default from auto)
>>
>> -	param(int, enable_guc, 0) \
>> +	param(int, enable_guc, -1) \
>>
>> [drm:intel_uc_sanitize_options [i915]] enable_guc=3 (submission:yes huc:yes)
>>
>> but since i915_memcpy_from_wc() check still fails due to running under
>> hypervisor (introduced by "drm/i915: Do not enable movntdqa optimization
>> in hypervisor guest"), initialization of the GuC log fails
>>
>> WARN_ON(!i915_memcpy_from_wc(((void *)0), ((void *)0), 0))
>> WARNING: CPU: 0 PID: 228 at drivers/gpu/drm/i915/intel_guc_log.c:527
>> intel_guc_log_create
>>
>> and that is treated as driver load error (as we no longer support silent
>> fallback from GuC to execlist, if GuC was selected using auto(-1) or
>> explicit
>> load(1) modparam option.
>>
>> On the other mail thread there was proposal to make GuC log optional in
>> case of running under hypervisor and disable it, but in my opinion it is
>> not a solution but just short term fix, as we want to keep GuC log enabled
>> since it works as is with other hypervisors.
>>
>> Michal
> 
> To enable Guc logging on hypervisor guest, I think the correct solution is to
> fallback to memcpy() after i915_has_memcpy_from_wc(). At least for kvm, it needs
> this change considering GPU passthrough.

Perhaps a stupid question - but we are not talking about a scheme where 
multiple guests could read the same GuC log?

Regards,

Tvrtko
Joonas Lahtinen Jan. 18, 2018, 9:42 a.m. UTC | #10
On Tue, 2018-01-16 at 11:17 +0100, Michal Wajdeczko wrote:
> On Tue, 16 Jan 2018 10:53:47 +0100, Joonas Lahtinen  
> <joonas.lahtinen@linux.intel.com> wrote:
> 
> > On Mon, 2018-01-15 at 13:10 +0200, Tomi Sarvela wrote:
> > > On 15/01/18 12:28, Zhenyu Wang wrote:
> > > > On 2018.01.15 12:07:28 +0200, Joonas Lahtinen wrote:
> > > > > On Fri, 2018-01-12 at 14:08 +0800, Du, Changbin wrote:
> > > > > > On Fri, Jan 12, 2018 at 11:32:30AM +0530, Sagar Arun Kamble wrote:
> > > > > > > Is skl-gvtdvm not having vGPU active?
> > > > > > > 
> > > > > > > It has flag X86_FEATURE_HYPERVISOR set however it might be set  
> > > 
> > > on host too
> > > > > > > so relying intel_vgpu_active().
> > > > > > > 
> > > > > > 
> > > > > > Do you mean flag X86_FEATURE_HYPERVISOR is set on host, too? This  
> > > 
> > > is weird since this
> > > > > > flag indicates the OS is running on a hypervisor.
> > > > > 
> > > > > + CI folks and Zhenyu
> > > > > 
> > > > > Somehow, magically, the virtual machine seems to starts skipping all
> > > > > tests when GuC is disabled?
> > > > > 
> > > > > Has somebody actually validated that the tests results are valid for
> > > > > the virtual machine? Or is this a one-off CI quirk?
> > > > 
> > > > Are these tests really run in VM with GVT-g enabled on host?
> > > 
> > > These tests are ran on VM running on GVT-d (as name implies), not GVT-g.
> > 
> > I don't still understand how explicitly disabling GuC could make all
> > the tests skip on a machine that didn't use GuC to begin with. There
> > must be something wrong in the initialization code.
> > 
> > That intel_vgpu_active() check by my logic should not trigger in GVT-d
> > (because we don't have virtual GPU, we have the real deal, just without
> > stolen etc.), so I'm bit baffled.
> 
> True. This intel_vgpu_active() check added by Sagar is not active in these
> scenarios so we keep turn on GuC on that platform (as default from auto)
> 
> -	param(int, enable_guc, 0) \
> +	param(int, enable_guc, -1) \
> 
> [drm:intel_uc_sanitize_options [i915]] enable_guc=3 (submission:yes  
> huc:yes)
> 
> but since i915_memcpy_from_wc() check still fails due to running under
> hypervisor (introduced by "drm/i915: Do not enable movntdqa optimization
> in hypervisor guest"), initialization of the GuC log fails
> 
> WARN_ON(!i915_memcpy_from_wc(((void *)0), ((void *)0), 0))
> WARNING: CPU: 0 PID: 228 at drivers/gpu/drm/i915/intel_guc_log.c:527  
> intel_guc_log_create
> 
> and that is treated as driver load error (as we no longer support silent
> fallback from GuC to execlist, if GuC was selected using auto(-1) or  
> explicit
> load(1) modparam option.

Seems like this already bit us (earlier than expected), so I guess it's
time to fix it sooner than later.

As previously stated, it's not really reasonable for the user to leave
them with no working driver at all if the GuC load fails. I think WARN
would be justified for the user in case they explicitly requested for
GuC and we couldn't deliver, as the functional experience might differ.

When you combine that with a kselftest which will report a failure when
explicit GuC submission was set in enable_guc but no GuC could be
contacted, we will keep getting a CI failure when we want to test GuC
functionality and ELSP is used instead. So in those cases, I expect a
clear indication that something-something-guc@explicit-enable subtest
will fail.

In the future, we can then make that WARN then trigger in the event of
an automatic loading failure after we've gained solid experience that
it works more times than it breaks. But that's for future.

Regards, Joonas

> 
> On the other mail thread there was proposal to make GuC log optional in
> case of running under hypervisor and disable it, but in my opinion it is
> not a solution but just short term fix, as we want to keep GuC log enabled
> since it works as is with other hypervisors.
> 
> Michal
> 
> > 
> > Regards, Joonas
> > 
> > > 
> > > Tomi
> > > 
> > > > > PS. I'd do the check as early return condition at the top, like vGPU
> > > > > feature disabling elsewhere. It's not much point calculating the
> > > > > details (calling into functions like intel_uc_fw_is_selected) and  
> > > 
> > > then
> > > > > throwing results out afterwards :)
> > > > > 
> > > > 
> > > > yeah, better, and we do plan to support vGuC from ICL for vGPU.
> > > > 
> > > > > > 
> > > > > > > 
> > > > > > > On 1/11/2018 10:27 PM, Patchwork wrote:
> > > > > > > > == Series Details ==
> > > > > > > > 
> > > > > > > > Series: series starting with [1/2] drm/i915/guc: Don't enable  
> > > 
> > > GuC when vGPU is active
> > > > > > > > URL   : https://patchwork.freedesktop.org/series/36343/
> > > > > > > > State : failure
> > > > > > > > 
> > > > > > > > == Summary ==
> > > > > > > > 
> > > > > > > > Series 36343v1 series starting with [1/2] drm/i915/guc: Don't  
> > > 
> > > enable GuC when vGPU is active
> > > > > > > >  
> > > 
> > > https://patchwork.freedesktop.org/api/1.0/series/36343/revisions/1/mbox/
> > > > > > > > 
> > > > > > > > Test core_auth:
> > > > > > > >           Subgroup basic-auth:
> > > > > > > >                   pass       -> SKIP       (fi-skl-gvtdvm)
> > > > > > > > Test core_prop_blob:
> > > > > > > >           Subgroup basic:
> > > > > > > >                   pass       -> SKIP       (fi-skl-gvtdvm)
> > > > > > > > Test debugfs_test:
> > > > > > > >           Subgroup read_all_entries:
> > > > > > > >                   dmesg-warn -> DMESG-FAIL (fi-elk-e7500)  
> > > 
> > > fdo#103989
> > > > > > > >                   pass       -> SKIP       (fi-skl-gvtdvm)
> > > > > > > > Test drv_getparams_basic:
> > > > > > > >           Subgroup basic-eu-total:
> > > > > > > >                   pass       -> SKIP       (fi-skl-gvtdvm)
> > > > > > > >           Subgroup basic-subslice-total:
> > > > > > > >                   pass       -> SKIP       (fi-skl-gvtdvm)
> > > > > > > > Test drv_hangman:
> > > > > > > >           Subgroup error-state-basic:
> > > > > > > >                   pass       -> SKIP       (fi-skl-gvtdvm)
> > > > > > > > Test gem_basic:
> > > > > > > >           Subgroup bad-close:
> > > > > > > >                   pass       -> SKIP       (fi-skl-gvtdvm)
> > > > > > > >           Subgroup create-close:
> > > > > > > >                   pass       -> SKIP       (fi-skl-gvtdvm)
> > > > > > > >           Subgroup create-fd-close:
> > > > > > > >                   pass       -> SKIP       (fi-skl-gvtdvm)
> > > > > > > > Test gem_busy:
> > > > > > > >           Subgroup basic-busy-default:
> > > > > > > >                   pass       -> SKIP       (fi-skl-gvtdvm)
> > > > > > > >           Subgroup basic-hang-default:
> > > > > > > >                   pass       -> SKIP       (fi-skl-gvtdvm)  
> > > 
> > > fdo#104108 +2
> > > > > > > > Test gem_close_race:
> > > > > > > >           Subgroup basic-process:
> > > > > > > >                   pass       -> SKIP       (fi-skl-gvtdvm)
> > > > > > > >           Subgroup basic-threads:
> > > > > > > >                   pass       -> SKIP       (fi-skl-gvtdvm)
> > > > > > > > Test gem_cpu_reloc:
> > > > > > > >           Subgroup basic:
> > > > > > > >                   pass       -> SKIP       (fi-skl-gvtdvm)
> > > > > > > > Test gem_cs_tlb:
> > > > > > > >           Subgroup basic-default:
> > > > > > > >                   pass       -> SKIP       (fi-skl-gvtdvm)
> > > > > > > > Test gem_ctx_create:
> > > > > > > >           Subgroup basic:
> > > > > > > >                   pass       -> SKIP       (fi-skl-gvtdvm)
> > > > > > > >           Subgroup basic-files:
> > > > > > > >                   pass       -> SKIP       (fi-skl-gvtdvm)
> > > > > > > > Test gem_ctx_exec:
> > > > > > > >           Subgroup basic:
> > > > > > > >                   pass       -> SKIP       (fi-skl-gvtdvm)
> > > > > > > > Test gem_ctx_param:
> > > > > > > >           Subgroup basic:
> > > > > > > >                   pass       -> SKIP       (fi-skl-gvtdvm)
> > > > > > > >           Subgroup basic-default:
> > > > > > > >                   pass       -> SKIP       (fi-skl-gvtdvm)
> > > > > > > > Test gem_ctx_switch:
> > > > > > > >           Subgroup basic-default:
> > > > > > > >                   pass       -> SKIP       (fi-skl-gvtdvm)
> > > > > > > >           Subgroup basic-default-heavy:
> > > > > > > >                   pass       -> SKIP       (fi-skl-gvtdvm)
> > > > > > > > Test gem_exec_basic:
> > > > > > > >           Subgroup basic-blt:
> > > > > > > >                   pass       -> SKIP       (fi-skl-gvtdvm)
> > > > > > > >           Subgroup basic-bsd:
> > > > > > > >                   pass       -> SKIP       (fi-skl-gvtdvm)
> > > > > > > >           Subgroup basic-bsd1:
> > > > > > > >                   pass       -> SKIP       (fi-skl-gvtdvm)
> > > > > > > >           Subgroup basic-bsd2:
> > > > > > > >                   pass       -> SKIP       (fi-skl-gvtdvm)
> > > > > > > >           Subgroup basic-default:
> > > > > > > >                   pass       -> SKIP       (fi-skl-gvtdvm)
> > > > > > > >           Subgroup basic-render:
> > > > > > > >                   pass       -> SKIP       (fi-skl-gvtdvm)
> > > > > > > >           Subgroup basic-vebox:
> > > > > > > >                   pass       -> SKIP       (fi-skl-gvtdvm)
> > > > > > > >           Subgroup gtt-blt:
> > > > > > > >                   pass       -> SKIP       (fi-skl-gvtdvm)
> > > > > > > >           Subgroup gtt-bsd:
> > > > > > > >                   pass       -> SKIP       (fi-skl-gvtdvm)
> > > > > > > >           Subgroup gtt-bsd1:
> > > > > > > >                   pass       -> SKIP       (fi-skl-gvtdvm)
> > > > > > > >           Subgroup gtt-bsd2:
> > > > > > > >                   pass       -> SKIP       (fi-skl-gvtdvm)
> > > > > > > >           Subgroup gtt-default:
> > > > > > > >                   pass       -> SKIP       (fi-skl-gvtdvm)
> > > > > > > >           Subgroup gtt-render:
> > > > > > > >                   pass       -> SKIP       (fi-skl-gvtdvm)
> > > > > > > >           Subgroup gtt-vebox:
> > > > > > > >                   pass       -> SKIP       (fi-skl-gvtdvm)
> > > > > > > >           Subgroup readonly-blt:
> > > > > > > >                   pass       -> SKIP       (fi-skl-gvtdvm)
> > > > > > > >           Subgroup readonly-bsd:
> > > > > > > >                   pass       -> SKIP       (fi-skl-gvtdvm)
> > > > > > > >           Subgroup readonly-bsd1:
> > > > > > > >                   pass       -> SKIP       (fi-skl-gvtdvm)
> > > > > > > >           Subgroup readonly-bsd2:
> > > > > > > >                   pass       -> SKIP       (fi-skl-gvtdvm)
> > > > > > > >           Subgroup readonly-default:
> > > > > > > > WARNING: Long output truncated
> > > > > > > > 
> > > > > > > > da4321c7c088d01ad62b18d37dcfe5ef8d0b855d drm-tip:  
> > > 
> > > 2018y-01m-11d-14h-59m-37s UTC integration manifest
> > > > > > > > a0e8e84432b0 HAX: drm/i915/uc: Enable GuC/HuC for CI
> > > > > > > > 973357da236a drm/i915/guc: Don't enable GuC when vGPU is  
> > > 
> > > active
> > > > > > > > 
> > > > > > > > == Logs ==
> > > > > > > > 
> > > > > > > > For more details see:  
> > > 
> > > https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_7651/issues.html
> > > > > > 
> > > > > > 
> > > > > 
> > > > > --
> > > > > Joonas Lahtinen
> > > > > Open Source Technology Center
> > > > > Intel Corporation
> > > 
> > > 
> > > Tomi

Patch
diff mbox

diff --git a/drivers/gpu/drm/i915/intel_uc.c b/drivers/gpu/drm/i915/intel_uc.c
index d82ca0f..a836cf8 100644
--- a/drivers/gpu/drm/i915/intel_uc.c
+++ b/drivers/gpu/drm/i915/intel_uc.c
@@ -61,6 +61,8 @@  static int __get_platform_enable_guc(struct drm_i915_private *dev_priv)
 		enable_guc |= ENABLE_GUC_LOAD_HUC;
 
 	/* Any platform specific fine-tuning can be done here */
+	if (intel_vgpu_active(dev_priv))
+		enable_guc = 0;
 
 	return enable_guc;
 }