Commit fa4b8b3e authored by Matthew Brost's avatar Matthew Brost
Browse files

drm/print: Add drm_coredump_printer_is_full



Add drm_coredump_printer_is_full which indicates if a drm printer's
output is full. Useful to short circuit coredump printing once printer's
output is full.

v2:
 - s/drm_printer_is_full/drm_coredump_printer_is_full (Jani)
v3:
 - Bail if not a coredump printer (Michal)

Signed-off-by: default avatarMatthew Brost <matthew.brost@intel.com>
Reviewed-by: default avatarJonathan Cavitt <jonathan.cavitt@intel.com>
Link: https://lore.kernel.org/r/20250423171725.597955-4-matthew.brost@intel.com
parent 270172f6
Loading
Loading
Loading
Loading
+20 −0
Original line number Diff line number Diff line
@@ -344,6 +344,26 @@ drm_coredump_printer(struct drm_print_iterator *iter)
	return p;
}

/**
 * drm_coredump_printer_is_full() - DRM coredump printer output is full
 * @p: DRM coredump printer
 *
 * DRM printer output is full, useful to short circuit coredump printing once
 * printer is full.
 *
 * RETURNS:
 * True if DRM coredump printer output buffer is full, False otherwise
 */
static inline bool drm_coredump_printer_is_full(struct drm_printer *p)
{
	struct drm_print_iterator *iterator = p->arg;

	if (p->printfn != __drm_printfn_coredump)
		return true;

	return !iterator->remain;
}

/**
 * drm_seq_file_printer - construct a &drm_printer that outputs to &seq_file
 * @f:  the &struct seq_file to output to