Lines Matching refs:relay

218  * Sub buffer switch callback. Called whenever relay has to switch to a new
219 * sub buffer, relay stays on the same sub buffer if 0 is returned.
226 * Use no-overwrite mode by default, where relay will stop accepting
228 * There is no strict synchronization enforced by relay between Consumer
242 * file_create() callback. Creates relay file in debugfs.
253 * This to enable the use of a single buffer for the relay channel and
272 * file_remove() default callback. Removes relay file in debugfs.
280 /* relay channel callbacks */
296 relay_reserve(log->relay.channel, log->vma->obj->base.size -
300 relay_flush(log->relay.channel);
314 return relay_reserve(log->relay.channel, 0);
383 mutex_lock(&log->relay.lock);
401 log->relay.full_count++;
410 /* For relay logging, we exclude error state capture */
476 mutex_unlock(&log->relay.lock);
482 container_of(work, struct intel_guc_log, relay.flush_work);
489 lockdep_assert_held(&log->relay.lock);
499 log->relay.buf_in_use = true;
506 lockdep_assert_held(&log->relay.lock);
509 log->relay.buf_in_use = false;
514 mutex_init(&log->relay.lock);
515 INIT_WORK(&log->relay.flush_work, copy_debug_logs_work);
516 log->relay.started = false;
527 lockdep_assert_held(&log->relay.lock);
539 * latency, for consuming the logs from relay. Also doesn't take
552 guc_err(guc, "Couldn't create relay channel for logging\n");
559 log->relay.channel = guc_log_relay_chan;
566 lockdep_assert_held(&log->relay.lock);
568 relay_close(log->relay.channel);
569 log->relay.channel = NULL;
715 mutex_lock(&log->relay.lock);
740 mutex_unlock(&log->relay.lock);
747 mutex_unlock(&log->relay.lock);
754 if (log->relay.started)
760 * flush on relay enabling, since GuC only notifies us once.
762 queue_work(system_highpri_wq, &log->relay.flush_work);
764 log->relay.started = true;
774 if (!log->relay.started)
781 flush_work(&log->relay.flush_work);
791 * Stops the relay log. Called from intel_guc_log_relay_close(), so no
800 if (!log->relay.started)
805 flush_work(&log->relay.flush_work);
807 log->relay.started = false;
814 mutex_lock(&log->relay.lock);
818 mutex_unlock(&log->relay.lock);
823 if (log->relay.started)
824 queue_work(system_highpri_wq, &log->relay.flush_work);
845 * intel_guc_log_info - dump information about GuC log relay
856 drm_puts(p, "GuC log relay not created\n");
862 drm_printf(p, "\tRelay full count: %u\n", log->relay.full_count);