* ✓ Fi.CI.BAT: success for GuC suspend paths cleanup
2019-02-14 21:45 [PATCH 0/2] " Sujaritha Sundaresan
@ 2019-02-14 23:32 ` Patchwork
0 siblings, 0 replies; 9+ messages in thread
From: Patchwork @ 2019-02-14 23:32 UTC (permalink / raw)
To: intel-gfx
== Series Details ==
Series: GuC suspend paths cleanup
URL : https://patchwork.freedesktop.org/series/56697/
State : success
== Summary ==
CI Bug Log - changes from CI_DRM_5604 -> Patchwork_12225
====================================================
Summary
-------
**SUCCESS**
No regressions found.
External URL: https://patchwork.freedesktop.org/api/1.0/series/56697/revisions/1/mbox/
Known issues
------------
Here are the changes found in Patchwork_12225 that come from known issues:
### IGT changes ###
#### Issues hit ####
* igt@amdgpu/amd_basic@userptr:
- fi-kbl-8809g: PASS -> DMESG-WARN [fdo#108965]
* igt@kms_chamelium@hdmi-hpd-fast:
- fi-kbl-7500u: PASS -> FAIL [fdo#109485]
#### Possible fixes ####
* igt@gem_render_tiled_blits@basic:
- fi-skl-6770hq: DMESG-WARN [fdo#105541] -> PASS
* igt@kms_flip@basic-flip-vs-dpms:
- fi-skl-6700hq: DMESG-WARN [fdo#105998] -> PASS
* igt@kms_frontbuffer_tracking@basic:
- fi-byt-clapper: FAIL [fdo#103167] -> PASS
* igt@pm_rpm@basic-pci-d3-state:
- fi-bsw-kefka: {SKIP} [fdo#109271] -> PASS
* igt@pm_rpm@basic-rte:
- fi-bsw-kefka: FAIL [fdo#108800] -> PASS
{name}: This element is suppressed. This means it is ignored when computing
the status of the difference (SUCCESS, WARNING, or FAILURE).
[fdo#103167]: https://bugs.freedesktop.org/show_bug.cgi?id=103167
[fdo#105541]: https://bugs.freedesktop.org/show_bug.cgi?id=105541
[fdo#105998]: https://bugs.freedesktop.org/show_bug.cgi?id=105998
[fdo#108569]: https://bugs.freedesktop.org/show_bug.cgi?id=108569
[fdo#108800]: https://bugs.freedesktop.org/show_bug.cgi?id=108800
[fdo#108965]: https://bugs.freedesktop.org/show_bug.cgi?id=108965
[fdo#109271]: https://bugs.freedesktop.org/show_bug.cgi?id=109271
[fdo#109276]: https://bugs.freedesktop.org/show_bug.cgi?id=109276
[fdo#109278]: https://bugs.freedesktop.org/show_bug.cgi?id=109278
[fdo#109284]: https://bugs.freedesktop.org/show_bug.cgi?id=109284
[fdo#109285]: https://bugs.freedesktop.org/show_bug.cgi?id=109285
[fdo#109289]: https://bugs.freedesktop.org/show_bug.cgi?id=109289
[fdo#109294]: https://bugs.freedesktop.org/show_bug.cgi?id=109294
[fdo#109315]: https://bugs.freedesktop.org/show_bug.cgi?id=109315
[fdo#109485]: https://bugs.freedesktop.org/show_bug.cgi?id=109485
[fdo#109527]: https://bugs.freedesktop.org/show_bug.cgi?id=109527
[fdo#109528]: https://bugs.freedesktop.org/show_bug.cgi?id=109528
[fdo#109530]: https://bugs.freedesktop.org/show_bug.cgi?id=109530
Participating hosts (47 -> 41)
------------------------------
Additional (1): fi-icl-y
Missing (7): fi-ilk-m540 fi-byt-j1900 fi-byt-squawks fi-bsw-cyan fi-kbl-x1275 fi-icl-u3 fi-bdw-samus
Build changes
-------------
* Linux: CI_DRM_5604 -> Patchwork_12225
CI_DRM_5604: bf979a24473a1b23df86ff3fd0ceb33dc1d62e82 @ git://anongit.freedesktop.org/gfx-ci/linux
IGT_4827: 395eaffd7e1390c9d6043c2980dc14ce3e08b154 @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
Patchwork_12225: fbd14aaf53bce8c461f3bbff795d10ccc29721dc @ git://anongit.freedesktop.org/gfx-ci/linux
== Linux commits ==
fbd14aaf53bc drm/i915/guc: Calling guc_disable_communication in all suspend paths
22e49b914e2d drm/i915/guc: Splitting CT channel open/close functions
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_12225/
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 9+ messages in thread
* [PATCH v3 0/2] GuC suspend paths cleanup
@ 2019-02-20 1:39 Sujaritha Sundaresan
2019-02-20 1:39 ` [PATCH v3 1/2] drm/i915/guc: Splitting CT channel open/close functions Sujaritha Sundaresan
` (4 more replies)
0 siblings, 5 replies; 9+ messages in thread
From: Sujaritha Sundaresan @ 2019-02-20 1:39 UTC (permalink / raw)
To: intel-gfx; +Cc: Sujaritha Sundaresan
The work was started to fix bugs that were seen on the
suspend and hibernate devices path.The initial issue to be seen
was a warning with the CTB. In parallel there were issues seen on the
suspend paths. This series works to resolve the errors in the GuC
cleanup paths and be compatible with lockless reset.
Sujaritha Sundaresan (2):
drm/i915/guc: Splitting CT channel open/close functions
drm/i915/guc: Calling guc_disable_communication in all suspend paths
drivers/gpu/drm/i915/i915_reset.c | 2 +-
drivers/gpu/drm/i915/intel_guc.c | 12 ++++
drivers/gpu/drm/i915/intel_guc_ct.c | 90 +++++++++++++++++++++--------
drivers/gpu/drm/i915/intel_guc_ct.h | 3 +
drivers/gpu/drm/i915/intel_uc.c | 23 ++++++--
drivers/gpu/drm/i915/intel_uc.h | 1 +
6 files changed, 101 insertions(+), 30 deletions(-)
--
2.20.1
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 9+ messages in thread
* [PATCH v3 1/2] drm/i915/guc: Splitting CT channel open/close functions
2019-02-20 1:39 [PATCH v3 0/2] GuC suspend paths cleanup Sujaritha Sundaresan
@ 2019-02-20 1:39 ` Sujaritha Sundaresan
2019-02-20 16:51 ` Daniele Ceraolo Spurio
2019-02-20 1:39 ` [PATCH v3 2/2] drm/i915/guc: Calling guc_disable_communication in all suspend paths Sujaritha Sundaresan
` (3 subsequent siblings)
4 siblings, 1 reply; 9+ messages in thread
From: Sujaritha Sundaresan @ 2019-02-20 1:39 UTC (permalink / raw)
To: intel-gfx; +Cc: Sujaritha Sundaresan
The aim of this patch is to allow enabling and disabling
of CTB without requiring the mutex lock.
v2: Phasing out ctch_is_enabled function and replacing it with
ctch->enabled (Daniele)
Cc: Daniele Ceraolo Spurio <daniele.ceraolospurio@intel.com>
Cc: Michal Wajdeczko <michal.wajdeczko@intel.com>
Signed-off-by: Sujaritha Sundaresan <sujaritha.sundaresan@intel.com>
---
drivers/gpu/drm/i915/intel_guc.c | 12 ++++
drivers/gpu/drm/i915/intel_guc_ct.c | 90 +++++++++++++++++++++--------
drivers/gpu/drm/i915/intel_guc_ct.h | 3 +
3 files changed, 80 insertions(+), 25 deletions(-)
diff --git a/drivers/gpu/drm/i915/intel_guc.c b/drivers/gpu/drm/i915/intel_guc.c
index 8660af3fd755..a4e1fc6b9eee 100644
--- a/drivers/gpu/drm/i915/intel_guc.c
+++ b/drivers/gpu/drm/i915/intel_guc.c
@@ -203,11 +203,19 @@ int intel_guc_init(struct intel_guc *guc)
goto err_log;
GEM_BUG_ON(!guc->ads_vma);
+ if (HAS_GUC_CT(dev_priv)) {
+ ret = intel_guc_ct_init(&guc->ct);
+ if (ret)
+ goto err_ads;
+ }
+
/* We need to notify the guc whenever we change the GGTT */
i915_ggtt_enable_guc(dev_priv);
return 0;
+err_ads:
+ intel_guc_ads_destroy(guc);
err_log:
intel_guc_log_destroy(&guc->log);
err_shared:
@@ -222,6 +230,10 @@ void intel_guc_fini(struct intel_guc *guc)
struct drm_i915_private *dev_priv = guc_to_i915(guc);
i915_ggtt_disable_guc(dev_priv);
+
+ if (HAS_GUC_CT(dev_priv))
+ intel_guc_ct_fini(&guc->ct);
+
intel_guc_ads_destroy(guc);
intel_guc_log_destroy(&guc->log);
guc_shared_data_destroy(guc);
diff --git a/drivers/gpu/drm/i915/intel_guc_ct.c b/drivers/gpu/drm/i915/intel_guc_ct.c
index a52883e9146f..b8d57f01d8e4 100644
--- a/drivers/gpu/drm/i915/intel_guc_ct.c
+++ b/drivers/gpu/drm/i915/intel_guc_ct.c
@@ -140,11 +140,6 @@ static int guc_action_deregister_ct_buffer(struct intel_guc *guc,
return err;
}
-static bool ctch_is_open(struct intel_guc_ct_channel *ctch)
-{
- return ctch->vma != NULL;
-}
-
static int ctch_init(struct intel_guc *guc,
struct intel_guc_ct_channel *ctch)
{
@@ -214,25 +209,21 @@ static int ctch_init(struct intel_guc *guc,
static void ctch_fini(struct intel_guc *guc,
struct intel_guc_ct_channel *ctch)
{
+ GEM_BUG_ON(ctch->enabled);
+
i915_vma_unpin_and_release(&ctch->vma, I915_VMA_RELEASE_MAP);
}
-static int ctch_open(struct intel_guc *guc,
+static int ctch_enable(struct intel_guc *guc,
struct intel_guc_ct_channel *ctch)
{
u32 base;
int err;
int i;
- CT_DEBUG_DRIVER("CT: channel %d reopen=%s\n",
- ctch->owner, yesno(ctch_is_open(ctch)));
+ GEM_BUG_ON(!ctch->vma);
- if (!ctch->vma) {
- err = ctch_init(guc, ctch);
- if (unlikely(err))
- goto err_out;
- GEM_BUG_ON(!ctch->vma);
- }
+ GEM_BUG_ON(ctch->enabled);
/* vma should be already allocated and map'ed */
base = intel_guc_ggtt_offset(guc, ctch->vma);
@@ -255,7 +246,7 @@ static int ctch_open(struct intel_guc *guc,
base + PAGE_SIZE/4 * CTB_RECV,
INTEL_GUC_CT_BUFFER_TYPE_RECV);
if (unlikely(err))
- goto err_fini;
+ goto err_out;
err = guc_action_register_ct_buffer(guc,
base + PAGE_SIZE/4 * CTB_SEND,
@@ -263,23 +254,25 @@ static int ctch_open(struct intel_guc *guc,
if (unlikely(err))
goto err_deregister;
+ ctch->enabled = true;
+
return 0;
err_deregister:
guc_action_deregister_ct_buffer(guc,
ctch->owner,
INTEL_GUC_CT_BUFFER_TYPE_RECV);
-err_fini:
- ctch_fini(guc, ctch);
err_out:
DRM_ERROR("CT: can't open channel %d; err=%d\n", ctch->owner, err);
return err;
}
-static void ctch_close(struct intel_guc *guc,
+static void ctch_disable(struct intel_guc *guc,
struct intel_guc_ct_channel *ctch)
{
- GEM_BUG_ON(!ctch_is_open(ctch));
+ GEM_BUG_ON(!ctch->enabled);
+
+ ctch->enabled = false;
guc_action_deregister_ct_buffer(guc,
ctch->owner,
@@ -287,7 +280,6 @@ static void ctch_close(struct intel_guc *guc,
guc_action_deregister_ct_buffer(guc,
ctch->owner,
INTEL_GUC_CT_BUFFER_TYPE_RECV);
- ctch_fini(guc, ctch);
}
static u32 ctch_get_next_fence(struct intel_guc_ct_channel *ctch)
@@ -481,7 +473,7 @@ static int ctch_send(struct intel_guc_ct *ct,
u32 fence;
int err;
- GEM_BUG_ON(!ctch_is_open(ctch));
+ GEM_BUG_ON(!ctch->enabled);
GEM_BUG_ON(!len);
GEM_BUG_ON(len & ~GUC_CT_MSG_LEN_MASK);
GEM_BUG_ON(!response_buf && response_buf_size);
@@ -817,7 +809,7 @@ static void ct_process_host_channel(struct intel_guc_ct *ct)
u32 msg[GUC_CT_MSG_LEN_MASK + 1]; /* one extra dw for the header */
int err = 0;
- if (!ctch_is_open(ctch))
+ if (!ctch->enabled)
return;
do {
@@ -848,6 +840,51 @@ static void intel_guc_to_host_event_handler_ct(struct intel_guc *guc)
ct_process_host_channel(ct);
}
+/**
+ * intel_guc_ct_init - Init CT communication
+ * @ct: pointer to CT struct
+ *
+ * Allocate memory required for communication via
+ * the CT channel.
+ *
+ * Shall only be called for platforms with HAS_GUC_CT.
+ *
+ * Return: 0 on success, a negative errno code on failure.
+ */
+int intel_guc_ct_init(struct intel_guc_ct *ct)
+{
+ struct intel_guc *guc = ct_to_guc(ct);
+ struct intel_guc_ct_channel *ctch = &ct->host_channel;
+ int err;
+
+ err = ctch_init(guc, ctch);
+ if (unlikely(err)) {
+ DRM_ERROR("CT: can't open channel %d; err=%d\n",
+ ctch->owner, err);
+ return err;
+ }
+
+ GEM_BUG_ON(!ctch->vma);
+ return 0;
+}
+
+/**
+ * intel_guc_ct_fini - Fini CT communication
+ * @ct: pointer to CT struct
+ *
+ * Deallocate memory required for communication via
+ * the CT channel.
+ *
+ * Shall only be called for platforms with HAS_GUC_CT.
+ */
+void intel_guc_ct_fini(struct intel_guc_ct *ct)
+{
+ struct intel_guc *guc = ct_to_guc(ct);
+ struct intel_guc_ct_channel *ctch = &ct->host_channel;
+
+ ctch_fini(guc, ctch);
+}
+
/**
* intel_guc_ct_enable - Enable buffer based command transport.
* @ct: pointer to CT struct
@@ -865,7 +902,10 @@ int intel_guc_ct_enable(struct intel_guc_ct *ct)
GEM_BUG_ON(!HAS_GUC_CT(i915));
- err = ctch_open(guc, ctch);
+ if (ctch->enabled)
+ return 0;
+
+ err = ctch_enable(guc, ctch);
if (unlikely(err))
return err;
@@ -890,10 +930,10 @@ void intel_guc_ct_disable(struct intel_guc_ct *ct)
GEM_BUG_ON(!HAS_GUC_CT(i915));
- if (!ctch_is_open(ctch))
+ if (!ctch->enabled)
return;
- ctch_close(guc, ctch);
+ ctch_disable(guc, ctch);
/* Disable send */
guc->send = intel_guc_send_nop;
diff --git a/drivers/gpu/drm/i915/intel_guc_ct.h b/drivers/gpu/drm/i915/intel_guc_ct.h
index d774895ab143..5f687b07999d 100644
--- a/drivers/gpu/drm/i915/intel_guc_ct.h
+++ b/drivers/gpu/drm/i915/intel_guc_ct.h
@@ -64,6 +64,7 @@ struct intel_guc_ct_buffer {
struct intel_guc_ct_channel {
struct i915_vma *vma;
struct intel_guc_ct_buffer ctbs[2];
+ bool enabled;
u32 owner;
u32 next_fence;
};
@@ -90,6 +91,8 @@ struct intel_guc_ct {
};
void intel_guc_ct_init_early(struct intel_guc_ct *ct);
+int intel_guc_ct_init(struct intel_guc_ct *ct);
+void intel_guc_ct_fini(struct intel_guc_ct *ct);
int intel_guc_ct_enable(struct intel_guc_ct *ct);
void intel_guc_ct_disable(struct intel_guc_ct *ct);
--
2.20.1
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply related [flat|nested] 9+ messages in thread
* [PATCH v3 2/2] drm/i915/guc: Calling guc_disable_communication in all suspend paths
2019-02-20 1:39 [PATCH v3 0/2] GuC suspend paths cleanup Sujaritha Sundaresan
2019-02-20 1:39 ` [PATCH v3 1/2] drm/i915/guc: Splitting CT channel open/close functions Sujaritha Sundaresan
@ 2019-02-20 1:39 ` Sujaritha Sundaresan
2019-02-20 2:09 ` ✗ Fi.CI.CHECKPATCH: warning for GuC suspend paths cleanup Patchwork
` (2 subsequent siblings)
4 siblings, 0 replies; 9+ messages in thread
From: Sujaritha Sundaresan @ 2019-02-20 1:39 UTC (permalink / raw)
To: intel-gfx; +Cc: Sujaritha Sundaresan
This aim of this patch is to call guc_disable_communication in all
suspend paths. The reason to introduce this is to resolve a bug that
occurred due to suspend late not being called in the hibernate devices
path.
Cc: Daniele Ceraolo Spurio <daniele.ceraolospurio@intel.com>
Cc: Michal Wajdeczko <michal.wajdeczko@intel.com>
Signed-off-by: Sujaritha Sundaresan <sujaritha.sundaresan@intel.com>
Reviewed-by: Daniele Ceraolo Spurio <daniele.ceraolospurio@intel.com>
---
drivers/gpu/drm/i915/i915_reset.c | 2 +-
drivers/gpu/drm/i915/intel_uc.c | 23 +++++++++++++++++++----
drivers/gpu/drm/i915/intel_uc.h | 1 +
3 files changed, 21 insertions(+), 5 deletions(-)
diff --git a/drivers/gpu/drm/i915/i915_reset.c b/drivers/gpu/drm/i915/i915_reset.c
index c234feb5fdf5..0c7ba6fe5b7d 100644
--- a/drivers/gpu/drm/i915/i915_reset.c
+++ b/drivers/gpu/drm/i915/i915_reset.c
@@ -673,7 +673,7 @@ static void reset_prepare(struct drm_i915_private *i915)
for_each_engine(engine, i915, id)
reset_prepare_engine(engine);
- intel_uc_sanitize(i915);
+ intel_uc_reset_prepare(i915);
revoke_mmaps(i915);
}
diff --git a/drivers/gpu/drm/i915/intel_uc.c b/drivers/gpu/drm/i915/intel_uc.c
index e711eb3268bc..2d360d53757f 100644
--- a/drivers/gpu/drm/i915/intel_uc.c
+++ b/drivers/gpu/drm/i915/intel_uc.c
@@ -332,8 +332,6 @@ void intel_uc_sanitize(struct drm_i915_private *i915)
GEM_BUG_ON(!HAS_GUC(i915));
- guc_disable_communication(guc);
-
intel_huc_sanitize(huc);
intel_guc_sanitize(guc);
@@ -451,6 +449,23 @@ void intel_uc_fini_hw(struct drm_i915_private *i915)
guc_disable_communication(guc);
}
+/**
+ * intel_uc_reset_prepare - Prepare for reset
+ * @i915: device private
+ *
+ * Preparing for full gpu reset.
+ */
+void intel_uc_reset_prepare(struct drm_i915_private *i915)
+{
+ struct intel_guc *guc = &i915->guc;
+
+ if (!USES_GUC(i915))
+ return;
+
+ guc_disable_communication(guc);
+ intel_uc_sanitize(i915);
+}
+
int intel_uc_suspend(struct drm_i915_private *i915)
{
struct intel_guc *guc = &i915->guc;
@@ -468,7 +483,7 @@ int intel_uc_suspend(struct drm_i915_private *i915)
return err;
}
- gen9_disable_guc_interrupts(i915);
+ guc_disable_communication(guc);
return 0;
}
@@ -484,7 +499,7 @@ int intel_uc_resume(struct drm_i915_private *i915)
if (guc->fw.load_status != INTEL_UC_FIRMWARE_SUCCESS)
return 0;
- gen9_enable_guc_interrupts(i915);
+ guc_enable_communication(guc);
err = intel_guc_resume(guc);
if (err) {
diff --git a/drivers/gpu/drm/i915/intel_uc.h b/drivers/gpu/drm/i915/intel_uc.h
index 870faf9011b9..c14729786652 100644
--- a/drivers/gpu/drm/i915/intel_uc.h
+++ b/drivers/gpu/drm/i915/intel_uc.h
@@ -38,6 +38,7 @@ int intel_uc_init_hw(struct drm_i915_private *dev_priv);
void intel_uc_fini_hw(struct drm_i915_private *dev_priv);
int intel_uc_init(struct drm_i915_private *dev_priv);
void intel_uc_fini(struct drm_i915_private *dev_priv);
+void intel_uc_reset_prepare(struct drm_i915_private *i915);
int intel_uc_suspend(struct drm_i915_private *dev_priv);
int intel_uc_resume(struct drm_i915_private *dev_priv);
--
2.20.1
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply related [flat|nested] 9+ messages in thread
* ✗ Fi.CI.CHECKPATCH: warning for GuC suspend paths cleanup
2019-02-20 1:39 [PATCH v3 0/2] GuC suspend paths cleanup Sujaritha Sundaresan
2019-02-20 1:39 ` [PATCH v3 1/2] drm/i915/guc: Splitting CT channel open/close functions Sujaritha Sundaresan
2019-02-20 1:39 ` [PATCH v3 2/2] drm/i915/guc: Calling guc_disable_communication in all suspend paths Sujaritha Sundaresan
@ 2019-02-20 2:09 ` Patchwork
2019-02-20 2:34 ` ✓ Fi.CI.BAT: success " Patchwork
2019-02-20 4:55 ` ✓ Fi.CI.IGT: " Patchwork
4 siblings, 0 replies; 9+ messages in thread
From: Patchwork @ 2019-02-20 2:09 UTC (permalink / raw)
To: intel-gfx
== Series Details ==
Series: GuC suspend paths cleanup
URL : https://patchwork.freedesktop.org/series/56938/
State : warning
== Summary ==
$ dim checkpatch origin/drm-tip
87b2a8a5132c drm/i915/guc: Splitting CT channel open/close functions
-:78: CHECK:PARENTHESIS_ALIGNMENT: Alignment should match open parenthesis
#78: FILE: drivers/gpu/drm/i915/intel_guc_ct.c:218:
+static int ctch_enable(struct intel_guc *guc,
struct intel_guc_ct_channel *ctch)
-:128: CHECK:PARENTHESIS_ALIGNMENT: Alignment should match open parenthesis
#128: FILE: drivers/gpu/drm/i915/intel_guc_ct.c:271:
+static void ctch_disable(struct intel_guc *guc,
struct intel_guc_ct_channel *ctch)
-:187: CHECK:PARENTHESIS_ALIGNMENT: Alignment should match open parenthesis
#187: FILE: drivers/gpu/drm/i915/intel_guc_ct.c:863:
+ DRM_ERROR("CT: can't open channel %d; err=%d\n",
+ ctch->owner, err);
total: 0 errors, 0 warnings, 3 checks, 219 lines checked
16533d032f4f drm/i915/guc: Calling guc_disable_communication in all suspend paths
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 9+ messages in thread
* ✓ Fi.CI.BAT: success for GuC suspend paths cleanup
2019-02-20 1:39 [PATCH v3 0/2] GuC suspend paths cleanup Sujaritha Sundaresan
` (2 preceding siblings ...)
2019-02-20 2:09 ` ✗ Fi.CI.CHECKPATCH: warning for GuC suspend paths cleanup Patchwork
@ 2019-02-20 2:34 ` Patchwork
2019-02-20 4:55 ` ✓ Fi.CI.IGT: " Patchwork
4 siblings, 0 replies; 9+ messages in thread
From: Patchwork @ 2019-02-20 2:34 UTC (permalink / raw)
To: intel-gfx
== Series Details ==
Series: GuC suspend paths cleanup
URL : https://patchwork.freedesktop.org/series/56938/
State : success
== Summary ==
CI Bug Log - changes from CI_DRM_5633 -> Patchwork_12262
====================================================
Summary
-------
**SUCCESS**
No regressions found.
External URL: https://patchwork.freedesktop.org/api/1.0/series/56938/revisions/1/mbox/
Known issues
------------
Here are the changes found in Patchwork_12262 that come from known issues:
### IGT changes ###
#### Issues hit ####
* igt@gem_exec_suspend@basic-s4-devices:
- fi-blb-e6850: PASS -> INCOMPLETE [fdo#107718]
* igt@kms_pipe_crc_basic@hang-read-crc-pipe-b:
- fi-byt-clapper: PASS -> FAIL [fdo#103191] / [fdo#107362]
* igt@pm_rpm@basic-rte:
- fi-bsw-kefka: NOTRUN -> FAIL [fdo#108800]
#### Possible fixes ####
* igt@kms_busy@basic-flip-a:
- fi-gdg-551: FAIL [fdo#103182] -> PASS
* igt@kms_pipe_crc_basic@suspend-read-crc-pipe-a:
- fi-byt-clapper: FAIL [fdo#103191] / [fdo#107362] -> PASS +1
{name}: This element is suppressed. This means it is ignored when computing
the status of the difference (SUCCESS, WARNING, or FAILURE).
[fdo#103182]: https://bugs.freedesktop.org/show_bug.cgi?id=103182
[fdo#103191]: https://bugs.freedesktop.org/show_bug.cgi?id=103191
[fdo#107362]: https://bugs.freedesktop.org/show_bug.cgi?id=107362
[fdo#107718]: https://bugs.freedesktop.org/show_bug.cgi?id=107718
[fdo#108800]: https://bugs.freedesktop.org/show_bug.cgi?id=108800
[fdo#109271]: https://bugs.freedesktop.org/show_bug.cgi?id=109271
[fdo#109278]: https://bugs.freedesktop.org/show_bug.cgi?id=109278
Participating hosts (43 -> 41)
------------------------------
Additional (2): fi-bsw-kefka fi-pnv-d510
Missing (4): fi-kbl-soraka fi-ilk-m540 fi-byt-squawks fi-bdw-samus
Build changes
-------------
* Linux: CI_DRM_5633 -> Patchwork_12262
CI_DRM_5633: e507167d9a057512937d8944566f817c071c8443 @ git://anongit.freedesktop.org/gfx-ci/linux
IGT_4840: c12b1f87adc4c568b21cc6ed9076b94bea46b010 @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
Patchwork_12262: 16533d032f4fb9aa7cfc2f30879128f73f6a3a94 @ git://anongit.freedesktop.org/gfx-ci/linux
== Linux commits ==
16533d032f4f drm/i915/guc: Calling guc_disable_communication in all suspend paths
87b2a8a5132c drm/i915/guc: Splitting CT channel open/close functions
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_12262/
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 9+ messages in thread
* ✓ Fi.CI.IGT: success for GuC suspend paths cleanup
2019-02-20 1:39 [PATCH v3 0/2] GuC suspend paths cleanup Sujaritha Sundaresan
` (3 preceding siblings ...)
2019-02-20 2:34 ` ✓ Fi.CI.BAT: success " Patchwork
@ 2019-02-20 4:55 ` Patchwork
4 siblings, 0 replies; 9+ messages in thread
From: Patchwork @ 2019-02-20 4:55 UTC (permalink / raw)
To: intel-gfx
== Series Details ==
Series: GuC suspend paths cleanup
URL : https://patchwork.freedesktop.org/series/56938/
State : success
== Summary ==
CI Bug Log - changes from CI_DRM_5633_full -> Patchwork_12262_full
====================================================
Summary
-------
**SUCCESS**
No regressions found.
Known issues
------------
Here are the changes found in Patchwork_12262_full that come from known issues:
### IGT changes ###
#### Issues hit ####
* igt@gem_eio@in-flight-suspend:
- shard-iclb: PASS -> FAIL [fdo#103375] +1
* igt@i915_selftest@live_workarounds:
- shard-iclb: PASS -> DMESG-FAIL [fdo#108954]
* igt@kms_color@pipe-b-ctm-red-to-blue:
- shard-iclb: NOTRUN -> DMESG-WARN [fdo#109624] +1
* igt@kms_content_protection@atomic:
- shard-kbl: NOTRUN -> FAIL [fdo#108597] / [fdo#108739]
* igt@kms_cursor_crc@cursor-128x128-dpms:
- shard-glk: NOTRUN -> FAIL [fdo#103232]
* igt@kms_cursor_crc@cursor-128x42-sliding:
- shard-apl: PASS -> FAIL [fdo#103232] +1
* igt@kms_cursor_crc@cursor-64x64-onscreen:
- shard-iclb: NOTRUN -> FAIL [fdo#103232]
* igt@kms_cursor_crc@cursor-64x64-suspend:
- shard-apl: PASS -> FAIL [fdo#103191] / [fdo#103232]
* igt@kms_cursor_legacy@all-pipes-torture-bo:
- shard-kbl: NOTRUN -> DMESG-WARN [fdo#107122]
* igt@kms_cursor_legacy@cursor-vs-flip-atomic-transitions:
- shard-hsw: PASS -> FAIL [fdo#103355]
* igt@kms_flip@flip-vs-expired-vblank:
- shard-glk: PASS -> FAIL [fdo#105363]
* igt@kms_flip@modeset-vs-vblank-race-interruptible:
- shard-glk: PASS -> FAIL [fdo#103060]
* igt@kms_frontbuffer_tracking@fbc-1p-primscrn-cur-indfb-draw-pwrite:
- shard-apl: PASS -> FAIL [fdo#103167]
* igt@kms_frontbuffer_tracking@fbc-2p-primscrn-spr-indfb-draw-mmap-cpu:
- shard-glk: PASS -> FAIL [fdo#103167] +6
* igt@kms_plane_multiple@atomic-pipe-b-tiling-y:
- shard-glk: PASS -> FAIL [fdo#103166] +2
- shard-apl: PASS -> FAIL [fdo#103166]
* igt@kms_plane_multiple@atomic-pipe-c-tiling-none:
- shard-iclb: PASS -> FAIL [fdo#103166]
* igt@kms_vblank@pipe-a-ts-continuation-suspend:
- shard-kbl: NOTRUN -> FAIL [fdo#104894]
* igt@kms_vblank@pipe-c-query-idle-hang:
- shard-apl: PASS -> INCOMPLETE [fdo#103927]
* igt@pm_rpm@pm-caching:
- shard-iclb: PASS -> DMESG-WARN [fdo#107724]
#### Possible fixes ####
* igt@gem_ctx_isolation@bcs0-s3:
- shard-apl: DMESG-WARN [fdo#108566] -> PASS
* igt@gem_ctx_switch@basic-all-heavy:
- shard-apl: INCOMPLETE [fdo#103927] -> PASS
* igt@kms_cursor_crc@cursor-128x128-random:
- shard-apl: FAIL [fdo#103232] -> PASS +2
* igt@kms_cursor_crc@cursor-alpha-opaque:
- shard-apl: FAIL [fdo#109350] -> PASS
- shard-glk: FAIL [fdo#109350] -> PASS
* igt@kms_cursor_legacy@cursor-vs-flip-toggle:
- shard-hsw: FAIL [fdo#103355] -> PASS
* igt@kms_frontbuffer_tracking@fbc-1p-primscrn-cur-indfb-draw-mmap-gtt:
- shard-hsw: INCOMPLETE [fdo#103540] -> PASS
* igt@kms_frontbuffer_tracking@fbc-1p-primscrn-cur-indfb-draw-mmap-wc:
- shard-glk: FAIL [fdo#103167] -> PASS +4
* igt@kms_frontbuffer_tracking@fbc-1p-primscrn-spr-indfb-draw-mmap-gtt:
- shard-apl: FAIL [fdo#103167] -> PASS +3
* igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-shrfb-plflip-blt:
- shard-iclb: FAIL [fdo#103167] -> PASS
* igt@kms_plane_multiple@atomic-pipe-c-tiling-yf:
- shard-glk: FAIL [fdo#103166] -> PASS
* igt@kms_rotation_crc@multiplane-rotation:
- shard-kbl: FAIL [fdo#109016] -> PASS
* igt@kms_universal_plane@universal-plane-pipe-c-functional:
- shard-apl: FAIL [fdo#103166] -> PASS
* igt@kms_vblank@pipe-a-ts-continuation-dpms-suspend:
- shard-glk: INCOMPLETE [fdo#103359] / [k.org#198133] -> PASS
- shard-iclb: INCOMPLETE [fdo#107713] -> PASS +1
* igt@pm_backlight@fade_with_dpms:
- shard-iclb: INCOMPLETE [fdo#107820] -> PASS
{name}: This element is suppressed. This means it is ignored when computing
the status of the difference (SUCCESS, WARNING, or FAILURE).
[fdo#103060]: https://bugs.freedesktop.org/show_bug.cgi?id=103060
[fdo#103166]: https://bugs.freedesktop.org/show_bug.cgi?id=103166
[fdo#103167]: https://bugs.freedesktop.org/show_bug.cgi?id=103167
[fdo#103191]: https://bugs.freedesktop.org/show_bug.cgi?id=103191
[fdo#103232]: https://bugs.freedesktop.org/show_bug.cgi?id=103232
[fdo#103355]: https://bugs.freedesktop.org/show_bug.cgi?id=103355
[fdo#103359]: https://bugs.freedesktop.org/show_bug.cgi?id=103359
[fdo#103375]: https://bugs.freedesktop.org/show_bug.cgi?id=103375
[fdo#103540]: https://bugs.freedesktop.org/show_bug.cgi?id=103540
[fdo#103927]: https://bugs.freedesktop.org/show_bug.cgi?id=103927
[fdo#104894]: https://bugs.freedesktop.org/show_bug.cgi?id=104894
[fdo#105363]: https://bugs.freedesktop.org/show_bug.cgi?id=105363
[fdo#107122]: https://bugs.freedesktop.org/show_bug.cgi?id=107122
[fdo#107713]: https://bugs.freedesktop.org/show_bug.cgi?id=107713
[fdo#107724]: https://bugs.freedesktop.org/show_bug.cgi?id=107724
[fdo#107820]: https://bugs.freedesktop.org/show_bug.cgi?id=107820
[fdo#108566]: https://bugs.freedesktop.org/show_bug.cgi?id=108566
[fdo#108597]: https://bugs.freedesktop.org/show_bug.cgi?id=108597
[fdo#108739]: https://bugs.freedesktop.org/show_bug.cgi?id=108739
[fdo#108954]: https://bugs.freedesktop.org/show_bug.cgi?id=108954
[fdo#109016]: https://bugs.freedesktop.org/show_bug.cgi?id=109016
[fdo#109271]: https://bugs.freedesktop.org/show_bug.cgi?id=109271
[fdo#109274]: https://bugs.freedesktop.org/show_bug.cgi?id=109274
[fdo#109276]: https://bugs.freedesktop.org/show_bug.cgi?id=109276
[fdo#109278]: https://bugs.freedesktop.org/show_bug.cgi?id=109278
[fdo#109280]: https://bugs.freedesktop.org/show_bug.cgi?id=109280
[fdo#109281]: https://bugs.freedesktop.org/show_bug.cgi?id=109281
[fdo#109284]: https://bugs.freedesktop.org/show_bug.cgi?id=109284
[fdo#109285]: https://bugs.freedesktop.org/show_bug.cgi?id=109285
[fdo#109287]: https://bugs.freedesktop.org/show_bug.cgi?id=109287
[fdo#109291]: https://bugs.freedesktop.org/show_bug.cgi?id=109291
[fdo#109308]: https://bugs.freedesktop.org/show_bug.cgi?id=109308
[fdo#109309]: https://bugs.freedesktop.org/show_bug.cgi?id=109309
[fdo#109350]: https://bugs.freedesktop.org/show_bug.cgi?id=109350
[fdo#109441]: https://bugs.freedesktop.org/show_bug.cgi?id=109441
[fdo#109624]: https://bugs.freedesktop.org/show_bug.cgi?id=109624
[k.org#198133]: https://bugzilla.kernel.org/show_bug.cgi?id=198133
Participating hosts (7 -> 6)
------------------------------
Missing (1): shard-skl
Build changes
-------------
* Linux: CI_DRM_5633 -> Patchwork_12262
CI_DRM_5633: e507167d9a057512937d8944566f817c071c8443 @ git://anongit.freedesktop.org/gfx-ci/linux
IGT_4840: c12b1f87adc4c568b21cc6ed9076b94bea46b010 @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
Patchwork_12262: 16533d032f4fb9aa7cfc2f30879128f73f6a3a94 @ 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_12262/
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [PATCH v3 1/2] drm/i915/guc: Splitting CT channel open/close functions
2019-02-20 1:39 ` [PATCH v3 1/2] drm/i915/guc: Splitting CT channel open/close functions Sujaritha Sundaresan
@ 2019-02-20 16:51 ` Daniele Ceraolo Spurio
2019-02-21 0:54 ` Chris Wilson
0 siblings, 1 reply; 9+ messages in thread
From: Daniele Ceraolo Spurio @ 2019-02-20 16:51 UTC (permalink / raw)
To: Sujaritha Sundaresan, intel-gfx
On 2/19/19 5:39 PM, Sujaritha Sundaresan wrote:
> The aim of this patch is to allow enabling and disabling
> of CTB without requiring the mutex lock.
>
> v2: Phasing out ctch_is_enabled function and replacing it with
> ctch->enabled (Daniele)
You did a couple more things (better comments, move/add BUG_ONs, fix
compilation failure from v2), but not worth a respin to add them.
Reviewed-by: Daniele Ceraolo Spurio <daniele.ceraolospurio@intel.com>
Daniele
>
> Cc: Daniele Ceraolo Spurio <daniele.ceraolospurio@intel.com>
> Cc: Michal Wajdeczko <michal.wajdeczko@intel.com>
> Signed-off-by: Sujaritha Sundaresan <sujaritha.sundaresan@intel.com>
> ---
> drivers/gpu/drm/i915/intel_guc.c | 12 ++++
> drivers/gpu/drm/i915/intel_guc_ct.c | 90 +++++++++++++++++++++--------
> drivers/gpu/drm/i915/intel_guc_ct.h | 3 +
> 3 files changed, 80 insertions(+), 25 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/intel_guc.c b/drivers/gpu/drm/i915/intel_guc.c
> index 8660af3fd755..a4e1fc6b9eee 100644
> --- a/drivers/gpu/drm/i915/intel_guc.c
> +++ b/drivers/gpu/drm/i915/intel_guc.c
> @@ -203,11 +203,19 @@ int intel_guc_init(struct intel_guc *guc)
> goto err_log;
> GEM_BUG_ON(!guc->ads_vma);
>
> + if (HAS_GUC_CT(dev_priv)) {
> + ret = intel_guc_ct_init(&guc->ct);
> + if (ret)
> + goto err_ads;
> + }
> +
> /* We need to notify the guc whenever we change the GGTT */
> i915_ggtt_enable_guc(dev_priv);
>
> return 0;
>
> +err_ads:
> + intel_guc_ads_destroy(guc);
> err_log:
> intel_guc_log_destroy(&guc->log);
> err_shared:
> @@ -222,6 +230,10 @@ void intel_guc_fini(struct intel_guc *guc)
> struct drm_i915_private *dev_priv = guc_to_i915(guc);
>
> i915_ggtt_disable_guc(dev_priv);
> +
> + if (HAS_GUC_CT(dev_priv))
> + intel_guc_ct_fini(&guc->ct);
> +
> intel_guc_ads_destroy(guc);
> intel_guc_log_destroy(&guc->log);
> guc_shared_data_destroy(guc);
> diff --git a/drivers/gpu/drm/i915/intel_guc_ct.c b/drivers/gpu/drm/i915/intel_guc_ct.c
> index a52883e9146f..b8d57f01d8e4 100644
> --- a/drivers/gpu/drm/i915/intel_guc_ct.c
> +++ b/drivers/gpu/drm/i915/intel_guc_ct.c
> @@ -140,11 +140,6 @@ static int guc_action_deregister_ct_buffer(struct intel_guc *guc,
> return err;
> }
>
> -static bool ctch_is_open(struct intel_guc_ct_channel *ctch)
> -{
> - return ctch->vma != NULL;
> -}
> -
> static int ctch_init(struct intel_guc *guc,
> struct intel_guc_ct_channel *ctch)
> {
> @@ -214,25 +209,21 @@ static int ctch_init(struct intel_guc *guc,
> static void ctch_fini(struct intel_guc *guc,
> struct intel_guc_ct_channel *ctch)
> {
> + GEM_BUG_ON(ctch->enabled);
> +
> i915_vma_unpin_and_release(&ctch->vma, I915_VMA_RELEASE_MAP);
> }
>
> -static int ctch_open(struct intel_guc *guc,
> +static int ctch_enable(struct intel_guc *guc,
> struct intel_guc_ct_channel *ctch)
> {
> u32 base;
> int err;
> int i;
>
> - CT_DEBUG_DRIVER("CT: channel %d reopen=%s\n",
> - ctch->owner, yesno(ctch_is_open(ctch)));
> + GEM_BUG_ON(!ctch->vma);
>
> - if (!ctch->vma) {
> - err = ctch_init(guc, ctch);
> - if (unlikely(err))
> - goto err_out;
> - GEM_BUG_ON(!ctch->vma);
> - }
> + GEM_BUG_ON(ctch->enabled);
>
> /* vma should be already allocated and map'ed */
> base = intel_guc_ggtt_offset(guc, ctch->vma);
> @@ -255,7 +246,7 @@ static int ctch_open(struct intel_guc *guc,
> base + PAGE_SIZE/4 * CTB_RECV,
> INTEL_GUC_CT_BUFFER_TYPE_RECV);
> if (unlikely(err))
> - goto err_fini;
> + goto err_out;
>
> err = guc_action_register_ct_buffer(guc,
> base + PAGE_SIZE/4 * CTB_SEND,
> @@ -263,23 +254,25 @@ static int ctch_open(struct intel_guc *guc,
> if (unlikely(err))
> goto err_deregister;
>
> + ctch->enabled = true;
> +
> return 0;
>
> err_deregister:
> guc_action_deregister_ct_buffer(guc,
> ctch->owner,
> INTEL_GUC_CT_BUFFER_TYPE_RECV);
> -err_fini:
> - ctch_fini(guc, ctch);
> err_out:
> DRM_ERROR("CT: can't open channel %d; err=%d\n", ctch->owner, err);
> return err;
> }
>
> -static void ctch_close(struct intel_guc *guc,
> +static void ctch_disable(struct intel_guc *guc,
> struct intel_guc_ct_channel *ctch)
> {
> - GEM_BUG_ON(!ctch_is_open(ctch));
> + GEM_BUG_ON(!ctch->enabled);
> +
> + ctch->enabled = false;
>
> guc_action_deregister_ct_buffer(guc,
> ctch->owner,
> @@ -287,7 +280,6 @@ static void ctch_close(struct intel_guc *guc,
> guc_action_deregister_ct_buffer(guc,
> ctch->owner,
> INTEL_GUC_CT_BUFFER_TYPE_RECV);
> - ctch_fini(guc, ctch);
> }
>
> static u32 ctch_get_next_fence(struct intel_guc_ct_channel *ctch)
> @@ -481,7 +473,7 @@ static int ctch_send(struct intel_guc_ct *ct,
> u32 fence;
> int err;
>
> - GEM_BUG_ON(!ctch_is_open(ctch));
> + GEM_BUG_ON(!ctch->enabled);
> GEM_BUG_ON(!len);
> GEM_BUG_ON(len & ~GUC_CT_MSG_LEN_MASK);
> GEM_BUG_ON(!response_buf && response_buf_size);
> @@ -817,7 +809,7 @@ static void ct_process_host_channel(struct intel_guc_ct *ct)
> u32 msg[GUC_CT_MSG_LEN_MASK + 1]; /* one extra dw for the header */
> int err = 0;
>
> - if (!ctch_is_open(ctch))
> + if (!ctch->enabled)
> return;
>
> do {
> @@ -848,6 +840,51 @@ static void intel_guc_to_host_event_handler_ct(struct intel_guc *guc)
> ct_process_host_channel(ct);
> }
>
> +/**
> + * intel_guc_ct_init - Init CT communication
> + * @ct: pointer to CT struct
> + *
> + * Allocate memory required for communication via
> + * the CT channel.
> + *
> + * Shall only be called for platforms with HAS_GUC_CT.
> + *
> + * Return: 0 on success, a negative errno code on failure.
> + */
> +int intel_guc_ct_init(struct intel_guc_ct *ct)
> +{
> + struct intel_guc *guc = ct_to_guc(ct);
> + struct intel_guc_ct_channel *ctch = &ct->host_channel;
> + int err;
> +
> + err = ctch_init(guc, ctch);
> + if (unlikely(err)) {
> + DRM_ERROR("CT: can't open channel %d; err=%d\n",
> + ctch->owner, err);
> + return err;
> + }
> +
> + GEM_BUG_ON(!ctch->vma);
> + return 0;
> +}
> +
> +/**
> + * intel_guc_ct_fini - Fini CT communication
> + * @ct: pointer to CT struct
> + *
> + * Deallocate memory required for communication via
> + * the CT channel.
> + *
> + * Shall only be called for platforms with HAS_GUC_CT.
> + */
> +void intel_guc_ct_fini(struct intel_guc_ct *ct)
> +{
> + struct intel_guc *guc = ct_to_guc(ct);
> + struct intel_guc_ct_channel *ctch = &ct->host_channel;
> +
> + ctch_fini(guc, ctch);
> +}
> +
> /**
> * intel_guc_ct_enable - Enable buffer based command transport.
> * @ct: pointer to CT struct
> @@ -865,7 +902,10 @@ int intel_guc_ct_enable(struct intel_guc_ct *ct)
>
> GEM_BUG_ON(!HAS_GUC_CT(i915));
>
> - err = ctch_open(guc, ctch);
> + if (ctch->enabled)
> + return 0;
> +
> + err = ctch_enable(guc, ctch);
> if (unlikely(err))
> return err;
>
> @@ -890,10 +930,10 @@ void intel_guc_ct_disable(struct intel_guc_ct *ct)
>
> GEM_BUG_ON(!HAS_GUC_CT(i915));
>
> - if (!ctch_is_open(ctch))
> + if (!ctch->enabled)
> return;
>
> - ctch_close(guc, ctch);
> + ctch_disable(guc, ctch);
>
> /* Disable send */
> guc->send = intel_guc_send_nop;
> diff --git a/drivers/gpu/drm/i915/intel_guc_ct.h b/drivers/gpu/drm/i915/intel_guc_ct.h
> index d774895ab143..5f687b07999d 100644
> --- a/drivers/gpu/drm/i915/intel_guc_ct.h
> +++ b/drivers/gpu/drm/i915/intel_guc_ct.h
> @@ -64,6 +64,7 @@ struct intel_guc_ct_buffer {
> struct intel_guc_ct_channel {
> struct i915_vma *vma;
> struct intel_guc_ct_buffer ctbs[2];
> + bool enabled;
> u32 owner;
> u32 next_fence;
> };
> @@ -90,6 +91,8 @@ struct intel_guc_ct {
> };
>
> void intel_guc_ct_init_early(struct intel_guc_ct *ct);
> +int intel_guc_ct_init(struct intel_guc_ct *ct);
> +void intel_guc_ct_fini(struct intel_guc_ct *ct);
> int intel_guc_ct_enable(struct intel_guc_ct *ct);
> void intel_guc_ct_disable(struct intel_guc_ct *ct);
>
>
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [PATCH v3 1/2] drm/i915/guc: Splitting CT channel open/close functions
2019-02-20 16:51 ` Daniele Ceraolo Spurio
@ 2019-02-21 0:54 ` Chris Wilson
0 siblings, 0 replies; 9+ messages in thread
From: Chris Wilson @ 2019-02-21 0:54 UTC (permalink / raw)
To: Daniele Ceraolo Spurio, Sujaritha Sundaresan, intel-gfx
Quoting Daniele Ceraolo Spurio (2019-02-20 16:51:33)
>
>
> On 2/19/19 5:39 PM, Sujaritha Sundaresan wrote:
> > The aim of this patch is to allow enabling and disabling
> > of CTB without requiring the mutex lock.
> >
> > v2: Phasing out ctch_is_enabled function and replacing it with
> > ctch->enabled (Daniele)
>
> You did a couple more things (better comments, move/add BUG_ONs, fix
> compilation failure from v2), but not worth a respin to add them.
>
> Reviewed-by: Daniele Ceraolo Spurio <daniele.ceraolospurio@intel.com>
And pushed.
-Chris
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 9+ messages in thread
end of thread, other threads:[~2019-02-21 0:54 UTC | newest]
Thread overview: 9+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2019-02-20 1:39 [PATCH v3 0/2] GuC suspend paths cleanup Sujaritha Sundaresan
2019-02-20 1:39 ` [PATCH v3 1/2] drm/i915/guc: Splitting CT channel open/close functions Sujaritha Sundaresan
2019-02-20 16:51 ` Daniele Ceraolo Spurio
2019-02-21 0:54 ` Chris Wilson
2019-02-20 1:39 ` [PATCH v3 2/2] drm/i915/guc: Calling guc_disable_communication in all suspend paths Sujaritha Sundaresan
2019-02-20 2:09 ` ✗ Fi.CI.CHECKPATCH: warning for GuC suspend paths cleanup Patchwork
2019-02-20 2:34 ` ✓ Fi.CI.BAT: success " Patchwork
2019-02-20 4:55 ` ✓ Fi.CI.IGT: " Patchwork
-- strict thread matches above, loose matches on Subject: below --
2019-02-14 21:45 [PATCH 0/2] " Sujaritha Sundaresan
2019-02-14 23:32 ` ✓ Fi.CI.BAT: success for " Patchwork
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox