Commit f0c4fc41 authored by Michal Wajdeczko's avatar Michal Wajdeczko Committed by Tvrtko Ursulin

drm/i915/guc: Update GuC messages in intel_guc_submission.c

Use new macros to have common prefix that also include GT#.

v2: improve few existing messages
Signed-off-by: default avatarMichal Wajdeczko <michal.wajdeczko@intel.com>
Cc: John Harrison <John.C.Harrison@Intel.com>
Reviewed-by: default avatarJohn Harrison <John.C.Harrison@Intel.com>
Signed-off-by: default avatarTvrtko Ursulin <tvrtko.ursulin@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20230128195907.1837-8-michal.wajdeczko@intel.com
parent 357d420e
...@@ -27,6 +27,7 @@ ...@@ -27,6 +27,7 @@
#include "intel_guc_ads.h" #include "intel_guc_ads.h"
#include "intel_guc_capture.h" #include "intel_guc_capture.h"
#include "intel_guc_print.h"
#include "intel_guc_submission.h" #include "intel_guc_submission.h"
#include "i915_drv.h" #include "i915_drv.h"
...@@ -1443,8 +1444,7 @@ static void guc_init_engine_stats(struct intel_guc *guc) ...@@ -1443,8 +1444,7 @@ static void guc_init_engine_stats(struct intel_guc *guc)
int ret = guc_action_enable_usage_stats(guc); int ret = guc_action_enable_usage_stats(guc);
if (ret) if (ret)
drm_err(&gt->i915->drm, guc_err(guc, "Failed to enable usage stats: %pe\n", ERR_PTR(ret));
"Failed to enable usage stats: %d!\n", ret);
} }
} }
...@@ -3586,8 +3586,7 @@ static int guc_request_alloc(struct i915_request *rq) ...@@ -3586,8 +3586,7 @@ static int guc_request_alloc(struct i915_request *rq)
intel_context_sched_disable_unpin(ce); intel_context_sched_disable_unpin(ce);
else if (intel_context_is_closed(ce)) else if (intel_context_is_closed(ce))
if (wait_for(context_close_done(ce), 1500)) if (wait_for(context_close_done(ce), 1500))
drm_warn(&guc_to_gt(guc)->i915->drm, guc_warn(guc, "timed out waiting on context sched close before realloc\n");
"timed out waiting on context sched close before realloc\n");
/* /*
* Call pin_guc_id here rather than in the pinning step as with * Call pin_guc_id here rather than in the pinning step as with
* dma_resv, contexts can be repeatedly pinned / unpinned trashing the * dma_resv, contexts can be repeatedly pinned / unpinned trashing the
...@@ -4350,11 +4349,14 @@ static int __guc_action_set_scheduling_policies(struct intel_guc *guc, ...@@ -4350,11 +4349,14 @@ static int __guc_action_set_scheduling_policies(struct intel_guc *guc,
ret = intel_guc_send(guc, (u32 *)&policy->h2g, ret = intel_guc_send(guc, (u32 *)&policy->h2g,
__guc_scheduling_policy_action_size(policy)); __guc_scheduling_policy_action_size(policy));
if (ret < 0) if (ret < 0) {
guc_probe_error(guc, "Failed to configure global scheduling policies: %pe!\n",
ERR_PTR(ret));
return ret; return ret;
}
if (ret != policy->count) { if (ret != policy->count) {
drm_warn(&guc_to_gt(guc)->i915->drm, "GuC global scheduler policy processed %d of %d KLVs!", guc_warn(guc, "global scheduler policy processed %d of %d KLVs!",
ret, policy->count); ret, policy->count);
if (ret > policy->count) if (ret > policy->count)
return -EPROTO; return -EPROTO;
...@@ -4368,7 +4370,7 @@ static int guc_init_global_schedule_policy(struct intel_guc *guc) ...@@ -4368,7 +4370,7 @@ static int guc_init_global_schedule_policy(struct intel_guc *guc)
struct scheduling_policy policy; struct scheduling_policy policy;
struct intel_gt *gt = guc_to_gt(guc); struct intel_gt *gt = guc_to_gt(guc);
intel_wakeref_t wakeref; intel_wakeref_t wakeref;
int ret = 0; int ret;
if (GUC_SUBMIT_VER(guc) < MAKE_GUC_VER(1, 1, 0)) if (GUC_SUBMIT_VER(guc) < MAKE_GUC_VER(1, 1, 0))
return 0; return 0;
...@@ -4386,10 +4388,6 @@ static int guc_init_global_schedule_policy(struct intel_guc *guc) ...@@ -4386,10 +4388,6 @@ static int guc_init_global_schedule_policy(struct intel_guc *guc)
yield, ARRAY_SIZE(yield)); yield, ARRAY_SIZE(yield));
ret = __guc_action_set_scheduling_policies(guc, &policy); ret = __guc_action_set_scheduling_policies(guc, &policy);
if (ret)
i915_probe_error(gt->i915,
"Failed to configure global scheduling policies: %pe!\n",
ERR_PTR(ret));
} }
return ret; return ret;
...@@ -4488,21 +4486,18 @@ g2h_context_lookup(struct intel_guc *guc, u32 ctx_id) ...@@ -4488,21 +4486,18 @@ g2h_context_lookup(struct intel_guc *guc, u32 ctx_id)
struct intel_context *ce; struct intel_context *ce;
if (unlikely(ctx_id >= GUC_MAX_CONTEXT_ID)) { if (unlikely(ctx_id >= GUC_MAX_CONTEXT_ID)) {
drm_err(&guc_to_gt(guc)->i915->drm, guc_err(guc, "Invalid ctx_id %u\n", ctx_id);
"Invalid ctx_id %u\n", ctx_id);
return NULL; return NULL;
} }
ce = __get_context(guc, ctx_id); ce = __get_context(guc, ctx_id);
if (unlikely(!ce)) { if (unlikely(!ce)) {
drm_err(&guc_to_gt(guc)->i915->drm, guc_err(guc, "Context is NULL, ctx_id %u\n", ctx_id);
"Context is NULL, ctx_id %u\n", ctx_id);
return NULL; return NULL;
} }
if (unlikely(intel_context_is_child(ce))) { if (unlikely(intel_context_is_child(ce))) {
drm_err(&guc_to_gt(guc)->i915->drm, guc_err(guc, "Context is child, ctx_id %u\n", ctx_id);
"Context is child, ctx_id %u\n", ctx_id);
return NULL; return NULL;
} }
...@@ -4517,7 +4512,7 @@ int intel_guc_deregister_done_process_msg(struct intel_guc *guc, ...@@ -4517,7 +4512,7 @@ int intel_guc_deregister_done_process_msg(struct intel_guc *guc,
u32 ctx_id; u32 ctx_id;
if (unlikely(len < 1)) { if (unlikely(len < 1)) {
drm_err(&guc_to_gt(guc)->i915->drm, "Invalid length %u\n", len); guc_err(guc, "Invalid length %u\n", len);
return -EPROTO; return -EPROTO;
} }
ctx_id = msg[0]; ctx_id = msg[0];
...@@ -4569,7 +4564,7 @@ int intel_guc_sched_done_process_msg(struct intel_guc *guc, ...@@ -4569,7 +4564,7 @@ int intel_guc_sched_done_process_msg(struct intel_guc *guc,
u32 ctx_id; u32 ctx_id;
if (unlikely(len < 2)) { if (unlikely(len < 2)) {
drm_err(&guc_to_gt(guc)->i915->drm, "Invalid length %u\n", len); guc_err(guc, "Invalid length %u\n", len);
return -EPROTO; return -EPROTO;
} }
ctx_id = msg[0]; ctx_id = msg[0];
...@@ -4581,8 +4576,7 @@ int intel_guc_sched_done_process_msg(struct intel_guc *guc, ...@@ -4581,8 +4576,7 @@ int intel_guc_sched_done_process_msg(struct intel_guc *guc,
if (unlikely(context_destroyed(ce) || if (unlikely(context_destroyed(ce) ||
(!context_pending_enable(ce) && (!context_pending_enable(ce) &&
!context_pending_disable(ce)))) { !context_pending_disable(ce)))) {
drm_err(&guc_to_gt(guc)->i915->drm, guc_err(guc, "Bad context sched_state 0x%x, ctx_id %u\n",
"Bad context sched_state 0x%x, ctx_id %u\n",
ce->guc_state.sched_state, ctx_id); ce->guc_state.sched_state, ctx_id);
return -EPROTO; return -EPROTO;
} }
...@@ -4674,8 +4668,7 @@ static void guc_handle_context_reset(struct intel_guc *guc, ...@@ -4674,8 +4668,7 @@ static void guc_handle_context_reset(struct intel_guc *guc,
capture_error_state(guc, ce); capture_error_state(guc, ce);
guc_context_replay(ce); guc_context_replay(ce);
} else { } else {
drm_info(&guc_to_gt(guc)->i915->drm, guc_info(guc, "Ignoring context reset notification of exiting context 0x%04X on %s",
"Ignoring context reset notification of exiting context 0x%04X on %s",
ce->guc_id.id, ce->engine->name); ce->guc_id.id, ce->engine->name);
} }
} }
...@@ -4688,7 +4681,7 @@ int intel_guc_context_reset_process_msg(struct intel_guc *guc, ...@@ -4688,7 +4681,7 @@ int intel_guc_context_reset_process_msg(struct intel_guc *guc,
int ctx_id; int ctx_id;
if (unlikely(len != 1)) { if (unlikely(len != 1)) {
drm_err(&guc_to_gt(guc)->i915->drm, "Invalid length %u", len); guc_err(guc, "Invalid length %u", len);
return -EPROTO; return -EPROTO;
} }
...@@ -4721,13 +4714,13 @@ int intel_guc_error_capture_process_msg(struct intel_guc *guc, ...@@ -4721,13 +4714,13 @@ int intel_guc_error_capture_process_msg(struct intel_guc *guc,
u32 status; u32 status;
if (unlikely(len != 1)) { if (unlikely(len != 1)) {
drm_dbg(&guc_to_gt(guc)->i915->drm, "Invalid length %u", len); guc_dbg(guc, "Invalid length %u", len);
return -EPROTO; return -EPROTO;
} }
status = msg[0] & INTEL_GUC_STATE_CAPTURE_EVENT_STATUS_MASK; status = msg[0] & INTEL_GUC_STATE_CAPTURE_EVENT_STATUS_MASK;
if (status == INTEL_GUC_STATE_CAPTURE_EVENT_STATUS_NOSPACE) if (status == INTEL_GUC_STATE_CAPTURE_EVENT_STATUS_NOSPACE)
drm_warn(&guc_to_gt(guc)->i915->drm, "G2H-Error capture no space"); guc_warn(guc, "No space for error capture");
intel_guc_capture_process(guc); intel_guc_capture_process(guc);
...@@ -4783,13 +4776,12 @@ int intel_guc_engine_failure_process_msg(struct intel_guc *guc, ...@@ -4783,13 +4776,12 @@ int intel_guc_engine_failure_process_msg(struct intel_guc *guc,
const u32 *msg, u32 len) const u32 *msg, u32 len)
{ {
struct intel_engine_cs *engine; struct intel_engine_cs *engine;
struct intel_gt *gt = guc_to_gt(guc);
u8 guc_class, instance; u8 guc_class, instance;
u32 reason; u32 reason;
unsigned long flags; unsigned long flags;
if (unlikely(len != 3)) { if (unlikely(len != 3)) {
drm_err(&gt->i915->drm, "Invalid length %u", len); guc_err(guc, "Invalid length %u", len);
return -EPROTO; return -EPROTO;
} }
...@@ -4799,8 +4791,7 @@ int intel_guc_engine_failure_process_msg(struct intel_guc *guc, ...@@ -4799,8 +4791,7 @@ int intel_guc_engine_failure_process_msg(struct intel_guc *guc,
engine = intel_guc_lookup_engine(guc, guc_class, instance); engine = intel_guc_lookup_engine(guc, guc_class, instance);
if (unlikely(!engine)) { if (unlikely(!engine)) {
drm_err(&gt->i915->drm, guc_err(guc, "Invalid engine %d:%d", guc_class, instance);
"Invalid engine %d:%d", guc_class, instance);
return -EPROTO; return -EPROTO;
} }
...@@ -4808,7 +4799,7 @@ int intel_guc_engine_failure_process_msg(struct intel_guc *guc, ...@@ -4808,7 +4799,7 @@ int intel_guc_engine_failure_process_msg(struct intel_guc *guc,
* This is an unexpected failure of a hardware feature. So, log a real * This is an unexpected failure of a hardware feature. So, log a real
* error message not just the informational that comes with the reset. * error message not just the informational that comes with the reset.
*/ */
drm_err(&gt->i915->drm, "GuC engine reset request failed on %d:%d (%s) because 0x%08X", guc_err(guc, "Engine reset failed on %d:%d (%s) because 0x%08X",
guc_class, instance, engine->name, reason); guc_class, instance, engine->name, reason);
spin_lock_irqsave(&guc->submission_state.lock, flags); spin_lock_irqsave(&guc->submission_state.lock, flags);
...@@ -5371,7 +5362,7 @@ guc_create_virtual(struct intel_engine_cs **siblings, unsigned int count, ...@@ -5371,7 +5362,7 @@ guc_create_virtual(struct intel_engine_cs **siblings, unsigned int count,
GEM_BUG_ON(!is_power_of_2(sibling->mask)); GEM_BUG_ON(!is_power_of_2(sibling->mask));
if (sibling->mask & ve->base.mask) { if (sibling->mask & ve->base.mask) {
DRM_DEBUG("duplicate %s entry in load balancer\n", guc_dbg(guc, "duplicate %s entry in load balancer\n",
sibling->name); sibling->name);
err = -EINVAL; err = -EINVAL;
goto err_put; goto err_put;
...@@ -5381,7 +5372,7 @@ guc_create_virtual(struct intel_engine_cs **siblings, unsigned int count, ...@@ -5381,7 +5372,7 @@ guc_create_virtual(struct intel_engine_cs **siblings, unsigned int count,
ve->base.logical_mask |= sibling->logical_mask; ve->base.logical_mask |= sibling->logical_mask;
if (n != 0 && ve->base.class != sibling->class) { if (n != 0 && ve->base.class != sibling->class) {
DRM_DEBUG("invalid mixing of engine class, sibling %d, already %d\n", guc_dbg(guc, "invalid mixing of engine class, sibling %d, already %d\n",
sibling->class, ve->base.class); sibling->class, ve->base.class);
err = -EINVAL; err = -EINVAL;
goto err_put; goto err_put;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment