Commit 676da6ba authored by Lucas De Marchi's avatar Lucas De Marchi
Browse files

drm/xe: Allow to inject error in early probe



Allow to test if driver behaves correctly when xe_pcode_probe_early()
fails. Note that this is not sufficient for testing survivability mode
as it's still required to read the hw to check for errors, which doesn't
happen on an injected failure.

To complete the early probe coverage, allow injection in the other
functions as well: xe_mmio_probe_early() and xe_device_probe_early().

Reviewed-by: default avatarFrancois Dugast <francois.dugast@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20250314-fix-survivability-v5-3-fdb3559ea965@intel.com


Signed-off-by: default avatarLucas De Marchi <lucas.demarchi@intel.com>
parent 14efa739
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -735,6 +735,7 @@ int xe_device_probe_early(struct xe_device *xe)

	return 0;
}
ALLOW_ERROR_INJECTION(xe_device_probe_early, ERRNO); /* See xe_pci_probe() */

static int probe_has_flat_ccs(struct xe_device *xe)
{
+1 −0
Original line number Diff line number Diff line
@@ -138,6 +138,7 @@ int xe_mmio_probe_early(struct xe_device *xe)

	return devm_add_action_or_reset(xe->drm.dev, mmio_fini, xe);
}
ALLOW_ERROR_INJECTION(xe_mmio_probe_early, ERRNO); /* See xe_pci_probe() */

/**
 * xe_mmio_init() - Initialize an MMIO instance
+2 −0
Original line number Diff line number Diff line
@@ -7,6 +7,7 @@

#include <linux/delay.h>
#include <linux/errno.h>
#include <linux/error-injection.h>

#include <drm/drm_managed.h>

@@ -323,3 +324,4 @@ int xe_pcode_probe_early(struct xe_device *xe)
{
	return xe_pcode_ready(xe, false);
}
ALLOW_ERROR_INJECTION(xe_pcode_probe_early, ERRNO); /* See xe_pci_probe */