Commit 580329a3 authored by Alan Previn's avatar Alan Previn Committed by Lucas De Marchi
Browse files

drm/i915/guc: Update GuC-log relay function names



For the sake of better code readibility, change previous
relay logging function names with "capture_logs" to
"copy_debug_logs" to differentiate from error capture
functions that will use a different region of the same buffer.

Signed-off-by: default avatarAlan Previn <alan.previn.teres.alexis@intel.com>
Reviewed-by: default avatarMatthew Brost <matthew.brost@intel.com>
Signed-off-by: default avatarLucas De Marchi <lucas.demarchi@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20220321164527.2500062-8-alan.previn.teres.alexis@intel.com
parent bd1a78b0
Loading
Loading
Loading
Loading
+19 −16
Original line number Diff line number Diff line
@@ -11,7 +11,7 @@
#include "i915_memcpy.h"
#include "intel_guc_log.h"

static void guc_log_capture_logs(struct intel_guc_log *log);
static void guc_log_copy_debuglogs_for_relay(struct intel_guc_log *log);

/**
 * DOC: GuC firmware log
@@ -197,7 +197,7 @@ static unsigned int guc_get_log_buffer_size(enum guc_log_buffer_type type)
	return 0;
}

static void guc_read_update_log_buffer(struct intel_guc_log *log)
static void _guc_log_copy_debuglogs_for_relay(struct intel_guc_log *log)
{
	unsigned int buffer_size, read_offset, write_offset, bytes_to_copy, full_cnt;
	struct guc_log_buffer_state *log_buf_state, *log_buf_snapshot_state;
@@ -222,7 +222,7 @@ static void guc_read_update_log_buffer(struct intel_guc_log *log)
		 * Used rate limited to avoid deluge of messages, logs might be
		 * getting consumed by User at a slow rate.
		 */
		DRM_ERROR_RATELIMITED("no sub-buffer to capture logs\n");
		DRM_ERROR_RATELIMITED("no sub-buffer to copy general logs\n");
		log->relay.full_count++;

		goto out_unlock;
@@ -300,15 +300,15 @@ static void guc_read_update_log_buffer(struct intel_guc_log *log)
	mutex_unlock(&log->relay.lock);
}

static void capture_logs_work(struct work_struct *work)
static void copy_debug_logs_work(struct work_struct *work)
{
	struct intel_guc_log *log =
		container_of(work, struct intel_guc_log, relay.flush_work);

	guc_log_capture_logs(log);
	guc_log_copy_debuglogs_for_relay(log);
}

static int guc_log_map(struct intel_guc_log *log)
static int guc_log_relay_map(struct intel_guc_log *log)
{
	void *vaddr;

@@ -331,7 +331,7 @@ static int guc_log_map(struct intel_guc_log *log)
	return 0;
}

static void guc_log_unmap(struct intel_guc_log *log)
static void guc_log_relay_unmap(struct intel_guc_log *log)
{
	lockdep_assert_held(&log->relay.lock);

@@ -342,7 +342,7 @@ static void guc_log_unmap(struct intel_guc_log *log)
void intel_guc_log_init_early(struct intel_guc_log *log)
{
	mutex_init(&log->relay.lock);
	INIT_WORK(&log->relay.flush_work, capture_logs_work);
	INIT_WORK(&log->relay.flush_work, copy_debug_logs_work);
	log->relay.started = false;
}

@@ -357,8 +357,11 @@ static int guc_log_relay_create(struct intel_guc_log *log)
	lockdep_assert_held(&log->relay.lock);
	GEM_BUG_ON(!log->vma);

	 /* Keep the size of sub buffers same as shared log buffer */
	subbuf_size = log->vma->size;
	 /*
	  * Keep the size of sub buffers same as shared log buffer
	  * but GuC log-events excludes the error-state-capture logs
	  */
	subbuf_size = log->vma->size - CAPTURE_BUFFER_SIZE;

	/*
	 * Store up to 8 snapshots, which is large enough to buffer sufficient
@@ -393,13 +396,13 @@ static void guc_log_relay_destroy(struct intel_guc_log *log)
	log->relay.channel = NULL;
}

static void guc_log_capture_logs(struct intel_guc_log *log)
static void guc_log_copy_debuglogs_for_relay(struct intel_guc_log *log)
{
	struct intel_guc *guc = log_to_guc(log);
	struct drm_i915_private *dev_priv = guc_to_gt(guc)->i915;
	intel_wakeref_t wakeref;

	guc_read_update_log_buffer(log);
	_guc_log_copy_debuglogs_for_relay(log);

	/*
	 * Generally device is expected to be active only at this
@@ -565,7 +568,7 @@ int intel_guc_log_relay_open(struct intel_guc_log *log)
	if (ret)
		goto out_unlock;

	ret = guc_log_map(log);
	ret = guc_log_relay_map(log);
	if (ret)
		goto out_relay;

@@ -615,8 +618,8 @@ void intel_guc_log_relay_flush(struct intel_guc_log *log)
	with_intel_runtime_pm(guc_to_gt(guc)->uncore->rpm, wakeref)
		guc_action_flush_log(guc);

	/* GuC would have updated log buffer by now, so capture it */
	guc_log_capture_logs(log);
	/* GuC would have updated log buffer by now, so copy it */
	guc_log_copy_debuglogs_for_relay(log);
}

/*
@@ -645,7 +648,7 @@ void intel_guc_log_relay_close(struct intel_guc_log *log)

	mutex_lock(&log->relay.lock);
	GEM_BUG_ON(!intel_guc_log_relay_created(log));
	guc_log_unmap(log);
	guc_log_relay_unmap(log);
	guc_log_relay_destroy(log);
	mutex_unlock(&log->relay.lock);
}