* [CI 0/4] Don't sanitize enable_guc
@ 2019-07-31 22:33 Michal Wajdeczko
2019-07-31 22:33 ` [CI 1/4] drm/i915/uc: Rename intel_uc_is_using* into intel_uc_supports* Michal Wajdeczko
` (5 more replies)
0 siblings, 6 replies; 10+ messages in thread
From: Michal Wajdeczko @ 2019-07-31 22:33 UTC (permalink / raw)
To: intel-gfx
v3: oops
Michal Wajdeczko (4):
drm/i915/uc: Rename intel_uc_is_using* into intel_uc_supports*
drm/i915/uc: Consider enable_guc modparam during fw selection
drm/i915/guc: Use dedicated flag to track submission mode
drm/i915/uc: Stop sanitizing enable_guc modparam
drivers/gpu/drm/i915/gt/uc/intel_guc.c | 9 +-
drivers/gpu/drm/i915/gt/uc/intel_guc.h | 12 ++
.../gpu/drm/i915/gt/uc/intel_guc_submission.c | 16 +++
.../gpu/drm/i915/gt/uc/intel_guc_submission.h | 1 +
drivers/gpu/drm/i915/gt/uc/intel_huc.c | 2 +-
drivers/gpu/drm/i915/gt/uc/intel_huc.h | 5 +
drivers/gpu/drm/i915/gt/uc/intel_uc.c | 130 +++++++-----------
drivers/gpu/drm/i915/gt/uc/intel_uc.h | 15 +-
drivers/gpu/drm/i915/gt/uc/intel_uc_fw.c | 23 +++-
drivers/gpu/drm/i915/i915_drv.h | 4 +-
10 files changed, 116 insertions(+), 101 deletions(-)
--
2.19.2
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 10+ messages in thread
* [CI 1/4] drm/i915/uc: Rename intel_uc_is_using* into intel_uc_supports*
2019-07-31 22:33 [CI 0/4] Don't sanitize enable_guc Michal Wajdeczko
@ 2019-07-31 22:33 ` Michal Wajdeczko
2019-07-31 22:33 ` [CI 2/4] drm/i915/uc: Consider enable_guc modparam during fw selection Michal Wajdeczko
` (4 subsequent siblings)
5 siblings, 0 replies; 10+ messages in thread
From: Michal Wajdeczko @ 2019-07-31 22:33 UTC (permalink / raw)
To: intel-gfx
Rename intel_uc_is_using* into intel_uc_supports* to make clear
distinction from actual state (compare intel_uc_fw_is_running)
Suggested-by: Chris Wilson <chris@chris-wilson.co.uk>
Signed-off-by: Michal Wajdeczko <michal.wajdeczko@intel.com>
Cc: Chris Wilson <chris@chris-wilson.co.uk>
Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
---
drivers/gpu/drm/i915/gt/uc/intel_guc.c | 8 ++---
drivers/gpu/drm/i915/gt/uc/intel_huc.c | 2 +-
drivers/gpu/drm/i915/gt/uc/intel_uc.c | 44 +++++++++++++-------------
drivers/gpu/drm/i915/gt/uc/intel_uc.h | 6 ++--
drivers/gpu/drm/i915/i915_drv.h | 4 +--
5 files changed, 32 insertions(+), 32 deletions(-)
diff --git a/drivers/gpu/drm/i915/gt/uc/intel_guc.c b/drivers/gpu/drm/i915/gt/uc/intel_guc.c
index 13fbbffd05c7..f8fc34816e2c 100644
--- a/drivers/gpu/drm/i915/gt/uc/intel_guc.c
+++ b/drivers/gpu/drm/i915/gt/uc/intel_guc.c
@@ -144,7 +144,7 @@ static u32 guc_ctl_feature_flags(struct intel_guc *guc)
{
u32 flags = 0;
- if (!intel_uc_is_using_guc_submission(&guc_to_gt(guc)->uc))
+ if (!intel_uc_supports_guc_submission(&guc_to_gt(guc)->uc))
flags |= GUC_CTL_DISABLE_SCHEDULER;
return flags;
@@ -154,7 +154,7 @@ static u32 guc_ctl_ctxinfo_flags(struct intel_guc *guc)
{
u32 flags = 0;
- if (intel_uc_is_using_guc_submission(&guc_to_gt(guc)->uc)) {
+ if (intel_uc_supports_guc_submission(&guc_to_gt(guc)->uc)) {
u32 ctxnum, base;
base = intel_guc_ggtt_offset(guc, guc->stage_desc_pool);
@@ -290,7 +290,7 @@ int intel_guc_init(struct intel_guc *guc)
if (ret)
goto err_ads;
- if (intel_uc_is_using_guc_submission(>->uc)) {
+ if (intel_uc_supports_guc_submission(>->uc)) {
/*
* This is stuff we need to have available at fw load time
* if we are planning to enable submission later
@@ -329,7 +329,7 @@ void intel_guc_fini(struct intel_guc *guc)
i915_ggtt_disable_guc(gt->ggtt);
- if (intel_uc_is_using_guc_submission(>->uc))
+ if (intel_uc_supports_guc_submission(>->uc))
intel_guc_submission_fini(guc);
intel_guc_ct_fini(&guc->ct);
diff --git a/drivers/gpu/drm/i915/gt/uc/intel_huc.c b/drivers/gpu/drm/i915/gt/uc/intel_huc.c
index c9535caba844..d642b167a389 100644
--- a/drivers/gpu/drm/i915/gt/uc/intel_huc.c
+++ b/drivers/gpu/drm/i915/gt/uc/intel_huc.c
@@ -185,7 +185,7 @@ int intel_huc_check_status(struct intel_huc *huc)
intel_wakeref_t wakeref;
u32 status = 0;
- if (!intel_uc_is_using_huc(>->uc))
+ if (!intel_uc_supports_huc(>->uc))
return -ENODEV;
with_intel_runtime_pm(>->i915->runtime_pm, wakeref)
diff --git a/drivers/gpu/drm/i915/gt/uc/intel_uc.c b/drivers/gpu/drm/i915/gt/uc/intel_uc.c
index 66b226be6759..5d674e418e5e 100644
--- a/drivers/gpu/drm/i915/gt/uc/intel_uc.c
+++ b/drivers/gpu/drm/i915/gt/uc/intel_uc.c
@@ -95,11 +95,11 @@ static void sanitize_options_early(struct intel_uc *uc)
DRM_DEBUG_DRIVER("enable_guc=%d (submission:%s huc:%s)\n",
i915_modparams.enable_guc,
- yesno(intel_uc_is_using_guc_submission(uc)),
- yesno(intel_uc_is_using_huc(uc)));
+ yesno(intel_uc_supports_guc_submission(uc)),
+ yesno(intel_uc_supports_huc(uc)));
/* Verify GuC firmware availability */
- if (intel_uc_is_using_guc(uc) && !intel_uc_fw_supported(guc_fw)) {
+ if (intel_uc_supports_guc(uc) && !intel_uc_fw_supported(guc_fw)) {
DRM_WARN("Incompatible option detected: enable_guc=%d, "
"but GuC is not supported!\n",
i915_modparams.enable_guc);
@@ -108,7 +108,7 @@ static void sanitize_options_early(struct intel_uc *uc)
}
/* Verify HuC firmware availability */
- if (intel_uc_is_using_huc(uc) && !intel_uc_fw_supported(huc_fw)) {
+ if (intel_uc_supports_huc(uc) && !intel_uc_fw_supported(huc_fw)) {
DRM_WARN("Incompatible option detected: enable_guc=%d, "
"but HuC is not supported!\n",
i915_modparams.enable_guc);
@@ -117,7 +117,7 @@ static void sanitize_options_early(struct intel_uc *uc)
}
/* XXX: GuC submission is unavailable for now */
- if (intel_uc_is_using_guc_submission(uc)) {
+ if (intel_uc_supports_guc_submission(uc)) {
DRM_INFO("Incompatible option detected: enable_guc=%d, "
"but GuC submission is not supported!\n",
i915_modparams.enable_guc);
@@ -309,21 +309,21 @@ void intel_uc_fetch_firmwares(struct intel_uc *uc)
{
struct drm_i915_private *i915 = uc_to_gt(uc)->i915;
- if (!intel_uc_is_using_guc(uc))
+ if (!intel_uc_supports_guc(uc))
return;
intel_uc_fw_fetch(&uc->guc.fw, i915);
- if (intel_uc_is_using_huc(uc))
+ if (intel_uc_supports_huc(uc))
intel_uc_fw_fetch(&uc->huc.fw, i915);
}
void intel_uc_cleanup_firmwares(struct intel_uc *uc)
{
- if (!intel_uc_is_using_guc(uc))
+ if (!intel_uc_supports_guc(uc))
return;
- if (intel_uc_is_using_huc(uc))
+ if (intel_uc_supports_huc(uc))
intel_uc_fw_cleanup_fetch(&uc->huc.fw);
intel_uc_fw_cleanup_fetch(&uc->guc.fw);
@@ -335,20 +335,20 @@ int intel_uc_init(struct intel_uc *uc)
struct intel_huc *huc = &uc->huc;
int ret;
- if (!intel_uc_is_using_guc(uc))
+ if (!intel_uc_supports_guc(uc))
return 0;
if (!intel_uc_fw_supported(&guc->fw))
return -ENODEV;
/* XXX: GuC submission is unavailable for now */
- GEM_BUG_ON(intel_uc_is_using_guc_submission(uc));
+ GEM_BUG_ON(intel_uc_supports_guc_submission(uc));
ret = intel_guc_init(guc);
if (ret)
return ret;
- if (intel_uc_is_using_huc(uc)) {
+ if (intel_uc_supports_huc(uc)) {
ret = intel_huc_init(huc);
if (ret)
goto err_guc;
@@ -365,12 +365,12 @@ void intel_uc_fini(struct intel_uc *uc)
{
struct intel_guc *guc = &uc->guc;
- if (!intel_uc_is_using_guc(uc))
+ if (!intel_uc_supports_guc(uc))
return;
GEM_BUG_ON(!intel_uc_fw_supported(&guc->fw));
- if (intel_uc_is_using_huc(uc))
+ if (intel_uc_supports_huc(uc))
intel_huc_fini(&uc->huc);
intel_guc_fini(guc);
@@ -391,7 +391,7 @@ static void __uc_sanitize(struct intel_uc *uc)
void intel_uc_sanitize(struct intel_uc *uc)
{
- if (!intel_uc_is_using_guc(uc))
+ if (!intel_uc_supports_guc(uc))
return;
__uc_sanitize(uc);
@@ -404,11 +404,11 @@ static int uc_init_wopcm(struct intel_uc *uc)
struct intel_uncore *uncore = gt->uncore;
u32 base = intel_wopcm_guc_base(>->i915->wopcm);
u32 size = intel_wopcm_guc_size(>->i915->wopcm);
- u32 huc_agent = intel_uc_is_using_huc(uc) ? HUC_LOADING_AGENT_GUC : 0;
+ u32 huc_agent = intel_uc_supports_huc(uc) ? HUC_LOADING_AGENT_GUC : 0;
u32 mask;
int err;
- GEM_BUG_ON(!intel_uc_is_using_guc(uc));
+ GEM_BUG_ON(!intel_uc_supports_guc(uc));
GEM_BUG_ON(!(base & GUC_WOPCM_OFFSET_MASK));
GEM_BUG_ON(base & ~GUC_WOPCM_OFFSET_MASK);
GEM_BUG_ON(!(size & GUC_WOPCM_SIZE_MASK));
@@ -447,7 +447,7 @@ int intel_uc_init_hw(struct intel_uc *uc)
struct intel_huc *huc = &uc->huc;
int ret, attempts;
- if (!intel_uc_is_using_guc(uc))
+ if (!intel_uc_supports_guc(uc))
return 0;
GEM_BUG_ON(!intel_uc_fw_supported(&guc->fw));
@@ -474,7 +474,7 @@ int intel_uc_init_hw(struct intel_uc *uc)
if (ret)
goto err_out;
- if (intel_uc_is_using_huc(uc)) {
+ if (intel_uc_supports_huc(uc)) {
ret = intel_huc_fw_upload(huc);
if (ret && intel_uc_fw_is_overridden(&huc->fw))
goto err_out;
@@ -508,7 +508,7 @@ int intel_uc_init_hw(struct intel_uc *uc)
if (ret)
goto err_communication;
- if (intel_uc_is_using_guc_submission(uc)) {
+ if (intel_uc_supports_guc_submission(uc)) {
ret = intel_guc_submission_enable(guc);
if (ret)
goto err_communication;
@@ -517,7 +517,7 @@ int intel_uc_init_hw(struct intel_uc *uc)
dev_info(i915->drm.dev, "GuC firmware version %u.%u\n",
guc->fw.major_ver_found, guc->fw.minor_ver_found);
dev_info(i915->drm.dev, "GuC submission %s\n",
- enableddisabled(intel_uc_is_using_guc_submission(uc)));
+ enableddisabled(intel_uc_supports_guc_submission(uc)));
dev_info(i915->drm.dev, "HuC %s\n",
enableddisabled(intel_huc_is_authenticated(huc)));
@@ -553,7 +553,7 @@ void intel_uc_fini_hw(struct intel_uc *uc)
GEM_BUG_ON(!intel_uc_fw_supported(&guc->fw));
- if (intel_uc_is_using_guc_submission(uc))
+ if (intel_uc_supports_guc_submission(uc))
intel_guc_submission_disable(guc);
guc_disable_communication(guc);
diff --git a/drivers/gpu/drm/i915/gt/uc/intel_uc.h b/drivers/gpu/drm/i915/gt/uc/intel_uc.h
index 25da51e95417..66d8b1ee6f1d 100644
--- a/drivers/gpu/drm/i915/gt/uc/intel_uc.h
+++ b/drivers/gpu/drm/i915/gt/uc/intel_uc.h
@@ -49,19 +49,19 @@ void intel_uc_runtime_suspend(struct intel_uc *uc);
int intel_uc_resume(struct intel_uc *uc);
int intel_uc_runtime_resume(struct intel_uc *uc);
-static inline bool intel_uc_is_using_guc(struct intel_uc *uc)
+static inline bool intel_uc_supports_guc(struct intel_uc *uc)
{
GEM_BUG_ON(i915_modparams.enable_guc < 0);
return i915_modparams.enable_guc > 0;
}
-static inline bool intel_uc_is_using_guc_submission(struct intel_uc *uc)
+static inline bool intel_uc_supports_guc_submission(struct intel_uc *uc)
{
GEM_BUG_ON(i915_modparams.enable_guc < 0);
return i915_modparams.enable_guc & ENABLE_GUC_SUBMISSION;
}
-static inline bool intel_uc_is_using_huc(struct intel_uc *uc)
+static inline bool intel_uc_supports_huc(struct intel_uc *uc)
{
GEM_BUG_ON(i915_modparams.enable_guc < 0);
return i915_modparams.enable_guc & ENABLE_GUC_LOAD_HUC;
diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h
index 4f492c05d065..74ab76247018 100644
--- a/drivers/gpu/drm/i915/i915_drv.h
+++ b/drivers/gpu/drm/i915/i915_drv.h
@@ -2275,8 +2275,8 @@ IS_SUBPLATFORM(const struct drm_i915_private *i915,
#define HAS_GT_UC(dev_priv) (INTEL_INFO(dev_priv)->has_gt_uc)
/* Having GuC is not the same as using GuC */
-#define USES_GUC(dev_priv) intel_uc_is_using_guc(&(dev_priv)->gt.uc)
-#define USES_GUC_SUBMISSION(dev_priv) intel_uc_is_using_guc_submission(&(dev_priv)->gt.uc)
+#define USES_GUC(dev_priv) intel_uc_supports_guc(&(dev_priv)->gt.uc)
+#define USES_GUC_SUBMISSION(dev_priv) intel_uc_supports_guc_submission(&(dev_priv)->gt.uc)
#define HAS_POOLED_EU(dev_priv) (INTEL_INFO(dev_priv)->has_pooled_eu)
--
2.19.2
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply related [flat|nested] 10+ messages in thread
* [CI 2/4] drm/i915/uc: Consider enable_guc modparam during fw selection
2019-07-31 22:33 [CI 0/4] Don't sanitize enable_guc Michal Wajdeczko
2019-07-31 22:33 ` [CI 1/4] drm/i915/uc: Rename intel_uc_is_using* into intel_uc_supports* Michal Wajdeczko
@ 2019-07-31 22:33 ` Michal Wajdeczko
2019-07-31 22:33 ` [CI 3/4] drm/i915/guc: Use dedicated flag to track submission mode Michal Wajdeczko
` (3 subsequent siblings)
5 siblings, 0 replies; 10+ messages in thread
From: Michal Wajdeczko @ 2019-07-31 22:33 UTC (permalink / raw)
To: intel-gfx
We can use value of enable_guc modparam during firmware path selection
and start using firmware status to see if GuC/HuC is being used.
This is first step to make enable_guc modparam read-only.
v2: rebased, don't care about <0 (Chris)
v3: oops
Signed-off-by: Michal Wajdeczko <michal.wajdeczko@intel.com>
Cc: Daniele Ceraolo Spurio <daniele.ceraolospurio@intel.com>
Cc: Chris Wilson <chris@chris-wilson.co.uk>
Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
---
drivers/gpu/drm/i915/gt/uc/intel_guc.h | 5 +++++
drivers/gpu/drm/i915/gt/uc/intel_huc.h | 5 +++++
drivers/gpu/drm/i915/gt/uc/intel_uc.h | 6 ++----
drivers/gpu/drm/i915/gt/uc/intel_uc_fw.c | 23 +++++++++++++++++++++--
4 files changed, 33 insertions(+), 6 deletions(-)
diff --git a/drivers/gpu/drm/i915/gt/uc/intel_guc.h b/drivers/gpu/drm/i915/gt/uc/intel_guc.h
index 714e9892aaff..5901506672cd 100644
--- a/drivers/gpu/drm/i915/gt/uc/intel_guc.h
+++ b/drivers/gpu/drm/i915/gt/uc/intel_guc.h
@@ -172,6 +172,11 @@ int intel_guc_suspend(struct intel_guc *guc);
int intel_guc_resume(struct intel_guc *guc);
struct i915_vma *intel_guc_allocate_vma(struct intel_guc *guc, u32 size);
+static inline bool intel_guc_is_supported(struct intel_guc *guc)
+{
+ return intel_uc_fw_supported(&guc->fw);
+}
+
static inline bool intel_guc_is_running(struct intel_guc *guc)
{
return intel_uc_fw_is_running(&guc->fw);
diff --git a/drivers/gpu/drm/i915/gt/uc/intel_huc.h b/drivers/gpu/drm/i915/gt/uc/intel_huc.h
index 4465209ce233..a6ae59b8cb77 100644
--- a/drivers/gpu/drm/i915/gt/uc/intel_huc.h
+++ b/drivers/gpu/drm/i915/gt/uc/intel_huc.h
@@ -55,6 +55,11 @@ static inline int intel_huc_sanitize(struct intel_huc *huc)
return 0;
}
+static inline bool intel_huc_is_supported(struct intel_huc *huc)
+{
+ return intel_uc_fw_supported(&huc->fw);
+}
+
static inline bool intel_huc_is_authenticated(struct intel_huc *huc)
{
return intel_uc_fw_is_running(&huc->fw);
diff --git a/drivers/gpu/drm/i915/gt/uc/intel_uc.h b/drivers/gpu/drm/i915/gt/uc/intel_uc.h
index 66d8b1ee6f1d..cf6c60cffdfb 100644
--- a/drivers/gpu/drm/i915/gt/uc/intel_uc.h
+++ b/drivers/gpu/drm/i915/gt/uc/intel_uc.h
@@ -51,8 +51,7 @@ int intel_uc_runtime_resume(struct intel_uc *uc);
static inline bool intel_uc_supports_guc(struct intel_uc *uc)
{
- GEM_BUG_ON(i915_modparams.enable_guc < 0);
- return i915_modparams.enable_guc > 0;
+ return intel_guc_is_supported(&uc->guc);
}
static inline bool intel_uc_supports_guc_submission(struct intel_uc *uc)
@@ -63,8 +62,7 @@ static inline bool intel_uc_supports_guc_submission(struct intel_uc *uc)
static inline bool intel_uc_supports_huc(struct intel_uc *uc)
{
- GEM_BUG_ON(i915_modparams.enable_guc < 0);
- return i915_modparams.enable_guc & ENABLE_GUC_LOAD_HUC;
+ return intel_huc_is_supported(&uc->huc);
}
#endif
diff --git a/drivers/gpu/drm/i915/gt/uc/intel_uc_fw.c b/drivers/gpu/drm/i915/gt/uc/intel_uc_fw.c
index ac91e3efd02b..650ad6037b74 100644
--- a/drivers/gpu/drm/i915/gt/uc/intel_uc_fw.c
+++ b/drivers/gpu/drm/i915/gt/uc/intel_uc_fw.c
@@ -132,6 +132,25 @@ __uc_fw_auto_select(struct intel_uc_fw *uc_fw, enum intel_platform p, u8 rev)
uc_fw->path = NULL;
}
}
+
+ /* We don't want to enable GuC/HuC on pre-Gen11 by default */
+ if (i915_modparams.enable_guc == -1 && p < INTEL_ICELAKE)
+ uc_fw->path = NULL;
+}
+
+static const char *__override_guc_firmware_path(void)
+{
+ if (i915_modparams.enable_guc & (ENABLE_GUC_SUBMISSION |
+ ENABLE_GUC_LOAD_HUC))
+ return i915_modparams.guc_firmware_path;
+ return "";
+}
+
+static const char *__override_huc_firmware_path(void)
+{
+ if (i915_modparams.enable_guc & ENABLE_GUC_LOAD_HUC)
+ return i915_modparams.huc_firmware_path;
+ return "";
}
static bool
@@ -139,10 +158,10 @@ __uc_fw_override(struct intel_uc_fw *uc_fw)
{
switch (uc_fw->type) {
case INTEL_UC_FW_TYPE_GUC:
- uc_fw->path = i915_modparams.guc_firmware_path;
+ uc_fw->path = __override_guc_firmware_path();
break;
case INTEL_UC_FW_TYPE_HUC:
- uc_fw->path = i915_modparams.huc_firmware_path;
+ uc_fw->path = __override_huc_firmware_path();
break;
}
--
2.19.2
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply related [flat|nested] 10+ messages in thread
* [CI 3/4] drm/i915/guc: Use dedicated flag to track submission mode
2019-07-31 22:33 [CI 0/4] Don't sanitize enable_guc Michal Wajdeczko
2019-07-31 22:33 ` [CI 1/4] drm/i915/uc: Rename intel_uc_is_using* into intel_uc_supports* Michal Wajdeczko
2019-07-31 22:33 ` [CI 2/4] drm/i915/uc: Consider enable_guc modparam during fw selection Michal Wajdeczko
@ 2019-07-31 22:33 ` Michal Wajdeczko
2019-07-31 22:33 ` [CI 4/4] drm/i915/uc: Stop sanitizing enable_guc modparam Michal Wajdeczko
` (2 subsequent siblings)
5 siblings, 0 replies; 10+ messages in thread
From: Michal Wajdeczko @ 2019-07-31 22:33 UTC (permalink / raw)
To: intel-gfx
Instead of relying on enable_guc modparam to represent actual
GuC submission mode, use dedicated flag and look at modparam
only to check if submission was explicitly disabled by the user.
v2: rebased, simplified condition (Chris)
Signed-off-by: Michal Wajdeczko <michal.wajdeczko@intel.com>
Cc: Daniele Ceraolo Spurio <daniele.ceraolospurio@intel.com>
Cc: Chris Wilson <chris@chris-wilson.co.uk>
Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
---
drivers/gpu/drm/i915/gt/uc/intel_guc.c | 1 +
drivers/gpu/drm/i915/gt/uc/intel_guc.h | 7 +++++++
.../gpu/drm/i915/gt/uc/intel_guc_submission.c | 16 ++++++++++++++++
.../gpu/drm/i915/gt/uc/intel_guc_submission.h | 1 +
drivers/gpu/drm/i915/gt/uc/intel_uc.h | 3 +--
5 files changed, 26 insertions(+), 2 deletions(-)
diff --git a/drivers/gpu/drm/i915/gt/uc/intel_guc.c b/drivers/gpu/drm/i915/gt/uc/intel_guc.c
index f8fc34816e2c..da14f8067497 100644
--- a/drivers/gpu/drm/i915/gt/uc/intel_guc.c
+++ b/drivers/gpu/drm/i915/gt/uc/intel_guc.c
@@ -82,6 +82,7 @@ void intel_guc_init_early(struct intel_guc *guc)
intel_guc_fw_init_early(guc);
intel_guc_ct_init_early(&guc->ct);
intel_guc_log_init_early(&guc->log);
+ intel_guc_submission_init_early(guc);
mutex_init(&guc->send_mutex);
spin_lock_init(&guc->irq_lock);
diff --git a/drivers/gpu/drm/i915/gt/uc/intel_guc.h b/drivers/gpu/drm/i915/gt/uc/intel_guc.h
index 5901506672cd..6edb29b9ceaa 100644
--- a/drivers/gpu/drm/i915/gt/uc/intel_guc.h
+++ b/drivers/gpu/drm/i915/gt/uc/intel_guc.h
@@ -61,6 +61,8 @@ struct intel_guc {
void (*disable)(struct intel_guc *guc);
} interrupts;
+ bool submission_supported;
+
struct i915_vma *ads_vma;
struct __guc_ads_blob *ads_blob;
@@ -190,6 +192,11 @@ static inline int intel_guc_sanitize(struct intel_guc *guc)
return 0;
}
+static inline bool intel_guc_is_submission_supported(struct intel_guc *guc)
+{
+ return guc->submission_supported;
+}
+
static inline void intel_guc_enable_msg(struct intel_guc *guc, u32 mask)
{
spin_lock_irq(&guc->irq_lock);
diff --git a/drivers/gpu/drm/i915/gt/uc/intel_guc_submission.c b/drivers/gpu/drm/i915/gt/uc/intel_guc_submission.c
index b4238fe16a03..b4b508f19a1c 100644
--- a/drivers/gpu/drm/i915/gt/uc/intel_guc_submission.c
+++ b/drivers/gpu/drm/i915/gt/uc/intel_guc_submission.c
@@ -1163,6 +1163,22 @@ void intel_guc_submission_disable(struct intel_guc *guc)
guc_clients_disable(guc);
}
+static bool __guc_submission_support(struct intel_guc *guc)
+{
+ /* XXX: GuC submission is unavailable for now */
+ return false;
+
+ if (!intel_guc_is_supported(guc))
+ return false;
+
+ return i915_modparams.enable_guc & ENABLE_GUC_SUBMISSION;
+}
+
+void intel_guc_submission_init_early(struct intel_guc *guc)
+{
+ guc->submission_supported = __guc_submission_support(guc);
+}
+
#if IS_ENABLED(CONFIG_DRM_I915_SELFTEST)
#include "selftest_guc.c"
#endif
diff --git a/drivers/gpu/drm/i915/gt/uc/intel_guc_submission.h b/drivers/gpu/drm/i915/gt/uc/intel_guc_submission.h
index 87a38cb6faf3..c4ad2702ec8d 100644
--- a/drivers/gpu/drm/i915/gt/uc/intel_guc_submission.h
+++ b/drivers/gpu/drm/i915/gt/uc/intel_guc_submission.h
@@ -77,6 +77,7 @@ struct intel_guc_client {
I915_SELFTEST_DECLARE(bool use_nop_wqi);
};
+void intel_guc_submission_init_early(struct intel_guc *guc);
int intel_guc_submission_init(struct intel_guc *guc);
int intel_guc_submission_enable(struct intel_guc *guc);
void intel_guc_submission_disable(struct intel_guc *guc);
diff --git a/drivers/gpu/drm/i915/gt/uc/intel_uc.h b/drivers/gpu/drm/i915/gt/uc/intel_uc.h
index cf6c60cffdfb..bd05d1a1d39f 100644
--- a/drivers/gpu/drm/i915/gt/uc/intel_uc.h
+++ b/drivers/gpu/drm/i915/gt/uc/intel_uc.h
@@ -56,8 +56,7 @@ static inline bool intel_uc_supports_guc(struct intel_uc *uc)
static inline bool intel_uc_supports_guc_submission(struct intel_uc *uc)
{
- GEM_BUG_ON(i915_modparams.enable_guc < 0);
- return i915_modparams.enable_guc & ENABLE_GUC_SUBMISSION;
+ return intel_guc_is_submission_supported(&uc->guc);
}
static inline bool intel_uc_supports_huc(struct intel_uc *uc)
--
2.19.2
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply related [flat|nested] 10+ messages in thread
* [CI 4/4] drm/i915/uc: Stop sanitizing enable_guc modparam
2019-07-31 22:33 [CI 0/4] Don't sanitize enable_guc Michal Wajdeczko
` (2 preceding siblings ...)
2019-07-31 22:33 ` [CI 3/4] drm/i915/guc: Use dedicated flag to track submission mode Michal Wajdeczko
@ 2019-07-31 22:33 ` Michal Wajdeczko
2019-08-01 7:04 ` Chris Wilson
2019-08-01 13:08 ` [CI " Michal Wajdeczko
2019-08-01 20:27 ` ✓ Fi.CI.BAT: success for Don't sanitize enable_guc (rev4) Patchwork
2019-08-02 15:56 ` ✓ Fi.CI.IGT: " Patchwork
5 siblings, 2 replies; 10+ messages in thread
From: Michal Wajdeczko @ 2019-07-31 22:33 UTC (permalink / raw)
To: intel-gfx
As we already track GuC/HuC uses by other means than modparam
there is no point in sanitizing it. Just scan modparam for
major discrepancies between what was requested vs actual.
v2: rebased, reworded info messages
Signed-off-by: Michal Wajdeczko <michal.wajdeczko@intel.com>
Cc: Daniele Ceraolo Spurio <daniele.ceraolospurio@intel.com>
Cc: Chris Wilson <chris@chris-wilson.co.uk>
---
drivers/gpu/drm/i915/gt/uc/intel_uc.c | 92 ++++++++-------------------
1 file changed, 28 insertions(+), 64 deletions(-)
diff --git a/drivers/gpu/drm/i915/gt/uc/intel_uc.c b/drivers/gpu/drm/i915/gt/uc/intel_uc.c
index 5d674e418e5e..1ea9b4f23b24 100644
--- a/drivers/gpu/drm/i915/gt/uc/intel_uc.c
+++ b/drivers/gpu/drm/i915/gt/uc/intel_uc.c
@@ -55,78 +55,42 @@ static int __intel_uc_reset_hw(struct intel_uc *uc)
return ret;
}
-static int __get_platform_enable_guc(struct intel_uc *uc)
+static void __confirm_options(struct intel_uc *uc)
{
- struct intel_uc_fw *guc_fw = &uc->guc.fw;
- struct intel_uc_fw *huc_fw = &uc->huc.fw;
- int enable_guc = 0;
-
- if (!HAS_GT_UC(uc_to_gt(uc)->i915))
- return 0;
-
- /* We don't want to enable GuC/HuC on pre-Gen11 by default */
- if (INTEL_GEN(uc_to_gt(uc)->i915) < 11)
- return 0;
-
- if (intel_uc_fw_supported(guc_fw) && intel_uc_fw_supported(huc_fw))
- enable_guc |= ENABLE_GUC_LOAD_HUC;
-
- return enable_guc;
-}
-
-/**
- * sanitize_options_early - sanitize uC related modparam options
- * @uc: the intel_uc structure
- *
- * In case of "enable_guc" option this function will attempt to modify
- * it only if it was initially set to "auto(-1)". Default value for this
- * modparam varies between platforms and it is hardcoded in driver code.
- * Any other modparam value is only monitored against availability of the
- * related hardware or firmware definitions.
- */
-static void sanitize_options_early(struct intel_uc *uc)
-{
- struct intel_uc_fw *guc_fw = &uc->guc.fw;
- struct intel_uc_fw *huc_fw = &uc->huc.fw;
-
- /* A negative value means "use platform default" */
- if (i915_modparams.enable_guc < 0)
- i915_modparams.enable_guc = __get_platform_enable_guc(uc);
-
- DRM_DEBUG_DRIVER("enable_guc=%d (submission:%s huc:%s)\n",
+ DRM_DEBUG_DRIVER("enable_guc=%d (guc:%s submission:%s huc:%s)\n",
i915_modparams.enable_guc,
+ yesno(intel_uc_supports_guc(uc)),
yesno(intel_uc_supports_guc_submission(uc)),
yesno(intel_uc_supports_huc(uc)));
- /* Verify GuC firmware availability */
- if (intel_uc_supports_guc(uc) && !intel_uc_fw_supported(guc_fw)) {
- DRM_WARN("Incompatible option detected: enable_guc=%d, "
- "but GuC is not supported!\n",
- i915_modparams.enable_guc);
- DRM_INFO("Disabling GuC/HuC loading!\n");
- i915_modparams.enable_guc = 0;
- }
+ if (i915_modparams.enable_guc == -1)
+ return;
- /* Verify HuC firmware availability */
- if (intel_uc_supports_huc(uc) && !intel_uc_fw_supported(huc_fw)) {
- DRM_WARN("Incompatible option detected: enable_guc=%d, "
- "but HuC is not supported!\n",
- i915_modparams.enable_guc);
- DRM_INFO("Disabling HuC loading!\n");
- i915_modparams.enable_guc &= ~ENABLE_GUC_LOAD_HUC;
+ if (i915_modparams.enable_guc == 0) {
+ GEM_BUG_ON(intel_uc_supports_guc(uc));
+ GEM_BUG_ON(intel_uc_supports_guc_submission(uc));
+ GEM_BUG_ON(intel_uc_supports_huc(uc));
+ return;
}
- /* XXX: GuC submission is unavailable for now */
- if (intel_uc_supports_guc_submission(uc)) {
- DRM_INFO("Incompatible option detected: enable_guc=%d, "
- "but GuC submission is not supported!\n",
- i915_modparams.enable_guc);
- DRM_INFO("Switching to non-GuC submission mode!\n");
- i915_modparams.enable_guc &= ~ENABLE_GUC_SUBMISSION;
- }
+ if (!intel_uc_supports_guc(uc))
+ DRM_INFO("Incompatible option enable_guc=%d - %s\n",
+ i915_modparams.enable_guc, "GuC is not supported!");
+
+ if (i915_modparams.enable_guc & ENABLE_GUC_LOAD_HUC &&
+ !intel_uc_supports_huc(uc))
+ DRM_INFO("Incompatible option enable_guc=%d - %s\n",
+ i915_modparams.enable_guc, "HuC is not supported!");
+
+ if (i915_modparams.enable_guc & ENABLE_GUC_SUBMISSION &&
+ !intel_uc_supports_guc_submission(uc))
+ DRM_INFO("Incompatible option enable_guc=%d - %s\n",
+ i915_modparams.enable_guc, "GuC submission is N/A");
- /* Make sure that sanitization was done */
- GEM_BUG_ON(i915_modparams.enable_guc < 0);
+ if (i915_modparams.enable_guc & ~(ENABLE_GUC_SUBMISSION ||
+ ENABLE_GUC_LOAD_HUC))
+ DRM_INFO("Incompatible option enable_guc=%d - %s\n",
+ i915_modparams.enable_guc, "undocumented flag");
}
void intel_uc_init_early(struct intel_uc *uc)
@@ -134,7 +98,7 @@ void intel_uc_init_early(struct intel_uc *uc)
intel_guc_init_early(&uc->guc);
intel_huc_init_early(&uc->huc);
- sanitize_options_early(uc);
+ __confirm_options(uc);
}
void intel_uc_cleanup_early(struct intel_uc *uc)
--
2.19.2
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply related [flat|nested] 10+ messages in thread
* Re: [CI 4/4] drm/i915/uc: Stop sanitizing enable_guc modparam
2019-07-31 22:33 ` [CI 4/4] drm/i915/uc: Stop sanitizing enable_guc modparam Michal Wajdeczko
@ 2019-08-01 7:04 ` Chris Wilson
2019-08-01 13:28 ` [CI v2 " Michal Wajdeczko
2019-08-01 13:08 ` [CI " Michal Wajdeczko
1 sibling, 1 reply; 10+ messages in thread
From: Chris Wilson @ 2019-08-01 7:04 UTC (permalink / raw)
To: Michal Wajdeczko, intel-gfx
Quoting Michal Wajdeczko (2019-07-31 23:33:21)
> As we already track GuC/HuC uses by other means than modparam
> there is no point in sanitizing it. Just scan modparam for
> major discrepancies between what was requested vs actual.
>
> v2: rebased, reworded info messages
>
> Signed-off-by: Michal Wajdeczko <michal.wajdeczko@intel.com>
> Cc: Daniele Ceraolo Spurio <daniele.ceraolospurio@intel.com>
> Cc: Chris Wilson <chris@chris-wilson.co.uk>
I think because we need to explicitly set enable_guc|=2 currently, it
shouldn't have any observable differences in the igt telltale. (And if
it did, it's not the end of the world, it's only a debug aide-memoire
that we can replace later.)
Reviewed-by-by: Chris Wilson <chris@chris-wilson.co.uk>
-Chris
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [CI 4/4] drm/i915/uc: Stop sanitizing enable_guc modparam
2019-07-31 22:33 ` [CI 4/4] drm/i915/uc: Stop sanitizing enable_guc modparam Michal Wajdeczko
2019-08-01 7:04 ` Chris Wilson
@ 2019-08-01 13:08 ` Michal Wajdeczko
1 sibling, 0 replies; 10+ messages in thread
From: Michal Wajdeczko @ 2019-08-01 13:08 UTC (permalink / raw)
To: intel-gfx, Michal Wajdeczko
On Thu, 01 Aug 2019 00:33:21 +0200, Michal Wajdeczko
<michal.wajdeczko@intel.com> wrote:
> + if (i915_modparams.enable_guc & ~(ENABLE_GUC_SUBMISSION ||
> + ENABLE_GUC_LOAD_HUC))
oops, again
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 10+ messages in thread
* [CI v2 4/4] drm/i915/uc: Stop sanitizing enable_guc modparam
2019-08-01 7:04 ` Chris Wilson
@ 2019-08-01 13:28 ` Michal Wajdeczko
0 siblings, 0 replies; 10+ messages in thread
From: Michal Wajdeczko @ 2019-08-01 13:28 UTC (permalink / raw)
To: intel-gfx
As we already track GuC/HuC uses by other means than modparam
there is no point in sanitizing it. Just scan modparam for
major discrepancies between what was requested vs actual.
v2: rebased, reworded info messages
v3: oops
Signed-off-by: Michal Wajdeczko <michal.wajdeczko@intel.com>
Cc: Daniele Ceraolo Spurio <daniele.ceraolospurio@intel.com>
Cc: Chris Wilson <chris@chris-wilson.co.uk>
Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
---
drivers/gpu/drm/i915/gt/uc/intel_uc.c | 92 ++++++++-------------------
1 file changed, 28 insertions(+), 64 deletions(-)
diff --git a/drivers/gpu/drm/i915/gt/uc/intel_uc.c b/drivers/gpu/drm/i915/gt/uc/intel_uc.c
index 5d674e418e5e..bdec21f97589 100644
--- a/drivers/gpu/drm/i915/gt/uc/intel_uc.c
+++ b/drivers/gpu/drm/i915/gt/uc/intel_uc.c
@@ -55,78 +55,42 @@ static int __intel_uc_reset_hw(struct intel_uc *uc)
return ret;
}
-static int __get_platform_enable_guc(struct intel_uc *uc)
+static void __confirm_options(struct intel_uc *uc)
{
- struct intel_uc_fw *guc_fw = &uc->guc.fw;
- struct intel_uc_fw *huc_fw = &uc->huc.fw;
- int enable_guc = 0;
-
- if (!HAS_GT_UC(uc_to_gt(uc)->i915))
- return 0;
-
- /* We don't want to enable GuC/HuC on pre-Gen11 by default */
- if (INTEL_GEN(uc_to_gt(uc)->i915) < 11)
- return 0;
-
- if (intel_uc_fw_supported(guc_fw) && intel_uc_fw_supported(huc_fw))
- enable_guc |= ENABLE_GUC_LOAD_HUC;
-
- return enable_guc;
-}
-
-/**
- * sanitize_options_early - sanitize uC related modparam options
- * @uc: the intel_uc structure
- *
- * In case of "enable_guc" option this function will attempt to modify
- * it only if it was initially set to "auto(-1)". Default value for this
- * modparam varies between platforms and it is hardcoded in driver code.
- * Any other modparam value is only monitored against availability of the
- * related hardware or firmware definitions.
- */
-static void sanitize_options_early(struct intel_uc *uc)
-{
- struct intel_uc_fw *guc_fw = &uc->guc.fw;
- struct intel_uc_fw *huc_fw = &uc->huc.fw;
-
- /* A negative value means "use platform default" */
- if (i915_modparams.enable_guc < 0)
- i915_modparams.enable_guc = __get_platform_enable_guc(uc);
-
- DRM_DEBUG_DRIVER("enable_guc=%d (submission:%s huc:%s)\n",
+ DRM_DEBUG_DRIVER("enable_guc=%d (guc:%s submission:%s huc:%s)\n",
i915_modparams.enable_guc,
+ yesno(intel_uc_supports_guc(uc)),
yesno(intel_uc_supports_guc_submission(uc)),
yesno(intel_uc_supports_huc(uc)));
- /* Verify GuC firmware availability */
- if (intel_uc_supports_guc(uc) && !intel_uc_fw_supported(guc_fw)) {
- DRM_WARN("Incompatible option detected: enable_guc=%d, "
- "but GuC is not supported!\n",
- i915_modparams.enable_guc);
- DRM_INFO("Disabling GuC/HuC loading!\n");
- i915_modparams.enable_guc = 0;
- }
+ if (i915_modparams.enable_guc == -1)
+ return;
- /* Verify HuC firmware availability */
- if (intel_uc_supports_huc(uc) && !intel_uc_fw_supported(huc_fw)) {
- DRM_WARN("Incompatible option detected: enable_guc=%d, "
- "but HuC is not supported!\n",
- i915_modparams.enable_guc);
- DRM_INFO("Disabling HuC loading!\n");
- i915_modparams.enable_guc &= ~ENABLE_GUC_LOAD_HUC;
+ if (i915_modparams.enable_guc == 0) {
+ GEM_BUG_ON(intel_uc_supports_guc(uc));
+ GEM_BUG_ON(intel_uc_supports_guc_submission(uc));
+ GEM_BUG_ON(intel_uc_supports_huc(uc));
+ return;
}
- /* XXX: GuC submission is unavailable for now */
- if (intel_uc_supports_guc_submission(uc)) {
- DRM_INFO("Incompatible option detected: enable_guc=%d, "
- "but GuC submission is not supported!\n",
- i915_modparams.enable_guc);
- DRM_INFO("Switching to non-GuC submission mode!\n");
- i915_modparams.enable_guc &= ~ENABLE_GUC_SUBMISSION;
- }
+ if (!intel_uc_supports_guc(uc))
+ DRM_INFO("Incompatible option enable_guc=%d - %s\n",
+ i915_modparams.enable_guc, "GuC is not supported!");
+
+ if (i915_modparams.enable_guc & ENABLE_GUC_LOAD_HUC &&
+ !intel_uc_supports_huc(uc))
+ DRM_INFO("Incompatible option enable_guc=%d - %s\n",
+ i915_modparams.enable_guc, "HuC is not supported!");
+
+ if (i915_modparams.enable_guc & ENABLE_GUC_SUBMISSION &&
+ !intel_uc_supports_guc_submission(uc))
+ DRM_INFO("Incompatible option enable_guc=%d - %s\n",
+ i915_modparams.enable_guc, "GuC submission is N/A");
- /* Make sure that sanitization was done */
- GEM_BUG_ON(i915_modparams.enable_guc < 0);
+ if (i915_modparams.enable_guc & ~(ENABLE_GUC_SUBMISSION |
+ ENABLE_GUC_LOAD_HUC))
+ DRM_INFO("Incompatible option enable_guc=%d - %s\n",
+ i915_modparams.enable_guc, "undocumented flag");
}
void intel_uc_init_early(struct intel_uc *uc)
@@ -134,7 +98,7 @@ void intel_uc_init_early(struct intel_uc *uc)
intel_guc_init_early(&uc->guc);
intel_huc_init_early(&uc->huc);
- sanitize_options_early(uc);
+ __confirm_options(uc);
}
void intel_uc_cleanup_early(struct intel_uc *uc)
--
2.19.2
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply related [flat|nested] 10+ messages in thread
* ✓ Fi.CI.BAT: success for Don't sanitize enable_guc (rev4)
2019-07-31 22:33 [CI 0/4] Don't sanitize enable_guc Michal Wajdeczko
` (3 preceding siblings ...)
2019-07-31 22:33 ` [CI 4/4] drm/i915/uc: Stop sanitizing enable_guc modparam Michal Wajdeczko
@ 2019-08-01 20:27 ` Patchwork
2019-08-02 15:56 ` ✓ Fi.CI.IGT: " Patchwork
5 siblings, 0 replies; 10+ messages in thread
From: Patchwork @ 2019-08-01 20:27 UTC (permalink / raw)
To: Michal Wajdeczko; +Cc: intel-gfx
== Series Details ==
Series: Don't sanitize enable_guc (rev4)
URL : https://patchwork.freedesktop.org/series/64446/
State : success
== Summary ==
CI Bug Log - changes from CI_DRM_6605 -> Patchwork_13837
====================================================
Summary
-------
**SUCCESS**
No regressions found.
External URL: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13837/
Known issues
------------
Here are the changes found in Patchwork_13837 that come from known issues:
### IGT changes ###
#### Issues hit ####
* igt@gem_exec_suspend@basic-s4-devices:
- fi-blb-e6850: [PASS][1] -> [INCOMPLETE][2] ([fdo#107718])
[1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6605/fi-blb-e6850/igt@gem_exec_suspend@basic-s4-devices.html
[2]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13837/fi-blb-e6850/igt@gem_exec_suspend@basic-s4-devices.html
* igt@prime_vgem@basic-wait-default:
- fi-bxt-j4205: [PASS][3] -> [FAIL][4] ([fdo#111277])
[3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6605/fi-bxt-j4205/igt@prime_vgem@basic-wait-default.html
[4]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13837/fi-bxt-j4205/igt@prime_vgem@basic-wait-default.html
#### Possible fixes ####
* igt@i915_selftest@live_execlists:
- fi-skl-gvtdvm: [DMESG-FAIL][5] ([fdo#111108]) -> [PASS][6]
[5]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6605/fi-skl-gvtdvm/igt@i915_selftest@live_execlists.html
[6]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13837/fi-skl-gvtdvm/igt@i915_selftest@live_execlists.html
* igt@kms_busy@basic-flip-a:
- fi-kbl-7567u: [SKIP][7] ([fdo#109271] / [fdo#109278]) -> [PASS][8] +2 similar issues
[7]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6605/fi-kbl-7567u/igt@kms_busy@basic-flip-a.html
[8]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13837/fi-kbl-7567u/igt@kms_busy@basic-flip-a.html
* igt@kms_busy@basic-flip-c:
- fi-kbl-7500u: [SKIP][9] ([fdo#109271] / [fdo#109278]) -> [PASS][10] +2 similar issues
[9]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6605/fi-kbl-7500u/igt@kms_busy@basic-flip-c.html
[10]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13837/fi-kbl-7500u/igt@kms_busy@basic-flip-c.html
* igt@kms_chamelium@hdmi-hpd-fast:
- fi-kbl-7500u: [FAIL][11] ([fdo#109485]) -> [PASS][12]
[11]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6605/fi-kbl-7500u/igt@kms_chamelium@hdmi-hpd-fast.html
[12]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13837/fi-kbl-7500u/igt@kms_chamelium@hdmi-hpd-fast.html
* igt@prime_vgem@basic-sync-default:
- fi-bxt-dsi: [FAIL][13] ([fdo#111277]) -> [PASS][14]
[13]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6605/fi-bxt-dsi/igt@prime_vgem@basic-sync-default.html
[14]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13837/fi-bxt-dsi/igt@prime_vgem@basic-sync-default.html
[fdo#107718]: https://bugs.freedesktop.org/show_bug.cgi?id=107718
[fdo#109271]: https://bugs.freedesktop.org/show_bug.cgi?id=109271
[fdo#109278]: https://bugs.freedesktop.org/show_bug.cgi?id=109278
[fdo#109485]: https://bugs.freedesktop.org/show_bug.cgi?id=109485
[fdo#111108]: https://bugs.freedesktop.org/show_bug.cgi?id=111108
[fdo#111277]: https://bugs.freedesktop.org/show_bug.cgi?id=111277
Participating hosts (47 -> 43)
------------------------------
Additional (2): fi-icl-dsi fi-apl-guc
Missing (6): fi-byt-squawks fi-bsw-cyan fi-pnv-d510 fi-icl-y fi-byt-clapper fi-bdw-samus
Build changes
-------------
* CI: CI-20190529 -> None
* Linux: CI_DRM_6605 -> Patchwork_13837
CI-20190529: 20190529
CI_DRM_6605: 09970f7b8f1336416254cfac87f196578e3c1d13 @ git://anongit.freedesktop.org/gfx-ci/linux
IGT_5120: b3138fbea79d5d7935e53530b90efe3e816236f4 @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
Patchwork_13837: 031e371daac306fe0c1d1efb00320d1de141cd71 @ git://anongit.freedesktop.org/gfx-ci/linux
== Linux commits ==
031e371daac3 drm/i915/uc: Stop sanitizing enable_guc modparam
a702e91f3944 drm/i915/guc: Use dedicated flag to track submission mode
8808a185a10d drm/i915/uc: Consider enable_guc modparam during fw selection
193a653eb7a8 drm/i915/uc: Rename intel_uc_is_using* into intel_uc_supports*
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13837/
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 10+ messages in thread
* ✓ Fi.CI.IGT: success for Don't sanitize enable_guc (rev4)
2019-07-31 22:33 [CI 0/4] Don't sanitize enable_guc Michal Wajdeczko
` (4 preceding siblings ...)
2019-08-01 20:27 ` ✓ Fi.CI.BAT: success for Don't sanitize enable_guc (rev4) Patchwork
@ 2019-08-02 15:56 ` Patchwork
5 siblings, 0 replies; 10+ messages in thread
From: Patchwork @ 2019-08-02 15:56 UTC (permalink / raw)
To: Michal Wajdeczko; +Cc: intel-gfx
== Series Details ==
Series: Don't sanitize enable_guc (rev4)
URL : https://patchwork.freedesktop.org/series/64446/
State : success
== Summary ==
CI Bug Log - changes from CI_DRM_6605_full -> Patchwork_13837_full
====================================================
Summary
-------
**SUCCESS**
No regressions found.
Known issues
------------
Here are the changes found in Patchwork_13837_full that come from known issues:
### IGT changes ###
#### Issues hit ####
* igt@gem_exec_balancer@smoke:
- shard-iclb: [PASS][1] -> [SKIP][2] ([fdo#110854])
[1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6605/shard-iclb1/igt@gem_exec_balancer@smoke.html
[2]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13837/shard-iclb5/igt@gem_exec_balancer@smoke.html
* igt@i915_pm_rpm@debugfs-read:
- shard-skl: [PASS][3] -> [INCOMPLETE][4] ([fdo#107807])
[3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6605/shard-skl2/igt@i915_pm_rpm@debugfs-read.html
[4]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13837/shard-skl8/igt@i915_pm_rpm@debugfs-read.html
* igt@kms_cursor_crc@pipe-c-cursor-suspend:
- shard-kbl: [PASS][5] -> [DMESG-WARN][6] ([fdo#108566]) +3 similar issues
[5]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6605/shard-kbl6/igt@kms_cursor_crc@pipe-c-cursor-suspend.html
[6]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13837/shard-kbl2/igt@kms_cursor_crc@pipe-c-cursor-suspend.html
* igt@kms_frontbuffer_tracking@fbcpsr-1p-pri-indfb-multidraw:
- shard-iclb: [PASS][7] -> [FAIL][8] ([fdo#103167]) +5 similar issues
[7]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6605/shard-iclb3/igt@kms_frontbuffer_tracking@fbcpsr-1p-pri-indfb-multidraw.html
[8]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13837/shard-iclb2/igt@kms_frontbuffer_tracking@fbcpsr-1p-pri-indfb-multidraw.html
* igt@kms_plane@plane-panning-bottom-right-suspend-pipe-b-planes:
- shard-apl: [PASS][9] -> [DMESG-WARN][10] ([fdo#108566]) +3 similar issues
[9]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6605/shard-apl6/igt@kms_plane@plane-panning-bottom-right-suspend-pipe-b-planes.html
[10]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13837/shard-apl7/igt@kms_plane@plane-panning-bottom-right-suspend-pipe-b-planes.html
* igt@kms_psr@psr2_basic:
- shard-iclb: [PASS][11] -> [SKIP][12] ([fdo#109441])
[11]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6605/shard-iclb2/igt@kms_psr@psr2_basic.html
[12]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13837/shard-iclb6/igt@kms_psr@psr2_basic.html
* igt@prime_vgem@basic-wait-default:
- shard-apl: [PASS][13] -> [FAIL][14] ([fdo#111277]) +1 similar issue
[13]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6605/shard-apl8/igt@prime_vgem@basic-wait-default.html
[14]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13837/shard-apl4/igt@prime_vgem@basic-wait-default.html
* igt@tools_test@tools_test:
- shard-apl: [PASS][15] -> [SKIP][16] ([fdo#109271])
[15]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6605/shard-apl8/igt@tools_test@tools_test.html
[16]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13837/shard-apl2/igt@tools_test@tools_test.html
#### Possible fixes ####
* igt@kms_color@pipe-c-ctm-0-5:
- shard-skl: [FAIL][17] ([fdo#108682]) -> [PASS][18]
[17]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6605/shard-skl8/igt@kms_color@pipe-c-ctm-0-5.html
[18]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13837/shard-skl8/igt@kms_color@pipe-c-ctm-0-5.html
* igt@kms_cursor_crc@pipe-c-cursor-dpms:
- shard-skl: [FAIL][19] ([fdo#103232]) -> [PASS][20]
[19]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6605/shard-skl8/igt@kms_cursor_crc@pipe-c-cursor-dpms.html
[20]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13837/shard-skl8/igt@kms_cursor_crc@pipe-c-cursor-dpms.html
* igt@kms_flip@flip-vs-expired-vblank:
- shard-apl: [FAIL][21] ([fdo#105363]) -> [PASS][22]
[21]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6605/shard-apl2/igt@kms_flip@flip-vs-expired-vblank.html
[22]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13837/shard-apl2/igt@kms_flip@flip-vs-expired-vblank.html
- shard-glk: [FAIL][23] ([fdo#105363]) -> [PASS][24]
[23]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6605/shard-glk8/igt@kms_flip@flip-vs-expired-vblank.html
[24]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13837/shard-glk8/igt@kms_flip@flip-vs-expired-vblank.html
* igt@kms_flip@flip-vs-expired-vblank-interruptible:
- shard-skl: [FAIL][25] ([fdo#105363]) -> [PASS][26]
[25]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6605/shard-skl6/igt@kms_flip@flip-vs-expired-vblank-interruptible.html
[26]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13837/shard-skl3/igt@kms_flip@flip-vs-expired-vblank-interruptible.html
* igt@kms_flip@flip-vs-suspend-interruptible:
- shard-apl: [DMESG-WARN][27] ([fdo#108566]) -> [PASS][28]
[27]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6605/shard-apl1/igt@kms_flip@flip-vs-suspend-interruptible.html
[28]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13837/shard-apl2/igt@kms_flip@flip-vs-suspend-interruptible.html
* igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-pri-indfb-draw-pwrite:
- shard-iclb: [FAIL][29] ([fdo#103167]) -> [PASS][30] +3 similar issues
[29]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6605/shard-iclb4/igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-pri-indfb-draw-pwrite.html
[30]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13837/shard-iclb1/igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-pri-indfb-draw-pwrite.html
* igt@kms_plane@pixel-format-pipe-b-planes-source-clamping:
- shard-iclb: [INCOMPLETE][31] ([fdo#107713] / [fdo#110036 ]) -> [PASS][32]
[31]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6605/shard-iclb3/igt@kms_plane@pixel-format-pipe-b-planes-source-clamping.html
[32]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13837/shard-iclb2/igt@kms_plane@pixel-format-pipe-b-planes-source-clamping.html
* igt@kms_plane@plane-panning-bottom-right-suspend-pipe-c-planes:
- shard-kbl: [DMESG-WARN][33] ([fdo#108566]) -> [PASS][34] +1 similar issue
[33]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6605/shard-kbl6/igt@kms_plane@plane-panning-bottom-right-suspend-pipe-c-planes.html
[34]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13837/shard-kbl1/igt@kms_plane@plane-panning-bottom-right-suspend-pipe-c-planes.html
* igt@kms_plane_alpha_blend@pipe-c-constant-alpha-min:
- shard-skl: [FAIL][35] ([fdo#108145]) -> [PASS][36]
[35]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6605/shard-skl3/igt@kms_plane_alpha_blend@pipe-c-constant-alpha-min.html
[36]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13837/shard-skl7/igt@kms_plane_alpha_blend@pipe-c-constant-alpha-min.html
* igt@kms_plane_lowres@pipe-a-tiling-y:
- shard-iclb: [FAIL][37] ([fdo#103166]) -> [PASS][38]
[37]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6605/shard-iclb4/igt@kms_plane_lowres@pipe-a-tiling-y.html
[38]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13837/shard-iclb5/igt@kms_plane_lowres@pipe-a-tiling-y.html
* igt@kms_psr@psr2_primary_mmap_cpu:
- shard-iclb: [SKIP][39] ([fdo#109441]) -> [PASS][40] +2 similar issues
[39]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6605/shard-iclb7/igt@kms_psr@psr2_primary_mmap_cpu.html
[40]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13837/shard-iclb2/igt@kms_psr@psr2_primary_mmap_cpu.html
* igt@kms_vblank@pipe-a-ts-continuation-dpms-suspend:
- shard-kbl: [INCOMPLETE][41] ([fdo#103665]) -> [PASS][42]
[41]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6605/shard-kbl4/igt@kms_vblank@pipe-a-ts-continuation-dpms-suspend.html
[42]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13837/shard-kbl6/igt@kms_vblank@pipe-a-ts-continuation-dpms-suspend.html
* igt@kms_vblank@pipe-a-ts-continuation-suspend:
- shard-skl: [INCOMPLETE][43] ([fdo#104108]) -> [PASS][44] +1 similar issue
[43]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6605/shard-skl9/igt@kms_vblank@pipe-a-ts-continuation-suspend.html
[44]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13837/shard-skl1/igt@kms_vblank@pipe-a-ts-continuation-suspend.html
* igt@prime_vgem@sync-render:
- shard-apl: [FAIL][45] ([fdo#111276]) -> [PASS][46] +1 similar issue
[45]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6605/shard-apl4/igt@prime_vgem@sync-render.html
[46]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13837/shard-apl3/igt@prime_vgem@sync-render.html
* igt@tools_test@sysfs_l3_parity:
- shard-hsw: [SKIP][47] ([fdo#109271]) -> [PASS][48]
[47]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6605/shard-hsw4/igt@tools_test@sysfs_l3_parity.html
[48]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13837/shard-hsw4/igt@tools_test@sysfs_l3_parity.html
[fdo#103166]: https://bugs.freedesktop.org/show_bug.cgi?id=103166
[fdo#103167]: https://bugs.freedesktop.org/show_bug.cgi?id=103167
[fdo#103232]: https://bugs.freedesktop.org/show_bug.cgi?id=103232
[fdo#103665]: https://bugs.freedesktop.org/show_bug.cgi?id=103665
[fdo#104108]: https://bugs.freedesktop.org/show_bug.cgi?id=104108
[fdo#105363]: https://bugs.freedesktop.org/show_bug.cgi?id=105363
[fdo#107713]: https://bugs.freedesktop.org/show_bug.cgi?id=107713
[fdo#107807]: https://bugs.freedesktop.org/show_bug.cgi?id=107807
[fdo#108145]: https://bugs.freedesktop.org/show_bug.cgi?id=108145
[fdo#108566]: https://bugs.freedesktop.org/show_bug.cgi?id=108566
[fdo#108682]: https://bugs.freedesktop.org/show_bug.cgi?id=108682
[fdo#109271]: https://bugs.freedesktop.org/show_bug.cgi?id=109271
[fdo#109441]: https://bugs.freedesktop.org/show_bug.cgi?id=109441
[fdo#110036 ]: https://bugs.freedesktop.org/show_bug.cgi?id=110036
[fdo#110854]: https://bugs.freedesktop.org/show_bug.cgi?id=110854
[fdo#111276]: https://bugs.freedesktop.org/show_bug.cgi?id=111276
[fdo#111277]: https://bugs.freedesktop.org/show_bug.cgi?id=111277
Participating hosts (10 -> 10)
------------------------------
No changes in participating hosts
Build changes
-------------
* CI: CI-20190529 -> None
* Linux: CI_DRM_6605 -> Patchwork_13837
CI-20190529: 20190529
CI_DRM_6605: 09970f7b8f1336416254cfac87f196578e3c1d13 @ git://anongit.freedesktop.org/gfx-ci/linux
IGT_5120: b3138fbea79d5d7935e53530b90efe3e816236f4 @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
Patchwork_13837: 031e371daac306fe0c1d1efb00320d1de141cd71 @ git://anongit.freedesktop.org/gfx-ci/linux
piglit_4509: fdc5a4ca11124ab8413c7988896eec4c97336694 @ git://anongit.freedesktop.org/piglit
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13837/
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 10+ messages in thread
end of thread, other threads:[~2019-08-02 15:56 UTC | newest]
Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-07-31 22:33 [CI 0/4] Don't sanitize enable_guc Michal Wajdeczko
2019-07-31 22:33 ` [CI 1/4] drm/i915/uc: Rename intel_uc_is_using* into intel_uc_supports* Michal Wajdeczko
2019-07-31 22:33 ` [CI 2/4] drm/i915/uc: Consider enable_guc modparam during fw selection Michal Wajdeczko
2019-07-31 22:33 ` [CI 3/4] drm/i915/guc: Use dedicated flag to track submission mode Michal Wajdeczko
2019-07-31 22:33 ` [CI 4/4] drm/i915/uc: Stop sanitizing enable_guc modparam Michal Wajdeczko
2019-08-01 7:04 ` Chris Wilson
2019-08-01 13:28 ` [CI v2 " Michal Wajdeczko
2019-08-01 13:08 ` [CI " Michal Wajdeczko
2019-08-01 20:27 ` ✓ Fi.CI.BAT: success for Don't sanitize enable_guc (rev4) Patchwork
2019-08-02 15:56 ` ✓ Fi.CI.IGT: " Patchwork
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.