diff mbox series

[1/4] drm/i915/guc: rename __create/destroy_doorbell

Message ID 20181017001718.11511-1-daniele.ceraolospurio@intel.com (mailing list archive)
State New, archived
Headers show
Series [1/4] drm/i915/guc: rename __create/destroy_doorbell | expand

Commit Message

Daniele Ceraolo Spurio Oct. 17, 2018, 12:17 a.m. UTC
The 2 functions don't create or destroy anything, they just update the
doorbell state in memory. Use init and fini instead for clarity.

Cc: Michal Wajdeczko <michal.wajdeczko@intel.com>
Signed-off-by: Daniele Ceraolo Spurio <daniele.ceraolospurio@intel.com>
---
 drivers/gpu/drm/i915/intel_guc_submission.c | 12 ++++++------
 drivers/gpu/drm/i915/selftests/intel_guc.c  |  4 ++--
 2 files changed, 8 insertions(+), 8 deletions(-)

Comments

Michal Wajdeczko Oct. 17, 2018, 3:50 p.m. UTC | #1
On Wed, 17 Oct 2018 02:17:15 +0200, Daniele Ceraolo Spurio  
<daniele.ceraolospurio@intel.com> wrote:

> The 2 functions don't create or destroy anything, they just update the
> doorbell state in memory. Use init and fini instead for clarity.
>
> Cc: Michal Wajdeczko <michal.wajdeczko@intel.com>
> Signed-off-by: Daniele Ceraolo Spurio <daniele.ceraolospurio@intel.com>
> ---

Reviewed-by: Michal Wajdeczko <michal.wajdeczko@intel.com>
Daniele Ceraolo Spurio Oct. 17, 2018, 7:52 p.m. UTC | #2
On 17/10/18 12:10, Patchwork wrote:
> == Series Details ==
> 
> Series: series starting with [1/4] drm/i915/guc: rename __create/destroy_doorbell (rev2)
> URL   : https://patchwork.freedesktop.org/series/51090/
> State : failure
> 
> == Summary ==
> 
> = CI Bug Log - changes from CI_DRM_5000 -> Patchwork_10492 =
> 
> == Summary - FAILURE ==
> 
>    Serious unknown changes coming with Patchwork_10492 absolutely need to be
>    verified manually.
>    
>    If you think the reported changes have nothing to do with the changes
>    introduced in Patchwork_10492, please notify your bug team to allow them
>    to document this new failure mode, which will reduce false positives in CI.
> 
>    External URL: https://patchwork.freedesktop.org/api/1.0/series/51090/revisions/2/mbox/
> 
> == Possible new issues ==
> 
>    Here are the unknown changes that may have been introduced in Patchwork_10492:
> 
>    === IGT changes ===
> 
>      ==== Possible regressions ====
> 
>      igt@drv_selftest@live_execlists:
>        fi-skl-iommu:       PASS -> INCOMPLETE
> 
>      igt@drv_selftest@live_guc:
>        fi-kbl-7567u:       PASS -> INCOMPLETE
>        fi-skl-6600u:       PASS -> INCOMPLETE
>        fi-skl-6260u:       PASS -> INCOMPLETE
>        fi-skl-6700k2:      PASS -> INCOMPLETE
>        fi-whl-u:           PASS -> INCOMPLETE
>        fi-skl-6770hq:      PASS -> INCOMPLETE
>        fi-kbl-7560u:       PASS -> INCOMPLETE
>        fi-kbl-8809g:       PASS -> INCOMPLETE
>        fi-kbl-r:           PASS -> INCOMPLETE
>        fi-kbl-x1275:       PASS -> INCOMPLETE
>        fi-skl-6700hq:      PASS -> INCOMPLETE
>        fi-cfl-s3:          PASS -> INCOMPLETE
>        fi-cfl-8109u:       PASS -> INCOMPLETE
>        fi-kbl-7500u:       PASS -> INCOMPLETE
>        fi-cfl-8700k:       PASS -> INCOMPLETE
> 

This is the invalid doorbell selfest trying to poll a doorbell register 
that doesn't exist, now caught because of the new BUG_ON. Given that it 
is a pure GuC FW interface test I don't think it is worth updating the 
code to detect the invalid case and act on it, so I'm just going to 
remove it as Michal suggested. We do have coverage for the i915 code 
running out of doorbells in the guc_doorbells selftest.

Daniele

>      igt@drv_selftest@live_hangcheck:
>        fi-skl-6600u:       PASS -> DMESG-WARN
> 
>      
> == Known issues ==
> 
>    Here are the changes found in Patchwork_10492 that come from known issues:
> 
>    === IGT changes ===
> 
>      ==== Issues hit ====
> 
>      igt@drv_selftest@live_guc:
>        fi-skl-gvtdvm:      PASS -> INCOMPLETE (fdo#105600)
>        fi-bxt-dsi:         PASS -> INCOMPLETE (fdo#103927)
>        fi-bxt-j4205:       PASS -> INCOMPLETE (fdo#103927)
> 
>      igt@kms_pipe_crc_basic@nonblocking-crc-pipe-a:
>        fi-byt-clapper:     PASS -> FAIL (fdo#107362)
> 
>      
>      ==== Possible fixes ====
> 
>      igt@kms_pipe_crc_basic@nonblocking-crc-pipe-b:
>        fi-byt-clapper:     FAIL (fdo#107362) -> PASS
> 
>      
>      ==== Warnings ====
> 
>      igt@drv_selftest@live_guc:
>        fi-apl-guc:         DMESG-WARN (fdo#107258) -> INCOMPLETE (fdo#106693)
> 
>      
>    fdo#103927 https://bugs.freedesktop.org/show_bug.cgi?id=103927
>    fdo#105600 https://bugs.freedesktop.org/show_bug.cgi?id=105600
>    fdo#106693 https://bugs.freedesktop.org/show_bug.cgi?id=106693
>    fdo#107258 https://bugs.freedesktop.org/show_bug.cgi?id=107258
>    fdo#107362 https://bugs.freedesktop.org/show_bug.cgi?id=107362
> 
> 
> == Participating hosts (47 -> 41) ==
> 
>    Missing    (6): fi-kbl-soraka fi-ilk-m540 fi-hsw-4200u fi-byt-squawks fi-bsw-cyan fi-icl-u
> 
> 
> == Build changes ==
> 
>      * Linux: CI_DRM_5000 -> Patchwork_10492
> 
>    CI_DRM_5000: b9543c130d4f6edd76ec98090c46044ba6d9493e @ git://anongit.freedesktop.org/gfx-ci/linux
>    IGT_4683: 7766b1e2348b32cc8ed58a972c6fd53b20279549 @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
>    Patchwork_10492: 880bdc1de4f866988489380c18c9a051f3ab01d7 @ git://anongit.freedesktop.org/gfx-ci/linux
> 
> 
> == Linux commits ==
> 
> 880bdc1de4f8 HAX enable GuC for CI
> 61e396e88d17 drm/i915/guc: doorbell checking cleanup
> 641964fa483b drm/i915/guc: reserve the doorbell before selecting the cacheline
> f79da532bd81 drm/i915/guc: rename __create/destroy_doorbell
> 
> == Logs ==
> 
> For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_10492/issues.html
>
diff mbox series

Patch

diff --git a/drivers/gpu/drm/i915/intel_guc_submission.c b/drivers/gpu/drm/i915/intel_guc_submission.c
index eae668442ebe..b089e5283307 100644
--- a/drivers/gpu/drm/i915/intel_guc_submission.c
+++ b/drivers/gpu/drm/i915/intel_guc_submission.c
@@ -192,7 +192,7 @@  static struct guc_doorbell_info *__get_doorbell(struct intel_guc_client *client)
 	return client->vaddr + client->doorbell_offset;
 }
 
-static void __create_doorbell(struct intel_guc_client *client)
+static void __init_doorbell(struct intel_guc_client *client)
 {
 	struct guc_doorbell_info *doorbell;
 
@@ -201,7 +201,7 @@  static void __create_doorbell(struct intel_guc_client *client)
 	doorbell->cookie = 0;
 }
 
-static void __destroy_doorbell(struct intel_guc_client *client)
+static void __fini_doorbell(struct intel_guc_client *client)
 {
 	struct drm_i915_private *dev_priv = guc_to_i915(client->guc);
 	struct guc_doorbell_info *doorbell;
@@ -226,11 +226,11 @@  static int create_doorbell(struct intel_guc_client *client)
 		return -ENODEV; /* internal setup error, should never happen */
 
 	__update_doorbell_desc(client, client->doorbell_id);
-	__create_doorbell(client);
+	__init_doorbell(client);
 
 	ret = __guc_allocate_doorbell(client->guc, client->stage_id);
 	if (ret) {
-		__destroy_doorbell(client);
+		__fini_doorbell(client);
 		__update_doorbell_desc(client, GUC_DOORBELL_INVALID);
 		DRM_DEBUG_DRIVER("Couldn't create client %u doorbell: %d\n",
 				 client->stage_id, ret);
@@ -246,7 +246,7 @@  static int destroy_doorbell(struct intel_guc_client *client)
 
 	GEM_BUG_ON(!has_doorbell(client));
 
-	__destroy_doorbell(client);
+	__fini_doorbell(client);
 	ret = __guc_deallocate_doorbell(client->guc, client->stage_id);
 	if (ret)
 		DRM_ERROR("Couldn't destroy client %u doorbell: %d\n",
@@ -1087,7 +1087,7 @@  static void __guc_client_disable(struct intel_guc_client *client)
 	if (intel_guc_is_alive(client->guc))
 		destroy_doorbell(client);
 	else
-		__destroy_doorbell(client);
+		__fini_doorbell(client);
 
 	guc_stage_desc_fini(client);
 	guc_proc_desc_fini(client);
diff --git a/drivers/gpu/drm/i915/selftests/intel_guc.c b/drivers/gpu/drm/i915/selftests/intel_guc.c
index bf27162fb327..c3b6f8d02aa0 100644
--- a/drivers/gpu/drm/i915/selftests/intel_guc.c
+++ b/drivers/gpu/drm/i915/selftests/intel_guc.c
@@ -233,7 +233,7 @@  static int igt_guc_clients(void *args)
 
 	unreserve_doorbell(guc->execbuf_client);
 
-	__create_doorbell(guc->execbuf_client);
+	__init_doorbell(guc->execbuf_client);
 	err = __guc_allocate_doorbell(guc, guc->execbuf_client->stage_id);
 	if (err != -EIO) {
 		pr_err("unexpected (err = %d)", err);
@@ -248,7 +248,7 @@  static int igt_guc_clients(void *args)
 
 out_db:
 	/* clean after test */
-	__destroy_doorbell(guc->execbuf_client);
+	__fini_doorbell(guc->execbuf_client);
 	err = reserve_doorbell(guc->execbuf_client);
 	if (err) {
 		pr_err("failed to reserve back the doorbell back\n");