Intel-XE Archive on lore.kernel.org
 help / color / mirror / Atom feed
* [Intel-xe] [PATCH v5 0/4] Supporting RAS on XE
@ 2023-08-23  8:58 Himal Prasad Ghimiray
  2023-08-23  8:58 ` [Intel-xe] [PATCH v5 1/4] drm/xe: Handle errors from various components Himal Prasad Ghimiray
                   ` (8 more replies)
  0 siblings, 9 replies; 21+ messages in thread
From: Himal Prasad Ghimiray @ 2023-08-23  8:58 UTC (permalink / raw)
  To: intel-xe

Our platforms support Reliability, Availability and Serviceability(RAS).
In case of hardware errors, our hardwares provides the causes via
sending interrupt or pcie errors. The fatal errors are propogated 
as pci errors and non fatal errors as MSI. This series focuses on 
loging and updating counters for these errors, which will be  helpful to avoid, 
detect and repair hardware faults.

This [1] series proposes mechanism to expose this counters to userspace.
[1]: https://patchwork.freedesktop.org/series/118435/

The error counters  exposed by KMD will be used by L0/sysman 
They will be categorized to specific category of error in sysman:
https://spec.oneapi.io/level-zero/latest/sysman/api.html#ras

Current version covers the error propagation at tile level and possible 
causes from GT subsystem. Future patches will cover the possible causes
from other subsystems (for example SOC, GSC/CSC).

We have very limited capabilities for error injection to validate the
code flow.
Output of L3 fabric fatal injection from PVC is:
xe 0000:8c:00.0: [drm] *ERROR* [Hardware Error]: TILE0 detected GT FATAL error bit[0] is set
xe 0000:8c:00.0: [drm] *ERROR* [Hardware Error]: GT0 detected L3 FABRIC FATAL error. ERR_VECT_GT_FATAL[7]:0x00000087

v2
- Use different headers for error registers. (Nikula)
- Correctable errors shouldn't be considered as dmesg errors (Matt)
- Limit series to HW errors.(Aravind)

v3
- Rebase

v4
- Use xe_regs.h only for registers, move enums out of it.
- Make sure global data/structures are immutable.
- Avoid adding custom error logging macro's.
- Redesign the registers error name and counter index
structures for maintainability. (Nikula)

v5
- move struct hw_err_regs out of CONFIG_DRM_XE_DISPLAY.

Himal Prasad Ghimiray (4):
  drm/xe: Handle errors from various components.
  drm/xe: Log and count the GT hardware errors.
  drm/xe: Support GT hardware error reporting for PVC.
  drm/xe: Process fatal hardware errors.

 drivers/gpu/drm/xe/Makefile                  |   1 +
 drivers/gpu/drm/xe/regs/xe_gt_error_regs.h   |  29 ++
 drivers/gpu/drm/xe/regs/xe_regs.h            |   5 +-
 drivers/gpu/drm/xe/regs/xe_tile_error_regs.h |  15 +
 drivers/gpu/drm/xe/xe_device_types.h         |  12 +
 drivers/gpu/drm/xe/xe_gt_types.h             |   7 +
 drivers/gpu/drm/xe/xe_hw_error.c             | 454 +++++++++++++++++++
 drivers/gpu/drm/xe/xe_hw_error.h             | 109 +++++
 drivers/gpu/drm/xe/xe_irq.c                  |   3 +
 9 files changed, 634 insertions(+), 1 deletion(-)
 create mode 100644 drivers/gpu/drm/xe/regs/xe_gt_error_regs.h
 create mode 100644 drivers/gpu/drm/xe/regs/xe_tile_error_regs.h
 create mode 100644 drivers/gpu/drm/xe/xe_hw_error.c
 create mode 100644 drivers/gpu/drm/xe/xe_hw_error.h

-- 
2.25.1


^ permalink raw reply	[flat|nested] 21+ messages in thread

* [Intel-xe] [PATCH v5 1/4] drm/xe: Handle errors from various components.
  2023-08-23  8:58 [Intel-xe] [PATCH v5 0/4] Supporting RAS on XE Himal Prasad Ghimiray
@ 2023-08-23  8:58 ` Himal Prasad Ghimiray
  2023-09-26  4:20   ` Aravind Iddamsetty
  2023-10-04 12:07   ` Aravind Iddamsetty
  2023-08-23  8:58 ` [Intel-xe] [PATCH v5 2/4] drm/xe: Log and count the GT hardware errors Himal Prasad Ghimiray
                   ` (7 subsequent siblings)
  8 siblings, 2 replies; 21+ messages in thread
From: Himal Prasad Ghimiray @ 2023-08-23  8:58 UTC (permalink / raw)
  To: intel-xe; +Cc: Jani Nikula, Joonas Lahtinen, Rodrigo Vivi, Matt Roper

The GFX device can generate numbers of classes of error under the new
infrastructure: correctable, non-fatal, and fatal errors.

The non-fatal and fatal error classes distinguish between levels of
severity for uncorrectable errors. Driver will only handle logging
of errors and updating counters from various components within the
graphics device. Anything more will be handled at system level.

For errors that will route as interrupts, three bits in the Master
Interrupt Register will be used to convey the class of error.

For each class of error: Determine source of error (IP block) by reading
the Device Error Source Register (RW1C) that
corresponds to the class of error being serviced.

Bspec: 50875, 53073, 53074, 53075

Cc: Rodrigo Vivi <rodrigo.vivi@intel.com>
Cc: Aravind Iddamsetty <aravind.iddamsetty@intel.com>
Cc: Matthew Brost <matthew.brost@intel.com>
Cc: Matt Roper <matthew.d.roper@intel.com>
Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
Cc: Jani Nikula <jani.nikula@intel.com>
Signed-off-by: Himal Prasad Ghimiray <himal.prasad.ghimiray@intel.com>
---
 drivers/gpu/drm/xe/Makefile                  |   1 +
 drivers/gpu/drm/xe/regs/xe_regs.h            |   2 +-
 drivers/gpu/drm/xe/regs/xe_tile_error_regs.h |  15 ++
 drivers/gpu/drm/xe/xe_device_types.h         |  11 +
 drivers/gpu/drm/xe/xe_hw_error.c             | 211 +++++++++++++++++++
 drivers/gpu/drm/xe/xe_hw_error.h             |  64 ++++++
 drivers/gpu/drm/xe/xe_irq.c                  |   3 +
 7 files changed, 306 insertions(+), 1 deletion(-)
 create mode 100644 drivers/gpu/drm/xe/regs/xe_tile_error_regs.h
 create mode 100644 drivers/gpu/drm/xe/xe_hw_error.c
 create mode 100644 drivers/gpu/drm/xe/xe_hw_error.h

diff --git a/drivers/gpu/drm/xe/Makefile b/drivers/gpu/drm/xe/Makefile
index 550cdfed729e..6290c8ce0e84 100644
--- a/drivers/gpu/drm/xe/Makefile
+++ b/drivers/gpu/drm/xe/Makefile
@@ -75,6 +75,7 @@ xe-y += xe_bb.o \
 	xe_guc_submit.o \
 	xe_hw_engine.o \
 	xe_hw_engine_class_sysfs.o \
+	xe_hw_error.o \
 	xe_hw_fence.o \
 	xe_huc.o \
 	xe_huc_debugfs.o \
diff --git a/drivers/gpu/drm/xe/regs/xe_regs.h b/drivers/gpu/drm/xe/regs/xe_regs.h
index 39d7b0740bf0..e223975a5acf 100644
--- a/drivers/gpu/drm/xe/regs/xe_regs.h
+++ b/drivers/gpu/drm/xe/regs/xe_regs.h
@@ -88,7 +88,7 @@
 #define   GU_MISC_IRQ				REG_BIT(29)
 #define   DISPLAY_IRQ				REG_BIT(16)
 #define   GT_DW_IRQ(x)				REG_BIT(x)
+#define   XE_ERROR_IRQ(x)			REG_BIT(26 + (x))
 
 #define PVC_RP_STATE_CAP			XE_REG(0x281014)
-
 #endif
diff --git a/drivers/gpu/drm/xe/regs/xe_tile_error_regs.h b/drivers/gpu/drm/xe/regs/xe_tile_error_regs.h
new file mode 100644
index 000000000000..db78d6687213
--- /dev/null
+++ b/drivers/gpu/drm/xe/regs/xe_tile_error_regs.h
@@ -0,0 +1,15 @@
+/* SPDX-License-Identifier: MIT */
+/*
+ * Copyright © 2023 Intel Corporation
+ */
+#ifndef XE_TILE_ERROR_REGS_H_
+#define XE_TILE_ERROR_REGS_H_
+
+#include <linux/stddef.h>
+
+#define _DEV_ERR_STAT_NONFATAL                         0x100178
+#define _DEV_ERR_STAT_CORRECTABLE                      0x10017c
+#define DEV_ERR_STAT_REG(x)                            XE_REG(_PICK_EVEN((x), \
+								_DEV_ERR_STAT_CORRECTABLE, \
+								_DEV_ERR_STAT_NONFATAL))
+#endif
diff --git a/drivers/gpu/drm/xe/xe_device_types.h b/drivers/gpu/drm/xe/xe_device_types.h
index dbb732e14606..4e4184977709 100644
--- a/drivers/gpu/drm/xe/xe_device_types.h
+++ b/drivers/gpu/drm/xe/xe_device_types.h
@@ -14,6 +14,7 @@
 
 #include "xe_devcoredump_types.h"
 #include "xe_gt_types.h"
+#include "xe_hw_error.h"
 #include "xe_platform_types.h"
 #include "xe_step_types.h"
 
@@ -172,6 +173,11 @@ struct xe_tile {
 
 	/** @sysfs: sysfs' kobj used by xe_tile_sysfs */
 	struct kobject *sysfs;
+
+	/** @tile_hw_errors: hardware errors reported for the tile */
+	struct tile_hw_errors {
+		unsigned long count[XE_TILE_HW_ERROR_MAX];
+	} errors;
 };
 
 /**
@@ -359,6 +365,11 @@ struct xe_device {
 	 */
 	struct task_struct *pm_callback_task;
 
+	/** @hardware_errors_regs: list of hw error regs*/
+	struct hardware_errors_regs {
+		const struct err_msg_cntr_pair *dev_err_stat[HARDWARE_ERROR_MAX];
+	} hw_err_regs;
+
 	/* private: */
 
 #if IS_ENABLED(CONFIG_DRM_XE_DISPLAY)
diff --git a/drivers/gpu/drm/xe/xe_hw_error.c b/drivers/gpu/drm/xe/xe_hw_error.c
new file mode 100644
index 000000000000..357d0f962d91
--- /dev/null
+++ b/drivers/gpu/drm/xe/xe_hw_error.c
@@ -0,0 +1,211 @@
+// SPDX-License-Identifier: MIT
+/*
+ * Copyright © 2023 Intel Corporation
+ */
+
+#include "xe_hw_error.h"
+
+#include "regs/xe_regs.h"
+#include "regs/xe_tile_error_regs.h"
+#include "xe_device.h"
+#include "xe_mmio.h"
+
+static const char *
+hardware_error_type_to_str(const enum hardware_error hw_err)
+{
+	switch (hw_err) {
+	case HARDWARE_ERROR_CORRECTABLE:
+		return "CORRECTABLE";
+	case HARDWARE_ERROR_NONFATAL:
+		return "NONFATAL";
+	case HARDWARE_ERROR_FATAL:
+		return "FATAL";
+	default:
+		return "UNKNOWN";
+	}
+}
+
+static const struct err_msg_cntr_pair dg2_err_stat_fatal_reg[] = {
+	[0]         = {"GT",			XE_TILE_HW_ERR_GT_FATAL},
+	[1 ... 3]   = {"Undefined",		XE_TILE_HW_ERR_UNKNOWN_FATAL},
+	[4]         = {"DISPLAY",		XE_TILE_HW_ERR_DISPLAY_FATAL},
+	[5 ... 7]   = {"Undefined",		XE_TILE_HW_ERR_UNKNOWN_FATAL},
+	[8]         = {"GSC error",		XE_TILE_HW_ERR_GSC_FATAL},
+	[9 ... 11]  = {"Undefined",		XE_TILE_HW_ERR_UNKNOWN_FATAL},
+	[12]        = {"SGUNIT",		XE_TILE_HW_ERR_SGUNIT_FATAL},
+	[13 ... 15] = {"Undefined",             XE_TILE_HW_ERR_UNKNOWN_FATAL},
+	[16]        = {"SOC",			XE_TILE_HW_ERR_SOC_FATAL},
+	[17 ... 31] = {"Undefined",             XE_TILE_HW_ERR_UNKNOWN_FATAL},
+};
+
+static const struct err_msg_cntr_pair dg2_err_stat_nonfatal_reg[] = {
+	[0]         = {"GT",			XE_TILE_HW_ERR_GT_NONFATAL},
+	[1 ... 3]   = {"Undefined",		XE_TILE_HW_ERR_UNKNOWN_NONFATAL},
+	[4]         = {"DISPLAY",		XE_TILE_HW_ERR_DISPLAY_NONFATAL},
+	[5 ... 7]   = {"Undefined",		XE_TILE_HW_ERR_UNKNOWN_NONFATAL},
+	[8]         = {"GSC error",		XE_TILE_HW_ERR_GSC_NONFATAL},
+	[9 ... 11]  = {"Undefined",		XE_TILE_HW_ERR_UNKNOWN_NONFATAL},
+	[12]        = {"SGUNIT",		XE_TILE_HW_ERR_SGUNIT_NONFATAL},
+	[13 ... 15] = {"Undefined",             XE_TILE_HW_ERR_UNKNOWN_NONFATAL},
+	[16]        = {"SOC",			XE_TILE_HW_ERR_SOC_NONFATAL},
+	[17 ... 19] = {"Undefined",             XE_TILE_HW_ERR_UNKNOWN_NONFATAL},
+	[20]        = {"MERT",			XE_TILE_HW_ERR_MERT_NONFATAL},
+	[21 ... 31] = {"Undefined",             XE_TILE_HW_ERR_UNKNOWN_NONFATAL},
+};
+
+static const struct err_msg_cntr_pair dg2_err_stat_correctable_reg[] = {
+	[0]         = {"GT",			XE_TILE_HW_ERR_GT_CORR},
+	[1 ... 3]   = {"Undefined",		XE_TILE_HW_ERR_UNKNOWN_CORR},
+	[4]         = {"DISPLAY",		XE_TILE_HW_ERR_DISPLAY_CORR},
+	[5 ... 7]   = {"Undefined",		XE_TILE_HW_ERR_UNKNOWN_CORR},
+	[8]         = {"GSC error",		XE_TILE_HW_ERR_GSC_CORR},
+	[9 ... 11]  = {"Undefined",		XE_TILE_HW_ERR_UNKNOWN_CORR},
+	[12]        = {"SGUNIT",		XE_TILE_HW_ERR_SGUNIT_CORR},
+	[13 ... 15] = {"Undefined",             XE_TILE_HW_ERR_UNKNOWN_CORR},
+	[16]        = {"SOC",			XE_TILE_HW_ERR_SOC_CORR},
+	[17 ... 31] = {"Undefined",             XE_TILE_HW_ERR_UNKNOWN_CORR},
+};
+
+static const struct err_msg_cntr_pair pvc_err_stat_fatal_reg[] = {
+	[0]         =  {"GT",			XE_TILE_HW_ERR_GT_FATAL},
+	[1]         =  {"SGGI Cmd Parity",	XE_TILE_HW_ERR_SGGI_FATAL},
+	[2 ... 7]   =  {"Undefined",		XE_TILE_HW_ERR_UNKNOWN_FATAL},
+	[8]         =  {"GSC error",		XE_TILE_HW_ERR_GSC_FATAL},
+	[9]         =  {"SGLI Cmd Parity",	XE_TILE_HW_ERR_SGLI_FATAL},
+	[10 ... 12] =  {"Undefined",		XE_TILE_HW_ERR_UNKNOWN_FATAL},
+	[13]        =  {"SGCI Cmd Parity",	XE_TILE_HW_ERR_SGCI_FATAL},
+	[14 ... 15] =  {"Undefined",		XE_TILE_HW_ERR_UNKNOWN_FATAL},
+	[16]        =  {"SOC ERROR",		XE_TILE_HW_ERR_SOC_FATAL},
+	[17 ... 19] =  {"Undefined",		XE_TILE_HW_ERR_UNKNOWN_FATAL},
+	[20]        =  {"MERT Cmd Parity",	XE_TILE_HW_ERR_MERT_FATAL},
+	[21 ... 31] =  {"Undefined",		XE_TILE_HW_ERR_UNKNOWN_FATAL},
+};
+
+static const struct err_msg_cntr_pair pvc_err_stat_nonfatal_reg[] = {
+	[0]         =  {"GT",			XE_TILE_HW_ERR_GT_NONFATAL},
+	[1]         =  {"SGGI Data Parity",	XE_TILE_HW_ERR_SGGI_NONFATAL},
+	[2 ... 7]   =  {"Undefined",		XE_TILE_HW_ERR_UNKNOWN_NONFATAL},
+	[8]         =  {"GSC",			XE_TILE_HW_ERR_GSC_NONFATAL},
+	[9]         =  {"SGLI Data Parity",	XE_TILE_HW_ERR_SGLI_NONFATAL},
+	[10 ... 12] =  {"Undefined",		XE_TILE_HW_ERR_UNKNOWN_NONFATAL},
+	[13]        =  {"SGCI Data Parity",	XE_TILE_HW_ERR_SGCI_NONFATAL},
+	[14 ... 15] =  {"Undefined",		XE_TILE_HW_ERR_UNKNOWN_NONFATAL},
+	[16]        =  {"SOC",			XE_TILE_HW_ERR_SOC_NONFATAL},
+	[17 ... 19] =  {"Undefined",		XE_TILE_HW_ERR_UNKNOWN_NONFATAL},
+	[20]        =  {"MERT Data Parity",	XE_TILE_HW_ERR_MERT_NONFATAL},
+	[21 ... 31] =  {"Undefined",            XE_TILE_HW_ERR_UNKNOWN_NONFATAL},
+};
+
+static const struct err_msg_cntr_pair pvc_err_stat_correctable_reg[] = {
+	[0]         =  {"GT",			XE_TILE_HW_ERR_GT_CORR},
+	[1 ... 7]   =  {"Undefined",		XE_TILE_HW_ERR_UNKNOWN_CORR},
+	[8]         =  {"GSC",			XE_TILE_HW_ERR_GSC_CORR},
+	[9 ... 31]  =  {"Undefined",		XE_TILE_HW_ERR_UNKNOWN_CORR},
+};
+
+static const struct err_msg_cntr_pair dev_err_stat_fatal_reg[] = {
+	[0]         =  {"GT",			XE_TILE_HW_ERR_GT_FATAL},
+	[1 ... 31]  =  {"Undefined",		XE_TILE_HW_ERR_UNKNOWN_FATAL},
+};
+
+static const struct err_msg_cntr_pair dev_err_stat_nonfatal_reg[] = {
+	[0]         =  {"GT",			XE_TILE_HW_ERR_GT_NONFATAL},
+	[1 ... 31]  =  {"Undefined",            XE_TILE_HW_ERR_UNKNOWN_NONFATAL},
+};
+
+static const struct err_msg_cntr_pair dev_err_stat_correctable_reg[] = {
+	[0]         =  {"GT",			XE_TILE_HW_ERR_GT_CORR},
+	[1 ... 31]  =  {"Undefined",		XE_TILE_HW_ERR_UNKNOWN_CORR},
+};
+
+void xe_assign_hw_err_regs(struct xe_device *xe)
+{
+	const struct err_msg_cntr_pair **dev_err_stat = xe->hw_err_regs.dev_err_stat;
+
+	if (xe->info.platform == XE_DG2) {
+		dev_err_stat[HARDWARE_ERROR_CORRECTABLE] = dg2_err_stat_correctable_reg;
+		dev_err_stat[HARDWARE_ERROR_NONFATAL] = dg2_err_stat_nonfatal_reg;
+		dev_err_stat[HARDWARE_ERROR_FATAL] = dg2_err_stat_fatal_reg;
+	} else if (xe->info.platform == XE_PVC) {
+		dev_err_stat[HARDWARE_ERROR_CORRECTABLE] = pvc_err_stat_correctable_reg;
+		dev_err_stat[HARDWARE_ERROR_NONFATAL] = pvc_err_stat_nonfatal_reg;
+		dev_err_stat[HARDWARE_ERROR_FATAL] = pvc_err_stat_fatal_reg;
+	} else {
+		/* For other platforms report only GT errors */
+		dev_err_stat[HARDWARE_ERROR_CORRECTABLE] = dev_err_stat_correctable_reg;
+		dev_err_stat[HARDWARE_ERROR_NONFATAL] = dev_err_stat_nonfatal_reg;
+		dev_err_stat[HARDWARE_ERROR_FATAL] = dev_err_stat_fatal_reg;
+	}
+}
+
+static void
+xe_hw_error_source_handler(struct xe_tile *tile, const enum hardware_error hw_err)
+{
+	const char *hw_err_str = hardware_error_type_to_str(hw_err);
+	const struct hardware_errors_regs *err_regs;
+	const struct err_msg_cntr_pair *errstat;
+	unsigned long errsrc;
+	unsigned long flags;
+	const char *errmsg;
+	struct xe_gt *mmio;
+	u32 indx;
+	u32 errbit;
+
+	spin_lock_irqsave(&tile_to_xe(tile)->irq.lock, flags);
+	err_regs = &tile_to_xe(tile)->hw_err_regs;
+	errstat = err_regs->dev_err_stat[hw_err];
+	mmio = tile->primary_gt;
+	errsrc = xe_mmio_read32(mmio, DEV_ERR_STAT_REG(hw_err));
+	if (!errsrc) {
+		drm_err_ratelimited(&tile_to_xe(tile)->drm, HW_ERR
+				    "TILE%d detected DEV_ERR_STAT_REG_%s blank!\n",
+				    tile->id, hw_err_str);
+		goto unlock;
+	}
+
+	drm_info(&tile_to_xe(tile)->drm, HW_ERR
+		 "TILE%d DEV_ERR_STAT_REG_%s=0x%08lx\n", tile->id, hw_err_str, errsrc);
+
+	for_each_set_bit(errbit, &errsrc, 32) {
+		errmsg = errstat[errbit].errmsg;
+		indx = errstat[errbit].cntr_indx;
+
+		if (hw_err == HARDWARE_ERROR_CORRECTABLE)
+			drm_warn(&tile_to_xe(tile)->drm,
+				 HW_ERR "TILE%d detected %s %s error, bit[%d] is set\n",
+				 tile->id, errmsg, hw_err_str, errbit);
+
+		else
+			drm_err_ratelimited(&tile_to_xe(tile)->drm,
+					    HW_ERR "TILE%d detected %s %s error, bit[%d] is set\n",
+					    tile->id, errmsg, hw_err_str, errbit);
+		tile->errors.count[indx]++;
+	}
+
+	xe_mmio_write32(mmio, DEV_ERR_STAT_REG(hw_err), errsrc);
+unlock:
+	spin_unlock_irqrestore(&tile_to_xe(tile)->irq.lock, flags);
+}
+
+/*
+ * XE Platforms adds three Error bits to the Master Interrupt
+ * Register to support error handling. These three bits are
+ * used to convey the class of error:
+ * FATAL, NONFATAL, or CORRECTABLE.
+ *
+ * To process an interrupt:
+ *       Determine source of error (IP block) by reading
+ *	 the Device Error Source Register (RW1C) that
+ *	 corresponds to the class of error being serviced
+ *	 and log the error.
+ */
+void
+xe_hw_error_irq_handler(struct xe_tile *tile, const u32 master_ctl)
+{
+	enum hardware_error hw_err;
+
+	for (hw_err = 0; hw_err < HARDWARE_ERROR_MAX; hw_err++) {
+		if (master_ctl & XE_ERROR_IRQ(hw_err))
+			xe_hw_error_source_handler(tile, hw_err);
+	}
+}
diff --git a/drivers/gpu/drm/xe/xe_hw_error.h b/drivers/gpu/drm/xe/xe_hw_error.h
new file mode 100644
index 000000000000..c0c05b9130eb
--- /dev/null
+++ b/drivers/gpu/drm/xe/xe_hw_error.h
@@ -0,0 +1,64 @@
+/* SPDX-License-Identifier: MIT */
+/*
+ * Copyright © 2023 Intel Corporation
+ */
+#ifndef XE_HW_ERRORS_H_
+#define XE_HW_ERRORS_H_
+
+#include <linux/stddef.h>
+#include <linux/types.h>
+
+/* Error categories reported by hardware */
+enum hardware_error {
+	HARDWARE_ERROR_CORRECTABLE = 0,
+	HARDWARE_ERROR_NONFATAL = 1,
+	HARDWARE_ERROR_FATAL = 2,
+	HARDWARE_ERROR_MAX,
+};
+
+/* Count of  Correctable and Uncorrectable errors reported on tile */
+enum xe_tile_hw_errors {
+	XE_TILE_HW_ERR_GT_FATAL = 0,
+	XE_TILE_HW_ERR_SGGI_FATAL,
+	XE_TILE_HW_ERR_DISPLAY_FATAL,
+	XE_TILE_HW_ERR_SGDI_FATAL,
+	XE_TILE_HW_ERR_SGLI_FATAL,
+	XE_TILE_HW_ERR_SGUNIT_FATAL,
+	XE_TILE_HW_ERR_SGCI_FATAL,
+	XE_TILE_HW_ERR_GSC_FATAL,
+	XE_TILE_HW_ERR_SOC_FATAL,
+	XE_TILE_HW_ERR_MERT_FATAL,
+	XE_TILE_HW_ERR_SGMI_FATAL,
+	XE_TILE_HW_ERR_UNKNOWN_FATAL,
+	XE_TILE_HW_ERR_SGGI_NONFATAL,
+	XE_TILE_HW_ERR_DISPLAY_NONFATAL,
+	XE_TILE_HW_ERR_SGDI_NONFATAL,
+	XE_TILE_HW_ERR_SGLI_NONFATAL,
+	XE_TILE_HW_ERR_GT_NONFATAL,
+	XE_TILE_HW_ERR_SGUNIT_NONFATAL,
+	XE_TILE_HW_ERR_SGCI_NONFATAL,
+	XE_TILE_HW_ERR_GSC_NONFATAL,
+	XE_TILE_HW_ERR_SOC_NONFATAL,
+	XE_TILE_HW_ERR_MERT_NONFATAL,
+	XE_TILE_HW_ERR_SGMI_NONFATAL,
+	XE_TILE_HW_ERR_UNKNOWN_NONFATAL,
+	XE_TILE_HW_ERR_GT_CORR,
+	XE_TILE_HW_ERR_DISPLAY_CORR,
+	XE_TILE_HW_ERR_SGUNIT_CORR,
+	XE_TILE_HW_ERR_GSC_CORR,
+	XE_TILE_HW_ERR_SOC_CORR,
+	XE_TILE_HW_ERR_UNKNOWN_CORR,
+	XE_TILE_HW_ERROR_MAX,
+};
+
+struct err_msg_cntr_pair {
+	const char *errmsg;
+	const u32 cntr_indx;
+};
+
+struct xe_device;
+struct xe_tile;
+
+void xe_hw_error_irq_handler(struct xe_tile *tile, const u32 master_ctl);
+void xe_assign_hw_err_regs(struct xe_device *xe);
+#endif
diff --git a/drivers/gpu/drm/xe/xe_irq.c b/drivers/gpu/drm/xe/xe_irq.c
index 1dee3e832eb5..48b933234342 100644
--- a/drivers/gpu/drm/xe/xe_irq.c
+++ b/drivers/gpu/drm/xe/xe_irq.c
@@ -418,6 +418,7 @@ static irqreturn_t dg1_irq_handler(int irq, void *arg)
 		xe_mmio_write32(mmio, GFX_MSTR_IRQ, master_ctl);
 
 		gt_irq_handler(tile, master_ctl, intr_dw, identity);
+		xe_hw_error_irq_handler(tile, master_ctl);
 
 		/*
 		 * Display interrupts (including display backlight operations
@@ -572,6 +573,8 @@ int xe_irq_install(struct xe_device *xe)
 		return -EINVAL;
 	}
 
+	xe_assign_hw_err_regs(xe);
+
 	xe->irq.enabled = true;
 
 	xe_irq_reset(xe);
-- 
2.25.1


^ permalink raw reply related	[flat|nested] 21+ messages in thread

* [Intel-xe] [PATCH v5 2/4] drm/xe: Log and count the GT hardware errors.
  2023-08-23  8:58 [Intel-xe] [PATCH v5 0/4] Supporting RAS on XE Himal Prasad Ghimiray
  2023-08-23  8:58 ` [Intel-xe] [PATCH v5 1/4] drm/xe: Handle errors from various components Himal Prasad Ghimiray
@ 2023-08-23  8:58 ` Himal Prasad Ghimiray
  2023-09-26  4:20   ` Aravind Iddamsetty
  2023-08-23  8:58 ` [Intel-xe] [PATCH v5 3/4] drm/xe: Support GT hardware error reporting for PVC Himal Prasad Ghimiray
                   ` (6 subsequent siblings)
  8 siblings, 1 reply; 21+ messages in thread
From: Himal Prasad Ghimiray @ 2023-08-23  8:58 UTC (permalink / raw)
  To: intel-xe; +Cc: Jani Nikula, Joonas Lahtinen, Rodrigo Vivi, Matt Roper

For the errors reported by GT unit, read the GT error register.
Log and count these errors and clear the error register.

Bspec: 53088, 53089, 53090

Cc: Rodrigo Vivi <rodrigo.vivi@intel.com>
Cc: Aravind Iddamsetty <aravind.iddamsetty@intel.com>
Cc: Matthew Brost <matthew.brost@intel.com>
Cc: Matt Roper <matthew.d.roper@intel.com>
Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
Cc: Jani Nikula <jani.nikula@intel.com>
Signed-off-by: Himal Prasad Ghimiray <himal.prasad.ghimiray@intel.com>
---
 drivers/gpu/drm/xe/regs/xe_gt_error_regs.h | 13 +++
 drivers/gpu/drm/xe/xe_device_types.h       |  1 +
 drivers/gpu/drm/xe/xe_gt_types.h           |  7 ++
 drivers/gpu/drm/xe/xe_hw_error.c           | 96 +++++++++++++++++++++-
 drivers/gpu/drm/xe/xe_hw_error.h           | 24 ++++++
 5 files changed, 140 insertions(+), 1 deletion(-)
 create mode 100644 drivers/gpu/drm/xe/regs/xe_gt_error_regs.h

diff --git a/drivers/gpu/drm/xe/regs/xe_gt_error_regs.h b/drivers/gpu/drm/xe/regs/xe_gt_error_regs.h
new file mode 100644
index 000000000000..6180704a6149
--- /dev/null
+++ b/drivers/gpu/drm/xe/regs/xe_gt_error_regs.h
@@ -0,0 +1,13 @@
+/* SPDX-License-Identifier: MIT */
+/*
+ * Copyright © 2023 Intel Corporation
+ */
+#ifndef XE_GT_ERROR_REGS_H_
+#define XE_GT_ERROR_REGS_H_
+
+#define _ERR_STAT_GT_COR                0x100160
+#define _ERR_STAT_GT_NONFATAL           0x100164
+#define ERR_STAT_GT_REG(x)              XE_REG(_PICK_EVEN((x), \
+						_ERR_STAT_GT_COR, \
+						_ERR_STAT_GT_NONFATAL))
+#endif
diff --git a/drivers/gpu/drm/xe/xe_device_types.h b/drivers/gpu/drm/xe/xe_device_types.h
index 4e4184977709..96029d3348b3 100644
--- a/drivers/gpu/drm/xe/xe_device_types.h
+++ b/drivers/gpu/drm/xe/xe_device_types.h
@@ -368,6 +368,7 @@ struct xe_device {
 	/** @hardware_errors_regs: list of hw error regs*/
 	struct hardware_errors_regs {
 		const struct err_msg_cntr_pair *dev_err_stat[HARDWARE_ERROR_MAX];
+		const struct err_msg_cntr_pair *err_stat_gt[HARDWARE_ERROR_MAX];
 	} hw_err_regs;
 
 	/* private: */
diff --git a/drivers/gpu/drm/xe/xe_gt_types.h b/drivers/gpu/drm/xe/xe_gt_types.h
index 35b8c19fa8bf..5daff5c434c7 100644
--- a/drivers/gpu/drm/xe/xe_gt_types.h
+++ b/drivers/gpu/drm/xe/xe_gt_types.h
@@ -9,10 +9,12 @@
 #include "xe_force_wake_types.h"
 #include "xe_gt_idle_sysfs_types.h"
 #include "xe_hw_engine_types.h"
+#include "xe_hw_error.h"
 #include "xe_hw_fence_types.h"
 #include "xe_reg_sr_types.h"
 #include "xe_sa_types.h"
 #include "xe_uc_types.h"
+#include "regs/xe_gt_error_regs.h"
 
 struct xe_exec_queue_ops;
 struct xe_migrate;
@@ -346,6 +348,11 @@ struct xe_gt {
 		/** @oob: bitmap with active OOB workaroudns */
 		unsigned long *oob;
 	} wa_active;
+
+	/** @gt_hw_errors: hardware errors reported for the gt */
+	struct gt_hw_errors {
+		 unsigned long count[XE_GT_HW_ERROR_MAX];
+	} errors;
 };
 
 #endif
diff --git a/drivers/gpu/drm/xe/xe_hw_error.c b/drivers/gpu/drm/xe/xe_hw_error.c
index 357d0f962d91..10aad0c396fb 100644
--- a/drivers/gpu/drm/xe/xe_hw_error.c
+++ b/drivers/gpu/drm/xe/xe_hw_error.c
@@ -118,14 +118,48 @@ static const struct err_msg_cntr_pair dev_err_stat_correctable_reg[] = {
 	[1 ... 31]  =  {"Undefined",		XE_TILE_HW_ERR_UNKNOWN_CORR},
 };
 
+static const struct err_msg_cntr_pair err_stat_gt_fatal_reg[] = {
+	[0]         =  {"Undefined",		XE_GT_HW_ERR_UNKNOWN_FATAL},
+	[1]         =  {"Array BIST",		XE_GT_HW_ERR_ARR_BIST_FATAL},
+	[2]         =  {"Undefined",		XE_GT_HW_ERR_UNKNOWN_FATAL},
+	[3]         =  {"FPU",			XE_GT_HW_ERR_FPU_FATAL},
+	[4]         =  {"L3 Double",		XE_GT_HW_ERR_L3_DOUB_FATAL},
+	[5]         =  {"L3 ECC Checker",	XE_GT_HW_ERR_L3_ECC_CHK_FATAL},
+	[6]         =  {"GUC SRAM",		XE_GT_HW_ERR_GUC_FATAL},
+	[7]         =  {"Undefined",		XE_GT_HW_ERR_UNKNOWN_FATAL},
+	[8]         =  {"IDI PARITY",		XE_GT_HW_ERR_IDI_PAR_FATAL},
+	[9]	    =  {"SQIDI",		XE_GT_HW_ERR_SQIDI_FATAL},
+	[10 ... 11] =  {"Undefined",		XE_GT_HW_ERR_UNKNOWN_FATAL},
+	[12]        =  {"SAMPLER",		XE_GT_HW_ERR_SAMPLER_FATAL},
+	[13]        =  {"SLM",			XE_GT_HW_ERR_SLM_FATAL},
+	[14]        =  {"EU IC",		XE_GT_HW_ERR_EU_IC_FATAL},
+	[15]        =  {"EU GRF",		XE_GT_HW_ERR_EU_GRF_FATAL},
+	[16 ... 31] =  {"Undefined",            XE_GT_HW_ERR_UNKNOWN_FATAL},
+};
+
+static const struct err_msg_cntr_pair err_stat_gt_correctable_reg[] = {
+	[0]         = {"L3 SINGLE",		XE_GT_HW_ERR_L3_SNG_CORR},
+	[1]         = {"SINGLE BIT GUC SRAM",	XE_GT_HW_ERR_GUC_CORR},
+	[2 ... 11]  = {"Undefined",		XE_GT_HW_ERR_UNKNOWN_CORR},
+	[12]        = {"SINGLE BIT SAMPLER",	XE_GT_HW_ERR_SAMPLER_CORR},
+	[13]        = {"SINGLE BIT SLM",	XE_GT_HW_ERR_SLM_CORR},
+	[14]        = {"SINGLE BIT EU IC",	XE_GT_HW_ERR_EU_IC_CORR},
+	[15]        = {"SINGLE BIT EU GRF",	XE_GT_HW_ERR_EU_GRF_CORR},
+	[16 ... 31] = {"Undefined",             XE_GT_HW_ERR_UNKNOWN_CORR},
+};
+
 void xe_assign_hw_err_regs(struct xe_device *xe)
 {
 	const struct err_msg_cntr_pair **dev_err_stat = xe->hw_err_regs.dev_err_stat;
+	const struct err_msg_cntr_pair **err_stat_gt = xe->hw_err_regs.err_stat_gt;
 
 	if (xe->info.platform == XE_DG2) {
 		dev_err_stat[HARDWARE_ERROR_CORRECTABLE] = dg2_err_stat_correctable_reg;
 		dev_err_stat[HARDWARE_ERROR_NONFATAL] = dg2_err_stat_nonfatal_reg;
 		dev_err_stat[HARDWARE_ERROR_FATAL] = dg2_err_stat_fatal_reg;
+
+		err_stat_gt[HARDWARE_ERROR_CORRECTABLE] = err_stat_gt_correctable_reg;
+		err_stat_gt[HARDWARE_ERROR_FATAL] = err_stat_gt_fatal_reg;
 	} else if (xe->info.platform == XE_PVC) {
 		dev_err_stat[HARDWARE_ERROR_CORRECTABLE] = pvc_err_stat_correctable_reg;
 		dev_err_stat[HARDWARE_ERROR_NONFATAL] = pvc_err_stat_nonfatal_reg;
@@ -135,9 +169,67 @@ void xe_assign_hw_err_regs(struct xe_device *xe)
 		dev_err_stat[HARDWARE_ERROR_CORRECTABLE] = dev_err_stat_correctable_reg;
 		dev_err_stat[HARDWARE_ERROR_NONFATAL] = dev_err_stat_nonfatal_reg;
 		dev_err_stat[HARDWARE_ERROR_FATAL] = dev_err_stat_fatal_reg;
+
+		err_stat_gt[HARDWARE_ERROR_CORRECTABLE] = err_stat_gt_correctable_reg;
+		err_stat_gt[HARDWARE_ERROR_FATAL] = err_stat_gt_fatal_reg;
 	}
 }
 
+static void
+xe_gt_hw_error_handler(struct xe_gt *gt, const enum hardware_error hw_err)
+{
+	const char *hw_err_str = hardware_error_type_to_str(hw_err);
+	const struct err_msg_cntr_pair *errstat;
+	struct hardware_errors_regs *err_regs;
+	unsigned long errsrc;
+	const char *errmsg;
+	u32 indx;
+	u32 errbit;
+
+	if (gt_to_xe(gt)->info.platform == XE_PVC)
+		return;
+
+	lockdep_assert_held(&gt_to_xe(gt)->irq.lock);
+	err_regs = &gt_to_xe(gt)->hw_err_regs;
+	errsrc = xe_mmio_read32(gt, ERR_STAT_GT_REG(hw_err));
+	if (!errsrc) {
+		drm_err_ratelimited(&gt_to_xe(gt)->drm, HW_ERR
+				    "GT%d detected ERR_STAT_GT_REG_%s blank!\n",
+				    gt->info.id, hw_err_str);
+		return;
+	}
+
+	drm_info(&gt_to_xe(gt)->drm, HW_ERR "GT%d ERR_STAT_GT_REG_%s=0x%08lx\n",
+		 gt->info.id, hw_err_str, errsrc);
+
+	if (hw_err == HARDWARE_ERROR_NONFATAL) {
+		/*  The GT Non Fatal Error Status Register has only reserved bits
+		 *  Nothing to service.
+		 */
+		drm_err_ratelimited(&gt_to_xe(gt)->drm, HW_ERR "GT%d detected %s error\n",
+				    gt->info.id, hw_err_str);
+		goto clear_reg;
+	}
+
+	errstat = err_regs->err_stat_gt[hw_err];
+	for_each_set_bit(errbit, &errsrc, 32) {
+		errmsg = errstat[errbit].errmsg;
+		indx = errstat[errbit].cntr_indx;
+
+		if (hw_err == HARDWARE_ERROR_FATAL)
+			drm_err_ratelimited(&gt_to_xe(gt)->drm, HW_ERR
+					    "GT%d detected %s %s error, bit[%d] is set\n",
+					    gt->info.id, errmsg, hw_err_str, errbit);
+		else
+			drm_warn(&gt_to_xe(gt)->drm, HW_ERR
+				 "GT%d detected %s %s error, bit[%d] is set\n",
+				 gt->info.id, errmsg, hw_err_str, errbit);
+
+		gt->errors.count[indx]++;
+	}
+clear_reg: xe_mmio_write32(gt, ERR_STAT_GT_REG(hw_err), errsrc);
+}
+
 static void
 xe_hw_error_source_handler(struct xe_tile *tile, const enum hardware_error hw_err)
 {
@@ -174,7 +266,6 @@ xe_hw_error_source_handler(struct xe_tile *tile, const enum hardware_error hw_er
 			drm_warn(&tile_to_xe(tile)->drm,
 				 HW_ERR "TILE%d detected %s %s error, bit[%d] is set\n",
 				 tile->id, errmsg, hw_err_str, errbit);
-
 		else
 			drm_err_ratelimited(&tile_to_xe(tile)->drm,
 					    HW_ERR "TILE%d detected %s %s error, bit[%d] is set\n",
@@ -182,6 +273,9 @@ xe_hw_error_source_handler(struct xe_tile *tile, const enum hardware_error hw_er
 		tile->errors.count[indx]++;
 	}
 
+	if (errsrc & REG_BIT(0))
+		xe_gt_hw_error_handler(tile->primary_gt, hw_err);
+
 	xe_mmio_write32(mmio, DEV_ERR_STAT_REG(hw_err), errsrc);
 unlock:
 	spin_unlock_irqrestore(&tile_to_xe(tile)->irq.lock, flags);
diff --git a/drivers/gpu/drm/xe/xe_hw_error.h b/drivers/gpu/drm/xe/xe_hw_error.h
index c0c05b9130eb..82c947247c27 100644
--- a/drivers/gpu/drm/xe/xe_hw_error.h
+++ b/drivers/gpu/drm/xe/xe_hw_error.h
@@ -51,6 +51,30 @@ enum xe_tile_hw_errors {
 	XE_TILE_HW_ERROR_MAX,
 };
 
+/* Count of GT Correctable and FATAL HW ERRORS */
+enum xe_gt_hw_errors {
+	XE_GT_HW_ERR_L3_SNG_CORR,
+	XE_GT_HW_ERR_GUC_CORR,
+	XE_GT_HW_ERR_SAMPLER_CORR,
+	XE_GT_HW_ERR_SLM_CORR,
+	XE_GT_HW_ERR_EU_IC_CORR,
+	XE_GT_HW_ERR_EU_GRF_CORR,
+	XE_GT_HW_ERR_UNKNOWN_CORR,
+	XE_GT_HW_ERR_ARR_BIST_FATAL,
+	XE_GT_HW_ERR_FPU_FATAL,
+	XE_GT_HW_ERR_L3_DOUB_FATAL,
+	XE_GT_HW_ERR_L3_ECC_CHK_FATAL,
+	XE_GT_HW_ERR_GUC_FATAL,
+	XE_GT_HW_ERR_IDI_PAR_FATAL,
+	XE_GT_HW_ERR_SQIDI_FATAL,
+	XE_GT_HW_ERR_SAMPLER_FATAL,
+	XE_GT_HW_ERR_SLM_FATAL,
+	XE_GT_HW_ERR_EU_IC_FATAL,
+	XE_GT_HW_ERR_EU_GRF_FATAL,
+	XE_GT_HW_ERR_UNKNOWN_FATAL,
+	XE_GT_HW_ERROR_MAX,
+};
+
 struct err_msg_cntr_pair {
 	const char *errmsg;
 	const u32 cntr_indx;
-- 
2.25.1


^ permalink raw reply related	[flat|nested] 21+ messages in thread

* [Intel-xe] [PATCH v5 3/4] drm/xe: Support GT hardware error reporting for PVC.
  2023-08-23  8:58 [Intel-xe] [PATCH v5 0/4] Supporting RAS on XE Himal Prasad Ghimiray
  2023-08-23  8:58 ` [Intel-xe] [PATCH v5 1/4] drm/xe: Handle errors from various components Himal Prasad Ghimiray
  2023-08-23  8:58 ` [Intel-xe] [PATCH v5 2/4] drm/xe: Log and count the GT hardware errors Himal Prasad Ghimiray
@ 2023-08-23  8:58 ` Himal Prasad Ghimiray
  2023-09-26  4:21   ` Aravind Iddamsetty
  2023-08-23  8:58 ` [Intel-xe] [PATCH v5 4/4] drm/xe: Process fatal hardware errors Himal Prasad Ghimiray
                   ` (5 subsequent siblings)
  8 siblings, 1 reply; 21+ messages in thread
From: Himal Prasad Ghimiray @ 2023-08-23  8:58 UTC (permalink / raw)
  To: intel-xe; +Cc: Joonas Lahtinen, Rodrigo Vivi, Matt Roper

PVC supports GT error reporting via vector registers alongwith
error status register. Add support to report these errors and
update respective counters.
Incase of Subslice error reported by vector register, process the
error status register for applicable bits.

Bspec: 54179, 54177, 53088, 53089

Cc: Rodrigo Vivi <rodrigo.vivi@intel.com>
Cc: Aravind Iddamsetty <aravind.iddamsetty@intel.com>
Cc: Matthew Brost <matthew.brost@intel.com>
Cc: Matt Roper <matthew.d.roper@intel.com>
Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
Signed-off-by: Himal Prasad Ghimiray <himal.prasad.ghimiray@intel.com>
---
 drivers/gpu/drm/xe/regs/xe_gt_error_regs.h |  16 +++
 drivers/gpu/drm/xe/xe_hw_error.c           | 122 ++++++++++++++++++++-
 drivers/gpu/drm/xe/xe_hw_error.h           |  20 ++++
 3 files changed, 154 insertions(+), 4 deletions(-)

diff --git a/drivers/gpu/drm/xe/regs/xe_gt_error_regs.h b/drivers/gpu/drm/xe/regs/xe_gt_error_regs.h
index 6180704a6149..39ea87914465 100644
--- a/drivers/gpu/drm/xe/regs/xe_gt_error_regs.h
+++ b/drivers/gpu/drm/xe/regs/xe_gt_error_regs.h
@@ -10,4 +10,20 @@
 #define ERR_STAT_GT_REG(x)              XE_REG(_PICK_EVEN((x), \
 						_ERR_STAT_GT_COR, \
 						_ERR_STAT_GT_NONFATAL))
+
+#define _ERR_STAT_GT_COR_VCTR_0         0x1002a0
+#define _ERR_STAT_GT_COR_VCTR_1         0x1002a4
+#define ERR_STAT_GT_COR_VCTR_REG(x)     XE_REG(_PICK_EVEN((x), \
+						_ERR_STAT_GT_COR_VCTR_0, \
+						_ERR_STAT_GT_COR_VCTR_1))
+
+#define _ERR_STAT_GT_FATAL_VCTR_0       0x100260
+#define _ERR_STAT_GT_FATAL_VCTR_1       0x100264
+#define ERR_STAT_GT_FATAL_VCTR_REG(x)   XE_REG(_PICK_EVEN((x), \
+						_ERR_STAT_GT_FATAL_VCTR_0, \
+						_ERR_STAT_GT_FATAL_VCTR_1))
+
+#define ERR_STAT_GT_VCTR_REG(hw_err, x) (hw_err == HARDWARE_ERROR_CORRECTABLE ? \
+						ERR_STAT_GT_COR_VCTR_REG(x) : \
+						ERR_STAT_GT_FATAL_VCTR_REG(x))
 #endif
diff --git a/drivers/gpu/drm/xe/xe_hw_error.c b/drivers/gpu/drm/xe/xe_hw_error.c
index 10aad0c396fb..deb020a509d2 100644
--- a/drivers/gpu/drm/xe/xe_hw_error.c
+++ b/drivers/gpu/drm/xe/xe_hw_error.c
@@ -148,6 +148,41 @@ static const struct err_msg_cntr_pair err_stat_gt_correctable_reg[] = {
 	[16 ... 31] = {"Undefined",             XE_GT_HW_ERR_UNKNOWN_CORR},
 };
 
+static const struct err_msg_cntr_pair pvc_err_stat_gt_fatal_reg[] = {
+	[0 ... 2]   =  {"Undefined",		XE_GT_HW_ERR_UNKNOWN_FATAL},
+	[3]         =  {"FPU",			XE_GT_HW_ERR_FPU_FATAL},
+	[4 ... 5]   =  {"Undefined",            XE_GT_HW_ERR_UNKNOWN_FATAL},
+	[6]         =  {"GUC SRAM",		XE_GT_HW_ERR_GUC_FATAL},
+	[7 ... 12]  =  {"Undefined",		XE_GT_HW_ERR_UNKNOWN_FATAL},
+	[13]        =  {"SLM",			XE_GT_HW_ERR_SLM_FATAL},
+	[14]        =  {"Undefined",		XE_GT_HW_ERR_UNKNOWN_FATAL},
+	[15]        =  {"EU GRF",		XE_GT_HW_ERR_EU_GRF_FATAL},
+	[16 ... 31] =  {"Undefined",            XE_GT_HW_ERR_UNKNOWN_FATAL},
+};
+
+static const struct err_msg_cntr_pair pvc_err_stat_gt_correctable_reg[] = {
+	[0]         = {"Undefined",             XE_GT_HW_ERR_UNKNOWN_CORR},
+	[1]         = {"SINGLE BIT GUC SRAM",	XE_GT_HW_ERR_GUC_CORR},
+	[2 ... 12]  = {"Undefined",		XE_GT_HW_ERR_UNKNOWN_CORR},
+	[13]        = {"SINGLE BIT SLM",	XE_GT_HW_ERR_SLM_CORR},
+	[14]        = {"SINGLE BIT EU IC",	XE_GT_HW_ERR_EU_IC_CORR},
+	[15]        = {"SINGLE BIT EU GRF",	XE_GT_HW_ERR_EU_GRF_CORR},
+	[16 ... 31] = {"Undefined",             XE_GT_HW_ERR_UNKNOWN_CORR},
+};
+
+static const struct err_msg_cntr_pair err_stat_gt_fatal_vectr_reg[] = {
+	[0 ... 1]         = {"SUBSLICE",	XE_GT_HW_ERR_SUBSLICE_FATAL},
+	[2 ... 3]         = {"L3BANK",		XE_GT_HW_ERR_L3BANK_FATAL},
+	[4 ... 5]         = {"Undefined",	XE_GT_HW_ERR_UNKNOWN_FATAL},
+	[6]               = {"TLB",		XE_GT_HW_ERR_TLB_FATAL},
+	[7]               = {"L3 FABRIC",	XE_GT_HW_ERR_L3_FABRIC_FATAL},
+};
+
+static const struct err_msg_cntr_pair err_stat_gt_correctable_vectr_reg[] = {
+	[0 ... 1]         = {"SUBSLICE",	XE_GT_HW_ERR_SUBSLICE_CORR},
+	[2 ... 3]         = {"L3BANK",		XE_GT_HW_ERR_L3BANK_CORR},
+};
+
 void xe_assign_hw_err_regs(struct xe_device *xe)
 {
 	const struct err_msg_cntr_pair **dev_err_stat = xe->hw_err_regs.dev_err_stat;
@@ -164,6 +199,8 @@ void xe_assign_hw_err_regs(struct xe_device *xe)
 		dev_err_stat[HARDWARE_ERROR_CORRECTABLE] = pvc_err_stat_correctable_reg;
 		dev_err_stat[HARDWARE_ERROR_NONFATAL] = pvc_err_stat_nonfatal_reg;
 		dev_err_stat[HARDWARE_ERROR_FATAL] = pvc_err_stat_fatal_reg;
+		err_stat_gt[HARDWARE_ERROR_CORRECTABLE] = pvc_err_stat_gt_correctable_reg;
+		err_stat_gt[HARDWARE_ERROR_FATAL] = pvc_err_stat_gt_fatal_reg;
 	} else {
 		/* For other platforms report only GT errors */
 		dev_err_stat[HARDWARE_ERROR_CORRECTABLE] = dev_err_stat_correctable_reg;
@@ -176,7 +213,7 @@ void xe_assign_hw_err_regs(struct xe_device *xe)
 }
 
 static void
-xe_gt_hw_error_handler(struct xe_gt *gt, const enum hardware_error hw_err)
+xe_gt_hw_error_status_reg_handler(struct xe_gt *gt, const enum hardware_error hw_err)
 {
 	const char *hw_err_str = hardware_error_type_to_str(hw_err);
 	const struct err_msg_cntr_pair *errstat;
@@ -186,9 +223,6 @@ xe_gt_hw_error_handler(struct xe_gt *gt, const enum hardware_error hw_err)
 	u32 indx;
 	u32 errbit;
 
-	if (gt_to_xe(gt)->info.platform == XE_PVC)
-		return;
-
 	lockdep_assert_held(&gt_to_xe(gt)->irq.lock);
 	err_regs = &gt_to_xe(gt)->hw_err_regs;
 	errsrc = xe_mmio_read32(gt, ERR_STAT_GT_REG(hw_err));
@@ -230,6 +264,86 @@ xe_gt_hw_error_handler(struct xe_gt *gt, const enum hardware_error hw_err)
 clear_reg: xe_mmio_write32(gt, ERR_STAT_GT_REG(hw_err), errsrc);
 }
 
+static void
+xe_gt_hw_error_vectr_reg_handler(struct xe_gt *gt, const enum hardware_error hw_err)
+{
+	const char *hw_err_str = hardware_error_type_to_str(hw_err);
+	const struct err_msg_cntr_pair *errvctr;
+	const char *errmsg;
+	bool errstat_read;
+	u32 num_vctr_reg;
+	u32 indx;
+	u32 vctr;
+	u32 i;
+
+	switch (hw_err) {
+	case HARDWARE_ERROR_FATAL:
+		num_vctr_reg = ERR_STAT_GT_FATAL_VCTR_LEN;
+		errvctr = err_stat_gt_fatal_vectr_reg;
+		break;
+	case HARDWARE_ERROR_NONFATAL:
+		/*  The GT Non Fatal Error Status Register has only reserved bits
+		 *  Nothing to service.
+		 */
+		drm_err_ratelimited(&gt_to_xe(gt)->drm, HW_ERR "GT%d detected %s error\n",
+				    gt->info.id, hw_err_str);
+		return;
+	case HARDWARE_ERROR_CORRECTABLE:
+		num_vctr_reg = ERR_STAT_GT_COR_VCTR_LEN;
+		errvctr = err_stat_gt_correctable_vectr_reg;
+		break;
+	default:
+		return;
+	}
+
+	errstat_read = false;
+
+	for (i = 0 ; i < num_vctr_reg; i++) {
+		vctr = xe_mmio_read32(gt, ERR_STAT_GT_VCTR_REG(hw_err, i));
+		if (!vctr)
+			continue;
+
+		errmsg = errvctr[i].errmsg;
+		indx = errvctr[i].cntr_indx;
+
+		if (hw_err == HARDWARE_ERROR_FATAL)
+			drm_err_ratelimited(&gt_to_xe(gt)->drm, HW_ERR
+					    "GT%d detected %s %s error. ERR_VECT_GT_%s[%d]:0x%08x\n",
+					    gt->info.id, errmsg, hw_err_str, hw_err_str, i, vctr);
+		else
+			drm_warn(&gt_to_xe(gt)->drm, HW_ERR
+				 "GT%d detected %s %s error. ERR_VECT_GT_%s[%d]:0x%08x\n",
+				 gt->info.id, errmsg, hw_err_str, hw_err_str, i, vctr);
+
+		if (i < ERR_STAT_GT_VCTR4)
+			gt->errors.count[indx] += hweight32(vctr);
+
+		if (i == ERR_STAT_GT_VCTR6)
+			gt->errors.count[indx] += hweight16(vctr);
+
+		if (i == ERR_STAT_GT_VCTR7)
+			gt->errors.count[indx] += hweight8(vctr);
+
+		if (i < ERR_STAT_GT_VCTR2 && !errstat_read) {
+			xe_gt_hw_error_status_reg_handler(gt, hw_err);
+			errstat_read = true;
+		}
+
+		xe_mmio_write32(gt, ERR_STAT_GT_VCTR_REG(hw_err, i), vctr);
+	}
+}
+
+static void
+xe_gt_hw_error_handler(struct xe_gt *gt, const enum hardware_error hw_err)
+{
+	lockdep_assert_held(&gt_to_xe(gt)->irq.lock);
+
+	if (gt_to_xe(gt)->info.platform == XE_PVC)
+		xe_gt_hw_error_vectr_reg_handler(gt, hw_err);
+	else
+		xe_gt_hw_error_status_reg_handler(gt, hw_err);
+}
+
 static void
 xe_hw_error_source_handler(struct xe_tile *tile, const enum hardware_error hw_err)
 {
diff --git a/drivers/gpu/drm/xe/xe_hw_error.h b/drivers/gpu/drm/xe/xe_hw_error.h
index 82c947247c27..3fcbbcc338fe 100644
--- a/drivers/gpu/drm/xe/xe_hw_error.h
+++ b/drivers/gpu/drm/xe/xe_hw_error.h
@@ -51,8 +51,21 @@ enum xe_tile_hw_errors {
 	XE_TILE_HW_ERROR_MAX,
 };
 
+enum gt_vctr_registers {
+	ERR_STAT_GT_VCTR0 = 0,
+	ERR_STAT_GT_VCTR1,
+	ERR_STAT_GT_VCTR2,
+	ERR_STAT_GT_VCTR3,
+	ERR_STAT_GT_VCTR4,
+	ERR_STAT_GT_VCTR5,
+	ERR_STAT_GT_VCTR6,
+	ERR_STAT_GT_VCTR7,
+};
+
 /* Count of GT Correctable and FATAL HW ERRORS */
 enum xe_gt_hw_errors {
+	XE_GT_HW_ERR_SUBSLICE_CORR,
+	XE_GT_HW_ERR_L3BANK_CORR,
 	XE_GT_HW_ERR_L3_SNG_CORR,
 	XE_GT_HW_ERR_GUC_CORR,
 	XE_GT_HW_ERR_SAMPLER_CORR,
@@ -60,6 +73,8 @@ enum xe_gt_hw_errors {
 	XE_GT_HW_ERR_EU_IC_CORR,
 	XE_GT_HW_ERR_EU_GRF_CORR,
 	XE_GT_HW_ERR_UNKNOWN_CORR,
+	XE_GT_HW_ERR_SUBSLICE_FATAL,
+	XE_GT_HW_ERR_L3BANK_FATAL,
 	XE_GT_HW_ERR_ARR_BIST_FATAL,
 	XE_GT_HW_ERR_FPU_FATAL,
 	XE_GT_HW_ERR_L3_DOUB_FATAL,
@@ -71,10 +86,15 @@ enum xe_gt_hw_errors {
 	XE_GT_HW_ERR_SLM_FATAL,
 	XE_GT_HW_ERR_EU_IC_FATAL,
 	XE_GT_HW_ERR_EU_GRF_FATAL,
+	XE_GT_HW_ERR_TLB_FATAL,
+	XE_GT_HW_ERR_L3_FABRIC_FATAL,
 	XE_GT_HW_ERR_UNKNOWN_FATAL,
 	XE_GT_HW_ERROR_MAX,
 };
 
+#define ERR_STAT_GT_COR_VCTR_LEN (4)
+#define ERR_STAT_GT_FATAL_VCTR_LEN (8)
+
 struct err_msg_cntr_pair {
 	const char *errmsg;
 	const u32 cntr_indx;
-- 
2.25.1


^ permalink raw reply related	[flat|nested] 21+ messages in thread

* [Intel-xe] [PATCH v5 4/4] drm/xe: Process fatal hardware errors.
  2023-08-23  8:58 [Intel-xe] [PATCH v5 0/4] Supporting RAS on XE Himal Prasad Ghimiray
                   ` (2 preceding siblings ...)
  2023-08-23  8:58 ` [Intel-xe] [PATCH v5 3/4] drm/xe: Support GT hardware error reporting for PVC Himal Prasad Ghimiray
@ 2023-08-23  8:58 ` Himal Prasad Ghimiray
  2023-09-26  4:21   ` Aravind Iddamsetty
  2023-08-23  9:00 ` [Intel-xe] ✓ CI.Patch_applied: success for Supporting RAS on XE (rev4) Patchwork
                   ` (4 subsequent siblings)
  8 siblings, 1 reply; 21+ messages in thread
From: Himal Prasad Ghimiray @ 2023-08-23  8:58 UTC (permalink / raw)
  To: intel-xe; +Cc: Joonas Lahtinen, Rodrigo Vivi, Matt Roper

Fatal errors are reported as PCIe errors. When a PCIe error is asserted,
the OS will perform a device warm reset which causes the driver to reload.
The error registers are sticky and the values are maintained through a
warm reset. We read these registers during the boot flow of the driver and
increment the respective error counters.

Bspec: 53076

Cc: Rodrigo Vivi <rodrigo.vivi@intel.com>
Cc: Aravind Iddamsetty <aravind.iddamsetty@intel.com>
Cc: Matthew Brost <matthew.brost@intel.com>
Cc: Matt Roper <matthew.d.roper@intel.com>
Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
Signed-off-by: Himal Prasad Ghimiray <himal.prasad.ghimiray@intel.com>
---
 drivers/gpu/drm/xe/regs/xe_regs.h |  3 +++
 drivers/gpu/drm/xe/xe_hw_error.c  | 37 ++++++++++++++++++++++++++++++-
 drivers/gpu/drm/xe/xe_hw_error.h  |  3 ++-
 drivers/gpu/drm/xe/xe_irq.c       |  2 +-
 4 files changed, 42 insertions(+), 3 deletions(-)

diff --git a/drivers/gpu/drm/xe/regs/xe_regs.h b/drivers/gpu/drm/xe/regs/xe_regs.h
index e223975a5acf..b8f2b1762d3f 100644
--- a/drivers/gpu/drm/xe/regs/xe_regs.h
+++ b/drivers/gpu/drm/xe/regs/xe_regs.h
@@ -90,5 +90,8 @@
 #define   GT_DW_IRQ(x)				REG_BIT(x)
 #define   XE_ERROR_IRQ(x)			REG_BIT(26 + (x))
 
+#define DEV_PCIEERR_STATUS			XE_REG(0x100180)
+#define   DEV_PCIEERR_IS_FATAL(x)		REG_BIT(x * 4 + 2)
+
 #define PVC_RP_STATE_CAP			XE_REG(0x281014)
 #endif
diff --git a/drivers/gpu/drm/xe/xe_hw_error.c b/drivers/gpu/drm/xe/xe_hw_error.c
index deb020a509d2..9595e3369656 100644
--- a/drivers/gpu/drm/xe/xe_hw_error.c
+++ b/drivers/gpu/drm/xe/xe_hw_error.c
@@ -183,7 +183,7 @@ static const struct err_msg_cntr_pair err_stat_gt_correctable_vectr_reg[] = {
 	[2 ... 3]         = {"L3BANK",		XE_GT_HW_ERR_L3BANK_CORR},
 };
 
-void xe_assign_hw_err_regs(struct xe_device *xe)
+static void xe_assign_hw_err_regs(struct xe_device *xe)
 {
 	const struct err_msg_cntr_pair **dev_err_stat = xe->hw_err_regs.dev_err_stat;
 	const struct err_msg_cntr_pair **err_stat_gt = xe->hw_err_regs.err_stat_gt;
@@ -417,3 +417,38 @@ xe_hw_error_irq_handler(struct xe_tile *tile, const u32 master_ctl)
 			xe_hw_error_source_handler(tile, hw_err);
 	}
 }
+
+/**
+ * process_hw_errors - checks for the occurrence of HW errors
+ *
+ * This checks for the HW Errors including FATAL errors that might
+ * have occurred in the previous boot of the driver which will
+ * initiate PCIe FLR reset of the device and cause the
+ * driver to reload.
+ */
+void xe_process_hw_errors(struct xe_device *xe)
+{
+	struct xe_tile *root_tile = xe_device_get_root_tile(xe);
+	struct xe_gt *root_mmio = root_tile->primary_gt;
+
+	u32 dev_pcieerr_status, master_ctl;
+	struct xe_tile *tile;
+	int i;
+
+	xe_assign_hw_err_regs(xe);
+
+	dev_pcieerr_status = xe_mmio_read32(root_mmio, DEV_PCIEERR_STATUS);
+
+	for_each_tile(tile, xe, i) {
+		struct xe_gt *mmio = tile->primary_gt;
+
+		if (dev_pcieerr_status & DEV_PCIEERR_IS_FATAL(i))
+			xe_hw_error_source_handler(tile, HARDWARE_ERROR_FATAL);
+
+		master_ctl = xe_mmio_read32(mmio, GFX_MSTR_IRQ);
+		xe_hw_error_irq_handler(tile, master_ctl);
+		xe_mmio_write32(mmio, GFX_MSTR_IRQ, master_ctl);
+	}
+	if (dev_pcieerr_status)
+		xe_mmio_write32(root_mmio, DEV_PCIEERR_STATUS, dev_pcieerr_status);
+}
diff --git a/drivers/gpu/drm/xe/xe_hw_error.h b/drivers/gpu/drm/xe/xe_hw_error.h
index 3fcbbcc338fe..2812407dd4bf 100644
--- a/drivers/gpu/drm/xe/xe_hw_error.h
+++ b/drivers/gpu/drm/xe/xe_hw_error.h
@@ -104,5 +104,6 @@ struct xe_device;
 struct xe_tile;
 
 void xe_hw_error_irq_handler(struct xe_tile *tile, const u32 master_ctl);
-void xe_assign_hw_err_regs(struct xe_device *xe);
+void xe_process_hw_errors(struct xe_device *xe);
+
 #endif
diff --git a/drivers/gpu/drm/xe/xe_irq.c b/drivers/gpu/drm/xe/xe_irq.c
index 48b933234342..be152ebd6ce9 100644
--- a/drivers/gpu/drm/xe/xe_irq.c
+++ b/drivers/gpu/drm/xe/xe_irq.c
@@ -573,7 +573,7 @@ int xe_irq_install(struct xe_device *xe)
 		return -EINVAL;
 	}
 
-	xe_assign_hw_err_regs(xe);
+	xe_process_hw_errors(xe);
 
 	xe->irq.enabled = true;
 
-- 
2.25.1


^ permalink raw reply related	[flat|nested] 21+ messages in thread

* [Intel-xe] ✓ CI.Patch_applied: success for Supporting RAS on XE (rev4)
  2023-08-23  8:58 [Intel-xe] [PATCH v5 0/4] Supporting RAS on XE Himal Prasad Ghimiray
                   ` (3 preceding siblings ...)
  2023-08-23  8:58 ` [Intel-xe] [PATCH v5 4/4] drm/xe: Process fatal hardware errors Himal Prasad Ghimiray
@ 2023-08-23  9:00 ` Patchwork
  2023-08-23  9:00 ` [Intel-xe] ✗ CI.checkpatch: warning " Patchwork
                   ` (3 subsequent siblings)
  8 siblings, 0 replies; 21+ messages in thread
From: Patchwork @ 2023-08-23  9:00 UTC (permalink / raw)
  To: Himal Prasad Ghimiray; +Cc: intel-xe

== Series Details ==

Series: Supporting RAS on XE (rev4)
URL   : https://patchwork.freedesktop.org/series/122257/
State : success

== Summary ==

=== Applying kernel patches on branch 'drm-xe-next' with base: ===
Base commit: 3a964d065 drm/xe/lnl: Hook up MOCS table
=== git am output follows ===
Applying: drm/xe: Handle errors from various components.
Applying: drm/xe: Log and count the GT hardware errors.
Applying: drm/xe: Support GT hardware error reporting for PVC.
Applying: drm/xe: Process fatal hardware errors.



^ permalink raw reply	[flat|nested] 21+ messages in thread

* [Intel-xe] ✗ CI.checkpatch: warning for Supporting RAS on XE (rev4)
  2023-08-23  8:58 [Intel-xe] [PATCH v5 0/4] Supporting RAS on XE Himal Prasad Ghimiray
                   ` (4 preceding siblings ...)
  2023-08-23  9:00 ` [Intel-xe] ✓ CI.Patch_applied: success for Supporting RAS on XE (rev4) Patchwork
@ 2023-08-23  9:00 ` Patchwork
  2023-08-23  9:01 ` [Intel-xe] ✓ CI.KUnit: success " Patchwork
                   ` (2 subsequent siblings)
  8 siblings, 0 replies; 21+ messages in thread
From: Patchwork @ 2023-08-23  9:00 UTC (permalink / raw)
  To: Himal Prasad Ghimiray; +Cc: intel-xe

== Series Details ==

Series: Supporting RAS on XE (rev4)
URL   : https://patchwork.freedesktop.org/series/122257/
State : warning

== Summary ==

+ KERNEL=/kernel
+ git clone https://gitlab.freedesktop.org/drm/maintainer-tools mt
Cloning into 'mt'...
warning: redirecting to https://gitlab.freedesktop.org/drm/maintainer-tools.git/
+ git -C mt rev-list -n1 origin/master
e700ea2f248a75138759bcb443affeef4a2d1991
+ cd /kernel
+ git config --global --add safe.directory /kernel
+ git log -n1
commit 40f6806a6984e456c897c738a230bb9a1559bf1b
Author: Himal Prasad Ghimiray <himal.prasad.ghimiray@intel.com>
Date:   Wed Aug 23 14:28:42 2023 +0530

    drm/xe: Process fatal hardware errors.
    
    Fatal errors are reported as PCIe errors. When a PCIe error is asserted,
    the OS will perform a device warm reset which causes the driver to reload.
    The error registers are sticky and the values are maintained through a
    warm reset. We read these registers during the boot flow of the driver and
    increment the respective error counters.
    
    Bspec: 53076
    
    Cc: Rodrigo Vivi <rodrigo.vivi@intel.com>
    Cc: Aravind Iddamsetty <aravind.iddamsetty@intel.com>
    Cc: Matthew Brost <matthew.brost@intel.com>
    Cc: Matt Roper <matthew.d.roper@intel.com>
    Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
    Signed-off-by: Himal Prasad Ghimiray <himal.prasad.ghimiray@intel.com>
+ /mt/dim checkpatch 3a964d06598874329aab6f8db7fd52840135d568 drm-intel
/mt/dim: line 50: /root/.dimrc: No such file or directory



^ permalink raw reply	[flat|nested] 21+ messages in thread

* [Intel-xe] ✓ CI.KUnit: success for Supporting RAS on XE (rev4)
  2023-08-23  8:58 [Intel-xe] [PATCH v5 0/4] Supporting RAS on XE Himal Prasad Ghimiray
                   ` (5 preceding siblings ...)
  2023-08-23  9:00 ` [Intel-xe] ✗ CI.checkpatch: warning " Patchwork
@ 2023-08-23  9:01 ` Patchwork
  2023-08-23  9:05 ` [Intel-xe] ✓ CI.Build: " Patchwork
  2023-08-23  9:05 ` [Intel-xe] ✗ CI.Hooks: failure " Patchwork
  8 siblings, 0 replies; 21+ messages in thread
From: Patchwork @ 2023-08-23  9:01 UTC (permalink / raw)
  To: Himal Prasad Ghimiray; +Cc: intel-xe

== Series Details ==

Series: Supporting RAS on XE (rev4)
URL   : https://patchwork.freedesktop.org/series/122257/
State : success

== Summary ==

+ trap cleanup EXIT
+ /kernel/tools/testing/kunit/kunit.py run --kunitconfig /kernel/drivers/gpu/drm/xe/.kunitconfig
stty: 'standard input': Inappropriate ioctl for device
[09:00:15] Configuring KUnit Kernel ...
Generating .config ...
Populating config with:
$ make ARCH=um O=.kunit olddefconfig
[09:00:19] Building KUnit Kernel ...
Populating config with:
$ make ARCH=um O=.kunit olddefconfig
Building with:
$ make ARCH=um O=.kunit --jobs=48
[09:00:38] Starting KUnit Kernel (1/1)...
[09:00:38] ============================================================
[09:00:38] ==================== xe_bo (2 subtests) ====================
[09:00:38] [SKIPPED] xe_ccs_migrate_kunit
[09:00:38] [SKIPPED] xe_bo_evict_kunit
[09:00:38] ===================== [SKIPPED] xe_bo ======================
[09:00:38] ================== xe_dma_buf (1 subtest) ==================
[09:00:38] [SKIPPED] xe_dma_buf_kunit
[09:00:38] =================== [SKIPPED] xe_dma_buf ===================
[09:00:38] ================== xe_migrate (1 subtest) ==================
[09:00:38] [SKIPPED] xe_migrate_sanity_kunit
[09:00:38] =================== [SKIPPED] xe_migrate ===================
[09:00:38] =================== xe_pci (2 subtests) ====================
[09:00:38] [PASSED] xe_gmdid_graphics_ip
[09:00:38] [PASSED] xe_gmdid_media_ip
[09:00:38] ===================== [PASSED] xe_pci ======================
[09:00:38] ==================== xe_rtp (1 subtest) ====================
[09:00:38] ================== xe_rtp_process_tests  ===================
[09:00:38] [PASSED] coalesce-same-reg
[09:00:38] [PASSED] no-match-no-add
[09:00:38] [PASSED] no-match-no-add-multiple-rules
[09:00:38] [PASSED] two-regs-two-entries
[09:00:38] [PASSED] clr-one-set-other
[09:00:38] [PASSED] set-field
[09:00:38] [PASSED] conflict-duplicate
[09:00:38] [PASSED] conflict-not-disjoint
[09:00:38] [PASSED] conflict-reg-type
[09:00:38] ============== [PASSED] xe_rtp_process_tests ===============
[09:00:38] ===================== [PASSED] xe_rtp ======================
[09:00:38] ==================== xe_wa (1 subtest) =====================
[09:00:38] ======================== xe_wa_gt  =========================
[09:00:38] [PASSED] TIGERLAKE (B0)
[09:00:38] [PASSED] DG1 (A0)
[09:00:38] [PASSED] DG1 (B0)
[09:00:38] [PASSED] ALDERLAKE_S (A0)
[09:00:38] [PASSED] ALDERLAKE_S (B0)
[09:00:38] [PASSED] ALDERLAKE_S (C0)
[09:00:38] [PASSED] ALDERLAKE_S (D0)
[09:00:38] [PASSED] ALDERLAKE_P (A0)
[09:00:38] [PASSED] ALDERLAKE_P (B0)
[09:00:38] [PASSED] ALDERLAKE_P (C0)
[09:00:38] [PASSED] DG2_G10 (A0)
[09:00:38] [PASSED] DG2_G10 (A1)
[09:00:38] [PASSED] DG2_G10 (B0)
[09:00:38] [PASSED] DG2_G10 (C0)
[09:00:38] [PASSED] DG2_G11 (A0)
[09:00:38] [PASSED] DG2_G11 (B0)
[09:00:38] [PASSED] DG2_G11 (B1)
[09:00:38] [PASSED] DG2_G12 (A0)
[09:00:38] [PASSED] DG2_G12 (A1)
[09:00:38] [PASSED] PVC (B0)
[09:00:38] [PASSED] PVC (B1)
[09:00:38] [PASSED] PVC (C0)
[09:00:38] ==================== [PASSED] xe_wa_gt =====================
[09:00:38] ====================== [PASSED] xe_wa ======================
[09:00:38] ============================================================
[09:00:38] Testing complete. Ran 37 tests: passed: 33, skipped: 4
[09:00:38] Elapsed time: 23.636s total, 4.293s configuring, 19.225s building, 0.094s running

+ /kernel/tools/testing/kunit/kunit.py run --kunitconfig /kernel/drivers/gpu/drm/tests/.kunitconfig
[09:00:39] Configuring KUnit Kernel ...
Regenerating .config ...
Populating config with:
$ make ARCH=um O=.kunit olddefconfig
[09:00:40] Building KUnit Kernel ...
Populating config with:
$ make ARCH=um O=.kunit olddefconfig
Building with:
$ make ARCH=um O=.kunit --jobs=48
[09:00:59] Starting KUnit Kernel (1/1)...
[09:00:59] ============================================================
[09:00:59] ============ drm_test_pick_cmdline (2 subtests) ============
[09:00:59] [PASSED] drm_test_pick_cmdline_res_1920_1080_60
[09:00:59] =============== drm_test_pick_cmdline_named  ===============
[09:00:59] [PASSED] NTSC
[09:00:59] [PASSED] NTSC-J
[09:00:59] [PASSED] PAL
[09:00:59] [PASSED] PAL-M
[09:00:59] =========== [PASSED] drm_test_pick_cmdline_named ===========
[09:00:59] ============== [PASSED] drm_test_pick_cmdline ==============
[09:00:59] ================== drm_buddy (6 subtests) ==================
[09:00:59] [PASSED] drm_test_buddy_alloc_limit
[09:00:59] [PASSED] drm_test_buddy_alloc_range
[09:00:59] [PASSED] drm_test_buddy_alloc_optimistic
[09:00:59] [PASSED] drm_test_buddy_alloc_pessimistic
[09:00:59] [PASSED] drm_test_buddy_alloc_smoke
[09:00:59] [PASSED] drm_test_buddy_alloc_pathological
[09:00:59] ==================== [PASSED] drm_buddy ====================
[09:00:59] ============= drm_cmdline_parser (40 subtests) =============
[09:00:59] [PASSED] drm_test_cmdline_force_d_only
[09:00:59] [PASSED] drm_test_cmdline_force_D_only_dvi
[09:00:59] [PASSED] drm_test_cmdline_force_D_only_hdmi
[09:00:59] [PASSED] drm_test_cmdline_force_D_only_not_digital
[09:00:59] [PASSED] drm_test_cmdline_force_e_only
[09:00:59] [PASSED] drm_test_cmdline_res
[09:00:59] [PASSED] drm_test_cmdline_res_vesa
[09:00:59] [PASSED] drm_test_cmdline_res_vesa_rblank
[09:00:59] [PASSED] drm_test_cmdline_res_rblank
[09:00:59] [PASSED] drm_test_cmdline_res_bpp
[09:00:59] [PASSED] drm_test_cmdline_res_refresh
[09:00:59] [PASSED] drm_test_cmdline_res_bpp_refresh
[09:00:59] [PASSED] drm_test_cmdline_res_bpp_refresh_interlaced
[09:00:59] [PASSED] drm_test_cmdline_res_bpp_refresh_margins
[09:00:59] [PASSED] drm_test_cmdline_res_bpp_refresh_force_off
[09:00:59] [PASSED] drm_test_cmdline_res_bpp_refresh_force_on
[09:00:59] [PASSED] drm_test_cmdline_res_bpp_refresh_force_on_analog
[09:00:59] [PASSED] drm_test_cmdline_res_bpp_refresh_force_on_digital
[09:00:59] [PASSED] drm_test_cmdline_res_bpp_refresh_interlaced_margins_force_on
[09:00:59] [PASSED] drm_test_cmdline_res_margins_force_on
[09:00:59] [PASSED] drm_test_cmdline_res_vesa_margins
[09:00:59] [PASSED] drm_test_cmdline_name
[09:00:59] [PASSED] drm_test_cmdline_name_bpp
[09:00:59] [PASSED] drm_test_cmdline_name_option
[09:00:59] [PASSED] drm_test_cmdline_name_bpp_option
[09:00:59] [PASSED] drm_test_cmdline_rotate_0
[09:00:59] [PASSED] drm_test_cmdline_rotate_90
[09:00:59] [PASSED] drm_test_cmdline_rotate_180
[09:00:59] [PASSED] drm_test_cmdline_rotate_270
[09:00:59] [PASSED] drm_test_cmdline_hmirror
[09:00:59] [PASSED] drm_test_cmdline_vmirror
[09:00:59] [PASSED] drm_test_cmdline_margin_options
[09:00:59] [PASSED] drm_test_cmdline_multiple_options
[09:00:59] [PASSED] drm_test_cmdline_bpp_extra_and_option
[09:00:59] [PASSED] drm_test_cmdline_extra_and_option
[09:00:59] [PASSED] drm_test_cmdline_freestanding_options
[09:00:59] [PASSED] drm_test_cmdline_freestanding_force_e_and_options
[09:00:59] [PASSED] drm_test_cmdline_panel_orientation
[09:00:59] ================ drm_test_cmdline_invalid  =================
[09:00:59] [PASSED] margin_only
[09:00:59] [PASSED] interlace_only
[09:00:59] [PASSED] res_missing_x
[09:00:59] [PASSED] res_missing_y
[09:00:59] [PASSED] res_bad_y
[09:00:59] [PASSED] res_missing_y_bpp
[09:00:59] [PASSED] res_bad_bpp
[09:00:59] [PASSED] res_bad_refresh
[09:00:59] [PASSED] res_bpp_refresh_force_on_off
[09:00:59] [PASSED] res_invalid_mode
[09:00:59] [PASSED] res_bpp_wrong_place_mode
[09:00:59] [PASSED] name_bpp_refresh
[09:00:59] [PASSED] name_refresh
[09:00:59] [PASSED] name_refresh_wrong_mode
[09:00:59] [PASSED] name_refresh_invalid_mode
[09:00:59] [PASSED] rotate_multiple
[09:00:59] [PASSED] rotate_invalid_val
[09:00:59] [PASSED] rotate_truncated
[09:00:59] [PASSED] invalid_option
[09:00:59] [PASSED] invalid_tv_option
[09:00:59] [PASSED] truncated_tv_option
[09:00:59] ============ [PASSED] drm_test_cmdline_invalid =============
[09:00:59] =============== drm_test_cmdline_tv_options  ===============
[09:00:59] [PASSED] NTSC
[09:00:59] [PASSED] NTSC_443
[09:00:59] [PASSED] NTSC_J
[09:00:59] [PASSED] PAL
[09:00:59] [PASSED] PAL_M
[09:00:59] [PASSED] PAL_N
[09:00:59] [PASSED] SECAM
[09:00:59] =========== [PASSED] drm_test_cmdline_tv_options ===========
[09:00:59] =============== [PASSED] drm_cmdline_parser ================
[09:00:59] ========== drm_get_tv_mode_from_name (2 subtests) ==========
[09:00:59] ========== drm_test_get_tv_mode_from_name_valid  ===========
[09:00:59] [PASSED] NTSC
[09:00:59] [PASSED] NTSC-443
[09:00:59] [PASSED] NTSC-J
[09:00:59] [PASSED] PAL
[09:00:59] [PASSED] PAL-M
[09:00:59] [PASSED] PAL-N
[09:00:59] [PASSED] SECAM
[09:00:59] ====== [PASSED] drm_test_get_tv_mode_from_name_valid =======
[09:00:59] [PASSED] drm_test_get_tv_mode_from_name_truncated
[09:00:59] ============ [PASSED] drm_get_tv_mode_from_name ============
[09:00:59] ============= drm_damage_helper (21 subtests) ==============
[09:00:59] [PASSED] drm_test_damage_iter_no_damage
[09:00:59] [PASSED] drm_test_damage_iter_no_damage_fractional_src
[09:00:59] [PASSED] drm_test_damage_iter_no_damage_src_moved
[09:00:59] [PASSED] drm_test_damage_iter_no_damage_fractional_src_moved
[09:00:59] [PASSED] drm_test_damage_iter_no_damage_not_visible
[09:00:59] [PASSED] drm_test_damage_iter_no_damage_no_crtc
[09:00:59] [PASSED] drm_test_damage_iter_no_damage_no_fb
[09:00:59] [PASSED] drm_test_damage_iter_simple_damage
[09:00:59] [PASSED] drm_test_damage_iter_single_damage
[09:00:59] [PASSED] drm_test_damage_iter_single_damage_intersect_src
[09:00:59] [PASSED] drm_test_damage_iter_single_damage_outside_src
[09:00:59] [PASSED] drm_test_damage_iter_single_damage_fractional_src
[09:00:59] [PASSED] drm_test_damage_iter_single_damage_intersect_fractional_src
[09:00:59] [PASSED] drm_test_damage_iter_single_damage_outside_fractional_src
[09:00:59] [PASSED] drm_test_damage_iter_single_damage_src_moved
[09:00:59] [PASSED] drm_test_damage_iter_single_damage_fractional_src_moved
[09:00:59] [PASSED] drm_test_damage_iter_damage
[09:00:59] [PASSED] drm_test_damage_iter_damage_one_intersect
[09:00:59] [PASSED] drm_test_damage_iter_damage_one_outside
[09:00:59] [PASSED] drm_test_damage_iter_damage_src_moved
[09:00:59] [PASSED] drm_test_damage_iter_damage_not_visible
[09:00:59] ================ [PASSED] drm_damage_helper ================
[09:00:59] ============== drm_dp_mst_helper (2 subtests) ==============
[09:00:59] ============== drm_test_dp_mst_calc_pbn_mode  ==============
[09:00:59] [PASSED] Clock 154000 BPP 30 DSC disabled
[09:00:59] [PASSED] Clock 234000 BPP 30 DSC disabled
[09:00:59] [PASSED] Clock 297000 BPP 24 DSC disabled
[09:00:59] [PASSED] Clock 332880 BPP 24 DSC enabled
[09:00:59] [PASSED] Clock 324540 BPP 24 DSC enabled
[09:00:59] ========== [PASSED] drm_test_dp_mst_calc_pbn_mode ==========
[09:00:59] ========= drm_test_dp_mst_sideband_msg_req_decode  =========
[09:00:59] [PASSED] DP_ENUM_PATH_RESOURCES with port number
[09:00:59] [PASSED] DP_POWER_UP_PHY with port number
[09:00:59] [PASSED] DP_POWER_DOWN_PHY with port number
[09:00:59] [PASSED] DP_ALLOCATE_PAYLOAD with SDP stream sinks
[09:00:59] [PASSED] DP_ALLOCATE_PAYLOAD with port number
[09:00:59] [PASSED] DP_ALLOCATE_PAYLOAD with VCPI
[09:00:59] [PASSED] DP_ALLOCATE_PAYLOAD with PBN
[09:00:59] [PASSED] DP_QUERY_PAYLOAD with port number
[09:00:59] [PASSED] DP_QUERY_PAYLOAD with VCPI
[09:00:59] [PASSED] DP_REMOTE_DPCD_READ with port number
[09:00:59] [PASSED] DP_REMOTE_DPCD_READ with DPCD address
[09:00:59] [PASSED] DP_REMOTE_DPCD_READ with max number of bytes
[09:00:59] [PASSED] DP_REMOTE_DPCD_WRITE with port number
[09:00:59] [PASSED] DP_REMOTE_DPCD_WRITE with DPCD address
[09:00:59] [PASSED] DP_REMOTE_DPCD_WRITE with data array
[09:00:59] [PASSED] DP_REMOTE_I2C_READ with port number
[09:00:59] [PASSED] DP_REMOTE_I2C_READ with I2C device ID
[09:00:59] [PASSED] DP_REMOTE_I2C_READ with transactions array
[09:00:59] [PASSED] DP_REMOTE_I2C_WRITE with port number
[09:00:59] [PASSED] DP_REMOTE_I2C_WRITE with I2C device ID
[09:00:59] [PASSED] DP_REMOTE_I2C_WRITE with data array
[09:00:59] [PASSED] DP_QUERY_STREAM_ENC_STATUS with stream ID
[09:00:59] [PASSED] DP_QUERY_STREAM_ENC_STATUS with client ID
[09:00:59] [PASSED] DP_QUERY_STREAM_ENC_STATUS with stream event
[09:00:59] [PASSED] DP_QUERY_STREAM_ENC_STATUS with valid stream event
[09:00:59] [PASSED] DP_QUERY_STREAM_ENC_STATUS with stream behavior
[09:00:59] [PASSED] DP_QUERY_STREAM_ENC_STATUS with a valid stream behavior
[09:00:59] ===== [PASSED] drm_test_dp_mst_sideband_msg_req_decode =====
[09:00:59] ================ [PASSED] drm_dp_mst_helper ================
[09:00:59] =========== drm_format_helper_test (11 subtests) ===========
[09:00:59] ============== drm_test_fb_xrgb8888_to_gray8  ==============
[09:00:59] [PASSED] single_pixel_source_buffer
[09:00:59] [PASSED] single_pixel_clip_rectangle
[09:00:59] [PASSED] well_known_colors
[09:00:59] [PASSED] destination_pitch
[09:00:59] ========== [PASSED] drm_test_fb_xrgb8888_to_gray8 ==========
[09:00:59] ============= drm_test_fb_xrgb8888_to_rgb332  ==============
[09:00:59] [PASSED] single_pixel_source_buffer
[09:00:59] [PASSED] single_pixel_clip_rectangle
[09:00:59] [PASSED] well_known_colors
[09:00:59] [PASSED] destination_pitch
[09:00:59] ========= [PASSED] drm_test_fb_xrgb8888_to_rgb332 ==========
[09:00:59] ============= drm_test_fb_xrgb8888_to_rgb565  ==============
[09:00:59] [PASSED] single_pixel_source_buffer
[09:00:59] [PASSED] single_pixel_clip_rectangle
[09:00:59] [PASSED] well_known_colors
[09:00:59] [PASSED] destination_pitch
[09:00:59] ========= [PASSED] drm_test_fb_xrgb8888_to_rgb565 ==========
[09:00:59] ============ drm_test_fb_xrgb8888_to_xrgb1555  =============
[09:00:59] [PASSED] single_pixel_source_buffer
[09:00:59] [PASSED] single_pixel_clip_rectangle
[09:00:59] [PASSED] well_known_colors
[09:00:59] [PASSED] destination_pitch
[09:00:59] ======== [PASSED] drm_test_fb_xrgb8888_to_xrgb1555 =========
[09:00:59] ============ drm_test_fb_xrgb8888_to_argb1555  =============
[09:00:59] [PASSED] single_pixel_source_buffer
[09:00:59] [PASSED] single_pixel_clip_rectangle
[09:00:59] [PASSED] well_known_colors
[09:00:59] [PASSED] destination_pitch
[09:00:59] ======== [PASSED] drm_test_fb_xrgb8888_to_argb1555 =========
[09:00:59] ============ drm_test_fb_xrgb8888_to_rgba5551  =============
[09:00:59] [PASSED] single_pixel_source_buffer
[09:00:59] [PASSED] single_pixel_clip_rectangle
[09:00:59] [PASSED] well_known_colors
[09:00:59] [PASSED] destination_pitch
[09:00:59] ======== [PASSED] drm_test_fb_xrgb8888_to_rgba5551 =========
[09:00:59] ============= drm_test_fb_xrgb8888_to_rgb888  ==============
[09:00:59] [PASSED] single_pixel_source_buffer
[09:00:59] [PASSED] single_pixel_clip_rectangle
[09:00:59] [PASSED] well_known_colors
[09:00:59] [PASSED] destination_pitch
[09:00:59] ========= [PASSED] drm_test_fb_xrgb8888_to_rgb888 ==========
[09:00:59] ============ drm_test_fb_xrgb8888_to_argb8888  =============
[09:00:59] [PASSED] single_pixel_source_buffer
[09:00:59] [PASSED] single_pixel_clip_rectangle
[09:00:59] [PASSED] well_known_colors
[09:00:59] [PASSED] destination_pitch
[09:00:59] ======== [PASSED] drm_test_fb_xrgb8888_to_argb8888 =========
[09:00:59] =========== drm_test_fb_xrgb8888_to_xrgb2101010  ===========
[09:00:59] [PASSED] single_pixel_source_buffer
[09:00:59] [PASSED] single_pixel_clip_rectangle
[09:00:59] [PASSED] well_known_colors
[09:00:59] [PASSED] destination_pitch
[09:00:59] ======= [PASSED] drm_test_fb_xrgb8888_to_xrgb2101010 =======
[09:00:59] =========== drm_test_fb_xrgb8888_to_argb2101010  ===========
[09:00:59] [PASSED] single_pixel_source_buffer
[09:00:59] [PASSED] single_pixel_clip_rectangle
[09:00:59] [PASSED] well_known_colors
[09:00:59] [PASSED] destination_pitch
[09:00:59] ======= [PASSED] drm_test_fb_xrgb8888_to_argb2101010 =======
[09:00:59] ============== drm_test_fb_xrgb8888_to_mono  ===============
[09:00:59] [PASSED] single_pixel_source_buffer
[09:00:59] [PASSED] single_pixel_clip_rectangle
[09:00:59] [PASSED] well_known_colors
[09:00:59] [PASSED] destination_pitch
[09:00:59] ========== [PASSED] drm_test_fb_xrgb8888_to_mono ===========
[09:00:59] ============= [PASSED] drm_format_helper_test ==============
[09:00:59] ================= drm_format (18 subtests) =================
[09:00:59] [PASSED] drm_test_format_block_width_invalid
[09:00:59] [PASSED] drm_test_format_block_width_one_plane
[09:00:59] [PASSED] drm_test_format_block_width_two_plane
[09:00:59] [PASSED] drm_test_format_block_width_three_plane
[09:00:59] [PASSED] drm_test_format_block_width_tiled
[09:00:59] [PASSED] drm_test_format_block_height_invalid
[09:00:59] [PASSED] drm_test_format_block_height_one_plane
[09:00:59] [PASSED] drm_test_format_block_height_two_plane
[09:00:59] [PASSED] drm_test_format_block_height_three_plane
[09:00:59] [PASSED] drm_test_format_block_height_tiled
[09:00:59] [PASSED] drm_test_format_min_pitch_invalid
[09:00:59] [PASSED] drm_test_format_min_pitch_one_plane_8bpp
[09:00:59] [PASSED] drm_test_format_min_pitch_one_plane_16bpp
[09:00:59] [PASSED] drm_test_format_min_pitch_one_plane_24bpp
[09:00:59] [PASSED] drm_test_format_min_pitch_one_plane_32bpp
[09:00:59] [PASSED] drm_test_format_min_pitch_two_plane
[09:00:59] [PASSED] drm_test_format_min_pitch_three_plane_8bpp
[09:00:59] [PASSED] drm_test_format_min_pitch_tiled
[09:00:59] =================== [PASSED] drm_format ====================
[09:00:59] =============== drm_framebuffer (1 subtest) ================
[09:00:59] =============== drm_test_framebuffer_create  ===============
[09:00:59] [PASSED] ABGR8888 normal sizes
[09:00:59] [PASSED] ABGR8888 max sizes
[09:00:59] [PASSED] ABGR8888 pitch greater than min required
[09:00:59] [PASSED] ABGR8888 pitch less than min required
[09:00:59] [PASSED] ABGR8888 Invalid width
[09:00:59] [PASSED] ABGR8888 Invalid buffer handle
[09:00:59] [PASSED] No pixel format
[09:00:59] [PASSED] ABGR8888 Width 0
[09:00:59] [PASSED] ABGR8888 Height 0
[09:00:59] [PASSED] ABGR8888 Out of bound height * pitch combination
[09:00:59] [PASSED] ABGR8888 Large buffer offset
[09:00:59] [PASSED] ABGR8888 Set DRM_MODE_FB_MODIFIERS without modifiers
[09:00:59] [PASSED] ABGR8888 Valid buffer modifier
[09:00:59] [PASSED] ABGR8888 Invalid buffer modifier(DRM_FORMAT_MOD_SAMSUNG_64_32_TILE)
[09:00:59] [PASSED] ABGR8888 Extra pitches without DRM_MODE_FB_MODIFIERS
[09:00:59] [PASSED] ABGR8888 Extra pitches with DRM_MODE_FB_MODIFIERS
[09:00:59] [PASSED] NV12 Normal sizes
[09:00:59] [PASSED] NV12 Max sizes
[09:00:59] [PASSED] NV12 Invalid pitch
[09:00:59] [PASSED] NV12 Invalid modifier/missing DRM_MODE_FB_MODIFIERS flag
[09:00:59] [PASSED] NV12 different  modifier per-plane
[09:00:59] [PASSED] NV12 with DRM_FORMAT_MOD_SAMSUNG_64_32_TILE
[09:00:59] [PASSED] NV12 Valid modifiers without DRM_MODE_FB_MODIFIERS
[09:00:59] [PASSED] NV12 Modifier for inexistent plane
[09:00:59] [PASSED] NV12 Handle for inexistent plane
[09:00:59] [PASSED] NV12 Handle for inexistent plane without DRM_MODE_FB_MODIFIERS
[09:00:59] [PASSED] YVU420 DRM_MODE_FB_MODIFIERS set without modifier
[09:00:59] [PASSED] YVU420 Normal sizes
[09:00:59] [PASSED] YVU420 Max sizes
[09:00:59] [PASSED] YVU420 Invalid pitch
[09:00:59] [PASSED] YVU420 Different pitches
[09:00:59] [PASSED] YVU420 Different buffer offsets/pitches
[09:00:59] [PASSED] YVU420 Modifier set just for plane 0, without DRM_MODE_FB_MODIFIERS
[09:00:59] [PASSED] YVU420 Modifier set just for planes 0, 1, without DRM_MODE_FB_MODIFIERS
[09:00:59] [PASSED] YVU420 Modifier set just for plane 0, 1, with DRM_MODE_FB_MODIFIERS
[09:00:59] [PASSED] YVU420 Valid modifier
[09:00:59] [PASSED] YVU420 Different modifiers per plane
[09:00:59] [PASSED] YVU420 Modifier for inexistent plane
[09:00:59] [PASSED] X0L2 Normal sizes
[09:00:59] [PASSED] X0L2 Max sizes
[09:00:59] [PASSED] X0L2 Invalid pitch
[09:00:59] [PASSED] X0L2 Pitch greater than minimum required
stty: 'standard input': Inappropriate ioctl for device
[09:00:59] [PASSED] X0L2 Handle for inexistent plane
[09:00:59] [PASSED] X0L2 Offset for inexistent plane, without DRM_MODE_FB_MODIFIERS set
[09:00:59] [PASSED] X0L2 Modifier without DRM_MODE_FB_MODIFIERS set
[09:00:59] [PASSED] X0L2 Valid modifier
[09:00:59] [PASSED] X0L2 Modifier for inexistent plane
[09:00:59] =========== [PASSED] drm_test_framebuffer_create ===========
[09:00:59] ================= [PASSED] drm_framebuffer =================
[09:00:59] =============== drm-test-managed (1 subtest) ===============
[09:00:59] [PASSED] drm_test_managed_run_action
[09:00:59] ================ [PASSED] drm-test-managed =================
[09:00:59] =================== drm_mm (19 subtests) ===================
[09:00:59] [PASSED] drm_test_mm_init
[09:00:59] [PASSED] drm_test_mm_debug
[09:01:09] [PASSED] drm_test_mm_reserve
[09:01:19] [PASSED] drm_test_mm_insert
[09:01:20] [PASSED] drm_test_mm_replace
[09:01:20] [PASSED] drm_test_mm_insert_range
[09:01:20] [PASSED] drm_test_mm_frag
[09:01:20] [PASSED] drm_test_mm_align
[09:01:20] [PASSED] drm_test_mm_align32
[09:01:20] [PASSED] drm_test_mm_align64
[09:01:21] [PASSED] drm_test_mm_evict
[09:01:21] [PASSED] drm_test_mm_evict_range
[09:01:21] [PASSED] drm_test_mm_topdown
[09:01:21] [PASSED] drm_test_mm_bottomup
[09:01:21] [PASSED] drm_test_mm_lowest
[09:01:21] [PASSED] drm_test_mm_highest
[09:01:21] [PASSED] drm_test_mm_color
[09:01:22] [PASSED] drm_test_mm_color_evict
[09:01:22] [PASSED] drm_test_mm_color_evict_range
[09:01:22] ===================== [PASSED] drm_mm ======================
[09:01:22] ============= drm_modes_analog_tv (4 subtests) =============
[09:01:22] [PASSED] drm_test_modes_analog_tv_ntsc_480i
[09:01:22] [PASSED] drm_test_modes_analog_tv_ntsc_480i_inlined
[09:01:22] [PASSED] drm_test_modes_analog_tv_pal_576i
[09:01:22] [PASSED] drm_test_modes_analog_tv_pal_576i_inlined
[09:01:22] =============== [PASSED] drm_modes_analog_tv ===============
[09:01:22] ============== drm_plane_helper (2 subtests) ===============
[09:01:22] =============== drm_test_check_plane_state  ================
[09:01:22] [PASSED] clipping_simple
[09:01:22] [PASSED] clipping_rotate_reflect
[09:01:22] [PASSED] positioning_simple
[09:01:22] [PASSED] upscaling
[09:01:22] [PASSED] downscaling
[09:01:22] [PASSED] rounding1
[09:01:22] [PASSED] rounding2
[09:01:22] [PASSED] rounding3
[09:01:22] [PASSED] rounding4
[09:01:22] =========== [PASSED] drm_test_check_plane_state ============
[09:01:22] =========== drm_test_check_invalid_plane_state  ============
[09:01:22] [PASSED] positioning_invalid
[09:01:22] [PASSED] upscaling_invalid
[09:01:22] [PASSED] downscaling_invalid
[09:01:22] ======= [PASSED] drm_test_check_invalid_plane_state ========
[09:01:22] ================ [PASSED] drm_plane_helper =================
[09:01:22] ====== drm_connector_helper_tv_get_modes (1 subtest) =======
[09:01:22] ====== drm_test_connector_helper_tv_get_modes_check  =======
[09:01:22] [PASSED] None
[09:01:22] [PASSED] PAL
[09:01:22] [PASSED] NTSC
[09:01:22] [PASSED] Both, NTSC Default
[09:01:22] [PASSED] Both, PAL Default
[09:01:22] [PASSED] Both, NTSC Default, with PAL on command-line
[09:01:22] [PASSED] Both, PAL Default, with NTSC on command-line
[09:01:22] == [PASSED] drm_test_connector_helper_tv_get_modes_check ===
[09:01:22] ======== [PASSED] drm_connector_helper_tv_get_modes ========
[09:01:22] ================== drm_rect (9 subtests) ===================
[09:01:22] [PASSED] drm_test_rect_clip_scaled_div_by_zero
[09:01:22] [PASSED] drm_test_rect_clip_scaled_not_clipped
[09:01:22] [PASSED] drm_test_rect_clip_scaled_clipped
[09:01:22] [PASSED] drm_test_rect_clip_scaled_signed_vs_unsigned
[09:01:22] ================= drm_test_rect_intersect  =================
[09:01:22] [PASSED] top-left x bottom-right: 2x2+1+1 x 2x2+0+0
[09:01:22] [PASSED] top-right x bottom-left: 2x2+0+0 x 2x2+1-1
[09:01:22] [PASSED] bottom-left x top-right: 2x2+1-1 x 2x2+0+0
[09:01:22] [PASSED] bottom-right x top-left: 2x2+0+0 x 2x2+1+1
[09:01:22] [PASSED] right x left: 2x1+0+0 x 3x1+1+0
[09:01:22] [PASSED] left x right: 3x1+1+0 x 2x1+0+0
[09:01:22] [PASSED] up x bottom: 1x2+0+0 x 1x3+0-1
[09:01:22] [PASSED] bottom x up: 1x3+0-1 x 1x2+0+0
[09:01:22] [PASSED] touching corner: 1x1+0+0 x 2x2+1+1
[09:01:22] [PASSED] touching side: 1x1+0+0 x 1x1+1+0
[09:01:22] [PASSED] equal rects: 2x2+0+0 x 2x2+0+0
[09:01:22] [PASSED] inside another: 2x2+0+0 x 1x1+1+1
[09:01:22] [PASSED] far away: 1x1+0+0 x 1x1+3+6
[09:01:22] [PASSED] points intersecting: 0x0+5+10 x 0x0+5+10
[09:01:22] [PASSED] points not intersecting: 0x0+0+0 x 0x0+5+10
[09:01:22] ============= [PASSED] drm_test_rect_intersect =============
[09:01:22] ================ drm_test_rect_calc_hscale  ================
[09:01:22] [PASSED] normal use
[09:01:22] [PASSED] out of max range
[09:01:22] [PASSED] out of min range
[09:01:22] [PASSED] zero dst
[09:01:22] [PASSED] negative src
[09:01:22] [PASSED] negative dst
[09:01:22] ============ [PASSED] drm_test_rect_calc_hscale ============
[09:01:22] ================ drm_test_rect_calc_vscale  ================
[09:01:22] [PASSED] normal use
[09:01:22] [PASSED] out of max range
[09:01:22] [PASSED] out of min range
[09:01:22] [PASSED] zero dst
[09:01:22] [PASSED] negative src
[09:01:22] [PASSED] negative dst
[09:01:22] ============ [PASSED] drm_test_rect_calc_vscale ============
[09:01:22] ================== drm_test_rect_rotate  ===================
[09:01:22] [PASSED] reflect-x
[09:01:22] [PASSED] reflect-y
[09:01:22] [PASSED] rotate-0
[09:01:22] [PASSED] rotate-90
[09:01:22] [PASSED] rotate-180
[09:01:22] [PASSED] rotate-270
[09:01:22] ============== [PASSED] drm_test_rect_rotate ===============
[09:01:22] ================ drm_test_rect_rotate_inv  =================
[09:01:22] [PASSED] reflect-x
[09:01:22] [PASSED] reflect-y
[09:01:22] [PASSED] rotate-0
[09:01:22] [PASSED] rotate-90
[09:01:22] [PASSED] rotate-180
[09:01:22] [PASSED] rotate-270
[09:01:22] ============ [PASSED] drm_test_rect_rotate_inv =============
[09:01:22] ==================== [PASSED] drm_rect =====================
[09:01:22] ============================================================
[09:01:22] Testing complete. Ran 333 tests: passed: 333
[09:01:22] Elapsed time: 43.489s total, 1.686s configuring, 18.724s building, 23.071s running

+ cleanup
++ stat -c %u:%g /kernel
+ chown -R 1003:1003 /kernel



^ permalink raw reply	[flat|nested] 21+ messages in thread

* [Intel-xe] ✓ CI.Build: success for Supporting RAS on XE (rev4)
  2023-08-23  8:58 [Intel-xe] [PATCH v5 0/4] Supporting RAS on XE Himal Prasad Ghimiray
                   ` (6 preceding siblings ...)
  2023-08-23  9:01 ` [Intel-xe] ✓ CI.KUnit: success " Patchwork
@ 2023-08-23  9:05 ` Patchwork
  2023-08-23  9:05 ` [Intel-xe] ✗ CI.Hooks: failure " Patchwork
  8 siblings, 0 replies; 21+ messages in thread
From: Patchwork @ 2023-08-23  9:05 UTC (permalink / raw)
  To: Himal Prasad Ghimiray; +Cc: intel-xe

== Series Details ==

Series: Supporting RAS on XE (rev4)
URL   : https://patchwork.freedesktop.org/series/122257/
State : success

== Summary ==

+ trap cleanup EXIT
+ cd /kernel
+ git clone https://gitlab.freedesktop.org/drm/xe/ci.git .ci
Cloning into '.ci'...
++ date +%s
+ echo -e '\e[0Ksection_start:1692781295:build_x86_64[collapsed=true]\r\e[0KBuild x86-64'
+ mkdir -p build64
^[[0Ksection_start:1692781295:build_x86_64[collapsed=true]
^[[0KBuild x86-64
+ cat .ci/kernel/kconfig
+ make O=build64 olddefconfig
make[1]: Entering directory '/kernel/build64'
  GEN     Makefile
  HOSTCC  scripts/basic/fixdep
  HOSTCC  scripts/kconfig/conf.o
  HOSTCC  scripts/kconfig/confdata.o
  HOSTCC  scripts/kconfig/expr.o
  LEX     scripts/kconfig/lexer.lex.c
  YACC    scripts/kconfig/parser.tab.[ch]
  HOSTCC  scripts/kconfig/lexer.lex.o
  HOSTCC  scripts/kconfig/menu.o
  HOSTCC  scripts/kconfig/parser.tab.o
  HOSTCC  scripts/kconfig/preprocess.o
  HOSTCC  scripts/kconfig/symbol.o
  HOSTCC  scripts/kconfig/util.o
  HOSTLD  scripts/kconfig/conf
#
# configuration written to .config
#
make[1]: Leaving directory '/kernel/build64'
++ nproc
+ make O=build64 -j48
make[1]: Entering directory '/kernel/build64'
  GEN     Makefile
  WRAP    arch/x86/include/generated/uapi/asm/bpf_perf_event.h
  WRAP    arch/x86/include/generated/uapi/asm/errno.h
  WRAP    arch/x86/include/generated/uapi/asm/fcntl.h
  WRAP    arch/x86/include/generated/uapi/asm/ioctl.h
  SYSHDR  arch/x86/include/generated/uapi/asm/unistd_32.h
  SYSHDR  arch/x86/include/generated/uapi/asm/unistd_64.h
  WRAP    arch/x86/include/generated/uapi/asm/ioctls.h
  GEN     arch/x86/include/generated/asm/orc_hash.h
  SYSHDR  arch/x86/include/generated/uapi/asm/unistd_x32.h
  SYSTBL  arch/x86/include/generated/asm/syscalls_32.h
  WRAP    arch/x86/include/generated/uapi/asm/ipcbuf.h
  SYSHDR  arch/x86/include/generated/asm/unistd_32_ia32.h
  WRAP    arch/x86/include/generated/uapi/asm/param.h
  SYSHDR  arch/x86/include/generated/asm/unistd_64_x32.h
  WRAP    arch/x86/include/generated/uapi/asm/poll.h
  SYSTBL  arch/x86/include/generated/asm/syscalls_64.h
  WRAP    arch/x86/include/generated/uapi/asm/resource.h
  WRAP    arch/x86/include/generated/uapi/asm/socket.h
  WRAP    arch/x86/include/generated/uapi/asm/sockios.h
  WRAP    arch/x86/include/generated/uapi/asm/termbits.h
  WRAP    arch/x86/include/generated/uapi/asm/termios.h
  WRAP    arch/x86/include/generated/uapi/asm/types.h
  HOSTCC  arch/x86/tools/relocs_32.o
  HOSTCC  arch/x86/tools/relocs_64.o
  WRAP    arch/x86/include/generated/asm/early_ioremap.h
  WRAP    arch/x86/include/generated/asm/export.h
  HOSTCC  arch/x86/tools/relocs_common.o
  WRAP    arch/x86/include/generated/asm/mcs_spinlock.h
  WRAP    arch/x86/include/generated/asm/irq_regs.h
  WRAP    arch/x86/include/generated/asm/kmap_size.h
  WRAP    arch/x86/include/generated/asm/local64.h
  WRAP    arch/x86/include/generated/asm/mmiowb.h
  WRAP    arch/x86/include/generated/asm/module.lds.h
  WRAP    arch/x86/include/generated/asm/unaligned.h
  WRAP    arch/x86/include/generated/asm/rwonce.h
  UPD     include/generated/uapi/linux/version.h
  UPD     include/config/kernel.release
  HOSTCC  scripts/kallsyms
  HOSTCC  scripts/sorttable
  UPD     include/generated/compile.h
  HOSTCC  scripts/asn1_compiler
  HOSTCC  scripts/unifdef
  UPD     include/generated/utsrelease.h
  DESCEND objtool
  HOSTCC  /kernel/build64/tools/objtool/fixdep.o
  HOSTLD  /kernel/build64/tools/objtool/fixdep-in.o
  LINK    /kernel/build64/tools/objtool/fixdep
  INSTALL /kernel/build64/tools/objtool/libsubcmd/include/subcmd/exec-cmd.h
  INSTALL /kernel/build64/tools/objtool/libsubcmd/include/subcmd/help.h
  INSTALL /kernel/build64/tools/objtool/libsubcmd/include/subcmd/pager.h
  INSTALL /kernel/build64/tools/objtool/libsubcmd/include/subcmd/parse-options.h
  INSTALL /kernel/build64/tools/objtool/libsubcmd/include/subcmd/run-command.h
  HOSTLD  arch/x86/tools/relocs
  CC      /kernel/build64/tools/objtool/libsubcmd/exec-cmd.o
  INSTALL libsubcmd_headers
  CC      /kernel/build64/tools/objtool/libsubcmd/help.o
  CC      /kernel/build64/tools/objtool/libsubcmd/pager.o
  CC      /kernel/build64/tools/objtool/libsubcmd/parse-options.o
  CC      /kernel/build64/tools/objtool/libsubcmd/run-command.o
  CC      /kernel/build64/tools/objtool/libsubcmd/sigchain.o
  CC      /kernel/build64/tools/objtool/libsubcmd/subcmd-config.o
  CC      scripts/mod/empty.o
  HOSTCC  scripts/mod/mk_elfconfig
  CC      scripts/mod/devicetable-offsets.s
  HDRINST usr/include/video/edid.h
  HDRINST usr/include/video/sisfb.h
  HDRINST usr/include/video/uvesafb.h
  HDRINST usr/include/drm/amdgpu_drm.h
  HDRINST usr/include/drm/qaic_accel.h
  HDRINST usr/include/drm/i915_drm.h
  HDRINST usr/include/drm/vgem_drm.h
  HDRINST usr/include/drm/virtgpu_drm.h
  HDRINST usr/include/drm/xe_drm.h
  HDRINST usr/include/drm/radeon_drm.h
  HDRINST usr/include/drm/omap_drm.h
  HDRINST usr/include/drm/tegra_drm.h
  HDRINST usr/include/drm/drm_mode.h
  HDRINST usr/include/drm/exynos_drm.h
  HDRINST usr/include/drm/ivpu_accel.h
  HDRINST usr/include/drm/drm_sarea.h
  HDRINST usr/include/drm/v3d_drm.h
  HDRINST usr/include/drm/qxl_drm.h
  HDRINST usr/include/drm/drm_fourcc.h
  HDRINST usr/include/drm/nouveau_drm.h
  HDRINST usr/include/drm/habanalabs_accel.h
  HDRINST usr/include/drm/msm_drm.h
  HDRINST usr/include/drm/vmwgfx_drm.h
  HDRINST usr/include/drm/etnaviv_drm.h
  HDRINST usr/include/drm/vc4_drm.h
  HDRINST usr/include/drm/panfrost_drm.h
  HDRINST usr/include/drm/lima_drm.h
  HDRINST usr/include/drm/drm.h
  HDRINST usr/include/drm/armada_drm.h
  HDRINST usr/include/mtd/inftl-user.h
  HDRINST usr/include/mtd/nftl-user.h
  HDRINST usr/include/mtd/mtd-user.h
  HDRINST usr/include/mtd/ubi-user.h
  HDRINST usr/include/mtd/mtd-abi.h
  HDRINST usr/include/xen/gntdev.h
  HDRINST usr/include/xen/gntalloc.h
  HDRINST usr/include/xen/evtchn.h
  HDRINST usr/include/xen/privcmd.h
  HDRINST usr/include/asm-generic/auxvec.h
  HDRINST usr/include/asm-generic/bitsperlong.h
  HDRINST usr/include/asm-generic/posix_types.h
  HDRINST usr/include/asm-generic/ioctls.h
  HDRINST usr/include/asm-generic/mman.h
  HDRINST usr/include/asm-generic/shmbuf.h
  HDRINST usr/include/asm-generic/bpf_perf_event.h
  HDRINST usr/include/asm-generic/types.h
  HDRINST usr/include/asm-generic/poll.h
  HDRINST usr/include/asm-generic/msgbuf.h
  HDRINST usr/include/asm-generic/swab.h
  HDRINST usr/include/asm-generic/statfs.h
  HDRINST usr/include/asm-generic/unistd.h
  HDRINST usr/include/asm-generic/hugetlb_encode.h
  HDRINST usr/include/asm-generic/resource.h
  HDRINST usr/include/asm-generic/param.h
  HDRINST usr/include/asm-generic/termbits-common.h
  HDRINST usr/include/asm-generic/sockios.h
  HDRINST usr/include/asm-generic/kvm_para.h
  UPD     scripts/mod/devicetable-offsets.h
  HDRINST usr/include/asm-generic/errno.h
  HDRINST usr/include/asm-generic/termios.h
  HDRINST usr/include/asm-generic/mman-common.h
  HDRINST usr/include/asm-generic/ioctl.h
  HDRINST usr/include/asm-generic/socket.h
  HDRINST usr/include/asm-generic/signal-defs.h
  HDRINST usr/include/asm-generic/termbits.h
  HDRINST usr/include/asm-generic/int-ll64.h
  HDRINST usr/include/asm-generic/signal.h
  HDRINST usr/include/asm-generic/siginfo.h
  HDRINST usr/include/asm-generic/stat.h
  HDRINST usr/include/asm-generic/int-l64.h
  HDRINST usr/include/asm-generic/errno-base.h
  HDRINST usr/include/asm-generic/fcntl.h
  HDRINST usr/include/asm-generic/setup.h
  HDRINST usr/include/asm-generic/ipcbuf.h
  HDRINST usr/include/asm-generic/sembuf.h
  HDRINST usr/include/asm-generic/ucontext.h
  HDRINST usr/include/rdma/mlx5_user_ioctl_cmds.h
  HDRINST usr/include/rdma/irdma-abi.h
  HDRINST usr/include/rdma/mana-abi.h
  HDRINST usr/include/rdma/hfi/hfi1_user.h
  HDRINST usr/include/rdma/rdma_user_rxe.h
  HDRINST usr/include/rdma/hfi/hfi1_ioctl.h
  HDRINST usr/include/rdma/rdma_user_ioctl.h
  HDRINST usr/include/rdma/mlx5_user_ioctl_verbs.h
  HDRINST usr/include/rdma/bnxt_re-abi.h
  HDRINST usr/include/rdma/hns-abi.h
  HDRINST usr/include/rdma/qedr-abi.h
  HDRINST usr/include/rdma/ib_user_ioctl_cmds.h
  HDRINST usr/include/rdma/vmw_pvrdma-abi.h
  HDRINST usr/include/rdma/ib_user_ioctl_verbs.h
  HDRINST usr/include/rdma/ib_user_sa.h
  HDRINST usr/include/rdma/rvt-abi.h
  HDRINST usr/include/rdma/mlx5-abi.h
  HDRINST usr/include/rdma/rdma_netlink.h
  HDRINST usr/include/rdma/erdma-abi.h
  MKELF   scripts/mod/elfconfig.h
  HDRINST usr/include/rdma/rdma_user_ioctl_cmds.h
  HDRINST usr/include/rdma/rdma_user_cm.h
  HDRINST usr/include/rdma/ib_user_verbs.h
  HDRINST usr/include/rdma/efa-abi.h
  HDRINST usr/include/rdma/siw-abi.h
  HOSTCC  scripts/mod/modpost.o
  HDRINST usr/include/rdma/mlx4-abi.h
  HOSTCC  scripts/mod/file2alias.o
  HOSTCC  scripts/mod/sumversion.o
  HDRINST usr/include/rdma/mthca-abi.h
  HDRINST usr/include/rdma/ib_user_mad.h
  HDRINST usr/include/rdma/ocrdma-abi.h
  HDRINST usr/include/rdma/cxgb4-abi.h
  HDRINST usr/include/misc/xilinx_sdfec.h
  HDRINST usr/include/misc/uacce/hisi_qm.h
  HDRINST usr/include/misc/uacce/uacce.h
  HDRINST usr/include/misc/cxl.h
  HDRINST usr/include/misc/ocxl.h
  HDRINST usr/include/misc/fastrpc.h
  HDRINST usr/include/misc/pvpanic.h
  HDRINST usr/include/linux/i8k.h
  HDRINST usr/include/linux/acct.h
  HDRINST usr/include/linux/atmmpc.h
  HDRINST usr/include/linux/fs.h
  HDRINST usr/include/linux/cifs/cifs_mount.h
  HDRINST usr/include/linux/cifs/cifs_netlink.h
  HDRINST usr/include/linux/if_packet.h
  HDRINST usr/include/linux/route.h
  HDRINST usr/include/linux/patchkey.h
  HDRINST usr/include/linux/tc_ematch/tc_em_cmp.h
  HDRINST usr/include/linux/tc_ematch/tc_em_ipt.h
  HDRINST usr/include/linux/tc_ematch/tc_em_meta.h
  HDRINST usr/include/linux/tc_ematch/tc_em_nbyte.h
  HDRINST usr/include/linux/tc_ematch/tc_em_text.h
  HDRINST usr/include/linux/virtio_pmem.h
  HDRINST usr/include/linux/rkisp1-config.h
  HDRINST usr/include/linux/vhost.h
  HDRINST usr/include/linux/cec-funcs.h
  HDRINST usr/include/linux/ppdev.h
  HDRINST usr/include/linux/isdn/capicmd.h
  HDRINST usr/include/linux/virtio_fs.h
  HDRINST usr/include/linux/netfilter_ipv6.h
  HDRINST usr/include/linux/lirc.h
  HDRINST usr/include/linux/mroute6.h
  HDRINST usr/include/linux/nl80211-vnd-intel.h
  HDRINST usr/include/linux/ivtvfb.h
  HDRINST usr/include/linux/auxvec.h
  HDRINST usr/include/linux/dm-log-userspace.h
  HDRINST usr/include/linux/dccp.h
  HDRINST usr/include/linux/virtio_scmi.h
  HDRINST usr/include/linux/atmarp.h
  HDRINST usr/include/linux/arcfb.h
  HDRINST usr/include/linux/nbd-netlink.h
  HDRINST usr/include/linux/sched/types.h
  HDRINST usr/include/linux/tcp.h
  HDRINST usr/include/linux/neighbour.h
  HDRINST usr/include/linux/dlm_device.h
  HDRINST usr/include/linux/wmi.h
  HDRINST usr/include/linux/btrfs_tree.h
  HDRINST usr/include/linux/virtio_crypto.h
  HDRINST usr/include/linux/vbox_err.h
  HDRINST usr/include/linux/edd.h
  HDRINST usr/include/linux/loop.h
  HDRINST usr/include/linux/nvme_ioctl.h
  HDRINST usr/include/linux/mmtimer.h
  HDRINST usr/include/linux/if_pppol2tp.h
  HDRINST usr/include/linux/mtio.h
  HDRINST usr/include/linux/if_arcnet.h
  HDRINST usr/include/linux/romfs_fs.h
  HDRINST usr/include/linux/posix_types.h
  HDRINST usr/include/linux/rtc.h
  HDRINST usr/include/linux/landlock.h
  HDRINST usr/include/linux/gpio.h
  HDRINST usr/include/linux/selinux_netlink.h
  HDRINST usr/include/linux/pps.h
  HDRINST usr/include/linux/ndctl.h
  HDRINST usr/include/linux/virtio_gpu.h
  HDRINST usr/include/linux/android/binderfs.h
  HDRINST usr/include/linux/android/binder.h
  HDRINST usr/include/linux/virtio_vsock.h
  HDRINST usr/include/linux/sound.h
  HDRINST usr/include/linux/vtpm_proxy.h
  HDRINST usr/include/linux/nfs_fs.h
  HDRINST usr/include/linux/elf-fdpic.h
  HDRINST usr/include/linux/adfs_fs.h
  HDRINST usr/include/linux/target_core_user.h
  HDRINST usr/include/linux/netlink_diag.h
  HDRINST usr/include/linux/const.h
  HDRINST usr/include/linux/firewire-cdev.h
  HDRINST usr/include/linux/vdpa.h
  HDRINST usr/include/linux/if_infiniband.h
  HDRINST usr/include/linux/serial.h
  HDRINST usr/include/linux/iio/types.h
  HDRINST usr/include/linux/iio/buffer.h
  HDRINST usr/include/linux/iio/events.h
  HDRINST usr/include/linux/baycom.h
  HDRINST usr/include/linux/major.h
  HDRINST usr/include/linux/atmppp.h
  HDRINST usr/include/linux/ipv6_route.h
  HDRINST usr/include/linux/spi/spidev.h
  HDRINST usr/include/linux/spi/spi.h
  HDRINST usr/include/linux/virtio_ring.h
  HDRINST usr/include/linux/hdlc/ioctl.h
  HDRINST usr/include/linux/remoteproc_cdev.h
  HDRINST usr/include/linux/hyperv.h
  HDRINST usr/include/linux/rpl_iptunnel.h
  HDRINST usr/include/linux/sync_file.h
  HDRINST usr/include/linux/igmp.h
  HDRINST usr/include/linux/v4l2-dv-timings.h
  HDRINST usr/include/linux/virtio_i2c.h
  HDRINST usr/include/linux/xfrm.h
  HDRINST usr/include/linux/capability.h
  HDRINST usr/include/linux/gtp.h
  HDRINST usr/include/linux/xdp_diag.h
  HDRINST usr/include/linux/pkt_cls.h
  HDRINST usr/include/linux/suspend_ioctls.h
  HDRINST usr/include/linux/vt.h
  HDRINST usr/include/linux/loadpin.h
  HDRINST usr/include/linux/dlm_plock.h
  HDRINST usr/include/linux/fb.h
  HDRINST usr/include/linux/max2175.h
  HDRINST usr/include/linux/sunrpc/debug.h
  HDRINST usr/include/linux/gsmmux.h
  HDRINST usr/include/linux/watchdog.h
  HDRINST usr/include/linux/vhost_types.h
  HDRINST usr/include/linux/vduse.h
  HDRINST usr/include/linux/ila.h
  HDRINST usr/include/linux/tdx-guest.h
  HDRINST usr/include/linux/close_range.h
  HDRINST usr/include/linux/ivtv.h
  HDRINST usr/include/linux/cryptouser.h
  HDRINST usr/include/linux/netfilter/xt_string.h
  HDRINST usr/include/linux/netfilter/nfnetlink_compat.h
  HDRINST usr/include/linux/netfilter/nf_nat.h
  HDRINST usr/include/linux/netfilter/xt_recent.h
  HDRINST usr/include/linux/netfilter/xt_addrtype.h
  HDRINST usr/include/linux/netfilter/nf_conntrack_tcp.h
  HDRINST usr/include/linux/netfilter/xt_MARK.h
  HDRINST usr/include/linux/netfilter/xt_SYNPROXY.h
  HDRINST usr/include/linux/netfilter/xt_multiport.h
  HDRINST usr/include/linux/netfilter/nfnetlink.h
  HDRINST usr/include/linux/netfilter/xt_cgroup.h
  HDRINST usr/include/linux/netfilter/nf_synproxy.h
  HDRINST usr/include/linux/netfilter/xt_TCPOPTSTRIP.h
  HDRINST usr/include/linux/netfilter/nfnetlink_log.h
  HDRINST usr/include/linux/netfilter/xt_TPROXY.h
  HDRINST usr/include/linux/netfilter/xt_u32.h
  HDRINST usr/include/linux/netfilter/nfnetlink_osf.h
  HDRINST usr/include/linux/netfilter/xt_ecn.h
  HDRINST usr/include/linux/netfilter/xt_esp.h
  HDRINST usr/include/linux/netfilter/nfnetlink_hook.h
  HDRINST usr/include/linux/netfilter/xt_mac.h
  HDRINST usr/include/linux/netfilter/xt_comment.h
  HDRINST usr/include/linux/netfilter/xt_NFQUEUE.h
  HDRINST usr/include/linux/netfilter/xt_osf.h
  HDRINST usr/include/linux/netfilter/xt_hashlimit.h
  HDRINST usr/include/linux/netfilter/nf_conntrack_sctp.h
  HDRINST usr/include/linux/netfilter/xt_socket.h
  HDRINST usr/include/linux/netfilter/xt_connmark.h
  HDRINST usr/include/linux/netfilter/xt_sctp.h
  HDRINST usr/include/linux/netfilter/xt_tcpudp.h
  HDRINST usr/include/linux/netfilter/xt_DSCP.h
  HDRINST usr/include/linux/netfilter/xt_time.h
  HDRINST usr/include/linux/netfilter/xt_IDLETIMER.h
  HDRINST usr/include/linux/netfilter/xt_policy.h
  HDRINST usr/include/linux/netfilter/xt_rpfilter.h
  HDRINST usr/include/linux/netfilter/xt_nfacct.h
  HDRINST usr/include/linux/netfilter/xt_SECMARK.h
  HDRINST usr/include/linux/netfilter/xt_length.h
  HDRINST usr/include/linux/netfilter/nfnetlink_cthelper.h
  HDRINST usr/include/linux/netfilter/xt_quota.h
  HDRINST usr/include/linux/netfilter/xt_CLASSIFY.h
  HDRINST usr/include/linux/netfilter/xt_ipcomp.h
  HDRINST usr/include/linux/netfilter/xt_iprange.h
  HDRINST usr/include/linux/netfilter/xt_bpf.h
  HDRINST usr/include/linux/netfilter/xt_LOG.h
  HDRINST usr/include/linux/netfilter/xt_rateest.h
  HDRINST usr/include/linux/netfilter/xt_CONNSECMARK.h
  HDRINST usr/include/linux/netfilter/xt_HMARK.h
  HDRINST usr/include/linux/netfilter/xt_CONNMARK.h
  HDRINST usr/include/linux/netfilter/xt_pkttype.h
  HDRINST usr/include/linux/netfilter/xt_ipvs.h
  HDRINST usr/include/linux/netfilter/xt_devgroup.h
  HDRINST usr/include/linux/netfilter/xt_AUDIT.h
  HDRINST usr/include/linux/netfilter/xt_realm.h
  HDRINST usr/include/linux/netfilter/nf_conntrack_common.h
  HDRINST usr/include/linux/netfilter/xt_set.h
  HDRINST usr/include/linux/netfilter/xt_LED.h
  HDRINST usr/include/linux/netfilter/xt_connlabel.h
  HDRINST usr/include/linux/netfilter/xt_owner.h
  HDRINST usr/include/linux/netfilter/xt_dccp.h
  HDRINST usr/include/linux/netfilter/xt_limit.h
  HDRINST usr/include/linux/netfilter/xt_conntrack.h
  HDRINST usr/include/linux/netfilter/xt_RATEEST.h
  HDRINST usr/include/linux/netfilter/xt_TEE.h
  HDRINST usr/include/linux/netfilter/xt_connlimit.h
  HDRINST usr/include/linux/netfilter/ipset/ip_set.h
  HDRINST usr/include/linux/netfilter/ipset/ip_set_list.h
  HDRINST usr/include/linux/netfilter/ipset/ip_set_hash.h
  HDRINST usr/include/linux/netfilter/ipset/ip_set_bitmap.h
  HDRINST usr/include/linux/netfilter/x_tables.h
  HDRINST usr/include/linux/netfilter/xt_dscp.h
  HDRINST usr/include/linux/netfilter/nf_conntrack_ftp.h
  HDRINST usr/include/linux/netfilter/xt_cluster.h
  HDRINST usr/include/linux/netfilter/nf_conntrack_tuple_common.h
  HDRINST usr/include/linux/netfilter/nf_log.h
  HDRINST usr/include/linux/netfilter/xt_tcpmss.h
  HDRINST usr/include/linux/netfilter/xt_NFLOG.h
  HDRINST usr/include/linux/netfilter/xt_l2tp.h
  HDRINST usr/include/linux/netfilter/xt_helper.h
  HDRINST usr/include/linux/netfilter/xt_statistic.h
  HDRINST usr/include/linux/netfilter/nfnetlink_queue.h
  HDRINST usr/include/linux/netfilter/nfnetlink_cttimeout.h
  HDRINST usr/include/linux/netfilter/xt_CT.h
  HDRINST usr/include/linux/netfilter/xt_CHECKSUM.h
  HDRINST usr/include/linux/netfilter/xt_connbytes.h
  HDRINST usr/include/linux/netfilter/xt_state.h
  HDRINST usr/include/linux/netfilter/nf_tables.h
  HDRINST usr/include/linux/netfilter/xt_mark.h
  HDRINST usr/include/linux/netfilter/xt_cpu.h
  HDRINST usr/include/linux/netfilter/nf_tables_compat.h
  HDRINST usr/include/linux/netfilter/xt_physdev.h
  HDRINST usr/include/linux/netfilter/nfnetlink_conntrack.h
  HDRINST usr/include/linux/netfilter/nfnetlink_acct.h
  HDRINST usr/include/linux/netfilter/xt_TCPMSS.h
  HDRINST usr/include/linux/tty_flags.h
  HDRINST usr/include/linux/if_phonet.h
  HDRINST usr/include/linux/elf-em.h
  HDRINST usr/include/linux/vm_sockets.h
  HDRINST usr/include/linux/dlmconstants.h
  HDRINST usr/include/linux/bsg.h
  HDRINST usr/include/linux/matroxfb.h
  HDRINST usr/include/linux/sysctl.h
  HDRINST usr/include/linux/unix_diag.h
  HDRINST usr/include/linux/pcitest.h
  HDRINST usr/include/linux/mman.h
  HDRINST usr/include/linux/if_plip.h
  HDRINST usr/include/linux/virtio_balloon.h
  HDRINST usr/include/linux/pidfd.h
  HDRINST usr/include/linux/f2fs.h
  HDRINST usr/include/linux/x25.h
  HDRINST usr/include/linux/if_cablemodem.h
  HDRINST usr/include/linux/utsname.h
  HDRINST usr/include/linux/counter.h
  HDRINST usr/include/linux/atm_tcp.h
  HDRINST usr/include/linux/atalk.h
  HDRINST usr/include/linux/virtio_rng.h
  HDRINST usr/include/linux/vboxguest.h
  HDRINST usr/include/linux/bpf_perf_event.h
  HDRINST usr/include/linux/ipmi_ssif_bmc.h
  HDRINST usr/include/linux/nfs_mount.h
  HDRINST usr/include/linux/sonet.h
  HDRINST usr/include/linux/netfilter.h
  HDRINST usr/include/linux/keyctl.h
  HDRINST usr/include/linux/nl80211.h
  HDRINST usr/include/linux/misc/bcm_vk.h
  HDRINST usr/include/linux/audit.h
  HDRINST usr/include/linux/tipc_config.h
  HDRINST usr/include/linux/tipc_sockets_diag.h
  HDRINST usr/include/linux/futex.h
  HDRINST usr/include/linux/sev-guest.h
  HDRINST usr/include/linux/ublk_cmd.h
  HDRINST usr/include/linux/types.h
  HDRINST usr/include/linux/virtio_input.h
  HDRINST usr/include/linux/if_slip.h
  HDRINST usr/include/linux/personality.h
  HDRINST usr/include/linux/openat2.h
  HDRINST usr/include/linux/poll.h
  HDRINST usr/include/linux/posix_acl.h
  HDRINST usr/include/linux/smc_diag.h
  HDRINST usr/include/linux/snmp.h
  HDRINST usr/include/linux/errqueue.h
  HDRINST usr/include/linux/if_tunnel.h
  HDRINST usr/include/linux/fanotify.h
  HDRINST usr/include/linux/kernel.h
  HDRINST usr/include/linux/rtnetlink.h
  HDRINST usr/include/linux/rpl.h
  HDRINST usr/include/linux/memfd.h
  HDRINST usr/include/linux/serial_core.h
  HDRINST usr/include/linux/dns_resolver.h
  HDRINST usr/include/linux/pr.h
  HDRINST usr/include/linux/atm_eni.h
  HDRINST usr/include/linux/lp.h
  HDRINST usr/include/linux/virtio_mem.h
  HDRINST usr/include/linux/ultrasound.h
  HDRINST usr/include/linux/sctp.h
  HDRINST usr/include/linux/uio.h
  HDRINST usr/include/linux/tcp_metrics.h
  HDRINST usr/include/linux/wwan.h
  HDRINST usr/include/linux/atmbr2684.h
  HDRINST usr/include/linux/qemu_fw_cfg.h
  HDRINST usr/include/linux/in_route.h
  HDRINST usr/include/linux/if_macsec.h
  HDRINST usr/include/linux/usb/charger.h
  HDRINST usr/include/linux/usb/g_uvc.h
  HDRINST usr/include/linux/usb/raw_gadget.h
  HDRINST usr/include/linux/usb/gadgetfs.h
  HDRINST usr/include/linux/usb/g_printer.h
  HDRINST usr/include/linux/usb/cdc-wdm.h
  HDRINST usr/include/linux/usb/midi.h
  HDRINST usr/include/linux/usb/tmc.h
  HDRINST usr/include/linux/usb/video.h
  HDRINST usr/include/linux/usb/functionfs.h
  HDRINST usr/include/linux/usb/audio.h
  HDRINST usr/include/linux/usb/ch11.h
  HDRINST usr/include/linux/usb/ch9.h
  HDRINST usr/include/linux/usb/cdc.h
  HDRINST usr/include/linux/jffs2.h
  HDRINST usr/include/linux/ax25.h
  HDRINST usr/include/linux/auto_fs.h
  HDRINST usr/include/linux/tiocl.h
  HDRINST usr/include/linux/scc.h
  HDRINST usr/include/linux/psci.h
  HDRINST usr/include/linux/swab.h
  HDRINST usr/include/linux/cec.h
  HDRINST usr/include/linux/kfd_ioctl.h
  HDRINST usr/include/linux/smc.h
  HDRINST usr/include/linux/qrtr.h
  HDRINST usr/include/linux/screen_info.h
  HDRINST usr/include/linux/nfsacl.h
  HDRINST usr/include/linux/seg6_hmac.h
  HDRINST usr/include/linux/gameport.h
  HDRINST usr/include/linux/wireless.h
  HDRINST usr/include/linux/fdreg.h
  HDRINST usr/include/linux/cciss_defs.h
  HDRINST usr/include/linux/serial_reg.h
  HDRINST usr/include/linux/perf_event.h
  HDRINST usr/include/linux/in6.h
  HDRINST usr/include/linux/hid.h
  HDRINST usr/include/linux/netlink.h
  HDRINST usr/include/linux/fuse.h
  HDRINST usr/include/linux/magic.h
  HDRINST usr/include/linux/ioam6_iptunnel.h
  HDRINST usr/include/linux/stm.h
  HDRINST usr/include/linux/vsockmon.h
  HDRINST usr/include/linux/seg6.h
  HDRINST usr/include/linux/idxd.h
  HDRINST usr/include/linux/nitro_enclaves.h
  HDRINST usr/include/linux/ptrace.h
  HDRINST usr/include/linux/ioam6_genl.h
  HDRINST usr/include/linux/fsl_mc.h
  HDRINST usr/include/linux/qnx4_fs.h
  HDRINST usr/include/linux/net_tstamp.h
  HDRINST usr/include/linux/msg.h
  HDRINST usr/include/linux/netfilter_ipv4/ipt_TTL.h
  HDRINST usr/include/linux/netfilter_ipv4/ipt_ttl.h
  HDRINST usr/include/linux/netfilter_ipv4/ipt_ah.h
  HDRINST usr/include/linux/netfilter_ipv4/ipt_ECN.h
  HDRINST usr/include/linux/netfilter_ipv4/ip_tables.h
  HDRINST usr/include/linux/netfilter_ipv4/ipt_ecn.h
  HDRINST usr/include/linux/netfilter_ipv4/ipt_CLUSTERIP.h
  HDRINST usr/include/linux/netfilter_ipv4/ipt_REJECT.h
  HDRINST usr/include/linux/netfilter_ipv4/ipt_LOG.h
  HDRINST usr/include/linux/sem.h
  HDRINST usr/include/linux/net_namespace.h
  HDRINST usr/include/linux/radeonfb.h
  HDRINST usr/include/linux/tee.h
  HDRINST usr/include/linux/udp.h
  HDRINST usr/include/linux/virtio_bt.h
  HDRINST usr/include/linux/v4l2-subdev.h
  HDRINST usr/include/linux/posix_acl_xattr.h
  HDRINST usr/include/linux/v4l2-mediabus.h
  HDRINST usr/include/linux/atmapi.h
  HDRINST usr/include/linux/raid/md_p.h
  HDRINST usr/include/linux/raid/md_u.h
  HDRINST usr/include/linux/zorro_ids.h
  HDRINST usr/include/linux/nbd.h
  HDRINST usr/include/linux/isst_if.h
  HDRINST usr/include/linux/rxrpc.h
  HDRINST usr/include/linux/unistd.h
  HDRINST usr/include/linux/if_arp.h
  HDRINST usr/include/linux/atm_zatm.h
  HDRINST usr/include/linux/io_uring.h
  HDRINST usr/include/linux/if_fddi.h
  HDRINST usr/include/linux/bpqether.h
  HDRINST usr/include/linux/sysinfo.h
  HDRINST usr/include/linux/auto_dev-ioctl.h
  HDRINST usr/include/linux/nfs4_mount.h
  HDRINST usr/include/linux/keyboard.h
  HDRINST usr/include/linux/virtio_mmio.h
  HDRINST usr/include/linux/input.h
  HDRINST usr/include/linux/qnxtypes.h
  HDRINST usr/include/linux/mdio.h
  HDRINST usr/include/linux/lwtunnel.h
  HDRINST usr/include/linux/gfs2_ondisk.h
  HDRINST usr/include/linux/nfs4.h
  HDRINST usr/include/linux/ptp_clock.h
  HDRINST usr/include/linux/nubus.h
  HDRINST usr/include/linux/if_bonding.h
  HDRINST usr/include/linux/kcov.h
  HDRINST usr/include/linux/fadvise.h
  HDRINST usr/include/linux/taskstats.h
  HDRINST usr/include/linux/veth.h
  HDRINST usr/include/linux/atm.h
  HDRINST usr/include/linux/ipmi.h
  HDRINST usr/include/linux/kdev_t.h
  HDRINST usr/include/linux/mount.h
  HDRINST usr/include/linux/shm.h
  HDRINST usr/include/linux/resource.h
  HDRINST usr/include/linux/prctl.h
  HDRINST usr/include/linux/watch_queue.h
  HDRINST usr/include/linux/sched.h
  HDRINST usr/include/linux/phonet.h
  HDRINST usr/include/linux/random.h
  HDRINST usr/include/linux/tty.h
  HDRINST usr/include/linux/apm_bios.h
  HDRINST usr/include/linux/fd.h
  HDRINST usr/include/linux/um_timetravel.h
  HDRINST usr/include/linux/tls.h
  HDRINST usr/include/linux/rpmsg_types.h
  HDRINST usr/include/linux/pfrut.h
  HDRINST usr/include/linux/mei.h
  HDRINST usr/include/linux/fsi.h
  HDRINST usr/include/linux/rds.h
  HDRINST usr/include/linux/if_x25.h
  HDRINST usr/include/linux/param.h
  HDRINST usr/include/linux/netdevice.h
  HDRINST usr/include/linux/binfmts.h
  HDRINST usr/include/linux/if_pppox.h
  HDRINST usr/include/linux/sockios.h
  HDRINST usr/include/linux/kcm.h
  HDRINST usr/include/linux/virtio_9p.h
  HDRINST usr/include/linux/genwqe/genwqe_card.h
  HDRINST usr/include/linux/if_tun.h
  HDRINST usr/include/linux/ext4.h
  HDRINST usr/include/linux/if_ether.h
  HDRINST usr/include/linux/kvm_para.h
  HDRINST usr/include/linux/kernel-page-flags.h
  HDRINST usr/include/linux/cdrom.h
  HDRINST usr/include/linux/un.h
  HDRINST usr/include/linux/module.h
  HDRINST usr/include/linux/mqueue.h
  HDRINST usr/include/linux/a.out.h
  HDRINST usr/include/linux/input-event-codes.h
  HDRINST usr/include/linux/coda.h
  HDRINST usr/include/linux/rio_mport_cdev.h
  HDRINST usr/include/linux/ipsec.h
  HDRINST usr/include/linux/blkpg.h
  HDRINST usr/include/linux/blkzoned.h
  HDRINST usr/include/linux/netfilter_bridge/ebt_arpreply.h
  HDRINST usr/include/linux/netfilter_bridge/ebt_redirect.h
  HDRINST usr/include/linux/netfilter_bridge/ebt_nflog.h
  HDRINST usr/include/linux/netfilter_bridge/ebt_802_3.h
  HDRINST usr/include/linux/netfilter_bridge/ebt_nat.h
  HDRINST usr/include/linux/netfilter_bridge/ebt_mark_m.h
  HDRINST usr/include/linux/netfilter_bridge/ebtables.h
  HDRINST usr/include/linux/netfilter_bridge/ebt_vlan.h
  HDRINST usr/include/linux/netfilter_bridge/ebt_limit.h
  HDRINST usr/include/linux/netfilter_bridge/ebt_log.h
  HDRINST usr/include/linux/netfilter_bridge/ebt_stp.h
  HDRINST usr/include/linux/netfilter_bridge/ebt_pkttype.h
  HDRINST usr/include/linux/netfilter_bridge/ebt_ip.h
  HDRINST usr/include/linux/netfilter_bridge/ebt_ip6.h
  HDRINST usr/include/linux/netfilter_bridge/ebt_arp.h
  HDRINST usr/include/linux/netfilter_bridge/ebt_mark_t.h
  HDRINST usr/include/linux/netfilter_bridge/ebt_among.h
  HDRINST usr/include/linux/reiserfs_fs.h
  HDRINST usr/include/linux/cciss_ioctl.h
  HDRINST usr/include/linux/fsmap.h
  HDRINST usr/include/linux/smiapp.h
  HDRINST usr/include/linux/switchtec_ioctl.h
  HDRINST usr/include/linux/atmdev.h
  HDRINST usr/include/linux/hpet.h
  HDRINST usr/include/linux/virtio_config.h
  HDRINST usr/include/linux/string.h
  HDRINST usr/include/linux/kfd_sysfs.h
  HDRINST usr/include/linux/inet_diag.h
  HDRINST usr/include/linux/netdev.h
  HDRINST usr/include/linux/xattr.h
  HDRINST usr/include/linux/iommufd.h
  HDRINST usr/include/linux/user_events.h
  HDRINST usr/include/linux/errno.h
  HDRINST usr/include/linux/icmp.h
  HDRINST usr/include/linux/i2o-dev.h
  HDRINST usr/include/linux/pg.h
  HDRINST usr/include/linux/if_bridge.h
  HDRINST usr/include/linux/thermal.h
  HDRINST usr/include/linux/uinput.h
  HDRINST usr/include/linux/handshake.h
  HDRINST usr/include/linux/dqblk_xfs.h
  HDRINST usr/include/linux/v4l2-common.h
  HDRINST usr/include/linux/nvram.h
  HDRINST usr/include/linux/if_vlan.h
  HDRINST usr/include/linux/uhid.h
  HDRINST usr/include/linux/omap3isp.h
  HDRINST usr/include/linux/rose.h
  HDRINST usr/include/linux/phantom.h
  HDRINST usr/include/linux/ipmi_msgdefs.h
  HDRINST usr/include/linux/bcm933xx_hcs.h
  HDRINST usr/include/linux/bpf.h
  HDRINST usr/include/linux/mempolicy.h
  HDRINST usr/include/linux/efs_fs_sb.h
  HDRINST usr/include/linux/nexthop.h
  HDRINST usr/include/linux/net_dropmon.h
  HDRINST usr/include/linux/surface_aggregator/cdev.h
  HDRINST usr/include/linux/surface_aggregator/dtx.h
  HDRINST usr/include/linux/net.h
  HDRINST usr/include/linux/mii.h
  HDRINST usr/include/linux/virtio_pcidev.h
  HDRINST usr/include/linux/termios.h
  HDRINST usr/include/linux/cgroupstats.h
  HDRINST usr/include/linux/mpls.h
  HDRINST usr/include/linux/iommu.h
  HDRINST usr/include/linux/toshiba.h
  HDRINST usr/include/linux/virtio_scsi.h
  HDRINST usr/include/linux/zorro.h
  HDRINST usr/include/linux/chio.h
  HDRINST usr/include/linux/pkt_sched.h
  HDRINST usr/include/linux/cramfs_fs.h
  HDRINST usr/include/linux/nfs3.h
  HDRINST usr/include/linux/vfio_ccw.h
  HDRINST usr/include/linux/atm_nicstar.h
  HDRINST usr/include/linux/ncsi.h
  HDRINST usr/include/linux/virtio_net.h
  HDRINST usr/include/linux/ioctl.h
  HDRINST usr/include/linux/stddef.h
  HDRINST usr/include/linux/limits.h
  HDRINST usr/include/linux/ipmi_bmc.h
  HDRINST usr/include/linux/netfilter_arp.h
  HDRINST usr/include/linux/if_addr.h
  HDRINST usr/include/linux/rpmsg.h
  HDRINST usr/include/linux/media-bus-format.h
  HDRINST usr/include/linux/kernelcapi.h
  HDRINST usr/include/linux/ppp_defs.h
  HDRINST usr/include/linux/ethtool.h
  HDRINST usr/include/linux/aspeed-video.h
  HDRINST usr/include/linux/hdlc.h
  HDRINST usr/include/linux/fscrypt.h
  HDRINST usr/include/linux/batadv_packet.h
  HDRINST usr/include/linux/uuid.h
  HDRINST usr/include/linux/capi.h
  HDRINST usr/include/linux/mptcp.h
  HDRINST usr/include/linux/hidraw.h
  HDRINST usr/include/linux/virtio_console.h
  HDRINST usr/include/linux/irqnr.h
  HDRINST usr/include/linux/coresight-stm.h
  HDRINST usr/include/linux/cxl_mem.h
  HDRINST usr/include/linux/iso_fs.h
  HDRINST usr/include/linux/virtio_blk.h
  HDRINST usr/include/linux/udf_fs_i.h
  HDRINST usr/include/linux/coff.h
  HDRINST usr/include/linux/dma-buf.h
  HDRINST usr/include/linux/ife.h
  HDRINST usr/include/linux/agpgart.h
  HDRINST usr/include/linux/socket.h
  HDRINST usr/include/linux/nilfs2_ondisk.h
  HDRINST usr/include/linux/connector.h
  HDRINST usr/include/linux/auto_fs4.h
  HDRINST usr/include/linux/bt-bmc.h
  HDRINST usr/include/linux/map_to_7segment.h
  HDRINST usr/include/linux/tc_act/tc_skbedit.h
  HDRINST usr/include/linux/tc_act/tc_ctinfo.h
  HDRINST usr/include/linux/tc_act/tc_defact.h
  HDRINST usr/include/linux/tc_act/tc_gact.h
  HDRINST usr/include/linux/tc_act/tc_vlan.h
  HDRINST usr/include/linux/tc_act/tc_skbmod.h
  HDRINST usr/include/linux/tc_act/tc_sample.h
  HDRINST usr/include/linux/tc_act/tc_tunnel_key.h
  HDRINST usr/include/linux/tc_act/tc_gate.h
  HDRINST usr/include/linux/tc_act/tc_mirred.h
  HDRINST usr/include/linux/tc_act/tc_nat.h
  HDRINST usr/include/linux/tc_act/tc_csum.h
  HDRINST usr/include/linux/tc_act/tc_connmark.h
  HDRINST usr/include/linux/tc_act/tc_ife.h
  HDRINST usr/include/linux/tc_act/tc_mpls.h
  HDRINST usr/include/linux/tc_act/tc_ct.h
  HDRINST usr/include/linux/tc_act/tc_pedit.h
  HDRINST usr/include/linux/tc_act/tc_bpf.h
  HDRINST usr/include/linux/tc_act/tc_ipt.h
  HDRINST usr/include/linux/netrom.h
  LD      /kernel/build64/tools/objtool/libsubcmd/libsubcmd-in.o
  HDRINST usr/include/linux/joystick.h
  HDRINST usr/include/linux/falloc.h
  HDRINST usr/include/linux/cycx_cfm.h
  HDRINST usr/include/linux/omapfb.h
  HDRINST usr/include/linux/msdos_fs.h
  HDRINST usr/include/linux/virtio_types.h
  HDRINST usr/include/linux/mroute.h
  HDRINST usr/include/linux/psample.h
  HDRINST usr/include/linux/ipv6.h
  HDRINST usr/include/linux/psp-sev.h
  HDRINST usr/include/linux/dw100.h
  HDRINST usr/include/linux/vfio.h
  HDRINST usr/include/linux/if_ppp.h
  HDRINST usr/include/linux/byteorder/big_endian.h
  HDRINST usr/include/linux/byteorder/little_endian.h
  HDRINST usr/include/linux/comedi.h
  HDRINST usr/include/linux/scif_ioctl.h
  HDRINST usr/include/linux/timerfd.h
  HDRINST usr/include/linux/time_types.h
  HDRINST usr/include/linux/firewire-constants.h
  HDRINST usr/include/linux/virtio_snd.h
  HDRINST usr/include/linux/ppp-ioctl.h
  HDRINST usr/include/linux/fib_rules.h
  HDRINST usr/include/linux/gen_stats.h
  HDRINST usr/include/linux/virtio_iommu.h
  HDRINST usr/include/linux/genetlink.h
  HDRINST usr/include/linux/uvcvideo.h
  HDRINST usr/include/linux/pfkeyv2.h
  HDRINST usr/include/linux/soundcard.h
  HDRINST usr/include/linux/times.h
  HDRINST usr/include/linux/nfc.h
  HDRINST usr/include/linux/affs_hardblocks.h
  HDRINST usr/include/linux/nilfs2_api.h
  HDRINST usr/include/linux/rseq.h
  HDRINST usr/include/linux/caif/caif_socket.h
  AR      /kernel/build64/tools/objtool/libsubcmd/libsubcmd.a
  HDRINST usr/include/linux/caif/if_caif.h
  HDRINST usr/include/linux/i2c-dev.h
  HDRINST usr/include/linux/cuda.h
  HDRINST usr/include/linux/mei_uuid.h
  HDRINST usr/include/linux/cn_proc.h
  HDRINST usr/include/linux/parport.h
  HDRINST usr/include/linux/v4l2-controls.h
  HDRINST usr/include/linux/hsi/cs-protocol.h
  HDRINST usr/include/linux/hsi/hsi_char.h
  HDRINST usr/include/linux/seg6_genl.h
  HDRINST usr/include/linux/am437x-vpfe.h
  HDRINST usr/include/linux/amt.h
  HDRINST usr/include/linux/netconf.h
  HDRINST usr/include/linux/erspan.h
  HDRINST usr/include/linux/nsfs.h
  HDRINST usr/include/linux/xilinx-v4l2-controls.h
  HDRINST usr/include/linux/aspeed-p2a-ctrl.h
  HDRINST usr/include/linux/vfio_zdev.h
  HDRINST usr/include/linux/serio.h
  HDRINST usr/include/linux/acrn.h
  HDRINST usr/include/linux/nfs2.h
  HDRINST usr/include/linux/virtio_pci.h
  HDRINST usr/include/linux/ipc.h
  HDRINST usr/include/linux/ethtool_netlink.h
  HDRINST usr/include/linux/kd.h
  HDRINST usr/include/linux/elf.h
  HDRINST usr/include/linux/videodev2.h
  HDRINST usr/include/linux/if_alg.h
  HDRINST usr/include/linux/sonypi.h
  HDRINST usr/include/linux/fsverity.h
  HDRINST usr/include/linux/if.h
  HDRINST usr/include/linux/btrfs.h
  HDRINST usr/include/linux/vm_sockets_diag.h
  HDRINST usr/include/linux/netfilter_bridge.h
  HDRINST usr/include/linux/packet_diag.h
  HDRINST usr/include/linux/netfilter_ipv4.h
  HDRINST usr/include/linux/kvm.h
  HDRINST usr/include/linux/pci.h
  HDRINST usr/include/linux/if_addrlabel.h
  HDRINST usr/include/linux/hdlcdrv.h
  HDRINST usr/include/linux/cfm_bridge.h
  HDRINST usr/include/linux/fiemap.h
  HDRINST usr/include/linux/dm-ioctl.h
  HDRINST usr/include/linux/aspeed-lpc-ctrl.h
  HDRINST usr/include/linux/atmioc.h
  HDRINST usr/include/linux/dlm.h
  HDRINST usr/include/linux/pci_regs.h
  HDRINST usr/include/linux/cachefiles.h
  HDRINST usr/include/linux/membarrier.h
  HDRINST usr/include/linux/nfs_idmap.h
  HDRINST usr/include/linux/ip.h
  HDRINST usr/include/linux/atm_he.h
  HDRINST usr/include/linux/nfsd/export.h
  HDRINST usr/include/linux/nfsd/stats.h
  HDRINST usr/include/linux/nfsd/debug.h
  HDRINST usr/include/linux/nfsd/cld.h
  HDRINST usr/include/linux/ip_vs.h
  HDRINST usr/include/linux/vmcore.h
  HDRINST usr/include/linux/vbox_vmmdev_types.h
  HDRINST usr/include/linux/dvb/osd.h
  HDRINST usr/include/linux/dvb/dmx.h
  HDRINST usr/include/linux/dvb/net.h
  HDRINST usr/include/linux/dvb/frontend.h
  CC      /kernel/build64/tools/objtool/weak.o
  HDRINST usr/include/linux/dvb/ca.h
  HDRINST usr/include/linux/dvb/version.h
  CC      /kernel/build64/tools/objtool/check.o
  HDRINST usr/include/linux/dvb/video.h
  MKDIR   /kernel/build64/tools/objtool/arch/x86/
  CC      /kernel/build64/tools/objtool/special.o
  HDRINST usr/include/linux/dvb/audio.h
  MKDIR   /kernel/build64/tools/objtool/arch/x86/lib/
  CC      /kernel/build64/tools/objtool/builtin-check.o
  HDRINST usr/include/linux/nfs.h
  CC      /kernel/build64/tools/objtool/elf.o
  CC      /kernel/build64/tools/objtool/arch/x86/special.o
  HDRINST usr/include/linux/if_link.h
  HDRINST usr/include/linux/wait.h
  CC      /kernel/build64/tools/objtool/objtool.o
  GEN     /kernel/build64/tools/objtool/arch/x86/lib/inat-tables.c
  HDRINST usr/include/linux/icmpv6.h
  HDRINST usr/include/linux/media.h
  CC      /kernel/build64/tools/objtool/orc_gen.o
  CC      /kernel/build64/tools/objtool/orc_dump.o
  HDRINST usr/include/linux/seg6_local.h
  HDRINST usr/include/linux/openvswitch.h
  CC      /kernel/build64/tools/objtool/libstring.o
  CC      /kernel/build64/tools/objtool/libctype.o
  HDRINST usr/include/linux/atmsap.h
  HDRINST usr/include/linux/bpfilter.h
  CC      /kernel/build64/tools/objtool/str_error_r.o
  HDRINST usr/include/linux/fpga-dfl.h
  CC      /kernel/build64/tools/objtool/librbtree.o
  HDRINST usr/include/linux/userio.h
  HDRINST usr/include/linux/signal.h
  HDRINST usr/include/linux/map_to_14segment.h
  HDRINST usr/include/linux/hdreg.h
  HDRINST usr/include/linux/utime.h
  HDRINST usr/include/linux/usbdevice_fs.h
  HDRINST usr/include/linux/timex.h
  HDRINST usr/include/linux/if_fc.h
  HDRINST usr/include/linux/reiserfs_xattr.h
  HDRINST usr/include/linux/hw_breakpoint.h
  HDRINST usr/include/linux/quota.h
  HDRINST usr/include/linux/ioprio.h
  HDRINST usr/include/linux/eventpoll.h
  HDRINST usr/include/linux/atmclip.h
  HDRINST usr/include/linux/can.h
  HDRINST usr/include/linux/if_team.h
  HDRINST usr/include/linux/usbip.h
  HDRINST usr/include/linux/stat.h
  HDRINST usr/include/linux/fou.h
  HDRINST usr/include/linux/hash_info.h
  HDRINST usr/include/linux/ppp-comp.h
  HDRINST usr/include/linux/ip6_tunnel.h
  HDRINST usr/include/linux/tipc_netlink.h
  HDRINST usr/include/linux/in.h
  HDRINST usr/include/linux/wireguard.h
  HDRINST usr/include/linux/btf.h
  HDRINST usr/include/linux/batman_adv.h
  HDRINST usr/include/linux/fcntl.h
  HDRINST usr/include/linux/if_ltalk.h
  HDRINST usr/include/linux/i2c.h
  HDRINST usr/include/linux/atm_idt77105.h
  HDRINST usr/include/linux/kexec.h
  HDRINST usr/include/linux/arm_sdei.h
  HDRINST usr/include/linux/netfilter_ipv6/ip6_tables.h
  HDRINST usr/include/linux/netfilter_ipv6/ip6t_ah.h
  HDRINST usr/include/linux/netfilter_ipv6/ip6t_NPT.h
  HDRINST usr/include/linux/netfilter_ipv6/ip6t_rt.h
  HDRINST usr/include/linux/netfilter_ipv6/ip6t_REJECT.h
  HDRINST usr/include/linux/netfilter_ipv6/ip6t_opts.h
  HDRINST usr/include/linux/netfilter_ipv6/ip6t_srh.h
  HDRINST usr/include/linux/netfilter_ipv6/ip6t_LOG.h
  HDRINST usr/include/linux/netfilter_ipv6/ip6t_mh.h
  HDRINST usr/include/linux/netfilter_ipv6/ip6t_HL.h
  HDRINST usr/include/linux/netfilter_ipv6/ip6t_hl.h
  HDRINST usr/include/linux/netfilter_ipv6/ip6t_frag.h
  HDRINST usr/include/linux/netfilter_ipv6/ip6t_ipv6header.h
  HDRINST usr/include/linux/minix_fs.h
  HDRINST usr/include/linux/aio_abi.h
  HDRINST usr/include/linux/pktcdvd.h
  HDRINST usr/include/linux/libc-compat.h
  HDRINST usr/include/linux/atmlec.h
  HDRINST usr/include/linux/signalfd.h
  HDRINST usr/include/linux/bpf_common.h
  HDRINST usr/include/linux/seg6_iptunnel.h
  HDRINST usr/include/linux/synclink.h
  HDRINST usr/include/linux/mpls_iptunnel.h
  HDRINST usr/include/linux/mctp.h
  HDRINST usr/include/linux/if_xdp.h
  HDRINST usr/include/linux/llc.h
  HDRINST usr/include/linux/atmsvc.h
  HDRINST usr/include/linux/sed-opal.h
  HDRINST usr/include/linux/sock_diag.h
  HDRINST usr/include/linux/time.h
  HDRINST usr/include/linux/securebits.h
  HDRINST usr/include/linux/fsl_hypervisor.h
  HDRINST usr/include/linux/if_hippi.h
  HDRINST usr/include/linux/seccomp.h
  HDRINST usr/include/linux/oom.h
  HDRINST usr/include/linux/filter.h
  CC      /kernel/build64/tools/objtool/arch/x86/decode.o
  HDRINST usr/include/linux/inotify.h
  HDRINST usr/include/linux/rfkill.h
  HDRINST usr/include/linux/reboot.h
  HDRINST usr/include/linux/can/vxcan.h
  HDRINST usr/include/linux/can/j1939.h
  HDRINST usr/include/linux/can/netlink.h
  HDRINST usr/include/linux/can/bcm.h
  HDRINST usr/include/linux/can/raw.h
  HDRINST usr/include/linux/can/gw.h
  HDRINST usr/include/linux/can/error.h
  HDRINST usr/include/linux/can/isotp.h
  HDRINST usr/include/linux/if_eql.h
  HDRINST usr/include/linux/hiddev.h
  HDRINST usr/include/linux/blktrace_api.h
  HDRINST usr/include/linux/ccs.h
  HDRINST usr/include/linux/ioam6.h
  HDRINST usr/include/linux/hsr_netlink.h
  HDRINST usr/include/linux/mmc/ioctl.h
  HDRINST usr/include/linux/bfs_fs.h
  HDRINST usr/include/linux/rio_cm_cdev.h
  HDRINST usr/include/linux/uleds.h
  HDRINST usr/include/linux/mrp_bridge.h
  HDRINST usr/include/linux/adb.h
  HDRINST usr/include/linux/pmu.h
  HDRINST usr/include/linux/udmabuf.h
  HDRINST usr/include/linux/kcmp.h
  HDRINST usr/include/linux/dma-heap.h
  HDRINST usr/include/linux/userfaultfd.h
  HDRINST usr/include/linux/netfilter_arp/arpt_mangle.h
  HDRINST usr/include/linux/netfilter_arp/arp_tables.h
  HDRINST usr/include/linux/tipc.h
  HDRINST usr/include/linux/virtio_ids.h
  HDRINST usr/include/linux/l2tp.h
  HDRINST usr/include/linux/devlink.h
  HDRINST usr/include/linux/virtio_gpio.h
  HDRINST usr/include/linux/dcbnl.h
  HDRINST usr/include/linux/cyclades.h
  HDRINST usr/include/sound/intel/avs/tokens.h
  HDRINST usr/include/sound/sof/fw.h
  HDRINST usr/include/sound/sof/abi.h
  HDRINST usr/include/sound/sof/tokens.h
  HDRINST usr/include/sound/sof/header.h
  HDRINST usr/include/sound/usb_stream.h
  HDRINST usr/include/sound/sfnt_info.h
  HDRINST usr/include/sound/asequencer.h
  HDRINST usr/include/sound/tlv.h
  HDRINST usr/include/sound/asound.h
  HDRINST usr/include/sound/asoc.h
  HDRINST usr/include/sound/sb16_csp.h
  HDRINST usr/include/sound/compress_offload.h
  HDRINST usr/include/sound/hdsp.h
  HDRINST usr/include/sound/emu10k1.h
  HDRINST usr/include/sound/snd_ar_tokens.h
  HDRINST usr/include/sound/snd_sst_tokens.h
  HDRINST usr/include/sound/asound_fm.h
  HDRINST usr/include/sound/hdspm.h
  HDRINST usr/include/sound/compress_params.h
  HDRINST usr/include/sound/firewire.h
  HDRINST usr/include/sound/skl-tplg-interface.h
  HDRINST usr/include/scsi/scsi_bsg_ufs.h
  HDRINST usr/include/scsi/scsi_netlink_fc.h
  HDRINST usr/include/scsi/scsi_bsg_mpi3mr.h
  HDRINST usr/include/scsi/fc/fc_ns.h
  HDRINST usr/include/scsi/fc/fc_fs.h
  HDRINST usr/include/scsi/fc/fc_els.h
  HDRINST usr/include/scsi/fc/fc_gs.h
  HDRINST usr/include/scsi/scsi_bsg_fc.h
  HDRINST usr/include/scsi/cxlflash_ioctl.h
  HDRINST usr/include/scsi/scsi_netlink.h
  HDRINST usr/include/linux/version.h
  HDRINST usr/include/asm/processor-flags.h
  HDRINST usr/include/asm/auxvec.h
  HDRINST usr/include/asm/svm.h
  HDRINST usr/include/asm/bitsperlong.h
  HDRINST usr/include/asm/kvm_perf.h
  HDRINST usr/include/asm/mce.h
  HDRINST usr/include/asm/posix_types.h
  HDRINST usr/include/asm/msr.h
  HDRINST usr/include/asm/sigcontext32.h
  HDRINST usr/include/asm/mman.h
  HDRINST usr/include/asm/shmbuf.h
  HDRINST usr/include/asm/e820.h
  HDRINST usr/include/asm/posix_types_64.h
  HDRINST usr/include/asm/vsyscall.h
  HDRINST usr/include/asm/msgbuf.h
  HDRINST usr/include/asm/swab.h
  HDRINST usr/include/asm/statfs.h
  HDRINST usr/include/asm/posix_types_x32.h
  HDRINST usr/include/asm/ptrace.h
  HDRINST usr/include/asm/unistd.h
  HDRINST usr/include/asm/ist.h
  HDRINST usr/include/asm/prctl.h
  HDRINST usr/include/asm/boot.h
  HDRINST usr/include/asm/sigcontext.h
  HDRINST usr/include/asm/posix_types_32.h
  HDRINST usr/include/asm/kvm_para.h
  HDRINST usr/include/asm/a.out.h
  HDRINST usr/include/asm/mtrr.h
  HDRINST usr/include/asm/amd_hsmp.h
  HDRINST usr/include/asm/hwcap2.h
  HDRINST usr/include/asm/ptrace-abi.h
  HDRINST usr/include/asm/vm86.h
  HDRINST usr/include/asm/vmx.h
  HDRINST usr/include/asm/ldt.h
  HDRINST usr/include/asm/perf_regs.h
  HDRINST usr/include/asm/kvm.h
  HDRINST usr/include/asm/debugreg.h
  HDRINST usr/include/asm/signal.h
  HDRINST usr/include/asm/bootparam.h
  HDRINST usr/include/asm/siginfo.h
  HDRINST usr/include/asm/hw_breakpoint.h
  HDRINST usr/include/asm/stat.h
  HDRINST usr/include/asm/setup.h
  HDRINST usr/include/asm/sembuf.h
  HDRINST usr/include/asm/sgx.h
  HDRINST usr/include/asm/ucontext.h
  HDRINST usr/include/asm/byteorder.h
  HDRINST usr/include/asm/unistd_64.h
  HDRINST usr/include/asm/ioctls.h
  HDRINST usr/include/asm/bpf_perf_event.h
  HDRINST usr/include/asm/types.h
  HDRINST usr/include/asm/poll.h
  HDRINST usr/include/asm/resource.h
  HDRINST usr/include/asm/param.h
  HDRINST usr/include/asm/sockios.h
  HDRINST usr/include/asm/errno.h
  HDRINST usr/include/asm/unistd_x32.h
  HDRINST usr/include/asm/termios.h
  HDRINST usr/include/asm/ioctl.h
  HDRINST usr/include/asm/socket.h
  HDRINST usr/include/asm/unistd_32.h
  HDRINST usr/include/asm/termbits.h
  HDRINST usr/include/asm/fcntl.h
  HDRINST usr/include/asm/ipcbuf.h
  HOSTLD  scripts/mod/modpost
  CC      kernel/bounds.s
  CHKSHA1 ../include/linux/atomic/atomic-arch-fallback.h
  CHKSHA1 ../include/linux/atomic/atomic-instrumented.h
  CHKSHA1 ../include/linux/atomic/atomic-long.h
  UPD     include/generated/timeconst.h
  UPD     include/generated/bounds.h
  CC      arch/x86/kernel/asm-offsets.s
  LD      /kernel/build64/tools/objtool/arch/x86/objtool-in.o
  UPD     include/generated/asm-offsets.h
  CALL    ../scripts/checksyscalls.sh
  LD      /kernel/build64/tools/objtool/objtool-in.o
  LINK    /kernel/build64/tools/objtool/objtool
  LDS     scripts/module.lds
  CC      ipc/compat.o
  CC      ipc/util.o
  CC      ipc/msgutil.o
  AR      certs/built-in.a
  HOSTCC  usr/gen_init_cpio
  CC      ipc/msg.o
  CC      init/main.o
  CC      io_uring/io_uring.o
  CC      ipc/sem.o
  CC      security/commoncap.o
  CC      io_uring/xattr.o
  CC      ipc/shm.o
  CC      init/do_mounts.o
  CC      io_uring/nop.o
  CC      ipc/syscall.o
  UPD     init/utsversion-tmp.h
  CC      block/bdev.o
  CC      security/min_addr.o
  AR      arch/x86/video/built-in.a
  CC      init/do_mounts_initrd.o
  CC      io_uring/fs.o
  CC      arch/x86/power/cpu.o
  CC [M]  arch/x86/video/fbdev.o
  CC      security/inode.o
  CC      arch/x86/realmode/init.o
  AS      arch/x86/lib/clear_page_64.o
  CC      arch/x86/pci/i386.o
  AR      arch/x86/ia32/built-in.a
  AR      virt/lib/built-in.a
  CC      arch/x86/lib/cmdline.o
  AS      arch/x86/crypto/aesni-intel_asm.o
  AR      arch/x86/net/built-in.a
  CC [M]  virt/lib/irqbypass.o
  CC      block/partitions/core.o
  CC      security/keys/gc.o
  CC      arch/x86/crypto/aesni-intel_glue.o
  AR      drivers/irqchip/built-in.a
  CC      arch/x86/mm/pat/set_memory.o
  CC      net/core/sock.o
  CC      sound/core/sound.o
  CC      fs/notify/dnotify/dnotify.o
  CC      fs/nfs_common/grace.o
  AR      sound/i2c/other/built-in.a
  AR      arch/x86/platform/atom/built-in.a
  CC      sound/core/init.o
  CC      arch/x86/events/amd/core.o
  CC      sound/core/seq/seq.o
  CC      arch/x86/kernel/fpu/init.o
  CC [M]  arch/x86/kvm/../../../virt/kvm/kvm_main.o
  AR      sound/i2c/built-in.a
  AR      arch/x86/platform/ce4100/built-in.a
  AS      arch/x86/crypto/aesni-intel_avx-x86_64.o
  CC      arch/x86/entry/vdso/vma.o
  CC      lib/kunit/test.o
  AR      drivers/bus/mhi/built-in.a
  CC      mm/kasan/common.o
  CC      arch/x86/platform/efi/memmap.o
  CC      lib/math/div64.o
  CC      arch/x86/platform/efi/quirks.o
  AR      drivers/bus/built-in.a
  CC      kernel/sched/core.o
  CC      crypto/api.o
  AR      drivers/phy/allwinner/built-in.a
  AR      drivers/phy/amlogic/built-in.a
  AR      drivers/phy/broadcom/built-in.a
  AR      drivers/phy/cadence/built-in.a
  CC      lib/math/gcd.o
  AS      arch/x86/lib/cmpxchg16b_emu.o
  AR      drivers/phy/freescale/built-in.a
  AR      drivers/phy/hisilicon/built-in.a
  CC      arch/x86/lib/copy_mc.o
  AR      drivers/phy/ingenic/built-in.a
  AR      drivers/phy/intel/built-in.a
  AR      drivers/phy/lantiq/built-in.a
  CC      lib/math/lcm.o
  AR      drivers/phy/marvell/built-in.a
  AR      drivers/phy/mediatek/built-in.a
  AR      drivers/phy/microchip/built-in.a
  AR      drivers/phy/motorola/built-in.a
  AR      drivers/phy/mscc/built-in.a
  CC      lib/math/int_pow.o
  AR      drivers/phy/qualcomm/built-in.a
  AR      drivers/phy/ralink/built-in.a
  GEN     usr/initramfs_data.cpio
  AR      drivers/phy/renesas/built-in.a
  CC      lib/math/int_sqrt.o
  AR      drivers/phy/rockchip/built-in.a
  COPY    usr/initramfs_inc_data
  AS      usr/initramfs_data.o
  CC      sound/core/seq/seq_lock.o
  AR      drivers/phy/samsung/built-in.a
  AR      drivers/phy/socionext/built-in.a
  AR      usr/built-in.a
  CC      crypto/cipher.o
  AR      drivers/phy/st/built-in.a
  CC      arch/x86/kernel/fpu/bugs.o
  AR      drivers/phy/sunplus/built-in.a
  AR      drivers/phy/tegra/built-in.a
  CC      lib/math/reciprocal_div.o
  AR      drivers/phy/ti/built-in.a
  AR      drivers/phy/xilinx/built-in.a
  CC      drivers/phy/phy-core.o
  AR      virt/built-in.a
  CC      lib/math/rational.o
  CC      sound/core/seq/seq_clientmgr.o
  CC [M]  lib/math/prime_numbers.o
  AS      arch/x86/lib/copy_mc_64.o
  CC      arch/x86/kernel/fpu/core.o
  AS      arch/x86/lib/copy_page_64.o
  CC [M]  arch/x86/kvm/../../../virt/kvm/eventfd.o
  AS      arch/x86/realmode/rm/header.o
  AS      arch/x86/lib/copy_user_64.o
  AS      arch/x86/realmode/rm/trampoline_64.o
  CC      sound/core/memory.o
  CC      block/partitions/ldm.o
  CC      mm/filemap.o
  AS      arch/x86/lib/copy_user_uncached_64.o
  CC      io_uring/splice.o
  AS      arch/x86/realmode/rm/stack.o
  CC      security/keys/key.o
  AS      arch/x86/crypto/aes_ctrby8_avx-x86_64.o
  CC      arch/x86/lib/cpu.o
  CC      arch/x86/lib/delay.o
  AR      fs/notify/dnotify/built-in.a
  CC      mm/mempool.o
  AS      arch/x86/realmode/rm/reboot.o
  CC      fs/notify/inotify/inotify_fsnotify.o
  AS      arch/x86/realmode/rm/wakeup_asm.o
  CC      arch/x86/pci/init.o
  CC      security/device_cgroup.o
  CC      arch/x86/kernel/fpu/regset.o
  CC      arch/x86/realmode/rm/wakemain.o
  AR      fs/nfs_common/built-in.a
  AS [M]  arch/x86/crypto/ghash-clmulni-intel_asm.o
  CC      lib/crypto/memneq.o
  CC      lib/zlib_inflate/inffast.o
  CC      arch/x86/entry/vdso/extable.o
  CC      lib/kunit/resource.o
  CC      lib/zlib_inflate/inflate.o
  CC      lib/zlib_inflate/infutil.o
  CC      lib/zlib_inflate/inftrees.o
  CC      arch/x86/realmode/rm/video-mode.o
  CC      crypto/compress.o
  CC      arch/x86/kernel/fpu/signal.o
  CC      arch/x86/power/hibernate_64.o
  AR      sound/drivers/opl3/built-in.a
  AS      arch/x86/power/hibernate_asm_64.o
  AR      sound/drivers/opl4/built-in.a
  CC      mm/kasan/report.o
  AR      sound/drivers/mpu401/built-in.a
  CC      arch/x86/kernel/fpu/xstate.o
  AR      sound/drivers/vx/built-in.a
  CC      arch/x86/platform/efi/efi.o
  AR      sound/drivers/pcsp/built-in.a
  AS      arch/x86/realmode/rm/copy.o
  AR      sound/drivers/built-in.a
  CC      kernel/locking/mutex.o
  AS      arch/x86/realmode/rm/bioscall.o
  CC      kernel/power/qos.o
  AR      sound/isa/ad1816a/built-in.a
  CC [M]  arch/x86/crypto/ghash-clmulni-intel_glue.o
  CC      arch/x86/realmode/rm/regs.o
  AR      sound/isa/ad1848/built-in.a
  AS      arch/x86/lib/getuser.o
  GEN     arch/x86/lib/inat-tables.c
  AR      sound/isa/cs423x/built-in.a
  AR      sound/isa/es1688/built-in.a
  CC      block/fops.o
  AR      sound/isa/galaxy/built-in.a
  CC      arch/x86/entry/vdso/vdso32-setup.o
  AR      sound/isa/gus/built-in.a
  AR      sound/isa/msnd/built-in.a
  CC      arch/x86/realmode/rm/video-vga.o
  CC      mm/kasan/init.o
  CC      arch/x86/lib/insn-eval.o
  CC      mm/kasan/generic.o
  AR      sound/isa/opti9xx/built-in.a
  CC      arch/x86/events/amd/lbr.o
  AR      sound/isa/sb/built-in.a
  AR      sound/isa/wavefront/built-in.a
  AR      sound/isa/wss/built-in.a
  AR      sound/isa/built-in.a
  AR      lib/math/built-in.a
  AS [M]  arch/x86/crypto/crc32-pclmul_asm.o
  CC [M]  arch/x86/crypto/crc32-pclmul_glue.o
  CC      arch/x86/realmode/rm/video-vesa.o
  CC      lib/crypto/utils.o
  CC      block/partitions/msdos.o
  CC      net/llc/llc_core.o
  CC      block/partitions/efi.o
  CC      mm/oom_kill.o
  CC      net/llc/llc_input.o
  CC      fs/iomap/trace.o
  CC      arch/x86/realmode/rm/video-bios.o
  CC      lib/kunit/static_stub.o
  CC      fs/notify/inotify/inotify_user.o
  CC      crypto/algapi.o
  CC      init/initramfs.o
  CC      arch/x86/pci/mmconfig_64.o
  PASYMS  arch/x86/realmode/rm/pasyms.h
  LDS     arch/x86/realmode/rm/realmode.lds
  LD      arch/x86/realmode/rm/realmode.elf
  RELOCS  arch/x86/realmode/rm/realmode.relocs
  OBJCOPY arch/x86/realmode/rm/realmode.bin
  AS      arch/x86/realmode/rmpiggy.o
  AR      drivers/phy/built-in.a
  AR      arch/x86/realmode/built-in.a
  CC      mm/fadvise.o
  CC      kernel/locking/semaphore.o
  AR      drivers/pinctrl/actions/built-in.a
  AR      drivers/pinctrl/bcm/built-in.a
  AR      drivers/pinctrl/cirrus/built-in.a
  LDS     arch/x86/entry/vdso/vdso.lds
  AR      drivers/pinctrl/freescale/built-in.a
  AS      arch/x86/entry/vdso/vdso-note.o
  CC      drivers/pinctrl/intel/pinctrl-baytrail.o
  CC      kernel/locking/rwsem.o
  CC      drivers/gpio/gpiolib.o
  CC      drivers/pinctrl/intel/pinctrl-intel.o
  AR      fs/quota/built-in.a
  CC      arch/x86/entry/vdso/vclock_gettime.o
  CC [M]  drivers/pinctrl/intel/pinctrl-cherryview.o
  CC [M]  drivers/pinctrl/intel/pinctrl-broxton.o
  CC      lib/crypto/chacha.o
  CC      lib/zlib_inflate/inflate_syms.o
  CC      arch/x86/power/hibernate.o
  CC      security/keys/keyring.o
  AS [M]  arch/x86/crypto/crct10dif-pcl-asm_64.o
  CC      arch/x86/mm/pat/memtype.o
  CC [M]  arch/x86/crypto/crct10dif-pclmul_glue.o
  CC      lib/crypto/aes.o
  CC [M]  drivers/pinctrl/intel/pinctrl-geminilake.o
  CC      drivers/gpio/gpiolib-devres.o
  CC      lib/kunit/string-stream.o
  CC      net/core/request_sock.o
  CC [M]  arch/x86/kvm/../../../virt/kvm/binary_stats.o
  AR      drivers/pwm/built-in.a
  CC [M]  arch/x86/kvm/../../../virt/kvm/vfio.o
  CC      block/bio.o
  AR      lib/zlib_inflate/built-in.a
  CC [M]  arch/x86/kvm/../../../virt/kvm/coalesced_mmio.o
  CC      arch/x86/platform/efi/efi_64.o
  CC      arch/x86/events/amd/ibs.o
  CC      sound/core/seq/seq_memory.o
  CC      mm/kasan/report_generic.o
  CC      arch/x86/lib/insn.o
  CC      kernel/power/main.o
  CC      lib/zlib_deflate/deflate.o
  CC      mm/kasan/shadow.o
  CC      arch/x86/entry/vdso/vgetcpu.o
  CC      arch/x86/pci/direct.o
  CC      lib/zlib_deflate/deftree.o
  CC      kernel/power/console.o
  CC      net/llc/llc_output.o
  CC      arch/x86/pci/mmconfig-shared.o
  CC      arch/x86/events/amd/uncore.o
  HOSTCC  arch/x86/entry/vdso/vdso2c
  AR      block/partitions/built-in.a
  LD [M]  arch/x86/crypto/ghash-clmulni-intel.o
  LD [M]  arch/x86/crypto/crc32-pclmul.o
  LD [M]  arch/x86/crypto/crct10dif-pclmul.o
  AR      arch/x86/crypto/built-in.a
  CC      fs/kernfs/mount.o
  CC      fs/sysfs/file.o
  AR      arch/x86/kernel/fpu/built-in.a
  CC      ipc/ipc_sysctl.o
  CC      init/calibrate.o
  CC      fs/proc/task_mmu.o
  CC      arch/x86/kernel/cpu/mce/core.o
  CC      arch/x86/kernel/cpu/mtrr/mtrr.o
  CC      lib/kunit/assert.o
  AR      arch/x86/power/built-in.a
  AR      fs/notify/inotify/built-in.a
  CC      arch/x86/kernel/cpu/cacheinfo.o
  CC      fs/notify/fanotify/fanotify.o
  CC      fs/notify/fanotify/fanotify_user.o
  CC      fs/iomap/iter.o
  AS      arch/x86/lib/memcpy_64.o
  AS      arch/x86/lib/memmove_64.o
  CC      lib/crypto/gf128mul.o
  AS      arch/x86/lib/memset_64.o
  CC      arch/x86/lib/misc.o
  CC      arch/x86/lib/pc-conf-reg.o
  LDS     arch/x86/entry/vdso/vdso32/vdso32.lds
  AS      arch/x86/entry/vdso/vdso32/note.o
  CC      arch/x86/mm/pat/memtype_interval.o
  CC      crypto/scatterwalk.o
  CC      init/init_task.o
  AS      arch/x86/entry/vdso/vdso32/system_call.o
  CC      arch/x86/entry/vsyscall/vsyscall_64.o
  AS      arch/x86/entry/vdso/vdso32/sigreturn.o
  CC      arch/x86/entry/vdso/vdso32/vclock_gettime.o
  CC [M]  arch/x86/kvm/../../../virt/kvm/async_pf.o
  CC [M]  drivers/pinctrl/intel/pinctrl-sunrisepoint.o
  AS      arch/x86/lib/putuser.o
  CC      fs/iomap/buffered-io.o
  CC      fs/iomap/direct-io.o
  AS      arch/x86/lib/retpoline.o
  CC      lib/zlib_deflate/deflate_syms.o
  CC      sound/core/seq/seq_queue.o
  CC      lib/kunit/try-catch.o
  AS      arch/x86/platform/efi/efi_stub_64.o
  CC      mm/kasan/quarantine.o
  CC      sound/core/control.o
  CC      arch/x86/events/intel/core.o
  CC      ipc/mqueue.o
  CC      arch/x86/lib/usercopy.o
  CC      sound/core/seq/seq_fifo.o
  AR      arch/x86/platform/efi/built-in.a
  CC      lib/kunit/executor.o
  CC      arch/x86/kernel/cpu/scattered.o
  AR      arch/x86/platform/geode/built-in.a
  AR      arch/x86/platform/iris/built-in.a
  AR      net/llc/built-in.a
  CC      arch/x86/events/intel/bts.o
  CC      arch/x86/platform/intel/iosf_mbi.o
  CC      security/keys/keyctl.o
  CC      fs/kernfs/inode.o
  CC      io_uring/sync.o
  AR      arch/x86/platform/intel-mid/built-in.a
  CC      lib/crypto/blake2s.o
  CC      fs/sysfs/dir.o
  CC      kernel/power/process.o
  CC      kernel/locking/percpu-rwsem.o
  CC      arch/x86/pci/fixup.o
  CC      arch/x86/kernel/cpu/mtrr/if.o
  CC      kernel/power/suspend.o
  AR      arch/x86/platform/intel-quark/built-in.a
  AR      arch/x86/events/amd/built-in.a
  CC      fs/iomap/fiemap.o
  CC      arch/x86/kernel/cpu/mtrr/generic.o
  CC      arch/x86/entry/vdso/vdso32/vgetcpu.o
  AR      arch/x86/platform/olpc/built-in.a
  AR      lib/zlib_deflate/built-in.a
  CC      kernel/power/hibernate.o
  CC      arch/x86/kernel/cpu/mtrr/cleanup.o
  CC      arch/x86/lib/usercopy_64.o
  CC      fs/sysfs/symlink.o
  AR      drivers/pinctrl/intel/built-in.a
  CC      crypto/proc.o
  AR      drivers/pinctrl/mediatek/built-in.a
  AR      drivers/pinctrl/mvebu/built-in.a
  CC      lib/kunit/hooks.o
  AR      drivers/pinctrl/nomadik/built-in.a
  AR      arch/x86/mm/pat/built-in.a
  CC      fs/sysfs/mount.o
  CC      arch/x86/mm/init.o
  AR      drivers/pinctrl/nuvoton/built-in.a
  AR      drivers/pinctrl/nxp/built-in.a
  CC      init/version.o
  AR      drivers/pinctrl/sprd/built-in.a
  VDSO    arch/x86/entry/vdso/vdso64.so.dbg
  AR      drivers/pinctrl/sunplus/built-in.a
  AR      drivers/pinctrl/ti/built-in.a
  CC      drivers/pinctrl/core.o
  VDSO    arch/x86/entry/vdso/vdso32.so.dbg
  CC      arch/x86/events/intel/ds.o
  OBJCOPY arch/x86/entry/vdso/vdso64.so
  OBJCOPY arch/x86/entry/vdso/vdso32.so
  VDSO2C  arch/x86/entry/vdso/vdso-image-64.c
  VDSO2C  arch/x86/entry/vdso/vdso-image-32.c
  CC      arch/x86/entry/vdso/vdso-image-64.o
  CC      drivers/pci/msi/pcidev_msi.o
  CC      lib/crypto/blake2s-generic.o
  CC      fs/sysfs/group.o
  AS      arch/x86/entry/vsyscall/vsyscall_emu_64.o
  AR      arch/x86/entry/vsyscall/built-in.a
  CC      arch/x86/events/intel/knc.o
  CC      drivers/pci/msi/api.o
  AR      lib/kunit/built-in.a
  CC      arch/x86/entry/vdso/vdso-image-32.o
  CC      lib/lzo/lzo1x_compress.o
  CC      sound/core/seq/seq_prioq.o
  CC      net/core/skbuff.o
  AR      init/built-in.a
  CC      lib/lzo/lzo1x_decompress_safe.o
  AR      arch/x86/platform/intel/built-in.a
  AR      arch/x86/platform/scx200/built-in.a
  AR      arch/x86/platform/ts5500/built-in.a
  AR      arch/x86/platform/uv/built-in.a
  CC      drivers/pci/msi/msi.o
  CC      arch/x86/mm/init_64.o
  AR      arch/x86/platform/built-in.a
  AR      mm/kasan/built-in.a
  CC      mm/maccess.o
  CC [M]  arch/x86/kvm/../../../virt/kvm/irqchip.o
  CC      kernel/locking/irqflag-debug.o
  CC      fs/kernfs/dir.o
  CC      arch/x86/lib/msr-smp.o
  CC      fs/kernfs/file.o
  CC      arch/x86/lib/cache-smp.o
  CC      block/elevator.o
  CC      io_uring/advise.o
  AR      arch/x86/entry/vdso/built-in.a
  CC      io_uring/filetable.o
  AS      arch/x86/entry/entry.o
  CC      arch/x86/lib/msr.o
  CC      kernel/locking/mutex-debug.o
  CC      crypto/aead.o
  AS      arch/x86/entry/entry_64.o
  AR      fs/notify/fanotify/built-in.a
  CC      fs/notify/fsnotify.o
  AS      arch/x86/lib/msr-reg.o
  CC      lib/crypto/blake2s-selftest.o
  CC      arch/x86/entry/syscall_64.o
  CC      kernel/locking/lockdep.o
  CC      sound/core/misc.o
  CC      fs/notify/notification.o
  CC      arch/x86/pci/acpi.o
  CC      arch/x86/kernel/cpu/mce/severity.o
  CC      arch/x86/pci/legacy.o
  CC      drivers/pci/msi/irqdomain.o
  CC      io_uring/openclose.o
  CC      fs/proc/inode.o
  CC      net/ethernet/eth.o
  AR      lib/lzo/built-in.a
  CC      kernel/printk/printk.o
  CC      drivers/pci/pcie/portdrv.o
  AR      fs/sysfs/built-in.a
  CC      kernel/printk/printk_safe.o
  AR      arch/x86/kernel/cpu/mtrr/built-in.a
  CC      security/keys/permission.o
  CC      lib/crypto/des.o
  CC      arch/x86/kernel/cpu/topology.o
  CC      mm/page-writeback.o
  CC      fs/proc/root.o
  CC      lib/lz4/lz4_compress.o
  CC      fs/proc/base.o
  CC      lib/lz4/lz4hc_compress.o
  CC      sound/core/seq/seq_timer.o
  CC      kernel/power/snapshot.o
  CC      drivers/gpio/gpiolib-legacy.o
  CC      drivers/pinctrl/pinctrl-utils.o
  CC      sound/core/device.o
  CC      io_uring/uring_cmd.o
  CC      arch/x86/entry/common.o
  CC      lib/zstd/zstd_compress_module.o
  CC      crypto/geniv.o
  CC      sound/core/info.o
  CC      lib/lz4/lz4_decompress.o
  CC      arch/x86/kernel/cpu/common.o
  CC      fs/notify/group.o
  CC      fs/notify/mark.o
  CC      arch/x86/lib/msr-reg-export.o
  CC      drivers/pinctrl/pinmux.o
  CC      ipc/namespace.o
  CC [M]  arch/x86/kvm/../../../virt/kvm/dirty_ring.o
  CC      arch/x86/events/intel/lbr.o
  CC      sound/core/seq/seq_system.o
  AS      arch/x86/lib/hweight.o
  CC      security/keys/process_keys.o
  CC [M]  arch/x86/kvm/../../../virt/kvm/pfncache.o
  CC      arch/x86/pci/irq.o
  CC      arch/x86/kernel/cpu/mce/genpool.o
  CC      arch/x86/lib/iomem.o
  CC      fs/iomap/seek.o
  AR      drivers/pci/msi/built-in.a
  CC      ipc/mq_sysctl.o
  CC      drivers/gpio/gpiolib-cdev.o
  CC      block/blk-core.o
  CC      arch/x86/mm/fault.o
  CC [M]  arch/x86/kvm/x86.o
  CC      security/keys/request_key.o
  CC      kernel/power/swap.o
  CC      drivers/pinctrl/pinconf.o
  CC      drivers/pci/pcie/rcec.o
  CC      kernel/power/user.o
  CC      fs/kernfs/symlink.o
  CC      lib/zstd/compress/fse_compress.o
  CC      arch/x86/mm/ioremap.o
  CC      kernel/printk/printk_ringbuffer.o
  CC      lib/crypto/sha1.o
  CC      lib/crypto/sha256.o
  CC      arch/x86/kernel/cpu/rdrand.o
  AS      arch/x86/lib/iomap_copy_64.o
  CC      arch/x86/lib/inat.o
  CC      arch/x86/kernel/cpu/match.o
  AS      arch/x86/entry/thunk_64.o
  CC      arch/x86/kernel/cpu/bugs.o
  AS      arch/x86/entry/entry_64_compat.o
  AR      ipc/built-in.a
  CC      sound/core/seq/seq_ports.o
  CC      arch/x86/entry/syscall_32.o
  CC      drivers/pci/hotplug/pci_hotplug_core.o
  CC      crypto/skcipher.o
  CC      drivers/pci/hotplug/acpi_pcihp.o
  CC      arch/x86/kernel/cpu/mce/intel.o
  AR      arch/x86/lib/built-in.a
  AR      arch/x86/lib/lib.a
  CC      drivers/pci/hotplug/pciehp_core.o
  CC      lib/zstd/compress/hist.o
  CC      fs/iomap/swapfile.o
  AR      net/ethernet/built-in.a
  CC      sound/core/seq/seq_info.o
  CC      crypto/seqiv.o
  CC      drivers/pci/hotplug/pciehp_ctrl.o
  CC      sound/core/isadma.o
  CC      net/802/p8022.o
  CC      lib/zstd/compress/huf_compress.o
  AR      fs/kernfs/built-in.a
  CC      net/sched/sch_generic.o
  CC      net/802/psnap.o
  CC      io_uring/epoll.o
  CC      drivers/pinctrl/pinconf-generic.o
  CC      drivers/pci/pcie/aspm.o
  CC      net/sched/sch_mq.o
  CC      fs/notify/fdinfo.o
  CC [M]  arch/x86/kvm/emulate.o
  CC      kernel/power/poweroff.o
  CC      kernel/sched/fair.o
  CC      arch/x86/kernel/cpu/aperfmperf.o
  CC      mm/folio-compat.o
  CC      kernel/sched/build_policy.o
  AR      drivers/pci/controller/dwc/built-in.a
  AR      drivers/pci/controller/mobiveil/built-in.a
  CC [M]  lib/crypto/arc4.o
  CC      drivers/pci/controller/vmd.o
  CC      security/keys/request_key_auth.o
  CC [M]  arch/x86/kvm/i8259.o
  AR      lib/lz4/built-in.a
  CC      lib/xz/xz_dec_syms.o
  CC      lib/xz/xz_dec_stream.o
  CC      arch/x86/mm/extable.o
  AR      sound/pci/ac97/built-in.a
  AR      arch/x86/entry/built-in.a
  AR      sound/pci/ali5451/built-in.a
  CC      arch/x86/pci/common.o
  AR      sound/pci/asihpi/built-in.a
  AR      sound/pci/au88x0/built-in.a
  CC      arch/x86/events/intel/p4.o
  CC      arch/x86/events/intel/p6.o
  CC      lib/xz/xz_dec_lzma2.o
  AR      sound/pci/aw2/built-in.a
  AR      sound/pci/ctxfi/built-in.a
  AR      sound/pci/ca0106/built-in.a
  CC      arch/x86/kernel/cpu/mce/threshold.o
  AR      sound/pci/cs46xx/built-in.a
  AR      sound/pci/cs5535audio/built-in.a
  AR      sound/pci/lola/built-in.a
  AR      sound/pci/lx6464es/built-in.a
  AR      sound/pci/echoaudio/built-in.a
  AR      sound/ppc/built-in.a
  AR      sound/pci/emu10k1/built-in.a
  CC      arch/x86/kernel/cpu/cpuid-deps.o
  CC      drivers/pci/pcie/aer.o
  CC      security/keys/user_defined.o
  AR      sound/pci/hda/built-in.a
  CC [M]  sound/pci/hda/hda_bind.o
  AR      fs/iomap/built-in.a
  CC      crypto/echainiv.o
  CC      crypto/ahash.o
  AR      sound/core/seq/built-in.a
  AR      lib/crypto/built-in.a
  CC      sound/core/vmaster.o
  AR      drivers/pinctrl/built-in.a
  LD [M]  lib/crypto/libarc4.o
  CC [M]  sound/pci/hda/hda_codec.o
  CC      kernel/printk/sysctl.o
  CC      arch/x86/kernel/cpu/mce/apei.o
  CC      lib/raid6/algos.o
  CC      drivers/pci/hotplug/pciehp_pci.o
  AR      kernel/power/built-in.a
  AR      fs/notify/built-in.a
  CC      lib/xz/xz_dec_bcj.o
  CC      lib/raid6/recov.o
  CC      drivers/pci/hotplug/pciehp_hpc.o
  CC      net/802/stp.o
  CC      arch/x86/mm/mmap.o
  CC      io_uring/statx.o
  HOSTCC  lib/raid6/mktables
  CC      drivers/gpio/gpiolib-sysfs.o
  CC      block/blk-sysfs.o
  AR      kernel/printk/built-in.a
  CC      sound/core/ctljack.o
  CC      security/keys/compat.o
  CC      kernel/irq/irqdesc.o
  CC      crypto/shash.o
  CC      kernel/irq/handle.o
  UNROLL  lib/raid6/int1.c
  CC      kernel/irq/manage.o
  CC      mm/readahead.o
  CC      kernel/irq/spurious.o
  CC      fs/proc/generic.o
  CC      net/netlink/af_netlink.o
  AR      net/bpf/built-in.a
  CC      net/core/datagram.o
  CC      security/keys/proc.o
  CC      fs/configfs/inode.o
  CC      fs/devpts/inode.o
  CC      fs/ext4/balloc.o
  CC      arch/x86/pci/early.o
  AR      lib/xz/built-in.a
  CC      fs/jbd2/transaction.o
  CC      fs/ramfs/inode.o
  AR      drivers/pci/controller/built-in.a
  CC      fs/hugetlbfs/inode.o
  CC      fs/ext4/bitmap.o
  CC      fs/fat/cache.o
  AR      drivers/pci/switch/built-in.a
  CC      fs/jbd2/commit.o
  AR      arch/x86/kernel/cpu/mce/built-in.a
  CC      fs/fat/dir.o
  CC      arch/x86/kernel/cpu/umwait.o
  CC      fs/fat/fatent.o
  CC      sound/core/jack.o
  CC      arch/x86/mm/pgtable.o
  CC      arch/x86/pci/bus_numa.o
  UNROLL  lib/raid6/int2.c
  UNROLL  lib/raid6/int4.c
  UNROLL  lib/raid6/int8.c
  CC      arch/x86/events/intel/pt.o
  UNROLL  lib/raid6/int16.c
  UNROLL  lib/raid6/int32.c
  CC      lib/raid6/recov_ssse3.o
  CC      lib/zstd/compress/zstd_compress.o
  CC      drivers/video/console/dummycon.o
  CC      net/sched/sch_frag.o
  CC      io_uring/net.o
  AR      net/802/built-in.a
  CC      kernel/locking/lockdep_proc.o
  CC      fs/proc/array.o
  CC      block/blk-flush.o
  CC      drivers/gpio/gpiolib-acpi.o
  CC      io_uring/msg_ring.o
  CC [M]  arch/x86/kvm/irq.o
  CC      kernel/locking/spinlock.o
  CC      drivers/pci/pcie/err.o
  CC      fs/nfs/client.o
  CC      drivers/pci/hotplug/acpiphp_core.o
  CC      security/keys/sysctl.o
  CC      fs/nfs/dir.o
  CC      fs/proc/fd.o
  CC      block/blk-settings.o
  CC      fs/configfs/file.o
  CC      crypto/akcipher.o
  CC      fs/ramfs/file-mmu.o
  CC      mm/swap.o
  AR      fs/devpts/built-in.a
  CC      drivers/pci/pcie/aer_inject.o
  CC      fs/exportfs/expfs.o
  CC      sound/core/timer.o
  CC      arch/x86/kernel/cpu/proc.o
  CC      drivers/video/console/vgacon.o
  CC      lib/raid6/recov_avx2.o
  CC      lib/raid6/mmx.o
  CC      arch/x86/pci/amd_bus.o
  CC      fs/fat/file.o
  CC      drivers/pci/hotplug/acpiphp_glue.o
  CC      net/sched/sch_api.o
  CC      kernel/locking/osq_lock.o
  CC      arch/x86/mm/physaddr.o
  AR      security/keys/built-in.a
  AR      security/built-in.a
  CC      arch/x86/mm/tlb.o
  CC      block/blk-ioc.o
  CC      arch/x86/mm/cpu_entry_area.o
  CC      kernel/irq/resend.o
  CC      fs/lockd/clntlock.o
  CC      fs/nls/nls_base.o
  MKCAP   arch/x86/kernel/cpu/capflags.c
  AR      fs/ramfs/built-in.a
  CC      fs/nls/nls_cp437.o
  CC      sound/core/hrtimer.o
  CC      sound/core/seq_device.o
  CC      fs/configfs/dir.o
  CC      kernel/locking/qspinlock.o
  CC      crypto/kpp.o
  AR      fs/hugetlbfs/built-in.a
  CC      fs/nls/nls_ascii.o
  AR      fs/exportfs/built-in.a
  CC      fs/ext4/block_validity.o
  CC      fs/nfs/file.o
  AR      sound/arm/built-in.a
  CC      net/sched/sch_blackhole.o
  AR      sound/sh/built-in.a
  AR      fs/unicode/built-in.a
  CC      fs/nls/nls_iso8859-1.o
  CC      fs/ntfs/aops.o
  CC      arch/x86/events/intel/uncore.o
  CC      drivers/gpio/gpiolib-swnode.o
  CC      drivers/pci/pcie/pme.o
  CC      fs/proc/proc_tty.o
  CC      lib/raid6/sse1.o
  CC      lib/raid6/sse2.o
  CC      lib/raid6/avx2.o
  CC      fs/configfs/symlink.o
  AR      arch/x86/pci/built-in.a
  CC      lib/raid6/avx512.o
  CC      arch/x86/events/intel/uncore_nhmex.o
  CC      net/netlink/genetlink.o
  CC      net/core/stream.o
  CC      fs/proc/cmdline.o
  CC [M]  sound/pci/hda/hda_jack.o
  CC      kernel/irq/chip.o
  CC      fs/jbd2/recovery.o
  CC      fs/jbd2/checkpoint.o
  CC      fs/jbd2/revoke.o
  CC      fs/configfs/mount.o
  CC      fs/configfs/item.o
  CC      fs/fat/inode.o
  AR      drivers/video/console/built-in.a
  CC      fs/nls/nls_utf8.o
  CC      drivers/video/logo/logo.o
  CC      net/sched/sch_fifo.o
  CC      kernel/locking/rtmutex_api.o
  AR      drivers/pci/hotplug/built-in.a
  AR      drivers/gpio/built-in.a
  AR      sound/synth/emux/built-in.a
  CC      io_uring/timeout.o
  AR      sound/synth/built-in.a
  CC      lib/raid6/recov_avx512.o
  CC      kernel/rcu/update.o
  CC      block/blk-map.o
  CC      io_uring/sqpoll.o
  CC      crypto/acompress.o
  TABLE   lib/raid6/tables.c
  HOSTCC  drivers/video/logo/pnmtologo
  CC      fs/proc/consoles.o
  CC      arch/x86/mm/maccess.o
  CC      crypto/scompress.o
  CC      net/netlink/policy.o
  AR      fs/nls/built-in.a
  CC      fs/ext4/dir.o
  CC      kernel/rcu/sync.o
  CC      drivers/pci/pcie/dpc.o
  CC      kernel/rcu/srcutree.o
  AR      kernel/livepatch/built-in.a
  CC      lib/raid6/int1.o
  CC      fs/autofs/init.o
  CC      arch/x86/events/zhaoxin/core.o
  CC      lib/raid6/int2.o
  CC      drivers/idle/intel_idle.o
  CC      fs/lockd/clntproc.o
  LOGO    drivers/video/logo/logo_linux_clut224.c
  CC      fs/lockd/clntxdr.o
  CC      drivers/video/logo/logo_linux_clut224.o
  CC [M]  sound/core/control_led.o
  AR      drivers/video/logo/built-in.a
  CC      drivers/video/backlight/backlight.o
  CC      arch/x86/mm/pgprot.o
  CC      fs/ntfs/attrib.o
  CC      net/core/scm.o
  AR      fs/configfs/built-in.a
  CC      fs/ntfs/collate.o
  CC      net/netlink/diag.o
  CC [M]  sound/pci/hda/hda_auto_parser.o
  CC      net/ethtool/ioctl.o
  CC      fs/proc/cpuinfo.o
  CC      mm/truncate.o
  CC      net/ethtool/common.o
  CC      kernel/irq/dummychip.o
  CC      kernel/irq/devres.o
  CC      fs/jbd2/journal.o
  AR      fs/hostfs/built-in.a
  CC      fs/debugfs/inode.o
  CC      fs/nfs/getroot.o
  CC      fs/autofs/inode.o
  CC      fs/debugfs/file.o
  CC [M]  arch/x86/kvm/lapic.o
  CC      kernel/rcu/tree.o
  CC      crypto/algboss.o
  CC [M]  net/netfilter/ipvs/ip_vs_conn.o
  CC      lib/raid6/int4.o
  CC      arch/x86/mm/hugetlbpage.o
  CC [M]  arch/x86/kvm/i8254.o
  AR      drivers/pci/pcie/built-in.a
  CC      drivers/pci/access.o
  CC      kernel/locking/spinlock_debug.o
  CC [M]  arch/x86/kvm/ioapic.o
  CC      block/blk-merge.o
  CC      io_uring/fdinfo.o
  AR      net/sched/built-in.a
  CC      net/netfilter/core.o
  CC      arch/x86/events/intel/uncore_snb.o
  AR      arch/x86/events/zhaoxin/built-in.a
  AR      sound/usb/misc/built-in.a
  AR      sound/usb/usx2y/built-in.a
  AR      sound/usb/caiaq/built-in.a
  CC      drivers/video/fbdev/core/fb_notify.o
  CC      fs/proc/devices.o
  AR      sound/usb/6fire/built-in.a
  CC [M]  sound/core/hwdep.o
  AR      sound/usb/hiface/built-in.a
  AR      sound/usb/bcd2000/built-in.a
  CC      fs/proc/interrupts.o
  AR      sound/usb/built-in.a
  CC      fs/fat/misc.o
  CC      drivers/pci/bus.o
  CC      block/blk-timeout.o
  CC      kernel/irq/autoprobe.o
  CC      fs/ext4/ext4_jbd2.o
  CC      block/blk-lib.o
  CC      lib/zstd/compress/zstd_compress_literals.o
  AR      drivers/video/backlight/built-in.a
  CC      crypto/testmgr.o
  CC      kernel/rcu/rcu_segcblist.o
  CC      lib/zstd/compress/zstd_compress_sequences.o
  CC      arch/x86/kernel/cpu/powerflags.o
  CC      fs/autofs/root.o
  CC      kernel/locking/qrwlock.o
  CC      net/core/gen_stats.o
  AR      drivers/idle/built-in.a
  CC      net/netfilter/nf_log.o
  CC      fs/ntfs/compress.o
  AR      net/netlink/built-in.a
  CC      drivers/video/aperture.o
  AR      sound/pci/ice1712/built-in.a
  CC      drivers/video/cmdline.o
  CC      drivers/video/nomodeset.o
  CC      fs/nfs/inode.o
  CC      kernel/sched/build_utility.o
  CC      lib/raid6/int8.o
  CC      fs/ext4/extents.o
  CC      arch/x86/kernel/acpi/boot.o
  CC [M]  sound/pci/hda/hda_sysfs.o
  CC      arch/x86/mm/kasan_init_64.o
  CC      arch/x86/mm/pkeys.o
  CC      fs/lockd/host.o
  CC      fs/proc/loadavg.o
  CC      mm/vmscan.o
  CC      kernel/irq/irqdomain.o
  AR      fs/debugfs/built-in.a
  CC      fs/proc/meminfo.o
  CC      fs/proc/stat.o
  CC      fs/tracefs/inode.o
  CC      kernel/irq/proc.o
  CC [M]  drivers/video/fbdev/core/fb_backlight.o
  CC      lib/zstd/compress/zstd_compress_superblock.o
  CC      net/ethtool/netlink.o
  CC [M]  sound/core/pcm.o
  CC      fs/fat/nfs.o
  CC [M]  sound/core/pcm_native.o
  AR      kernel/locking/built-in.a
  CC      drivers/pci/probe.o
  CC      block/blk-mq.o
  CC      net/ethtool/bitset.o
  CC      kernel/irq/migration.o
  CC      arch/x86/events/intel/uncore_snbep.o
  CC      lib/zstd/compress/zstd_double_fast.o
  CC      fs/btrfs/super.o
  CC      lib/zstd/compress/zstd_fast.o
  CC      io_uring/tctx.o
  CC      fs/proc/uptime.o
  CC      fs/autofs/symlink.o
  CC      drivers/pci/host-bridge.o
  CC      kernel/irq/cpuhotplug.o
  CC      fs/pstore/inode.o
  CC [M]  sound/pci/hda/hda_controller.o
  CC      lib/raid6/int16.o
  CC      kernel/irq/pm.o
  CC      fs/pstore/platform.o
  CC      arch/x86/mm/pti.o
  CC      net/core/gen_estimator.o
  CC      drivers/pci/remove.o
  CC [M]  drivers/video/fbdev/core/fb_info.o
  CC      fs/efivarfs/inode.o
  CC [M]  drivers/video/fbdev/core/fbmem.o
  CC      arch/x86/kernel/cpu/feat_ctl.o
  CC      lib/fonts/fonts.o
  AR      fs/tracefs/built-in.a
  CC      fs/proc/util.o
  CC [M]  fs/netfs/buffered_read.o
  AR      drivers/char/ipmi/built-in.a
  CC      net/core/net_namespace.o
  CC      fs/fat/namei_vfat.o
  CC [M]  sound/core/pcm_lib.o
  CC      fs/ntfs/debug.o
  CC [M]  net/netfilter/ipvs/ip_vs_core.o
  CC      arch/x86/kernel/acpi/sleep.o
  CC [M]  net/netfilter/ipvs/ip_vs_ctl.o
  CC      fs/ext4/extents_status.o
  CC      fs/autofs/waitq.o
  CC      kernel/irq/msi.o
  CC      lib/raid6/int32.o
  CC      lib/fonts/font_8x8.o
  CC      lib/fonts/font_8x16.o
  CC      net/ethtool/strset.o
  CC      fs/lockd/svc.o
  CC [M]  net/netfilter/ipvs/ip_vs_sched.o
  CC      arch/x86/kernel/cpu/intel.o
  CC      net/core/secure_seq.o
  CC      io_uring/poll.o
  CC      net/core/flow_dissector.o
  CC      fs/efivarfs/file.o
  CC [M]  drivers/video/fbdev/core/fbmon.o
  CC      fs/pstore/pmsg.o
  CC [M]  sound/pci/hda/hda_proc.o
  CC      fs/proc/version.o
  CC      kernel/irq/affinity.o
  AR      arch/x86/mm/built-in.a
  CC      block/blk-mq-tag.o
  CC      block/blk-stat.o
  CC      fs/ntfs/dir.o
  CC      fs/ext4/file.o
  AR      lib/fonts/built-in.a
  CC      lib/argv_split.o
  CC      net/core/sysctl_net_core.o
  CC      drivers/video/hdmi.o
  AS      arch/x86/kernel/acpi/wakeup_64.o
  CC      fs/autofs/expire.o
  CC      lib/raid6/tables.o
  CC      arch/x86/kernel/acpi/apei.o
  AR      fs/jbd2/built-in.a
  CC      arch/x86/events/core.o
  CC [M]  fs/netfs/io.o
  CC      fs/proc/softirqs.o
  AR      fs/pstore/built-in.a
  CC      lib/bug.o
  CC      crypto/cmac.o
  CC      fs/efivarfs/super.o
  CC [M]  drivers/video/fbdev/core/fbcmap.o
  CC [M]  arch/x86/kvm/irq_comm.o
  CC      fs/fat/namei_msdos.o
  CC      drivers/pci/pci.o
  CC      arch/x86/kernel/acpi/cppc.o
  CC      mm/shmem.o
  CC      block/blk-mq-sysfs.o
  CC      net/ethtool/linkinfo.o
  CC      io_uring/cancel.o
  CC      arch/x86/kernel/cpu/intel_pconfig.o
  CC      fs/proc/namespaces.o
  CC      fs/lockd/svclock.o
  CC      fs/nfs/super.o
  CC [M]  sound/pci/hda/hda_hwdep.o
  CC      kernel/irq/matrix.o
  CC [M]  sound/core/pcm_misc.o
  CC      fs/autofs/dev-ioctl.o
  CC      arch/x86/kernel/acpi/cstate.o
  AR      lib/raid6/built-in.a
  CC      crypto/hmac.o
  CC      net/core/dev.o
  CC [M]  drivers/video/fbdev/core/modedb.o
  CC      arch/x86/events/intel/uncore_discovery.o
  CC      block/blk-mq-cpumap.o
  CC [M]  net/netfilter/ipvs/ip_vs_xmit.o
  CC      fs/btrfs/ctree.o
  CC      arch/x86/kernel/cpu/tsx.o
  CC [M]  sound/core/pcm_memory.o
  CC      lib/buildid.o
  CC      block/blk-mq-sched.o
  CC      fs/ntfs/file.o
  CC      net/core/dev_addr_lists.o
  CC [M]  drivers/video/fbdev/core/fbcvt.o
  CC      fs/efivarfs/vars.o
  CC [M]  drivers/video/fbdev/core/fb_cmdline.o
  AR      fs/fat/built-in.a
  CC [M]  fs/fscache/cache.o
  CC      net/core/dst.o
  CC      arch/x86/kernel/cpu/intel_epb.o
  CC [M]  fs/netfs/iterator.o
  CC [M]  fs/fscache/cookie.o
  CC [M]  fs/netfs/main.o
  CC      block/ioctl.o
  AR      arch/x86/kernel/acpi/built-in.a
  CC      fs/ext4/fsmap.o
  CC [M]  sound/pci/hda/hda_generic.o
  AR      sound/firewire/built-in.a
  CC      fs/proc/self.o
  AR      sound/sparc/built-in.a
  CC [M]  sound/core/memalloc.o
  AR      sound/spi/built-in.a
  CC      block/genhd.o
  CC [M]  arch/x86/kvm/cpuid.o
  AR      fs/autofs/built-in.a
  CC      crypto/vmac.o
  CC      lib/cmdline.o
  CC      lib/cpumask.o
  CC      fs/btrfs/extent-tree.o
  CC      io_uring/kbuf.o
  CC      net/ethtool/linkmodes.o
  CC      net/core/netevent.o
  CC      fs/ntfs/index.o
  CC [M]  drivers/video/fbdev/core/fb_io_fops.o
  CC      arch/x86/kernel/cpu/amd.o
  CC      arch/x86/kernel/cpu/hygon.o
  AR      fs/efivarfs/built-in.a
  CC      lib/ctype.o
  CC      arch/x86/events/intel/cstate.o
  CC      io_uring/rsrc.o
  CC [M]  drivers/video/fbdev/core/fb_defio.o
  CC      lib/dec_and_lock.o
  CC [M]  fs/fscache/io.o
  CC [M]  net/netfilter/ipvs/ip_vs_app.o
  AR      kernel/irq/built-in.a
  CC      fs/proc/thread_self.o
  AR      net/ipv4/netfilter/built-in.a
  CC [M]  net/ipv4/netfilter/nf_defrag_ipv4.o
  CC      fs/nfs/io.o
  AR      kernel/rcu/built-in.a
  CC      fs/ext4/fsync.o
  CC [M]  net/ipv4/netfilter/nf_reject_ipv4.o
  CC      fs/lockd/svcshare.o
  CC      net/ipv4/route.o
  CC      net/xfrm/xfrm_policy.o
  CC [M]  fs/fscache/main.o
  CC      net/ipv4/inetpeer.o
  CC      net/core/neighbour.o
  CC      net/core/rtnetlink.o
  CC      fs/nfs/direct.o
  CC [M]  fs/netfs/objects.o
  CC      fs/lockd/svcproc.o
  CC      block/ioprio.o
  CC [M]  fs/fscache/volume.o
  CC      net/core/utils.o
  CC [M]  fs/smb/common/cifs_arc4.o
  CC      crypto/xcbc.o
  CC [M]  fs/smb/common/cifs_md4.o
  CC      fs/ntfs/inode.o
  CC [M]  sound/core/pcm_timer.o
  CC [M]  drivers/video/fbdev/core/fb_chrdev.o
  CC      io_uring/rw.o
  CC      fs/proc/proc_sysctl.o
  AR      arch/x86/events/intel/built-in.a
  CC      arch/x86/events/probe.o
  CC      arch/x86/kernel/cpu/centaur.o
  CC      net/ethtool/rss.o
  CC      io_uring/opdef.o
  CC [M]  fs/fscache/proc.o
  CC      drivers/acpi/apei/apei-base.o
  CC      drivers/acpi/acpica/dsargs.o
  CC      drivers/acpi/apei/hest.o
  CC      io_uring/notif.o
  CC      drivers/acpi/apei/erst.o
  CC      arch/x86/kernel/cpu/zhaoxin.o
  CC [M]  fs/smb/client/trace.o
  CC      crypto/crypto_null.o
  CC      lib/zstd/compress/zstd_lazy.o
  CC      arch/x86/events/utils.o
  CC [M]  fs/smb/client/cifsfs.o
  LD [M]  sound/core/snd-ctl-led.o
  CC      drivers/acpi/apei/bert.o
  LD [M]  sound/core/snd-hwdep.o
  CC [M]  net/netfilter/ipvs/ip_vs_sync.o
  LD [M]  sound/core/snd-pcm.o
  AR      sound/core/built-in.a
  CC      block/badblocks.o
  AR      sound/parisc/built-in.a
  LD [M]  fs/netfs/netfs.o
  AR      sound/pcmcia/vx/built-in.a
  CC      drivers/acpi/acpica/dscontrol.o
  CC      net/xfrm/xfrm_state.o
  CC      arch/x86/kernel/cpu/perfctr-watchdog.o
  AR      sound/pcmcia/pdaudiocf/built-in.a
  AR      sound/pcmcia/built-in.a
  CC      mm/util.o
  CC      arch/x86/kernel/cpu/vmware.o
  CC      fs/ext4/hash.o
  CC      fs/lockd/svcsubs.o
  CC      drivers/acpi/apei/ghes.o
  CC [M]  sound/pci/hda/patch_realtek.o
  CC      arch/x86/kernel/apic/apic.o
  CC      drivers/pci/pci-driver.o
  CC [M]  drivers/video/fbdev/core/fb_procfs.o
  CC      arch/x86/kernel/apic/apic_common.o
  CC [M]  net/ipv4/netfilter/ip_tables.o
  CC      fs/lockd/mon.o
  LD [M]  fs/fscache/fscache.o
  CC      arch/x86/kernel/cpu/hypervisor.o
  AR      kernel/sched/built-in.a
  CC      kernel/dma/mapping.o
  CC      kernel/dma/direct.o
  CC      kernel/dma/ops_helpers.o
  CC      crypto/md5.o
  CC      kernel/dma/dummy.o
  CC      kernel/dma/contiguous.o
  CC      net/ethtool/linkstate.o
  CC      drivers/acpi/acpica/dsdebug.o
  CC      arch/x86/events/rapl.o
  CC [M]  sound/pci/hda/patch_analog.o
  CC      io_uring/io-wq.o
  CC      drivers/pnp/pnpacpi/core.o
  CC      drivers/pnp/core.o
  CC      net/ethtool/debug.o
  CC      arch/x86/kernel/cpu/mshyperv.o
  CC [M]  arch/x86/kvm/pmu.o
  CC      block/blk-rq-qos.o
  AR      drivers/acpi/pmic/built-in.a
  CC      arch/x86/events/msr.o
  CC      drivers/pnp/pnpacpi/rsparser.o
  CC      fs/ntfs/mft.o
  CC      drivers/acpi/acpica/dsfield.o
  CC      fs/ext4/ialloc.o
  CC      crypto/sha1_generic.o
  CC      fs/nfs/pagelist.o
  CC [M]  drivers/video/fbdev/core/fbsysfs.o
  CC      kernel/dma/swiotlb.o
  CC      arch/x86/kernel/cpu/capflags.o
  CC      fs/nfs/read.o
  CC      crypto/sha256_generic.o
  CC      block/disk-events.o
  CC      mm/mmzone.o
  CC      fs/proc/proc_net.o
  CC [M]  arch/x86/kvm/mtrr.o
  CC      net/ethtool/wol.o
  CC      fs/nfs/symlink.o
  CC      fs/lockd/trace.o
  CC      fs/btrfs/print-tree.o
  CC      block/blk-ia-ranges.o
  CC      drivers/acpi/dptf/int340x_thermal.o
  CC      drivers/acpi/tables.o
  CC      drivers/acpi/blacklist.o
  AR      drivers/acpi/apei/built-in.a
  CC      drivers/pnp/card.o
  CC [M]  drivers/video/fbdev/core/fbcon.o
  AR      arch/x86/events/built-in.a
  CC      drivers/acpi/acpica/dsinit.o
  CC      fs/lockd/xdr.o
  AR      arch/x86/kernel/cpu/built-in.a
  CC      crypto/sha512_generic.o
  CC      fs/btrfs/root-tree.o
  CC [M]  sound/pci/hda/patch_hdmi.o
  CC [M]  net/ipv4/netfilter/iptable_filter.o
  CC      fs/ntfs/mst.o
  CC      drivers/pci/search.o
  CC [M]  arch/x86/kvm/hyperv.o
  CC      block/bsg.o
  CC      crypto/blake2b_generic.o
  CC      mm/vmstat.o
  AR      drivers/pnp/pnpacpi/built-in.a
  CC      arch/x86/kernel/kprobes/core.o
  CC [M]  net/netfilter/ipvs/ip_vs_est.o
  CC [M]  net/netfilter/ipvs/ip_vs_proto.o
  CC      arch/x86/kernel/kprobes/opt.o
  CC [M]  fs/smb/client/cifs_debug.o
  CC      mm/backing-dev.o
  AR      drivers/acpi/dptf/built-in.a
  CC [M]  net/ipv4/netfilter/iptable_mangle.o
  CC      fs/lockd/clnt4xdr.o
  CC      drivers/acpi/acpica/dsmethod.o
  CC      fs/proc/kcore.o
  CC [M]  net/netfilter/ipvs/ip_vs_pe.o
  CC      arch/x86/kernel/apic/apic_noop.o
  CC      net/unix/af_unix.o
  AR      io_uring/built-in.a
  CC      net/unix/garbage.o
  CC      fs/ntfs/namei.o
  CC      net/ethtool/features.o
  CC      net/ethtool/privflags.o
  CC [M]  sound/pci/hda/hda_eld.o
  CC      drivers/pnp/driver.o
  CC      drivers/pci/pci-sysfs.o
  CC [M]  fs/smb/client/connect.o
  CC      kernel/dma/remap.o
  CC      block/bsg-lib.o
  CC      net/xfrm/xfrm_hash.o
  CC      arch/x86/kernel/apic/ipi.o
  CC [M]  arch/x86/kvm/debugfs.o
  CC [M]  fs/smb/client/dir.o
  CC      lib/decompress.o
  AR      drivers/amba/built-in.a
  CC      drivers/acpi/acpica/dsmthdat.o
  AR      drivers/clk/actions/built-in.a
  AR      drivers/clk/analogbits/built-in.a
  AR      drivers/clk/bcm/built-in.a
  AR      drivers/clk/imgtec/built-in.a
  AR      drivers/clk/imx/built-in.a
  AR      drivers/clk/ingenic/built-in.a
  CC [M]  fs/fuse/dev.o
  AR      drivers/clk/mediatek/built-in.a
  AR      drivers/clk/microchip/built-in.a
  CC [M]  fs/fuse/dir.o
  CC      crypto/ecb.o
  AR      drivers/clk/mstar/built-in.a
  CC [M]  fs/overlayfs/super.o
  AR      drivers/clk/mvebu/built-in.a
  AR      drivers/clk/ralink/built-in.a
  CC      lib/decompress_bunzip2.o
  AR      drivers/clk/renesas/built-in.a
  CC      fs/btrfs/dir-item.o
  AR      drivers/clk/socfpga/built-in.a
  AR      drivers/clk/sprd/built-in.a
  CC      fs/ntfs/runlist.o
  AR      drivers/clk/starfive/built-in.a
  AR      drivers/clk/sunxi-ng/built-in.a
  CC [M]  arch/x86/kvm/mmu/mmu.o
  AR      drivers/clk/ti/built-in.a
  AR      drivers/clk/versatile/built-in.a
  CC      drivers/clk/x86/clk-lpss-atom.o
  CC      arch/x86/kernel/kprobes/ftrace.o
  CC      arch/x86/kernel/apic/vector.o
  CC      drivers/pnp/resource.o
  CC      drivers/clk/x86/clk-pmc-atom.o
  AR      net/ipv6/netfilter/built-in.a
  CC [M]  net/ipv6/netfilter/nf_defrag_ipv6_hooks.o
  CC      net/packet/af_packet.o
  CC      fs/btrfs/file-item.o
  CC      fs/proc/kmsg.o
  CC      net/key/af_key.o
  AR      kernel/dma/built-in.a
  CC [M]  net/ipv4/netfilter/iptable_nat.o
  CC      kernel/entry/common.o
  CC      drivers/acpi/acpica/dsobject.o
  CC      fs/lockd/xdr4.o
  CC      crypto/cbc.o
  CC      net/ipv6/af_inet6.o
  CC      block/blk-cgroup.o
  CC      crypto/pcbc.o
  CC      fs/nfs/unlink.o
  CC      kernel/entry/syscall_user_dispatch.o
  CC      fs/ext4/indirect.o
  CC      arch/x86/kernel/apic/hw_nmi.o
  CC      net/ethtool/rings.o
  CC      fs/lockd/svc4proc.o
  CC      net/ipv6/anycast.o
  CC [M]  net/ipv6/netfilter/nf_conntrack_reasm.o
  CC [M]  arch/x86/kvm/mmu/page_track.o
  AR      arch/x86/kernel/kprobes/built-in.a
  LDS     arch/x86/kernel/vmlinux.lds
  CC [M]  drivers/video/fbdev/core/bitblit.o
  CC      mm/mm_init.o
  AS      arch/x86/kernel/head_64.o
  CC [M]  net/netfilter/ipvs/ip_vs_proto_tcp.o
  CC      net/ipv4/protocol.o
  CC      net/core/link_watch.o
  CC [M]  net/netfilter/ipvs/ip_vs_proto_udp.o
  AR      drivers/clk/x86/built-in.a
  CC      fs/proc/page.o
  CC [M]  net/netfilter/ipvs/ip_vs_nfct.o
  AR      drivers/clk/xilinx/built-in.a
  CC      drivers/clk/clk-devres.o
  CC      fs/lockd/procfs.o
  CC      net/xfrm/xfrm_input.o
  CC      drivers/acpi/acpica/dsopcode.o
  CC      drivers/pci/rom.o
  CC      kernel/module/main.o
  CC      crypto/cts.o
  CC      fs/ntfs/super.o
  CC      kernel/module/strict_rwx.o
  CC      net/core/filter.o
  CC [M]  sound/pci/hda/hda_intel.o
  CC      drivers/pnp/manager.o
  CC      drivers/clk/clk-bulk.o
  CC      fs/btrfs/inode-item.o
  CC      kernel/entry/kvm.o
  CC      drivers/acpi/acpica/dspkginit.o
  CC [M]  fs/overlayfs/namei.o
  CC      fs/btrfs/disk-io.o
  CC      fs/btrfs/transaction.o
  CC [M]  fs/overlayfs/util.o
  CC [M]  net/ipv4/netfilter/ipt_REJECT.o
  CC      drivers/dma/dw/core.o
  CC      drivers/dma/hsu/hsu.o
  CC      net/ethtool/channels.o
  AR      drivers/soc/apple/built-in.a
  AR      drivers/soc/aspeed/built-in.a
  AR      drivers/soc/bcm/bcm63xx/built-in.a
  CC      drivers/pci/setup-res.o
  AR      drivers/soc/bcm/built-in.a
  CC      drivers/pci/irq.o
  AR      drivers/soc/fsl/built-in.a
  AR      drivers/soc/fujitsu/built-in.a
  AR      drivers/soc/imx/built-in.a
  AR      drivers/soc/ixp4xx/built-in.a
  AR      drivers/soc/loongson/built-in.a
  AR      drivers/soc/mediatek/built-in.a
  AR      drivers/soc/microchip/built-in.a
  CC      drivers/dma/dw/dw.o
  CC      arch/x86/kernel/apic/io_apic.o
  AR      drivers/soc/nuvoton/built-in.a
  AR      fs/lockd/built-in.a
  AR      drivers/soc/pxa/built-in.a
  CC      crypto/lrw.o
  CC      kernel/module/kmod.o
  CC      crypto/xts.o
  AR      drivers/soc/amlogic/built-in.a
  CC [M]  drivers/video/fbdev/core/softcursor.o
  AR      drivers/soc/qcom/built-in.a
  AR      drivers/soc/renesas/built-in.a
  AR      fs/proc/built-in.a
  AR      drivers/soc/rockchip/built-in.a
  CC [M]  drivers/video/fbdev/core/tileblit.o
  AR      drivers/soc/sifive/built-in.a
  CC      drivers/pnp/support.o
  AR      drivers/soc/sunxi/built-in.a
  AR      drivers/soc/ti/built-in.a
  CC      drivers/clk/clkdev.o
  AR      drivers/soc/xilinx/built-in.a
  AR      drivers/soc/built-in.a
  CC      net/core/sock_diag.o
  CC      drivers/pci/vpd.o
  CC [M]  fs/fuse/file.o
  CC      block/blk-cgroup-rwstat.o
  CC      drivers/acpi/acpica/dsutils.o
  CC      lib/decompress_inflate.o
  CC      fs/nfs/write.o
  CC [M]  net/netfilter/ipvs/ip_vs_rr.o
  LD [M]  net/ipv6/netfilter/nf_defrag_ipv6.o
  CC      fs/open.o
  CC      fs/btrfs/inode.o
  CC      net/ipv6/ip6_output.o
  CC      mm/percpu.o
  AR      kernel/entry/built-in.a
  CC      net/ipv6/ip6_input.o
  LD [M]  net/netfilter/ipvs/ip_vs.o
  CC      fs/ext4/inline.o
  CC      net/packet/diag.o
  CC      drivers/acpi/osi.o
  CC      net/unix/sysctl_net_unix.o
  CC      drivers/pnp/interface.o
  CC      drivers/acpi/osl.o
  CC      fs/btrfs/file.o
  CC      drivers/clk/clk.o
  CC      kernel/time/time.o
  CC      fs/ntfs/sysctl.o
  AR      drivers/dma/hsu/built-in.a
  CC [M]  fs/overlayfs/inode.o
  CC [M]  fs/fuse/inode.o
  CC      fs/ntfs/unistr.o
  CC      drivers/acpi/acpica/dswexec.o
  CC      kernel/futex/core.o
  CC      net/xfrm/xfrm_output.o
  CC [M]  arch/x86/kvm/mmu/spte.o
  CC      crypto/ctr.o
  CC [M]  fs/overlayfs/file.o
  CC [M]  drivers/video/fbdev/core/cfbfillrect.o
  CC      net/ipv4/ip_input.o
  CC      net/xfrm/xfrm_sysctl.o
  CC      kernel/futex/syscalls.o
  CC      net/ethtool/coalesce.o
  CC      block/blk-throttle.o
  CC      net/ipv6/addrconf.o
  CC      drivers/pci/setup-bus.o
  CC      net/core/dev_ioctl.o
  CC      drivers/dma/dw/idma32.o
  LD [M]  sound/pci/hda/snd-hda-codec.o
  CC      drivers/acpi/utils.o
  LD [M]  sound/pci/hda/snd-hda-codec-generic.o
  LD [M]  sound/pci/hda/snd-hda-codec-realtek.o
  AR      net/key/built-in.a
  CC      drivers/clk/clk-divider.o
  CC      drivers/pnp/quirks.o
  LD [M]  sound/pci/hda/snd-hda-codec-analog.o
  LD [M]  sound/pci/hda/snd-hda-codec-hdmi.o
  CC      drivers/acpi/acpica/dswload.o
  LD [M]  sound/pci/hda/snd-hda-intel.o
  CC      drivers/virtio/virtio.o
  AR      sound/pci/korg1212/built-in.a
  CC      crypto/gcm.o
  AR      sound/pci/mixart/built-in.a
  AR      sound/pci/nm256/built-in.a
  AR      sound/pci/oxygen/built-in.a
  AR      sound/pci/pcxhr/built-in.a
  AR      sound/pci/riptide/built-in.a
  CC      net/netfilter/nf_queue.o
  AR      sound/pci/rme9652/built-in.a
  AR      sound/pci/trident/built-in.a
  CC      fs/ntfs/upcase.o
  AR      sound/pci/ymfpci/built-in.a
  CC      net/unix/diag.o
  AR      sound/pci/vx222/built-in.a
  AR      sound/pci/built-in.a
  AR      sound/mips/built-in.a
  AR      sound/soc/built-in.a
  AR      sound/atmel/built-in.a
  AR      sound/hda/built-in.a
  CC [M]  sound/hda/hda_bus_type.o
  CC [M]  sound/hda/hdac_bus.o
  CC      kernel/module/tree_lookup.o
  CC [M]  drivers/video/fbdev/core/cfbcopyarea.o
  CC [M]  sound/hda/hdac_device.o
  CC      kernel/time/timer.o
  CC      drivers/dma/dw/acpi.o
  CC      fs/ext4/inode.o
  CC      drivers/acpi/acpica/dswload2.o
  CC [M]  fs/overlayfs/dir.o
  CC      arch/x86/kernel/apic/msi.o
  CC      net/xfrm/xfrm_replay.o
  CC      drivers/dma/dw/pci.o
  CC      drivers/acpi/acpica/dswscope.o
  CC [M]  fs/smb/client/file.o
  CC      kernel/futex/pi.o
  CC      drivers/clk/clk-fixed-factor.o
  CC [M]  sound/hda/hdac_sysfs.o
  CC      drivers/pnp/system.o
  AR      fs/ntfs/built-in.a
  CC      net/ethtool/pause.o
  CC      drivers/tty/vt/vt_ioctl.o
  CC      drivers/virtio/virtio_ring.o
  AR      net/packet/built-in.a
  CC      drivers/tty/hvc/hvc_console.o
  CC [M]  sound/hda/hdac_regmap.o
  CC      drivers/tty/serial/8250/8250_core.o
  CC      fs/btrfs/defrag.o
  CC      net/core/tso.o
  CC      kernel/module/debug_kmemleak.o
  CC [M]  sound/hda/hdac_controller.o
  CC      drivers/tty/serial/8250/8250_pnp.o
  CC      drivers/tty/serial/8250/8250_port.o
  CC      fs/btrfs/extent_map.o
  CC      arch/x86/kernel/head64.o
  CC      drivers/acpi/acpica/dswstate.o
  CC      net/ipv4/ip_fragment.o
  CC      net/ipv4/ip_forward.o
  AR      drivers/dma/dw/built-in.a
  AR      drivers/dma/idxd/built-in.a
  CC      drivers/clk/clk-fixed-rate.o
  CC      crypto/pcrypt.o
  AR      drivers/dma/mediatek/built-in.a
  CC      net/unix/scm.o
  AR      drivers/pnp/built-in.a
  CC      drivers/acpi/acpica/evevent.o
  CC      block/mq-deadline.o
  AR      drivers/dma/qcom/built-in.a
  AR      drivers/dma/ti/built-in.a
  AR      drivers/dma/xilinx/built-in.a
  CC      kernel/futex/requeue.o
  CC [M]  drivers/dma/ioat/init.o
  CC [M]  drivers/video/fbdev/core/cfbimgblt.o
  CC [M]  drivers/dma/ioat/dma.o
  CC      arch/x86/kernel/apic/x2apic_phys.o
  CC [M]  drivers/dma/ioat/prep.o
  CC [M]  fs/fuse/control.o
  CC      net/netfilter/nf_sockopt.o
  CC      kernel/module/kallsyms.o
  CC      drivers/pci/vc.o
  CC      net/netfilter/utils.o
  CC      drivers/acpi/acpica/evgpe.o
  CC      drivers/clk/clk-gate.o
  CC      net/ipv4/ip_options.o
  CC      fs/nfs/namespace.o
  CC      net/ipv4/ip_output.o
  CC [M]  fs/overlayfs/readdir.o
  CC      lib/decompress_unlz4.o
  AR      sound/x86/built-in.a
  CC      net/core/sock_reuseport.o
  CC      mm/slab_common.o
  CC [M]  sound/hda/hdac_stream.o
  CC      net/ethtool/eee.o
  CC      crypto/cryptd.o
  AR      drivers/tty/hvc/built-in.a
  CC      kernel/futex/waitwake.o
  CC      mm/compaction.o
  CC      arch/x86/kernel/apic/x2apic_cluster.o
  CC      net/xfrm/xfrm_device.o
  CC      drivers/tty/vt/vc_screen.o
  CC [M]  drivers/video/fbdev/core/sysfillrect.o
  CC      lib/decompress_unlzma.o
  AR      net/unix/built-in.a
  CC [M]  fs/fuse/xattr.o
  CC [M]  net/netfilter/nfnetlink.o
  CC      drivers/acpi/acpica/evgpeblk.o
  CC      crypto/des_generic.o
  CC      arch/x86/kernel/apic/apic_flat_64.o
  CC [M]  drivers/video/fbdev/core/syscopyarea.o
  CC      lib/decompress_unlzo.o
  CC      drivers/pci/mmap.o
  CC      drivers/tty/vt/selection.o
  CC      kernel/module/procfs.o
  CC      net/ipv4/ip_sockglue.o
  CC [M]  net/netfilter/nf_conntrack_core.o
  CC [M]  drivers/video/fbdev/core/sysimgblt.o
  CC      drivers/tty/serial/8250/8250_dma.o
  AR      kernel/futex/built-in.a
  CC [M]  fs/fuse/acl.o
  CC [M]  drivers/dma/ioat/dca.o
  CC      drivers/virtio/virtio_anchor.o
  CC      net/ipv4/inet_hashtables.o
  AR      net/dsa/built-in.a
  CC      block/kyber-iosched.o
  AR      net/bridge/netfilter/built-in.a
  CC      net/bridge/br.o
  CC [M]  drivers/dma/ioat/sysfs.o
  CC      kernel/time/hrtimer.o
  CC [M]  net/sunrpc/auth_gss/auth_gss.o
  CC      net/8021q/vlan_core.o
  CC      net/sunrpc/clnt.o
  CC      drivers/acpi/acpica/evgpeinit.o
  CC      fs/btrfs/sysfs.o
  CC      net/ethtool/tsinfo.o
  CC      arch/x86/kernel/apic/probe_64.o
  CC [M]  sound/hda/array.o
  CC      drivers/clk/clk-multiplier.o
  CC      drivers/acpi/reboot.o
  CC      fs/nfs/mount_clnt.o
  CC      drivers/virtio/virtio_pci_modern_dev.o
  CC [M]  fs/overlayfs/copy_up.o
  CC      crypto/aes_generic.o
  CC      drivers/pci/setup-irq.o
  CC      drivers/clk/clk-mux.o
  CC [M]  fs/overlayfs/export.o
  CC [M]  sound/hda/hdmi_chmap.o
  CC      kernel/module/sysfs.o
  CC      drivers/tty/vt/keyboard.o
  CC      drivers/pci/proc.o
  AR      arch/x86/kernel/apic/built-in.a
  CC      arch/x86/kernel/ebda.o
  CC      kernel/cgroup/cgroup.o
  CC      kernel/trace/trace_clock.o
  CC      kernel/cgroup/rstat.o
  CC [M]  fs/fuse/readdir.o
  CC      kernel/cgroup/namespace.o
  CC      drivers/acpi/acpica/evgpeutil.o
  CC      kernel/trace/ftrace.o
  LD [M]  drivers/dma/ioat/ioatdma.o
  CC      drivers/dma/dmaengine.o
  CC      net/xfrm/xfrm_algo.o
  CC      crypto/deflate.o
  CC      drivers/tty/serial/8250/8250_dwlib.o
  AR      drivers/tty/ipwireless/built-in.a
  CC      drivers/virtio/virtio_pci_legacy_dev.o
  CC [M]  drivers/video/fbdev/core/fb_sys_fops.o
  CC      drivers/clk/clk-composite.o
  CC      drivers/clk/clk-fractional-divider.o
  CC      mm/interval_tree.o
  CC      drivers/dma/virt-dma.o
  CC      drivers/tty/serial/8250/8250_pcilib.o
  CC      net/ipv4/inet_timewait_sock.o
  CC      arch/x86/kernel/platform-quirks.o
  CC      net/bridge/br_device.o
  AR      kernel/module/built-in.a
  CC      net/dcb/dcbnl.o
  CC      drivers/virtio/virtio_mmio.o
  CC      drivers/acpi/acpica/evglock.o
  CC      drivers/tty/tty_io.o
  CC      net/ethtool/cabletest.o
  CC      drivers/pci/slot.o
  CC      arch/x86/kernel/process_64.o
  CC [M]  arch/x86/kvm/mmu/tdp_iter.o
  CC [M]  sound/hda/trace.o
  CC      net/ethtool/tunnels.o
  CC      fs/nfs/nfstrace.o
  CC      crypto/crc32c_generic.o
  LD [M]  fs/overlayfs/overlay.o
  CC [M]  net/8021q/vlan.o
  CC      drivers/virtio/virtio_pci_modern.o
  CC      net/l3mdev/l3mdev.o
  CC      drivers/virtio/virtio_pci_common.o
  CC      fs/read_write.o
  CC      block/bfq-iosched.o
  CC      kernel/cgroup/cgroup-v1.o
  CC      kernel/time/timekeeping.o
  CC [M]  fs/fuse/ioctl.o
  CC      drivers/clk/clk-gpio.o
  CC      drivers/acpi/acpica/evhandler.o
  CC      drivers/tty/serial/8250/8250_pci.o
  CC      drivers/pci/pci-acpi.o
  CC      kernel/trace/ring_buffer.o
  LD [M]  drivers/video/fbdev/core/fb.o
  AR      drivers/video/fbdev/core/built-in.a
  AR      drivers/video/fbdev/omap/built-in.a
  AR      drivers/video/fbdev/omap2/omapfb/dss/built-in.a
  AR      drivers/video/fbdev/omap2/omapfb/displays/built-in.a
  AR      drivers/video/fbdev/omap2/omapfb/built-in.a
  CC      mm/list_lru.o
  AR      drivers/video/fbdev/omap2/built-in.a
  CC      drivers/tty/serial/serial_core.o
  CC [M]  drivers/video/fbdev/uvesafb.o
  CC      net/xfrm/xfrm_user.o
  CC      crypto/crct10dif_common.o
  CC      drivers/virtio/virtio_pci_legacy.o
  CC      net/ipv6/addrlabel.o
  AR      sound/xen/built-in.a
  CC      net/ipv6/route.o
  CC      drivers/acpi/nvs.o
  CC      drivers/acpi/acpica/evmisc.o
  AR      drivers/clk/built-in.a
  CC      drivers/dma/acpi-dma.o
  CC      drivers/tty/vt/consolemap.o
  CC      net/ethtool/fec.o
  CC [M]  arch/x86/kvm/mmu/tdp_mmu.o
  CC [M]  sound/hda/hdac_component.o
  CC      fs/btrfs/accessors.o
  CC      block/bfq-wf2q.o
  CC      net/ipv4/inet_connection_sock.o
  CC      kernel/bpf/core.o
  CC      crypto/crct10dif_generic.o
  CC      fs/file_table.o
  AR      net/l3mdev/built-in.a
  CC      mm/workingset.o
  CC      net/bridge/br_fdb.o
  CC      net/handshake/genl.o
  LD [M]  fs/fuse/fuse.o
  CC      net/bridge/br_forward.o
  CC      arch/x86/kernel/signal.o
  CC [M]  net/sunrpc/auth_gss/gss_generic_token.o
  HOSTCC  drivers/tty/vt/conmakehash
  CC      arch/x86/kernel/signal_64.o
  CC      drivers/acpi/acpica/evregion.o
  CC [M]  net/netfilter/nf_conntrack_standalone.o
  CC [M]  drivers/virtio/virtio_mem.o
  CC      fs/ext4/ioctl.o
  CC [M]  net/8021q/vlan_dev.o
  CC      drivers/tty/vt/vt.o
  CC [M]  net/sunrpc/auth_gss/gss_mech_switch.o
  CC      crypto/authenc.o
  CC [M]  fs/smb/client/inode.o
  CC      drivers/pci/quirks.o
  CC      kernel/cgroup/freezer.o
  CC      net/ipv4/tcp.o
  AR      drivers/dma/built-in.a
  CC [M]  sound/hda/hdac_i915.o
  CC      net/ipv4/tcp_input.o
  CC      drivers/tty/serial/8250/8250_exar.o
  CC      net/dcb/dcbevent.o
  CC      drivers/tty/n_tty.o
  CC      kernel/time/ntp.o
  CC      net/handshake/netlink.o
  CC      drivers/acpi/acpica/evrgnini.o
  CC [M]  fs/smb/client/link.o
  CC      net/ethtool/eeprom.o
  CC      kernel/trace/trace.o
  CC      arch/x86/kernel/traps.o
  CC      fs/super.o
  CC      drivers/acpi/acpica/evsci.o
  COPY    drivers/tty/vt/defkeymap.c
  CC      arch/x86/kernel/idt.o
  CC      mm/debug.o
  CC      arch/x86/kernel/irq.o
  CC      kernel/events/core.o
  CC      net/core/fib_notifier.o
  CC      fs/char_dev.o
  CC      kernel/events/ring_buffer.o
  CC      fs/btrfs/xattr.o
  CC [M]  drivers/video/fbdev/simplefb.o
  CC [M]  sound/hda/intel-dsp-config.o
  CC      drivers/tty/serial/8250/8250_early.o
  CC      drivers/acpi/acpica/evxface.o
  CC      crypto/authencesn.o
  CC      net/bridge/br_if.o
  CC      arch/x86/kernel/irq_64.o
  AR      net/dcb/built-in.a
  CC      kernel/time/clocksource.o
  CC      net/ethtool/stats.o
  CC [M]  net/8021q/vlan_netlink.o
  CC      fs/stat.o
  CC [M]  net/sunrpc/auth_gss/svcauth_gss.o
  CC [M]  net/netfilter/nf_conntrack_expect.o
  CC [M]  net/sunrpc/auth_gss/gss_rpc_upcall.o
  CC      arch/x86/kernel/dumpstack_64.o
  CC      mm/gup.o
  CC      net/ethtool/phc_vclocks.o
  AR      drivers/virtio/built-in.a
  CC      fs/exec.o
  CC      drivers/tty/serial/8250/8250_dw.o
  CC      net/handshake/request.o
  CC      drivers/acpi/acpica/evxfevnt.o
  CC [M]  sound/hda/intel-nhlt.o
  CC      fs/pipe.o
  CC      kernel/trace/trace_output.o
  CC      net/core/xdp.o
  CC      mm/mmap_lock.o
  CC [M]  arch/x86/kvm/smm.o
  CC      net/ethtool/mm.o
  CC      net/ethtool/module.o
  AR      drivers/video/fbdev/built-in.a
  AR      drivers/video/built-in.a
  CC      drivers/tty/serial/8250/8250_lpss.o
  CC [M]  net/8021q/vlanproc.o
  CC      fs/ext4/mballoc.o
  AR      net/xfrm/built-in.a
  CC      net/bridge/br_input.o
  CC [M]  net/bluetooth/af_bluetooth.o
  AR      sound/virtio/built-in.a
  CC      crypto/lzo-rle.o
  CC      crypto/lzo.o
  CC      net/ipv4/tcp_output.o
  CC      crypto/lz4.o
  CC      fs/ext4/migrate.o
  CC      drivers/acpi/acpica/evxfgpe.o
  CC      block/bfq-cgroup.o
  CC      net/core/flow_offload.o
  CC [M]  net/dns_resolver/dns_key.o
  CC      kernel/time/jiffies.o
  CC      fs/btrfs/ordered-data.o
  CC [M]  sound/hda/intel-sdw-acpi.o
  AR      kernel/bpf/built-in.a
  CC      fs/btrfs/extent_io.o
  CC [M]  net/netfilter/nf_conntrack_helper.o
  CC      drivers/tty/tty_ioctl.o
  CC      drivers/pci/ats.o
  CC      arch/x86/kernel/time.o
  CC      drivers/acpi/acpica/evxfregn.o
  CC      mm/highmem.o
  CC      net/bridge/br_ioctl.o
  CC      drivers/acpi/acpica/exconcat.o
  CC      drivers/tty/tty_ldisc.o
  CC      drivers/tty/serial/8250/8250_mid.o
  CC      kernel/time/timer_list.o
  CC      drivers/acpi/wakeup.o
  CC      crypto/lz4hc.o
  CC      kernel/fork.o
  CONMK   drivers/tty/vt/consolemap_deftbl.c
  CC      drivers/tty/vt/defkeymap.o
  CC      kernel/events/callchain.o
  CC [M]  net/dns_resolver/dns_query.o
  CC      net/ethtool/pse-pd.o
  CC      net/ipv4/tcp_timer.o
  AR      net/8021q/built-in.a
  LD [M]  net/8021q/8021q.o
  LD [M]  sound/hda/snd-hda-core.o
  CC      fs/namei.o
  CC      mm/memory.o
  LD [M]  sound/hda/snd-intel-dspcfg.o
  LD [M]  sound/hda/snd-intel-sdw-acpi.o
  CC      sound/sound_core.o
  CC      fs/nfs/export.o
  CC      drivers/tty/vt/consolemap_deftbl.o
  CC      kernel/cgroup/legacy_freezer.o
  CC      crypto/xxhash_generic.o
  CC      arch/x86/kernel/ioport.o
  CC [M]  arch/x86/kvm/vmx/vmx.o
  AR      drivers/tty/vt/built-in.a
  CC      drivers/acpi/acpica/exconfig.o
  CC      crypto/rng.o
  CC      lib/zstd/compress/zstd_ldm.o
  CC      fs/nfs/sysfs.o
  CC      fs/fcntl.o
  CC      net/ethtool/plca.o
  CC      net/handshake/tlshd.o
  CC      kernel/trace/trace_seq.o
  CC      block/blk-mq-pci.o
  CC      kernel/cgroup/pids.o
  CC      net/core/gro.o
  CC      drivers/pci/iov.o
  CC [M]  arch/x86/kvm/kvm-asm-offsets.s
  CC      net/ipv4/tcp_ipv4.o
  CC      kernel/time/timeconv.o
  CC [M]  net/bluetooth/hci_core.o
  CC      block/blk-mq-virtio.o
  CC      sound/last.o
  CC      drivers/tty/serial/8250/8250_pericom.o
  CC      drivers/pci/pci-label.o
  CC [M]  fs/smb/client/misc.o
  CC      drivers/acpi/acpica/exconvrt.o
  CC      drivers/acpi/sleep.o
  LD [M]  net/dns_resolver/dns_resolver.o
  CC      net/handshake/trace.o
  CC      mm/mincore.o
  CC [M]  net/sunrpc/auth_gss/gss_rpc_xdr.o
  CC [M]  net/bluetooth/hci_conn.o
  CC      drivers/tty/serial/earlycon.o
  CC      lib/zstd/compress/zstd_opt.o
  CC [M]  net/netfilter/nf_conntrack_proto.o
  CC      kernel/time/timecounter.o
  CC      arch/x86/kernel/dumpstack.o
  CC      net/bridge/br_stp.o
  CC      kernel/time/alarmtimer.o
  AR      sound/built-in.a
  CC      net/core/netdev-genl.o
  CC      drivers/acpi/acpica/excreate.o
  CC      crypto/drbg.o
  CC [M]  fs/smb/client/netmisc.o
  CC      lib/zstd/zstd_decompress_module.o
  CC [M]  fs/smb/client/smbencrypt.o
  CC      kernel/cgroup/cpuset.o
  CC      fs/btrfs/volumes.o
  CC      fs/nfs/fs_context.o
  CC      block/blk-mq-debugfs.o
  CC      fs/btrfs/async-thread.o
  CC      lib/zstd/decompress/huf_decompress.o
  CC      drivers/tty/tty_buffer.o
  CC      drivers/pci/pci-stub.o
  AR      drivers/tty/serial/8250/built-in.a
  CC      drivers/acpi/acpica/exdebug.o
  AR      net/ethtool/built-in.a
  CC      lib/decompress_unxz.o
  CC [M]  arch/x86/kvm/vmx/pmu_intel.o
  CC      drivers/acpi/acpica/exdump.o
  CC      fs/nfs/sysctl.o
  CC      fs/btrfs/ioctl.o
  CC      drivers/acpi/acpica/exfield.o
  CC      kernel/events/hw_breakpoint.o
  CC      drivers/tty/serial/serial_mctrl_gpio.o
  CC      net/ipv4/tcp_minisocks.o
  CC      block/blk-pm.o
  CC      net/core/netdev-genl-gen.o
  CC      arch/x86/kernel/nmi.o
  CC      drivers/acpi/acpica/exfldio.o
  CC      drivers/acpi/device_sysfs.o
  CC      drivers/acpi/device_pm.o
  CC      lib/decompress_unzstd.o
  CC      kernel/trace/trace_stat.o
  CC [M]  net/sunrpc/auth_gss/trace.o
  CC      drivers/pci/vgaarb.o
  AR      net/handshake/built-in.a
  CC      kernel/exec_domain.o
  CC      drivers/acpi/acpica/exmisc.o
  CC      kernel/panic.o
  CC      drivers/tty/tty_port.o
  CC      fs/nfs/nfs2super.o
  CC      net/ipv6/ip6_fib.o
  CC      kernel/time/posix-timers.o
  CC      kernel/trace/trace_printk.o
  CC      kernel/trace/pid_list.o
  CC      block/holder.o
  CC      net/bridge/br_stp_bpdu.o
  AR      drivers/tty/serial/built-in.a
  CC      net/core/net-sysfs.o
  CC      net/core/page_pool.o
  CC      lib/zstd/decompress/zstd_ddict.o
  CC      fs/nfs/proc.o
  CC [M]  net/netfilter/nf_conntrack_proto_generic.o
  CC      net/bridge/br_stp_if.o
  CC      kernel/time/posix-cpu-timers.o
  CC      drivers/acpi/acpica/exmutex.o
  CC      crypto/jitterentropy.o
  CC      net/sunrpc/xprt.o
  CC      net/devres.o
  CC [M]  fs/smb/client/transport.o
  CC      lib/dump_stack.o
  CC      crypto/jitterentropy-kcapi.o
  CC      kernel/cpu.o
  CC      crypto/ghash-generic.o
  CC      arch/x86/kernel/ldt.o
  CC      crypto/af_alg.o
  CC      fs/nfs/nfs2xdr.o
  CC      fs/nfs/nfs3super.o
  CC      kernel/exit.o
  CC      net/socket.o
  CC      net/ipv4/tcp_cong.o
  CC      drivers/tty/tty_mutex.o
  AR      block/built-in.a
  CC [M]  arch/x86/kvm/vmx/vmcs12.o
  CC      drivers/acpi/acpica/exnames.o
  CC      lib/earlycpio.o
  CC      kernel/softirq.o
  CC      kernel/time/posix-clock.o
  CC      kernel/trace/trace_sched_switch.o
  CC      fs/nfs/nfs3client.o
  CC [M]  arch/x86/kvm/vmx/hyperv.o
  CC      fs/nfs/nfs3proc.o
  CC      fs/nfs/nfs3xdr.o
  CC [M]  arch/x86/kvm/vmx/nested.o
  AR      drivers/pci/built-in.a
  CC      kernel/trace/trace_functions.o
  CC      kernel/trace/trace_preemptirq.o
  CC      net/compat.o
  CC      net/sysctl_net.o
  CC [M]  net/netfilter/nf_conntrack_proto_tcp.o
  CC      drivers/acpi/acpica/exoparg1.o
  CC      mm/mlock.o
  CC      arch/x86/kernel/setup.o
  CC      net/ipv4/tcp_metrics.o
  CC      drivers/tty/tty_ldsem.o
  CC      net/core/net-procfs.o
  CC      net/bridge/br_stp_timer.o
  CC      arch/x86/kernel/x86_init.o
  CC      mm/mmap.o
  CC      kernel/trace/trace_nop.o
  CC      kernel/time/itimer.o
  CC      net/sunrpc/socklib.o
  CC      fs/ioctl.o
  CC [M]  net/bluetooth/hci_event.o
  CC [M]  net/netfilter/nf_conntrack_proto_udp.o
  CC      kernel/trace/trace_functions_graph.o
  CC      net/ipv4/tcp_fastopen.o
  AR      kernel/cgroup/built-in.a
  CC      mm/mmu_gather.o
  CC      mm/mprotect.o
  CC      drivers/acpi/acpica/exoparg2.o
  CC [M]  net/sunrpc/auth_gss/gss_krb5_mech.o
  CC [M]  net/sunrpc/auth_gss/gss_krb5_seal.o
  CC [M]  fs/smb/client/cached_dir.o
  CC      fs/ext4/mmp.o
  CC [M]  arch/x86/kvm/vmx/posted_intr.o
  CC      fs/ext4/move_extent.o
  CC      drivers/tty/tty_baudrate.o
  CC [M]  net/netfilter/nf_conntrack_proto_icmp.o
  CC      drivers/acpi/acpica/exoparg3.o
  CC      net/ipv4/tcp_rate.o
  LD [M]  arch/x86/kvm/kvm.o
  CC      lib/zstd/decompress/zstd_decompress.o
  UPD     arch/x86/kvm/kvm-asm-offsets.h
  CC      crypto/algif_hash.o
  CC [M]  net/netfilter/nf_conntrack_extend.o
  CC [M]  net/netfilter/nf_conntrack_acct.o
  CC      net/ipv6/ipv6_sockglue.o
  CC      kernel/events/uprobes.o
  CC      fs/btrfs/locking.o
  CC      arch/x86/kernel/i8259.o
  CC      drivers/char/hw_random/core.o
  CC      net/core/netpoll.o
  CC      kernel/time/clockevents.o
  CC      drivers/char/agp/backend.o
  CC      drivers/char/tpm/tpm-chip.o
  CC      drivers/char/agp/generic.o
  CC      net/bridge/br_netlink.o
  CC      drivers/char/agp/isoch.o
  AS [M]  arch/x86/kvm/vmx/vmenter.o
  CC      drivers/char/mem.o
  CC      drivers/char/random.o
  AR      drivers/iommu/amd/built-in.a
  CC      net/ipv4/tcp_recovery.o
  CC      net/ipv4/tcp_ulp.o
  CC      drivers/iommu/intel/dmar.o
  CC      drivers/acpi/acpica/exoparg6.o
  CC      drivers/tty/tty_jobctrl.o
  CC      drivers/iommu/intel/iommu.o
  CC [M]  net/sunrpc/auth_gss/gss_krb5_unseal.o
  CC      kernel/trace/fgraph.o
  CC [M]  net/netfilter/nf_conntrack_seqadj.o
  CC      net/sunrpc/xprtsock.o
  CC [M]  net/netfilter/nf_conntrack_proto_icmpv6.o
  CC      mm/mremap.o
  AR      fs/nfs/built-in.a
  CC      drivers/iommu/intel/pasid.o
  CC      arch/x86/kernel/irqinit.o
  CC      kernel/trace/blktrace.o
  CC      kernel/trace/trace_events.o
  CC      drivers/acpi/acpica/exprep.o
  CC      net/ipv4/tcp_offload.o
  CC      lib/zstd/decompress/zstd_decompress_block.o
  CC      fs/ext4/namei.o
  CC      kernel/time/tick-common.o
  CC      drivers/char/misc.o
  CC      drivers/iommu/intel/trace.o
  CC [M]  net/netfilter/nf_conntrack_proto_dccp.o
  CC      kernel/resource.o
  CC      drivers/char/hw_random/intel-rng.o
  CC      drivers/char/agp/intel-agp.o
  CC [M]  net/netfilter/nf_conntrack_proto_sctp.o
  AR      drivers/iommu/arm/arm-smmu/built-in.a
  AR      drivers/iommu/arm/arm-smmu-v3/built-in.a
  CC      drivers/char/tpm/tpm-dev-common.o
  AR      drivers/iommu/arm/built-in.a
  CC      crypto/algif_skcipher.o
  CC      drivers/char/agp/intel-gtt.o
  CC      crypto/xor.o
  CC      crypto/hash_info.o
  AR      drivers/gpu/host1x/built-in.a
  CC      fs/btrfs/orphan.o
  AR      drivers/gpu/drm/tests/built-in.a
  CC [M]  drivers/gpu/drm/tests/drm_kunit_helpers.o
  AR      drivers/gpu/drm/arm/built-in.a
  CC [M]  drivers/gpu/drm/tests/drm_buddy_test.o
  CC [M]  net/sunrpc/auth_gss/gss_krb5_seqnum.o
  CC [M]  fs/smb/client/cifs_unicode.o
  CC      fs/btrfs/export.o
  CC      drivers/acpi/acpica/exregion.o
  CC      drivers/tty/n_null.o
  CC      fs/btrfs/tree-log.o
  CC [M]  fs/smb/client/nterr.o
  CC      arch/x86/kernel/jump_label.o
  AR      drivers/iommu/iommufd/built-in.a
  CC      net/ipv4/tcp_plb.o
  CC      drivers/char/virtio_console.o
  CC      kernel/trace/trace_export.o
  CC      kernel/trace/trace_event_perf.o
  CC      crypto/simd.o
  AR      drivers/gpu/vga/built-in.a
  CC [M]  crypto/md4.o
  CC [M]  drivers/gpu/drm/tests/drm_cmdline_parser_test.o
  AR      drivers/char/hw_random/built-in.a
  CC [M]  fs/smb/client/cifsencrypt.o
  CC      drivers/tty/pty.o
  CC      drivers/acpi/acpica/exresnte.o
  CC      net/core/fib_rules.o
  CC      drivers/connector/cn_queue.o
  CC      drivers/connector/connector.o
  CC      drivers/char/tpm/tpm-dev.o
  CC      kernel/time/tick-broadcast.o
  CC      kernel/trace/trace_events_filter.o
  CC      drivers/tty/sysrq.o
  CC      drivers/connector/cn_proc.o
  CC      net/core/net-traces.o
  CC      net/core/selftests.o
  CC      kernel/trace/trace_events_trigger.o
  CC [M]  net/sunrpc/auth_gss/gss_krb5_wrap.o
  AR      kernel/events/built-in.a
  CC      drivers/char/hpet.o
  CC      fs/btrfs/free-space-cache.o
  CC      drivers/acpi/acpica/exresolv.o
  CC      net/ipv6/ndisc.o
  CC [M]  net/netfilter/nf_conntrack_netlink.o
  CC [M]  crypto/ccm.o
  CC      arch/x86/kernel/irq_work.o
  AR      drivers/char/agp/built-in.a
  CC      arch/x86/kernel/probe_roms.o
  CC      drivers/char/nvram.o
  CC      fs/btrfs/zlib.o
  CC      drivers/char/tpm/tpm-interface.o
  CC      drivers/iommu/intel/cap_audit.o
  CC      net/bridge/br_netlink_tunnel.o
  CC      drivers/iommu/intel/irq_remapping.o
  CC      drivers/char/tpm/tpm1-cmd.o
  CC [M]  crypto/arc4.o
  CC [M]  drivers/gpu/drm/tests/drm_connector_test.o
  CC      mm/msync.o
  CC      fs/readdir.o
  CC      drivers/base/power/sysfs.o
  CC [M]  net/bluetooth/mgmt.o
  CC      drivers/base/firmware_loader/builtin/main.o
  CC      drivers/acpi/acpica/exresop.o
  CC      drivers/acpi/acpica/exserial.o
  CC      drivers/base/regmap/regmap.o
  CC      fs/btrfs/lzo.o
  CC      kernel/time/tick-broadcast-hrtimer.o
  CC [M]  crypto/ecc.o
  CC [M]  net/sunrpc/auth_gss/gss_krb5_crypto.o
  CC      net/ipv4/datagram.o
  AR      drivers/base/firmware_loader/builtin/built-in.a
  CC      drivers/base/firmware_loader/main.o
  CC      net/bridge/br_arp_nd_proxy.o
  CC [M]  net/bluetooth/hci_sock.o
  CC      net/sunrpc/sched.o
  CC      net/sunrpc/auth.o
  CC      kernel/time/tick-oneshot.o
  AR      drivers/tty/built-in.a
  CC      drivers/block/loop.o
  CC      arch/x86/kernel/sys_ia32.o
  CC      net/ipv4/raw.o
  CC      net/sunrpc/auth_null.o
  CC      drivers/acpi/acpica/exstore.o
  AR      drivers/misc/eeprom/built-in.a
  CC      drivers/base/power/generic_ops.o
  AR      drivers/misc/cb710/built-in.a
  AR      drivers/misc/ti-st/built-in.a
  AR      drivers/misc/lis3lv02d/built-in.a
  CC      mm/page_vma_mapped.o
  CC [M]  net/bluetooth/hci_sysfs.o
  AR      drivers/misc/cardreader/built-in.a
  CC [M]  drivers/misc/mei/hdcp/mei_hdcp.o
  CC      drivers/char/tpm/tpm2-cmd.o
  AR      drivers/connector/built-in.a
  CC      drivers/char/tpm/tpmrm-dev.o
  CC [M]  net/bluetooth/l2cap_core.o
  CC      mm/pagewalk.o
  CC      drivers/mfd/mfd-core.o
  AR      drivers/nfc/built-in.a
  CC [M]  drivers/misc/mei/pxp/mei_pxp.o
  CC      kernel/trace/trace_eprobe.o
  AR      drivers/dax/hmem/built-in.a
  CC [M]  drivers/gpu/drm/tests/drm_damage_helper_test.o
  CC      drivers/dax/super.o
  CC [M]  fs/smb/client/readdir.o
  CC      drivers/dax/bus.o
  CC      fs/select.o
  CC      kernel/time/tick-sched.o
  CC      arch/x86/kernel/signal_32.o
  CC      drivers/acpi/acpica/exstoren.o
  CC [M]  drivers/gpu/drm/tests/drm_dp_mst_helper_test.o
  CC      drivers/base/power/common.o
  CC [M]  drivers/gpu/drm/tests/drm_format_helper_test.o
  CC      drivers/iommu/intel/perfmon.o
  CC [M]  drivers/gpu/drm/tests/drm_format_test.o
  CC      kernel/time/vsyscall.o
  CC      drivers/char/tpm/tpm2-space.o
  CC      arch/x86/kernel/sys_x86_64.o
  CC      drivers/char/tpm/tpm-sysfs.o
  CC [M]  net/netfilter/nf_nat_core.o
  CC [M]  net/sunrpc/auth_gss/gss_krb5_keys.o
  AR      drivers/base/firmware_loader/built-in.a
  CC      drivers/acpi/proc.o
  CC      net/sunrpc/auth_unix.o
  CC      drivers/acpi/acpica/exstorob.o
  CC      fs/btrfs/zstd.o
  CC      drivers/mfd/intel-lpss.o
  CC      drivers/mfd/intel-lpss-pci.o
  CC      fs/ext4/page-io.o
  CC [M]  drivers/misc/mei/init.o
  LD [M]  net/sunrpc/auth_gss/auth_rpcgss.o
  CC      net/bridge/br_sysfs_if.o
  CC      mm/pgtable-generic.o
  CC      drivers/acpi/acpica/exsystem.o
  CC      fs/btrfs/compression.o
  CC      net/sunrpc/svc.o
  CC      drivers/mfd/intel-lpss-acpi.o
  CC      drivers/base/power/qos.o
  LD [M]  arch/x86/kvm/kvm-intel.o
  CC      lib/zstd/zstd_common_module.o
  CC      net/ipv6/udp.o
  CC      net/ipv6/udplite.o
  CC      net/ipv4/udp.o
  CC [M]  drivers/gpu/drm/tests/drm_framebuffer_test.o
  CC      drivers/base/power/runtime.o
  CC      drivers/dma-buf/dma-buf.o
  CC      kernel/time/timekeeping_debug.o
  CC [M]  crypto/essiv.o
  CC      drivers/dma-buf/dma-fence.o
  CC      arch/x86/kernel/espfix_64.o
  CC      drivers/acpi/acpica/extrace.o
  CC      kernel/time/namespace.o
  AR      drivers/dax/built-in.a
  CC      drivers/dma-buf/dma-fence-array.o
  CC      lib/zstd/common/debug.o
  CC      drivers/char/tpm/eventlog/common.o
  CC [M]  net/bluetooth/l2cap_sock.o
  CC      drivers/acpi/acpica/exutils.o
  CC      lib/zstd/common/entropy_common.o
  CC      lib/zstd/common/error_private.o
  CC      kernel/trace/trace_kprobe.o
  CC      drivers/block/virtio_blk.o
  CC      drivers/acpi/acpica/hwacpi.o
  CC      drivers/acpi/acpica/hwesleep.o
  CC      drivers/acpi/acpica/hwgpe.o
  CC [M]  drivers/misc/mei/hbm.o
  CC      drivers/mfd/intel_soc_pmic_crc.o
  CC      net/sunrpc/svcsock.o
  CC      net/ipv6/raw.o
  CC      lib/zstd/common/fse_decompress.o
  LD [M]  net/sunrpc/auth_gss/rpcsec_gss_krb5.o
  CC [M]  drivers/gpu/drm/tests/drm_managed_test.o
  CC      drivers/dma-buf/dma-fence-chain.o
  CC      mm/rmap.o
  AR      drivers/iommu/intel/built-in.a
  CC      drivers/iommu/iommu.o
  CC      lib/zstd/common/zstd_common.o
  CC [M]  drivers/gpu/drm/tests/drm_mm_test.o
  CC      net/sunrpc/svcauth.o
  CC      drivers/char/tpm/eventlog/tpm1.o
  CC      net/ipv4/udplite.o
  CC      fs/ext4/readpage.o
  CC      fs/ext4/resize.o
  CC      mm/vmalloc.o
  AR      drivers/cxl/core/built-in.a
  CC [M]  drivers/misc/mei/interrupt.o
  AR      drivers/cxl/built-in.a
  CC      drivers/acpi/acpica/hwregs.o
  AR      drivers/macintosh/built-in.a
  CC [M]  fs/smb/client/ioctl.o
  CC      drivers/scsi/scsi.o
  CC      drivers/scsi/hosts.o
  CC      drivers/base/power/wakeirq.o
  CC      drivers/scsi/scsi_ioctl.o
  CC      net/bridge/br_sysfs_br.o
  CC [M]  drivers/gpu/drm/tests/drm_modes_test.o
  CC      drivers/base/power/main.o
  CC      fs/btrfs/delayed-ref.o
  AR      kernel/time/built-in.a
  CC      arch/x86/kernel/ksysfs.o
  CC      drivers/scsi/scsicam.o
  CC      net/sunrpc/svcauth_unix.o
  CC      kernel/sysctl.o
  CC [M]  crypto/ecdh.o
  CC      drivers/base/regmap/regcache.o
  CC [M]  net/netfilter/nf_nat_proto.o
  CC      drivers/char/tpm/eventlog/tpm2.o
  CC [M]  drivers/mfd/lpc_sch.o
  CC      net/bridge/br_nf_core.o
  CC      drivers/base/power/wakeup.o
  CC      drivers/dma-buf/dma-fence-unwrap.o
  AR      lib/zstd/built-in.a
  CC      lib/extable.o
  CC      drivers/acpi/acpica/hwsleep.o
  CC      net/ipv4/udp_offload.o
  CC      fs/ext4/super.o
  CC      kernel/capability.o
  CC      fs/ext4/symlink.o
  CC [M]  drivers/misc/mei/client.o
  CC [M]  drivers/block/nbd.o
  CC      arch/x86/kernel/bootflag.o
  CC [M]  drivers/gpu/drm/tests/drm_plane_helper_test.o
  CC      arch/x86/kernel/e820.o
  CC      fs/ext4/sysfs.o
  CC [M]  crypto/ecdh_helper.o
  CC      fs/ext4/xattr.o
  CC      arch/x86/kernel/pci-dma.o
  CC      drivers/base/power/wakeup_stats.o
  CC      lib/flex_proportions.o
  CC      drivers/dma-buf/dma-resv.o
  CC      drivers/acpi/acpica/hwvalid.o
  CC [M]  drivers/mfd/lpc_ich.o
  CC      drivers/char/tpm/tpm_ppi.o
  CC      net/sunrpc/addr.o
  CC      net/ipv4/arp.o
  CC      net/core/ptp_classifier.o
  LD [M]  crypto/ecdh_generic.o
  AR      crypto/built-in.a
  CC      net/core/netprio_cgroup.o
  CC      arch/x86/kernel/quirks.o
  CC      drivers/base/regmap/regcache-rbtree.o
  CC      lib/idr.o
  CC      drivers/scsi/scsi_error.o
  CC      drivers/base/power/domain.o
  CC      fs/ext4/xattr_hurd.o
  CC      drivers/dma-buf/sync_file.o
  CC      drivers/acpi/acpica/hwxface.o
  AR      drivers/misc/built-in.a
  CC      mm/page_alloc.o
  CC      fs/ext4/xattr_trusted.o
  AR      drivers/gpu/drm/display/built-in.a
  CC [M]  drivers/gpu/drm/display/drm_display_helper_mod.o
  CC      net/bridge/br_multicast.o
  CC [M]  fs/smb/client/sess.o
  CC      kernel/trace/error_report-traces.o
  CC [M]  drivers/gpu/drm/tests/drm_probe_helper_test.o
  CC [M]  drivers/gpu/drm/display/drm_dp_dual_mode_helper.o
  CC      drivers/acpi/acpica/hwxfsleep.o
  CC      net/ipv6/icmp.o
  CC      drivers/dma-buf/sw_sync.o
  CC      drivers/char/tpm/eventlog/acpi.o
  CC      fs/btrfs/relocation.o
  CC      drivers/iommu/iommu-traces.o
  CC      fs/ext4/xattr_user.o
  CC      net/core/dst_cache.o
  AR      drivers/mfd/built-in.a
  CC      fs/btrfs/delayed-inode.o
  CC [M]  net/netfilter/nf_nat_helper.o
  CC [M]  net/netfilter/nf_nat_redirect.o
  CC [M]  net/netfilter/nf_nat_masquerade.o
  CC [M]  net/netfilter/x_tables.o
  CC [M]  fs/smb/client/export.o
  CC      lib/irq_regs.o
  CC      arch/x86/kernel/topology.o
  CC      kernel/ptrace.o
  CC      arch/x86/kernel/kdebugfs.o
  CC      drivers/acpi/acpica/hwpci.o
  CC      drivers/base/regmap/regcache-flat.o
  CC      drivers/acpi/acpica/nsaccess.o
  CC [M]  fs/smb/client/unc.o
  CC      drivers/dma-buf/sync_debug.o
  CC      net/sunrpc/rpcb_clnt.o
  CC      drivers/nvme/host/core.o
  AR      drivers/nvme/target/built-in.a
  CC      drivers/base/regmap/regcache-maple.o
  CC      net/sunrpc/timer.o
  CC      lib/is_single_threaded.o
  CC      net/sunrpc/xdr.o
  CC      drivers/acpi/acpica/nsalloc.o
  CC      kernel/trace/power-traces.o
  CC      net/sunrpc/sunrpc_syms.o
  CC      drivers/char/tpm/eventlog/efi.o
  CC [M]  drivers/gpu/drm/tests/drm_rect_test.o
  CC      drivers/char/tpm/tpm_crb.o
  CC      net/ipv4/icmp.o
  CC [M]  drivers/gpu/drm/display/drm_dp_helper.o
  CC      net/ipv4/devinet.o
  CC      kernel/trace/rpm-traces.o
  CC [M]  drivers/misc/mei/main.o
  CC      lib/klist.o
  CC      arch/x86/kernel/alternative.o
  CC      net/bridge/br_mdb.o
  CC      net/core/gro_cells.o
  CC      kernel/trace/trace_dynevent.o
  CC      drivers/acpi/acpica/nsarguments.o
  CC [M]  drivers/dma-buf/selftest.o
  CC      drivers/acpi/acpica/nsconvert.o
  CC      drivers/iommu/iommu-sysfs.o
  CC      drivers/base/regmap/regmap-debugfs.o
  CC      net/core/failover.o
  CC [M]  drivers/misc/mei/dma-ring.o
  CC      fs/ext4/fast_commit.o
  CC      drivers/scsi/scsi_lib.o
  CC      fs/ext4/orphan.o
  CC      lib/kobject.o
  CC      lib/kobject_uevent.o
  CC      drivers/base/power/domain_governor.o
  CC      kernel/trace/trace_probe.o
  CC      kernel/trace/trace_uprobe.o
  CC      net/sunrpc/cache.o
  CC      net/ipv6/mcast.o
  CC      net/sunrpc/rpc_pipe.o
  CC      drivers/acpi/acpica/nsdump.o
  CC [M]  drivers/dma-buf/st-dma-fence.o
  CC      kernel/user.o
  CC [M]  drivers/dma-buf/st-dma-fence-chain.o
  CC      drivers/base/power/clock_ops.o
  AR      drivers/char/tpm/built-in.a
  CC [M]  drivers/dma-buf/st-dma-fence-unwrap.o
  AR      drivers/char/built-in.a
  CC      mm/init-mm.o
  CC [M]  net/netfilter/xt_tcpudp.o
  AR      drivers/gpu/drm/renesas/rcar-du/built-in.a
  AR      drivers/gpu/drm/renesas/built-in.a
  CC      drivers/iommu/dma-iommu.o
  CC [M]  net/netfilter/xt_mark.o
  CC      net/sunrpc/sysfs.o
  CC [M]  net/bluetooth/smp.o
  CC [M]  net/netfilter/xt_nat.o
  AR      drivers/block/built-in.a
  CC      drivers/base/regmap/regmap-i2c.o
  CC      drivers/acpi/acpica/nseval.o
  CC      kernel/trace/rethook.o
  CC      kernel/signal.o
  CC      drivers/acpi/acpica/nsinit.o
  CC      kernel/sys.o
  CC      mm/memblock.o
  CC [M]  drivers/misc/mei/bus.o
  CC [M]  drivers/misc/mei/bus-fixup.o
  CC [M]  fs/smb/client/winucase.o
  AR      net/core/built-in.a
  CC [M]  fs/smb/client/smb2ops.o
  CC      net/sunrpc/svc_xprt.o
  CC      net/sunrpc/xprtmultipath.o
  CC [M]  fs/smb/client/smb2maperror.o
  CC      mm/memory_hotplug.o
  CC      net/ipv6/reassembly.o
  CC      net/sunrpc/stats.o
  CC [M]  drivers/dma-buf/st-dma-resv.o
  CC      drivers/ata/libata-core.o
  CC      mm/madvise.o
  AR      drivers/base/power/built-in.a
  AR      drivers/dma-buf/built-in.a
  CC      drivers/base/component.o
  AR      drivers/base/test/built-in.a
  CC      mm/page_io.o
  CC      drivers/base/core.o
  CC      arch/x86/kernel/i8253.o
  CC      drivers/acpi/acpica/nsload.o
  CC      drivers/base/bus.o
  CC      lib/logic_pio.o
  CC      drivers/base/dd.o
  CC      drivers/base/syscore.o
  CC      fs/btrfs/scrub.o
  CC      drivers/base/regmap/regmap-irq.o
  CC [M]  drivers/gpu/drm/display/drm_dp_mst_topology.o
  CC      net/bridge/br_multicast_eht.o
  CC      lib/maple_tree.o
  LD [M]  drivers/dma-buf/dmabuf_selftests.o
  CC      drivers/ata/libata-scsi.o
  CC      drivers/scsi/scsi_lib_dma.o
  CC      fs/btrfs/backref.o
  CC      fs/btrfs/ulist.o
  CC      arch/x86/kernel/hw_breakpoint.o
  CC      drivers/acpi/acpica/nsnames.o
  CC      lib/memcat_p.o
  CC      net/sunrpc/sysctl.o
  CC [M]  net/netfilter/xt_REDIRECT.o
  CC [M]  drivers/misc/mei/debugfs.o
  CC      drivers/base/driver.o
  CC      drivers/base/class.o
  CC      fs/btrfs/qgroup.o
  CC      drivers/iommu/iova.o
  CC      drivers/nvme/host/ioctl.o
  CC      drivers/scsi/scsi_scan.o
  CC      net/ipv4/af_inet.o
  CC      arch/x86/kernel/tsc.o
  CC      drivers/base/platform.o
  CC      drivers/acpi/acpica/nsobject.o
  AR      kernel/trace/built-in.a
  CC      net/ipv4/igmp.o
  CC      net/ipv4/fib_frontend.o
  GEN     drivers/scsi/scsi_devinfo_tbl.c
  CC      drivers/scsi/scsi_devinfo.o
  CC      drivers/nvme/host/trace.o
  CC      arch/x86/kernel/tsc_msr.o
  CC      arch/x86/kernel/io_delay.o
  CC [M]  fs/smb/client/smb2transport.o
  CC [M]  fs/smb/client/smb2misc.o
  CC [M]  drivers/gpu/drm/display/drm_dsc_helper.o
  CC [M]  drivers/gpu/drm/display/drm_hdcp_helper.o
  CC      kernel/umh.o
  CC      arch/x86/kernel/rtc.o
  CC      mm/swap_state.o
  CC [M]  drivers/misc/mei/mei-trace.o
  CC      drivers/ata/libata-eh.o
  CC      lib/nmi_backtrace.o
  CC      lib/plist.o
  CC      drivers/acpi/acpica/nsparse.o
  CC      drivers/scsi/scsi_sysctl.o
  AR      drivers/base/regmap/built-in.a
  CC      net/ipv6/tcp_ipv6.o
  CC      drivers/nvme/host/fault_inject.o
  CC      fs/btrfs/send.o
  CC      fs/btrfs/dev-replace.o
  CC      kernel/workqueue.o
  CC      drivers/scsi/scsi_debugfs.o
  CC      drivers/nvme/host/pci.o
  CC      mm/swapfile.o
  CC [M]  net/netfilter/xt_MASQUERADE.o
  CC      drivers/iommu/irq_remapping.o
  CC      drivers/scsi/scsi_trace.o
  CC      arch/x86/kernel/resource.o
  CC      drivers/acpi/acpica/nspredef.o
  CC      drivers/acpi/acpica/nsprepkg.o
  CC      drivers/acpi/acpica/nsrepair.o
  AS      arch/x86/kernel/irqflags.o
  CC      net/bridge/br_vlan.o
  CC [M]  drivers/gpu/drm/display/drm_hdmi_helper.o
  CC [M]  drivers/gpu/drm/display/drm_scdc_helper.o
  CC [M]  net/bluetooth/lib.o
  CC [M]  fs/smb/client/smb2pdu.o
  CC      lib/radix-tree.o
  CC      mm/swap_slots.o
  CC      drivers/ata/libata-transport.o
  CC      drivers/acpi/acpica/nsrepair2.o
  CC      arch/x86/kernel/static_call.o
  CC      drivers/base/cpu.o
  CC      drivers/scsi/scsi_logging.o
  CC [M]  drivers/gpu/drm/display/drm_dp_aux_dev.o
  CC [M]  drivers/misc/mei/pci-me.o
  AR      net/sunrpc/built-in.a
  CC [M]  net/netfilter/xt_addrtype.o
  AR      drivers/gpu/drm/omapdrm/built-in.a
  AR      drivers/gpu/drm/tilcdc/built-in.a
  AR      drivers/gpu/drm/imx/built-in.a
  AR      drivers/gpu/drm/i2c/built-in.a
  AR      drivers/gpu/drm/panel/built-in.a
  AR      drivers/gpu/drm/bridge/analogix/built-in.a
  AR      drivers/gpu/drm/bridge/cadence/built-in.a
  AR      drivers/gpu/drm/bridge/imx/built-in.a
  AR      drivers/gpu/drm/bridge/synopsys/built-in.a
  AR      drivers/gpu/drm/bridge/built-in.a
  AR      drivers/gpu/drm/hisilicon/built-in.a
  CC      kernel/pid.o
  AR      drivers/gpu/drm/mxsfb/built-in.a
  AR      drivers/gpu/drm/tiny/built-in.a
  CC      drivers/scsi/scsi_pm.o
  CC      drivers/acpi/acpica/nssearch.o
  CC      arch/x86/kernel/process.o
  CC      arch/x86/kernel/ptrace.o
  AR      drivers/iommu/built-in.a
  CC      drivers/acpi/acpica/nsutils.o
  CC      fs/dcache.o
  CC      drivers/scsi/scsi_bsg.o
  CC [M]  drivers/misc/mei/hw-me.o
  CC [M]  drivers/misc/mei/gsc-me.o
  LD [M]  drivers/misc/mei/mei.o
  CC      arch/x86/kernel/tls.o
  CC      fs/inode.o
  CC      net/ipv6/ping.o
  CC [M]  net/netfilter/xt_conntrack.o
  CC      drivers/base/firmware.o
  CC [M]  fs/smb/client/smb2inode.o
  CC      kernel/task_work.o
  CC [M]  net/netfilter/xt_ipvs.o
  CC      arch/x86/kernel/step.o
  CC      mm/dmapool.o
  CC      lib/ratelimit.o
  CC      drivers/ata/libata-trace.o
  CC      drivers/ata/libata-sata.o
  CC [M]  net/bluetooth/ecdh_helper.o
  CC      drivers/ata/libata-sff.o
  CC      drivers/scsi/scsi_common.o
  CC      kernel/extable.o
  CC [M]  fs/smb/client/smb2file.o
  CC      drivers/acpi/acpica/nswalk.o
  CC      mm/hugetlb.o
  CC      fs/btrfs/raid56.o
  CC [M]  net/bluetooth/hci_request.o
  CC      net/ipv4/fib_semantics.o
  CC [M]  fs/smb/client/cifsacl.o
  CC      lib/rbtree.o
  CC      fs/btrfs/uuid-tree.o
  CC      drivers/base/init.o
  CC      drivers/scsi/sd.o
  CC      net/bridge/br_vlan_tunnel.o
  CC      drivers/spi/spi.o
  CC      drivers/net/phy/mdio-boardinfo.o
  CC      drivers/scsi/sg.o
  LD [M]  drivers/misc/mei/mei-gsc.o
  CC      kernel/params.o
  CC      arch/x86/kernel/i8237.o
  AR      drivers/net/pse-pd/built-in.a
  CC      arch/x86/kernel/stacktrace.o
  AR      drivers/firewire/built-in.a
  CC      drivers/acpi/acpica/nsxfeval.o
  CC      arch/x86/kernel/reboot.o
  CC      kernel/kthread.o
  LD [M]  drivers/gpu/drm/display/drm_display_helper.o
  CC [M]  net/bluetooth/mgmt_util.o
  CC      net/bridge/br_vlan_options.o
  AR      drivers/gpu/drm/xlnx/built-in.a
  AR      drivers/gpu/drm/gud/built-in.a
  AR      drivers/gpu/drm/solomon/built-in.a
  CC [M]  drivers/gpu/drm/ttm/ttm_tt.o
  CC      lib/seq_buf.o
  CC [M]  net/bluetooth/mgmt_config.o
  CC      drivers/base/map.o
  CC      arch/x86/kernel/msr.o
  CC [M]  drivers/gpu/drm/scheduler/sched_main.o
  CC [M]  net/bluetooth/hci_codec.o
  LD [M]  net/netfilter/nf_conntrack.o
  LD [M]  net/netfilter/nf_nat.o
  CC [M]  drivers/gpu/drm/ttm/ttm_bo.o
  CC      net/ipv6/exthdrs.o
  AR      net/netfilter/built-in.a
  CC [M]  drivers/gpu/drm/amd/amdxcp/amdgpu_xcp_drv.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_drv.o
  AR      drivers/nvme/host/built-in.a
  AR      drivers/nvme/built-in.a
  CC      drivers/acpi/acpica/nsxfname.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_device.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_kms.o
  CC      drivers/net/phy/mdio_devres.o
  CC      fs/btrfs/props.o
  CC [M]  drivers/gpu/drm/i915/i915_driver.o
  CC      fs/btrfs/free-space-tree.o
  LD [M]  drivers/misc/mei/mei-me.o
  CC      drivers/base/devres.o
  CC [M]  fs/smb/client/fs_context.o
  CC      drivers/ata/libata-pmp.o
  CC      fs/btrfs/tree-checker.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_atombios.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/atombios_crtc.o
  CC      arch/x86/kernel/cpuid.o
  CC [M]  fs/smb/client/dns_resolve.o
  CC      arch/x86/kernel/early-quirks.o
  LD [M]  drivers/gpu/drm/amd/amdxcp/amdxcp.o
  CC      arch/x86/kernel/smp.o
  CC      mm/hugetlb_vmemmap.o
  CC      kernel/sys_ni.o
  CC      net/ipv6/datagram.o
  CC      fs/btrfs/space-info.o
  CC      drivers/base/attribute_container.o
  CC      drivers/acpi/acpica/nsxfobj.o
  CC      fs/attr.o
  CC [M]  net/bluetooth/eir.o
  CC      net/bridge/br_mst.o
  CC [M]  net/bluetooth/hci_sync.o
  CC      drivers/ata/libata-acpi.o
  CC      drivers/net/phy/phy.o
  CC      kernel/nsproxy.o
  CC      arch/x86/kernel/smpboot.o
  CC      drivers/base/transport_class.o
  CC      kernel/notifier.o
  CC [M]  drivers/gpu/drm/xe/tests/xe_bo_test.o
  CC [M]  net/bluetooth/coredump.o
  CC      drivers/acpi/acpica/psargs.o
  CC [M]  drivers/gpu/drm/ttm/ttm_bo_util.o
  CC      drivers/acpi/acpica/psloop.o
  CC      drivers/net/phy/phy-c45.o
  CC [M]  drivers/gpu/drm/vgem/vgem_drv.o
  CC      drivers/base/topology.o
  CC      drivers/base/container.o
  CC [M]  drivers/gpu/drm/vgem/vgem_fence.o
  CC [M]  drivers/gpu/drm/scheduler/sched_fence.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_connectors.o
  CC      net/ipv4/fib_trie.o
  CC      drivers/scsi/scsi_sysfs.o
  CC      drivers/ata/libata-pata-timings.o
  CC      net/ipv4/fib_notifier.o
  CC      drivers/net/mdio/acpi_mdio.o
  CC      drivers/net/mdio/fwnode_mdio.o
  CC      mm/sparse.o
  CC [M]  drivers/gpu/drm/xe/tests/xe_dma_buf_test.o
  AR      drivers/net/pcs/built-in.a
  CC      arch/x86/kernel/tsc_sync.o
  CC      mm/sparse-vmemmap.o
  CC      net/ipv6/ip6_flowlabel.o
  CC      net/ipv6/inet6_connection_sock.o
  CC      drivers/base/property.o
  CC      drivers/acpi/acpica/psobject.o
  CC [M]  drivers/gpu/drm/scheduler/sched_entity.o
  AR      fs/ext4/built-in.a
  CC      fs/bad_inode.o
  CC [M]  drivers/gpu/drm/nouveau/nvif/object.o
  CC [M]  drivers/gpu/drm/nouveau/nvif/client.o
  CC [M]  drivers/gpu/drm/nouveau/nvif/conn.o
  CC [M]  net/bluetooth/sco.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/atom.o
  CC [M]  net/bridge/br_netfilter_hooks.o
  CC [M]  drivers/gpu/drm/ast/ast_drv.o
  CC      drivers/gpu/drm/drm_mipi_dsi.o
  CC [M]  drivers/gpu/drm/xe/tests/xe_migrate_test.o
  CC [M]  drivers/gpu/drm/i915/i915_drm_client.o
  CC [M]  drivers/gpu/drm/i915/i915_config.o
  LD [M]  drivers/gpu/drm/vgem/vgem.o
  CC [M]  drivers/gpu/drm/ast/ast_i2c.o
  CC [M]  drivers/gpu/drm/ttm/ttm_bo_vm.o
  CC      fs/btrfs/block-rsv.o
  CC      fs/btrfs/delalloc-space.o
  CC      kernel/ksysfs.o
  CC      drivers/acpi/acpica/psopcode.o
  CC      mm/mmu_notifier.o
  CC      lib/show_mem.o
  CC [M]  net/bluetooth/iso.o
  CC [M]  drivers/gpu/drm/nouveau/nvif/device.o
  CC      net/ipv4/inet_fragment.o
  CC      drivers/ata/ahci.o
  CC      drivers/acpi/acpica/psopinfo.o
  CC [M]  drivers/gpu/drm/ttm/ttm_module.o
  CC [M]  drivers/gpu/drm/ttm/ttm_execbuf_util.o
  AR      drivers/net/mdio/built-in.a
  CC      net/ipv4/ping.o
  AR      drivers/net/ethernet/adi/built-in.a
  AR      drivers/net/ethernet/alacritech/built-in.a
  CC      lib/siphash.o
  AR      drivers/net/ethernet/amazon/built-in.a
  CC      kernel/cred.o
  AR      drivers/net/ethernet/aquantia/built-in.a
  AR      drivers/net/ethernet/asix/built-in.a
  AR      drivers/spi/built-in.a
  CC      fs/file.o
  AR      drivers/net/ethernet/cadence/built-in.a
  CC      drivers/acpi/bus.o
  CC [M]  drivers/gpu/drm/xe/tests/xe_pci_test.o
  ASN.1   fs/smb/client/cifs_spnego_negtokeninit.asn1.[ch]
  AR      drivers/net/ethernet/broadcom/built-in.a
  CC      drivers/net/phy/phy-core.o
  CC [M]  drivers/net/ethernet/broadcom/b44.o
  AR      drivers/net/ethernet/cavium/common/built-in.a
  CC [M]  drivers/net/ethernet/broadcom/bnx2.o
  AR      drivers/net/ethernet/cavium/thunder/built-in.a
  AR      drivers/net/ethernet/cavium/liquidio/built-in.a
  CC      arch/x86/kernel/setup_percpu.o
  AR      drivers/net/ethernet/cavium/octeon/built-in.a
  AR      drivers/net/ethernet/cavium/built-in.a
  CC [M]  drivers/net/ethernet/broadcom/cnic.o
  CC [M]  net/bluetooth/a2mp.o
  CC      fs/filesystems.o
  CC      fs/namespace.o
  CC [M]  fs/smb/client/smb1ops.o
  CC      kernel/reboot.o
  CC      drivers/acpi/acpica/psparse.o
  CC [M]  net/bluetooth/amp.o
  LD [M]  drivers/gpu/drm/scheduler/gpu-sched.o
  CC      mm/ksm.o
  CC [M]  drivers/gpu/drm/drm_aperture.o
  CC      kernel/async.o
  AR      drivers/net/ethernet/cortina/built-in.a
  CC      fs/seq_file.o
  CC      arch/x86/kernel/ftrace.o
  AS      arch/x86/kernel/ftrace_64.o
  CC      fs/btrfs/block-group.o
  CC [M]  drivers/gpu/drm/drm_atomic.o
  CC      fs/btrfs/discard.o
  CC [M]  drivers/gpu/drm/ast/ast_main.o
  AR      drivers/scsi/built-in.a
  CC      lib/string.o
  AR      drivers/net/ethernet/engleder/built-in.a
  CC      drivers/base/cacheinfo.o
  AR      drivers/cdrom/built-in.a
  AR      drivers/net/ethernet/ezchip/built-in.a
  AR      drivers/net/ethernet/fungible/built-in.a
  AR      drivers/auxdisplay/built-in.a
  CC      drivers/net/phy/phy_device.o
  CC      drivers/usb/common/common.o
  CC [M]  drivers/gpu/drm/ttm/ttm_range_manager.o
  CC [M]  drivers/gpu/drm/nouveau/nvif/disp.o
  CC [M]  drivers/gpu/drm/i915/i915_getparam.o
  CC      drivers/usb/common/debug.o
  CC [M]  drivers/gpu/drm/nouveau/nvif/driver.o
  CC [M]  drivers/gpu/drm/xe/tests/xe_rtp_test.o
  CC      net/ipv6/udp_offload.o
  CC      net/ipv6/seg6.o
  CC      drivers/acpi/acpica/psscope.o
  CC      net/ipv6/fib6_notifier.o
  CC [M]  drivers/gpu/drm/i915/i915_ioctl.o
  CC [M]  drivers/gpu/drm/drm_atomic_uapi.o
  CC      kernel/range.o
  CC      kernel/smpboot.o
  CC      drivers/net/phy/linkmode.o
  CC      fs/btrfs/reflink.o
  CC      drivers/ata/libahci.o
  CC      net/ipv6/rpl.o
  CC      lib/timerqueue.o
  CC [M]  net/bluetooth/hci_debugfs.o
  CC      fs/btrfs/subpage.o
  CC      fs/btrfs/tree-mod-log.o
  CC      arch/x86/kernel/trace_clock.o
  CC [M]  drivers/gpu/drm/ttm/ttm_resource.o
  CC      drivers/acpi/acpica/pstree.o
  AR      drivers/usb/common/built-in.a
  CC      lib/vsprintf.o
  AR      drivers/usb/phy/built-in.a
  CC      drivers/usb/core/usb.o
  CC      kernel/ucount.o
  CC      drivers/base/swnode.o
  CC      arch/x86/kernel/trace.o
  CC [M]  drivers/gpu/drm/xe/tests/xe_wa_test.o
  CC [M]  drivers/gpu/drm/nouveau/nvif/event.o
  CC [M]  drivers/gpu/drm/nouveau/nvif/fifo.o
  CC [M]  drivers/gpu/drm/ast/ast_mm.o
  CC      arch/x86/kernel/rethook.o
  CC      net/ipv4/ip_tunnel_core.o
  CC      kernel/regset.o
  CC      fs/btrfs/extent-io-tree.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_fence.o
  CC      fs/xattr.o
  CC      drivers/usb/host/pci-quirks.o
  CC      net/ipv4/gre_offload.o
  CC      drivers/usb/host/ehci-hcd.o
  CC      net/ipv4/metrics.o
  CC      kernel/groups.o
  CC      drivers/net/phy/mdio_bus.o
  CC      fs/btrfs/fs.o
  CC      drivers/acpi/acpica/psutils.o
  CC      drivers/acpi/acpica/pswalk.o
  CC      drivers/usb/host/ehci-pci.o
  CC [M]  net/bridge/br_netfilter_ipv6.o
  CC      mm/slub.o
  CC [M]  drivers/gpu/drm/ttm/ttm_pool.o
  CC [M]  drivers/gpu/drm/drm_auth.o
  CC [M]  drivers/gpu/drm/i915/i915_irq.o
  CC [M]  drivers/net/ethernet/broadcom/tg3.o
  CC      kernel/vhost_task.o
  CC      drivers/input/serio/serio.o
  CC [M]  fs/smb/client/cifssmb.o
  CC      drivers/input/serio/i8042.o
  CC      net/ipv6/ioam6.o
  CC      arch/x86/kernel/crash_core_64.o
  CC      net/ipv6/sysctl_net_ipv6.o
  CC      drivers/acpi/acpica/psxface.o
  CC [M]  drivers/gpu/drm/xe/xe_bb.o
  CC [M]  drivers/gpu/drm/xe/xe_bo.o
  CC      drivers/acpi/acpica/rsaddr.o
  CC      arch/x86/kernel/module.o
  CC [M]  drivers/gpu/drm/i915/i915_mitigations.o
  CC      drivers/base/auxiliary.o
  CC [M]  drivers/gpu/drm/ast/ast_mode.o
  CC [M]  drivers/gpu/drm/nouveau/nvif/head.o
  CC      drivers/usb/core/hub.o
  CC      kernel/kcmp.o
  CC      drivers/ata/ata_piix.o
  CC      drivers/usb/storage/scsiglue.o
  CC      drivers/usb/storage/protocol.o
  CC      drivers/net/phy/mdio_device.o
  CC      drivers/usb/serial/usb-serial.o
  CC      drivers/usb/storage/transport.o
  CC      drivers/usb/host/ohci-hcd.o
  CC      fs/btrfs/messages.o
  CC      drivers/acpi/acpica/rscalc.o
  CC      fs/btrfs/bio.o
  CC      drivers/input/serio/libps2.o
  LD [M]  net/bluetooth/bluetooth.o
  CC      drivers/base/devtmpfs.o
  CC [M]  drivers/gpu/drm/ttm/ttm_device.o
  CC      drivers/usb/core/hcd.o
  CC      drivers/net/phy/swphy.o
  CC      fs/btrfs/lru_cache.o
  CC      net/ipv4/netlink.o
  CC [M]  drivers/gpu/drm/nouveau/nvif/mem.o
  CC      drivers/base/memory.o
  CC      arch/x86/kernel/early_printk.o
  CC [M]  drivers/gpu/drm/ttm/ttm_sys_manager.o
  CC [M]  drivers/gpu/drm/ttm/ttm_agp_backend.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.o
  CC      lib/win_minmax.o
  CC      drivers/input/keyboard/atkbd.o
  CC      drivers/usb/core/urb.o
  CC      drivers/usb/core/message.o
  AR      net/bridge/built-in.a
  LD [M]  net/bridge/br_netfilter.o
  AR      drivers/input/mouse/built-in.a
  CC      drivers/input/input.o
  CC [M]  drivers/gpu/drm/nouveau/nvif/mmu.o
  CC      kernel/freezer.o
  CC      drivers/acpi/acpica/rscreate.o
  CC      drivers/usb/serial/generic.o
  CC      lib/xarray.o
  AR      drivers/net/usb/built-in.a
  CC [M]  drivers/net/usb/pegasus.o
  CC [M]  drivers/net/usb/rtl8150.o
  CC      drivers/acpi/glue.o
  CC      drivers/net/phy/fixed_phy.o
  CC      drivers/usb/storage/usb.o
  CC      arch/x86/kernel/hpet.o
  CC      arch/x86/kernel/amd_nb.o
  CC      kernel/stacktrace.o
  CC      kernel/dma.o
  AR      drivers/input/serio/built-in.a
  CC [M]  drivers/net/ipvlan/ipvlan_core.o
  CC [M]  drivers/gpu/drm/i915/i915_module.o
  CC      drivers/usb/storage/initializers.o
  CC [M]  drivers/net/ipvlan/ipvlan_main.o
  CC [M]  drivers/gpu/drm/ast/ast_post.o
  LD [M]  drivers/gpu/drm/ttm/ttm.o
  CC      drivers/usb/host/ohci-pci.o
  CC [M]  drivers/gpu/drm/i915/i915_params.o
  CC      drivers/acpi/acpica/rsdumpinfo.o
  CC [M]  drivers/gpu/drm/drm_blend.o
  CC      drivers/usb/host/uhci-hcd.o
  AR      drivers/ata/built-in.a
  CC [M]  drivers/gpu/drm/i915/i915_pci.o
  CC      fs/libfs.o
  CC      net/ipv4/nexthop.o
  CC      arch/x86/kernel/kvm.o
  CC      drivers/base/module.o
  CC      net/ipv6/xfrm6_policy.o
  CC      lib/lockref.o
  CC      drivers/usb/storage/sierra_ms.o
  CC      drivers/usb/serial/bus.o
  AR      drivers/usb/misc/built-in.a
  CC      kernel/smp.o
  CC [M]  drivers/gpu/drm/nouveau/nvif/outp.o
  CC      drivers/acpi/acpica/rsinfo.o
  CC [M]  drivers/net/usb/r8152.o
  CC      drivers/usb/core/driver.o
  CC      drivers/usb/host/xhci.o
  CC      drivers/acpi/scan.o
  CC [M]  drivers/gpu/drm/ast/ast_dp501.o
  CC      drivers/usb/gadget/udc/core.o
  CC      fs/btrfs/acl.o
  AR      drivers/input/keyboard/built-in.a
  CC      drivers/usb/gadget/udc/trace.o
  CC      mm/migrate.o
  CC [M]  drivers/net/phy/phylink.o
  CC      kernel/uid16.o
  CC      drivers/base/pinctrl.o
  CC [M]  drivers/net/vxlan/vxlan_core.o
  CC [M]  drivers/gpu/drm/xe/xe_bo_evict.o
  CC [M]  drivers/net/vxlan/vxlan_multicast.o
  CC [M]  drivers/gpu/drm/i915/i915_scatterlist.o
  CC [M]  drivers/gpu/drm/xe/xe_debugfs.o
  CC      drivers/acpi/acpica/rsio.o
  CC      drivers/usb/serial/console.o
  CC [M]  drivers/net/ipvlan/ipvlan_l3s.o
  CC [M]  drivers/usb/class/usbtmc.o
  CC [M]  drivers/gpu/drm/i915/i915_suspend.o
  CC      drivers/usb/storage/option_ms.o
  CC      drivers/usb/storage/usual-tables.o
  CC [M]  drivers/gpu/drm/i915/i915_switcheroo.o
  AR      drivers/usb/gadget/function/built-in.a
  AR      drivers/usb/gadget/legacy/built-in.a
  CC      arch/x86/kernel/kvmclock.o
  CC      drivers/usb/gadget/usbstring.o
  CC      drivers/usb/gadget/config.o
  CC      drivers/base/devcoredump.o
  CC      lib/bcd.o
  CC      drivers/input/input-compat.o
  CC      drivers/rtc/lib.o
  CC      drivers/acpi/acpica/rsirq.o
  CC      lib/sort.o
  CC [M]  drivers/gpu/drm/nouveau/nvif/timer.o
  CC      drivers/rtc/class.o
  CC      drivers/usb/core/config.o
  CC [M]  drivers/gpu/drm/ast/ast_dp.o
  CC      lib/parser.o
  CC      drivers/acpi/acpica/rslist.o
  CC      net/ipv6/xfrm6_state.o
  CC [M]  drivers/gpu/drm/nouveau/nvif/vmm.o
  CC      drivers/usb/core/file.o
  CC      arch/x86/kernel/paravirt.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_object.o
  CC      kernel/kallsyms.o
  CC      drivers/usb/serial/ftdi_sio.o
  CC      drivers/net/loopback.o
  CC      drivers/rtc/interface.o
  AR      fs/btrfs/built-in.a
  CC [M]  drivers/gpu/drm/xe/xe_devcoredump.o
  CC      drivers/acpi/acpica/rsmemory.o
  AR      drivers/usb/storage/built-in.a
  CC      drivers/net/netconsole.o
  CC      drivers/net/virtio_net.o
  AR      drivers/i2c/algos/built-in.a
  CC [M]  drivers/i2c/algos/i2c-algo-bit.o
  AR      drivers/i3c/built-in.a
  CC      drivers/acpi/acpica/rsmisc.o
  CC      drivers/net/net_failover.o
  CC      fs/fs-writeback.o
  CC      drivers/input/input-mt.o
  CC      drivers/base/platform-msi.o
  CC      fs/pnode.o
  CC      fs/splice.o
  CC      lib/debug_locks.o
  CC      drivers/i2c/busses/i2c-designware-common.o
  CC      drivers/base/physical_location.o
  CC      drivers/i2c/busses/i2c-designware-master.o
  CC [M]  drivers/net/dummy.o
  AR      drivers/usb/gadget/udc/built-in.a
  CC      drivers/usb/gadget/epautoconf.o
  LD [M]  drivers/net/ipvlan/ipvlan.o
  AR      drivers/media/i2c/built-in.a
  CC      drivers/acpi/acpica/rsserial.o
  AR      drivers/media/tuners/built-in.a
  CC [M]  drivers/net/phy/aquantia_main.o
  CC [M]  drivers/net/vxlan/vxlan_vnifilter.o
  CC      lib/random32.o
  CC      drivers/usb/core/buffer.o
  AR      drivers/media/rc/keymaps/built-in.a
  CC [M]  fs/smb/client/cifs_spnego_negtokeninit.asn1.o
  AR      drivers/media/rc/built-in.a
  AR      drivers/media/common/b2c2/built-in.a
  CC      drivers/acpi/acpica/rsutils.o
  AR      drivers/media/common/saa7146/built-in.a
  CC [M]  drivers/gpu/drm/i915/i915_sysfs.o
  AR      drivers/media/common/siano/built-in.a
  CC      drivers/i2c/busses/i2c-designware-platdrv.o
  AR      drivers/media/common/v4l2-tpg/built-in.a
  CC      drivers/acpi/acpica/rsxface.o
  CC [M]  fs/smb/client/asn1.o
  AR      drivers/media/common/videobuf2/built-in.a
  AR      drivers/media/common/built-in.a
  AR      drivers/media/platform/allegro-dvt/built-in.a
  CC      arch/x86/kernel/pvclock.o
  AR      drivers/media/platform/amlogic/meson-ge2d/built-in.a
  AR      drivers/media/platform/amlogic/built-in.a
  AR      drivers/media/platform/amphion/built-in.a
  AR      drivers/media/platform/aspeed/built-in.a
  AR      drivers/media/platform/atmel/built-in.a
  AR      drivers/media/platform/cadence/built-in.a
  LD [M]  drivers/gpu/drm/ast/ast.o
  CC [M]  drivers/gpu/drm/nouveau/nvif/user.o
  CC      drivers/acpi/acpica/tbdata.o
  AR      drivers/media/platform/chips-media/built-in.a
  CC      drivers/acpi/acpica/tbfadt.o
  AR      drivers/media/platform/intel/built-in.a
  AR      drivers/media/platform/marvell/built-in.a
  AR      drivers/media/pci/ttpci/built-in.a
  AR      drivers/media/platform/mediatek/jpeg/built-in.a
  AR      drivers/media/pci/b2c2/built-in.a
  AR      drivers/media/platform/mediatek/mdp/built-in.a
  AR      drivers/media/pci/pluto2/built-in.a
  AR      drivers/media/platform/mediatek/vcodec/built-in.a
  AR      drivers/media/pci/dm1105/built-in.a
  AR      drivers/media/usb/b2c2/built-in.a
  AR      drivers/media/platform/mediatek/vpu/built-in.a
  AR      drivers/media/pci/pt1/built-in.a
  AR      drivers/media/usb/dvb-usb/built-in.a
  AR      drivers/media/platform/mediatek/mdp3/built-in.a
  AR      drivers/media/pci/pt3/built-in.a
  AR      drivers/media/platform/mediatek/built-in.a
  AR      drivers/media/usb/dvb-usb-v2/built-in.a
  AR      drivers/media/pci/mantis/built-in.a
  CC [M]  drivers/gpu/drm/xe/xe_device.o
  AR      drivers/media/usb/s2255/built-in.a
  AR      drivers/media/mmc/siano/built-in.a
  CC      net/ipv6/xfrm6_input.o
  AR      drivers/media/pci/ngene/built-in.a
  AR      drivers/media/pci/ddbridge/built-in.a
  AR      drivers/media/platform/microchip/built-in.a
  AR      drivers/media/mmc/built-in.a
  CC      net/ipv6/xfrm6_output.o
  CC      drivers/base/trace.o
  AR      drivers/media/usb/siano/built-in.a
  AR      drivers/media/pci/saa7146/built-in.a
  AR      drivers/media/platform/nvidia/tegra-vde/built-in.a
  AR      drivers/media/usb/ttusb-budget/built-in.a
  AR      drivers/media/usb/ttusb-dec/built-in.a
  AR      drivers/media/platform/nvidia/built-in.a
  AR      drivers/media/pci/smipcie/built-in.a
  AR      drivers/media/usb/built-in.a
  CC [M]  drivers/gpu/drm/i915/i915_utils.o
  AR      drivers/media/pci/netup_unidvb/built-in.a
  AR      drivers/media/platform/nxp/dw100/built-in.a
  AR      drivers/media/platform/nxp/imx-jpeg/built-in.a
  AR      drivers/media/pci/intel/ipu3/built-in.a
  AR      drivers/media/pci/intel/built-in.a
  AR      drivers/media/platform/qcom/camss/built-in.a
  AR      drivers/media/platform/nxp/imx8-isi/built-in.a
  CC      lib/bust_spinlocks.o
  AR      drivers/media/platform/nxp/built-in.a
  AR      drivers/media/pci/built-in.a
  AR      drivers/media/platform/qcom/venus/built-in.a
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_gart.o
  AR      drivers/media/platform/qcom/built-in.a
  CC      net/ipv6/xfrm6_protocol.o
  CC      drivers/usb/gadget/composite.o
  CC      mm/migrate_device.o
  AR      drivers/media/platform/renesas/rcar-vin/built-in.a
  AR      drivers/media/platform/renesas/rzg2l-cru/built-in.a
  AR      drivers/media/platform/renesas/vsp1/built-in.a
  CC      kernel/acct.o
  AR      drivers/media/platform/renesas/built-in.a
  CC      mm/huge_memory.o
  AR      drivers/media/platform/rockchip/rga/built-in.a
  AR      drivers/media/platform/rockchip/rkisp1/built-in.a
  CC      drivers/input/input-poller.o
  AR      drivers/media/platform/rockchip/built-in.a
  CC      mm/khugepaged.o
  CC      lib/kasprintf.o
  AR      drivers/media/platform/samsung/exynos-gsc/built-in.a
  CC      lib/bitmap.o
  AR      drivers/media/platform/samsung/exynos4-is/built-in.a
  CC      lib/scatterlist.o
  AR      drivers/media/platform/samsung/s3c-camif/built-in.a
  AR      drivers/media/platform/samsung/s5p-g2d/built-in.a
  CC      lib/list_sort.o
  AR      drivers/media/platform/samsung/s5p-jpeg/built-in.a
  AR      drivers/media/platform/samsung/s5p-mfc/built-in.a
  CC [M]  drivers/net/macvlan.o
  AR      drivers/media/platform/samsung/built-in.a
  AR      drivers/media/platform/st/sti/bdisp/built-in.a
  CC      drivers/usb/core/sysfs.o
  AR      drivers/media/platform/st/sti/c8sectpfe/built-in.a
  AR      drivers/media/platform/st/sti/delta/built-in.a
  CC      drivers/usb/host/xhci-mem.o
  AR      drivers/media/platform/st/sti/hva/built-in.a
  CC [M]  drivers/net/mii.o
  AR      drivers/media/platform/st/stm32/built-in.a
  AR      drivers/media/platform/st/built-in.a
  CC      fs/sync.o
  CC      kernel/crash_core.o
  CC      kernel/compat.o
  AR      drivers/media/platform/sunxi/sun4i-csi/built-in.a
  AR      drivers/media/platform/sunxi/sun6i-csi/built-in.a
  CC      arch/x86/kernel/pcspeaker.o
  CC      lib/uuid.o
  AR      drivers/media/platform/sunxi/sun6i-mipi-csi2/built-in.a
  AR      drivers/media/platform/sunxi/sun8i-a83t-mipi-csi2/built-in.a
  CC      drivers/acpi/acpica/tbfind.o
  AR      drivers/media/platform/sunxi/sun8i-di/built-in.a
  AR      drivers/media/platform/sunxi/sun8i-rotate/built-in.a
  AR      drivers/media/platform/sunxi/built-in.a
  CC      drivers/usb/serial/pl2303.o
  AR      drivers/media/platform/ti/am437x/built-in.a
  AR      drivers/media/platform/ti/cal/built-in.a
  CC      drivers/i2c/busses/i2c-designware-baytrail.o
  CC      lib/iov_iter.o
  AR      drivers/media/platform/ti/vpe/built-in.a
  AR      drivers/media/platform/ti/davinci/built-in.a
  CC      kernel/utsname.o
  AR      drivers/media/platform/ti/omap/built-in.a
  CC [M]  drivers/i2c/busses/i2c-scmi.o
  CC [M]  drivers/net/phy/aquantia_hwmon.o
  CC      fs/utimes.o
  AR      drivers/media/platform/ti/omap3isp/built-in.a
  AR      drivers/media/platform/ti/built-in.a
  AR      drivers/media/platform/verisilicon/built-in.a
  AR      drivers/media/platform/via/built-in.a
  AR      drivers/media/platform/xilinx/built-in.a
  AR      drivers/media/firewire/built-in.a
  AR      drivers/media/platform/built-in.a
  AR      drivers/media/spi/built-in.a
  CC      net/ipv6/netfilter.o
  CC [M]  drivers/net/vxlan/vxlan_mdb.o
  CC [M]  drivers/gpu/drm/nouveau/nvif/userc361.o
  AR      drivers/media/test-drivers/built-in.a
  AR      drivers/media/built-in.a
  CC      net/ipv4/udp_tunnel_stub.o
  CC      arch/x86/kernel/check.o
  CC      drivers/rtc/nvmem.o
  CC      drivers/usb/core/endpoint.o
  AR      drivers/base/built-in.a
  CC [M]  drivers/gpu/drm/drm_bridge.o
  CC      drivers/input/ff-core.o
  CC [M]  drivers/net/phy/ax88796b.o
  CC [M]  drivers/gpu/drm/xe/xe_device_sysfs.o
  CC      drivers/acpi/acpica/tbinstal.o
  LD [M]  fs/smb/client/cifs.o
  CC [M]  drivers/gpu/drm/xe/xe_dma_buf.o
  CC [M]  drivers/gpu/drm/i915/intel_clock_gating.o
  CC [M]  drivers/gpu/drm/i915/intel_device_info.o
  CC [M]  drivers/gpu/drm/xe/xe_exec.o
  CC [M]  drivers/gpu/drm/drm_cache.o
  CC      drivers/acpi/resource.o
  CC      lib/clz_ctz.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_encoders.o
  CC      kernel/user_namespace.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_display.o
  CC [M]  drivers/gpu/drm/i915/intel_memory_region.o
  CC [M]  drivers/net/mdio.o
  CC [M]  drivers/i2c/busses/i2c-ccgx-ucsi.o
  CC      drivers/rtc/dev.o
  CC      drivers/rtc/proc.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_i2c.o
  CC      drivers/acpi/acpica/tbprint.o
  CC      arch/x86/kernel/uprobes.o
  CC [M]  drivers/net/phy/bcm7xxx.o
  CC      drivers/usb/host/xhci-ext-caps.o
  CC      arch/x86/kernel/perf_regs.o
  CC [M]  drivers/i2c/busses/i2c-i801.o
  AR      drivers/i2c/muxes/built-in.a
  CC [M]  drivers/i2c/muxes/i2c-mux-gpio.o
  CC      drivers/usb/core/devio.o
  CC      fs/d_path.o
  CC [M]  drivers/i2c/busses/i2c-isch.o
  CC      fs/stack.o
  CC      drivers/input/touchscreen.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/core/client.o
  AR      drivers/usb/serial/built-in.a
  CC      drivers/usb/gadget/functions.o
  CC [M]  drivers/i2c/busses/i2c-ismt.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/core/engine.o
  CC      mm/page_counter.o
  CC [M]  drivers/gpu/drm/drm_client.o
  CC      drivers/input/ff-memless.o
  CC      net/ipv4/sysctl_net_ipv4.o
  CC [M]  drivers/gpu/drm/xe/xe_execlist.o
  CC      drivers/acpi/acpica/tbutils.o
  CC      drivers/rtc/sysfs.o
  CC [M]  drivers/i2c/busses/i2c-piix4.o
  CC      drivers/acpi/acpica/tbxface.o
  CC      drivers/acpi/acpica/tbxfload.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_gem.o
  CC [M]  drivers/net/phy/bcm87xx.o
  CC [M]  drivers/gpu/drm/xe/xe_exec_queue.o
  CC      drivers/acpi/acpi_processor.o
  CC [M]  drivers/i2c/busses/i2c-designware-pcidrv.o
  CC      drivers/acpi/processor_core.o
  CC      net/ipv6/fib6_rules.o
  CC [M]  drivers/gpu/drm/xe/xe_force_wake.o
  CC      drivers/input/vivaldi-fmap.o
  CC      drivers/usb/gadget/configfs.o
  CC      arch/x86/kernel/tracepoint.o
  CC      drivers/rtc/rtc-mc146818-lib.o
  CC      net/ipv4/proc.o
  CC      mm/memcontrol.o
  CC      drivers/acpi/processor_pdc.o
  CC      drivers/rtc/rtc-cmos.o
  CC [M]  drivers/gpu/drm/i915/intel_pcode.o
  CC      kernel/pid_namespace.o
  UPD     kernel/config_data
  CC      lib/bsearch.o
  CC      drivers/acpi/acpica/tbxfroot.o
  CC      kernel/stop_machine.o
  CC      net/ipv4/syncookies.o
  CC      net/ipv4/esp4.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/core/enum.o
  CC      net/ipv6/proc.o
  CC      fs/fs_struct.o
  CC      drivers/acpi/ec.o
  CC      drivers/usb/host/xhci-ring.o
  CC [M]  drivers/net/tun.o
  CC      drivers/input/input-leds.o
  CC      drivers/input/mousedev.o
  CC      arch/x86/kernel/itmt.o
  CC      drivers/input/evdev.o
  CC      drivers/i2c/i2c-boardinfo.o
  CC [M]  drivers/gpu/drm/i915/intel_region_ttm.o
  CC      drivers/acpi/dock.o
  CC [M]  drivers/net/veth.o
  CC [M]  drivers/net/phy/bcm-phy-lib.o
  AR      drivers/net/ethernet/huawei/built-in.a
  LD [M]  drivers/net/vxlan/vxlan.o
  CC      drivers/acpi/acpica/utaddress.o
  CC      drivers/acpi/acpica/utalloc.o
  CC      drivers/acpi/acpica/utascii.o
  CC [M]  drivers/net/ethernet/intel/e1000/e1000_main.o
  CC [M]  drivers/net/ethernet/intel/e1000/e1000_hw.o
  CC [M]  drivers/net/ethernet/intel/e1000/e1000_ethtool.o
  CC      drivers/acpi/pci_root.o
  CC [M]  drivers/net/ethernet/intel/e1000/e1000_param.o
  CC      drivers/acpi/pci_link.o
  CC      drivers/acpi/acpica/utbuffer.o
  CC      fs/statfs.o
  LD [M]  drivers/i2c/busses/i2c-designware-pci.o
  AR      drivers/i2c/busses/built-in.a
  CC [M]  drivers/net/usb/asix_devices.o
  CC      net/ipv4/esp4_offload.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_ring.o
  CC      lib/find_bit.o
  CC      net/ipv4/netfilter.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/core/event.o
  CC      kernel/kprobes.o
  CC [M]  drivers/net/phy/broadcom.o
  CC      arch/x86/kernel/umip.o
  CC      arch/x86/kernel/unwind_orc.o
  CC [M]  drivers/net/phy/lxt.o
  CC      fs/fs_pin.o
  CC      drivers/acpi/pci_irq.o
  AR      drivers/rtc/built-in.a
  CC      drivers/acpi/acpica/utcksum.o
  AR      drivers/ptp/built-in.a
  CC [M]  drivers/ptp/ptp_clock.o
  CC      drivers/acpi/acpica/utcopy.o
  CC      net/ipv6/syncookies.o
  CC [M]  drivers/net/phy/realtek.o
  CC      drivers/i2c/i2c-core-base.o
  CC      drivers/i2c/i2c-core-smbus.o
  CC      drivers/acpi/acpi_lpss.o
  CC      net/ipv6/mip6.o
  CC      lib/llist.o
  CC [M]  drivers/gpu/drm/xe/xe_ggtt.o
  AR      drivers/power/reset/built-in.a
  CC      drivers/power/supply/power_supply_core.o
  CC      drivers/hwmon/hwmon.o
  CC [M]  drivers/hwmon/acpi_power_meter.o
  CC      drivers/usb/gadget/u_f.o
  CC      drivers/usb/core/notify.o
  CC      lib/memweight.o
  CC      drivers/acpi/acpica/utexcep.o
  CC [M]  drivers/hwmon/coretemp.o
  CC [M]  drivers/gpu/drm/i915/intel_runtime_pm.o
  CC      lib/kfifo.o
  AR      drivers/input/built-in.a
  CC [M]  drivers/gpu/drm/i915/intel_sbi.o
  CC      kernel/hung_task.o
  CC      drivers/usb/host/xhci-hub.o
  CC [M]  drivers/net/phy/smsc.o
  CC [M]  drivers/ptp/ptp_chardev.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_cs.o
  CC      net/ipv4/inet_diag.o
  CC      net/ipv4/tcp_diag.o
  CC      fs/nsfs.o
  CC      drivers/usb/host/xhci-dbg.o
  CC      drivers/acpi/acpi_apd.o
  CC      drivers/acpi/acpica/utdebug.o
  CC      drivers/acpi/acpica/utdecode.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/core/firmware.o
  CC      arch/x86/kernel/callthunks.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/core/gpuobj.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_bios.o
  AR      drivers/usb/gadget/built-in.a
  CC [M]  drivers/ptp/ptp_sysfs.o
  CC      drivers/usb/core/generic.o
  CC [M]  drivers/gpu/drm/i915/intel_step.o
  CC      net/ipv4/udp_diag.o
  AR      drivers/thermal/broadcom/built-in.a
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_benchmark.o
  AR      drivers/thermal/samsung/built-in.a
  CC      drivers/thermal/intel/intel_tcc.o
  AR      drivers/thermal/st/built-in.a
  CC [M]  drivers/gpu/drm/xe/xe_gt.o
  CC      drivers/watchdog/watchdog_core.o
  CC [M]  drivers/net/usb/asix_common.o
  CC      drivers/watchdog/watchdog_dev.o
  CC [M]  drivers/net/usb/ax88172a.o
  CC      net/ipv6/addrconf_core.o
  CC      drivers/thermal/intel/therm_throt.o
  CC      fs/fs_types.o
  CC      drivers/power/supply/power_supply_sysfs.o
  CC [M]  drivers/thermal/intel/x86_pkg_temp_thermal.o
  CC      lib/percpu-refcount.o
  CC      drivers/acpi/acpica/utdelete.o
  AR      drivers/thermal/qcom/built-in.a
  AR      drivers/thermal/tegra/built-in.a
  CC      fs/fs_context.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/atombios_dp.o
  CC      net/ipv4/tcp_cubic.o
  CC      drivers/usb/host/xhci-trace.o
  CC      drivers/power/supply/power_supply_leds.o
  CC [M]  drivers/net/usb/ax88179_178a.o
  CC      drivers/watchdog/softdog.o
  CC [M]  drivers/ptp/ptp_vclock.o
  CC      drivers/acpi/acpi_platform.o
  AR      drivers/hwmon/built-in.a
  CC [M]  drivers/net/usb/cdc_ether.o
  CC [M]  drivers/md/persistent-data/dm-array.o
  LD [M]  drivers/net/phy/aquantia.o
  AR      drivers/net/phy/built-in.a
  CC [M]  drivers/md/persistent-data/dm-bitset.o
  CC      drivers/usb/core/quirks.o
  CC      drivers/i2c/i2c-core-acpi.o
  CC      net/ipv4/xfrm4_policy.o
  CC      arch/x86/kernel/mmconf-fam10h_64.o
  CC [M]  drivers/gpu/drm/xe/xe_gt_clock.o
  CC      kernel/watchdog.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/core/intr.o
  CC [M]  drivers/gpu/drm/i915/intel_uncore.o
  CC [M]  drivers/net/usb/cdc_eem.o
  CC      drivers/acpi/acpi_pnp.o
  CC      drivers/acpi/acpica/uterror.o
  CC      drivers/opp/core.o
  CC      drivers/power/supply/power_supply_hwmon.o
  CC      drivers/acpi/power.o
  AR      drivers/thermal/mediatek/built-in.a
  CC [M]  drivers/gpu/drm/nouveau/nvkm/core/ioctl.o
  CC      drivers/md/md.o
  CC      drivers/acpi/acpica/uteval.o
  CC      drivers/cpufreq/cpufreq.o
  CC      drivers/cpufreq/freq_table.o
  CC      lib/rhashtable.o
  CC      drivers/cpufreq/cpufreq_performance.o
  CC      lib/base64.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/core/memory.o
  AR      drivers/watchdog/built-in.a
  CC [M]  drivers/gpu/drm/i915/intel_wakeref.o
  CC      drivers/acpi/acpica/utglobal.o
  CC      net/ipv6/exthdrs_core.o
  CC      drivers/md/md-bitmap.o
  CC [M]  drivers/gpu/drm/xe/xe_gt_debugfs.o
  CC      lib/once.o
  CC      drivers/acpi/event.o
  AR      drivers/thermal/intel/built-in.a
  CC [M]  drivers/ptp/ptp_kvm_x86.o
  CC      drivers/thermal/thermal_core.o
  CC      fs/fs_parser.o
  CC      drivers/acpi/evged.o
  CC      drivers/md/md-autodetect.o
  CC      drivers/usb/core/devices.o
  CC      drivers/cpufreq/cpufreq_ondemand.o
  CC      arch/x86/kernel/vsmp_64.o
  CC      lib/refcount.o
  AR      drivers/power/supply/built-in.a
  AR      drivers/power/built-in.a
  CC [M]  drivers/gpu/drm/xe/xe_gt_idle_sysfs.o
  CC [M]  drivers/md/persistent-data/dm-block-manager.o
  CC [M]  drivers/md/persistent-data/dm-space-map-common.o
  CC      drivers/acpi/acpica/uthex.o
  CC      drivers/acpi/acpica/utids.o
  CC      drivers/cpufreq/cpufreq_governor.o
  CC [M]  drivers/ptp/ptp_kvm_common.o
  CC      drivers/acpi/acpica/utinit.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_afmt.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_trace_points.o
  CC      kernel/watchdog_hld.o
  CC [M]  drivers/net/usb/smsc75xx.o
  CC      drivers/cpufreq/cpufreq_governor_attr_set.o
  CC [M]  drivers/md/persistent-data/dm-space-map-disk.o
  LD [M]  drivers/ptp/ptp.o
  CC [M]  drivers/gpu/drm/i915/vlv_sideband.o
  CC      drivers/i2c/i2c-core-slave.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/atombios_encoders.o
  CC      lib/rcuref.o
  CC [M]  drivers/net/usb/smsc95xx.o
  CC      net/ipv4/xfrm4_state.o
  CC [M]  drivers/net/usb/mcs7830.o
  AR      arch/x86/kernel/built-in.a
  CC      drivers/usb/core/phy.o
  CC [M]  drivers/gpu/drm/xe/xe_gt_mcr.o
  CC      lib/usercopy.o
  AR      arch/x86/built-in.a
  CC      net/ipv4/xfrm4_input.o
  CC      net/ipv4/xfrm4_output.o
  CC      mm/vmpressure.o
  CC [M]  drivers/gpu/drm/xe/xe_gt_pagefault.o
  CC      drivers/usb/core/port.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/core/mm.o
  CC      drivers/acpi/sysfs.o
  CC      net/ipv6/ip6_checksum.o
  CC      drivers/usb/core/hcd-pci.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/core/object.o
  CC      fs/fsopen.o
  CC      drivers/acpi/acpica/utlock.o
  LD [M]  drivers/net/ethernet/intel/e1000/e1000.o
  CC [M]  drivers/net/usb/usbnet.o
  CC      drivers/cpufreq/acpi-cpufreq.o
  CC [M]  drivers/net/ethernet/intel/e1000e/82571.o
  CC      drivers/cpufreq/intel_pstate.o
  CC [M]  drivers/gpu/drm/i915/vlv_suspend.o
  CC      fs/init.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/core/oproxy.o
  CC [M]  drivers/net/ethernet/intel/e1000e/ich8lan.o
  CC [M]  drivers/net/ethernet/intel/e1000e/80003es2lan.o
  LD [M]  drivers/ptp/ptp_kvm.o
  CC      fs/kernel_read_file.o
  CC      kernel/seccomp.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/core/option.o
  CC      lib/errseq.o
  AR      drivers/net/ethernet/i825xx/built-in.a
  CC [M]  drivers/net/ethernet/intel/igb/igb_main.o
  CC [M]  drivers/gpu/drm/drm_client_modeset.o
  CC [M]  drivers/net/ethernet/intel/igb/igb_ethtool.o
  CC      drivers/usb/host/xhci-debugfs.o
  CC      drivers/acpi/acpica/utmath.o
  CC      drivers/opp/cpu.o
  CC [M]  drivers/net/usb/cdc_ncm.o
  CC      lib/bucket_locks.o
  CC [M]  drivers/md/persistent-data/dm-space-map-metadata.o
  CC [M]  drivers/net/usb/r8153_ecm.o
  CC      drivers/i2c/i2c-dev.o
  CC      mm/swap_cgroup.o
  CC      drivers/thermal/thermal_sysfs.o
  CC      drivers/acpi/property.o
  CC [M]  drivers/gpu/drm/xe/xe_gt_sysfs.o
  CC      drivers/acpi/acpi_cmos_rtc.o
  CC      fs/mnt_idmapping.o
  CC      drivers/usb/host/xhci-pci.o
  CC      mm/hugetlb_cgroup.o
  CC      drivers/usb/core/usb-acpi.o
  CC      drivers/acpi/acpica/utmisc.o
  CC      mm/kmemleak.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/core/ramht.o
  CC      fs/remap_range.o
  CC [M]  drivers/gpu/drm/xe/xe_gt_tlb_invalidation.o
  CC      mm/page_isolation.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_sa.o
  CC      net/ipv4/xfrm4_protocol.o
  CC      drivers/opp/debugfs.o
  CC      net/ipv6/ip6_icmp.o
  CC      lib/generic-radix-tree.o
  CC [M]  drivers/gpu/drm/i915/soc/intel_dram.o
  CC [M]  drivers/net/ethernet/intel/igb/e1000_82575.o
  CC      drivers/acpi/acpica/utmutex.o
  CC [M]  drivers/md/persistent-data/dm-transaction-manager.o
  CC [M]  drivers/md/persistent-data/dm-btree.o
  CC [M]  drivers/gpu/drm/xe/xe_gt_topology.o
  CC      drivers/acpi/acpica/utnonansi.o
  CC      lib/string_helpers.o
  CC      mm/early_ioremap.o
  CC      mm/cma.o
  CC      lib/hexdump.o
  HOSTCC  drivers/gpu/drm/xe/xe_gen_wa_oob
  CC [M]  drivers/net/ethernet/intel/igb/e1000_mac.o
  CC [M]  drivers/gpu/drm/i915/soc/intel_gmch.o
  CC      net/ipv6/output_core.o
  CC      drivers/md/dm-uevent.o
  CC [M]  drivers/gpu/drm/xe/xe_guc_ads.o
  CC [M]  drivers/net/ethernet/intel/igb/e1000_nvm.o
  CC [M]  drivers/gpu/drm/i915/soc/intel_pch.o
  CC [M]  drivers/gpu/drm/i915/i915_memcpy.o
  CC      drivers/thermal/thermal_trip.o
  CC      lib/kstrtox.o
  CC [M]  drivers/gpu/drm/xe/xe_guc_ct.o
  CC [M]  drivers/gpu/drm/xe/xe_guc_debugfs.o
  CC      drivers/acpi/acpica/utobject.o
  CC [M]  drivers/i2c/i2c-smbus.o
  AR      drivers/usb/core/built-in.a
  CC      drivers/acpi/acpica/utosi.o
  AR      drivers/opp/built-in.a
  CC      drivers/acpi/acpica/utownerid.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/atombios_i2c.o
  CC [M]  drivers/gpu/drm/xe/xe_guc_hwconfig.o
  CC      drivers/acpi/acpica/utpredef.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/core/subdev.o
  CC      fs/buffer.o
  CC [M]  drivers/gpu/drm/i915/i915_mm.o
  CC [M]  drivers/net/ethernet/intel/igb/e1000_phy.o
  CC [M]  drivers/net/ethernet/intel/igb/e1000_mbx.o
  CC      drivers/cpuidle/governors/menu.o
  CC      drivers/cpuidle/cpuidle.o
  AR      drivers/net/ethernet/microsoft/built-in.a
  CC [M]  drivers/gpu/drm/xe/xe_guc_log.o
  CC      drivers/cpuidle/driver.o
  CC      drivers/thermal/thermal_helpers.o
  CC      drivers/cpuidle/governors/haltpoll.o
  CC      kernel/relay.o
  CC      lib/debug_info.o
  CC      drivers/cpuidle/governor.o
  CC [M]  drivers/gpu/drm/i915/i915_sw_fence.o
  CC      drivers/cpuidle/sysfs.o
  CC [M]  drivers/gpu/drm/i915/i915_sw_fence_work.o
  CC [M]  drivers/gpu/drm/i915/i915_syncmap.o
  CC      drivers/acpi/x86/apple.o
  CC      kernel/utsname_sysctl.o
  CC      mm/secretmem.o
  CC      drivers/acpi/acpica/utresdecode.o
  CC [M]  drivers/gpu/drm/i915/i915_user_extensions.o
  CC [M]  net/ipv4/ip_tunnel.o
  CC [M]  drivers/gpu/drm/i915/i915_ioc32.o
  AR      drivers/usb/host/built-in.a
  AR      drivers/usb/built-in.a
  CC      kernel/delayacct.o
  CC [M]  drivers/net/ethernet/intel/igb/e1000_i210.o
  LD [M]  drivers/net/usb/asix.o
  AR      drivers/cpufreq/built-in.a
  CC [M]  drivers/md/persistent-data/dm-btree-remove.o
  CC      drivers/mmc/core/core.o
  CC [M]  drivers/md/persistent-data/dm-btree-spine.o
  CC      drivers/mmc/core/bus.o
  CC      drivers/mmc/core/host.o
  CC      drivers/mmc/core/mmc.o
  CC [M]  drivers/gpu/drm/i915/i915_debugfs.o
  CC      drivers/thermal/thermal_hwmon.o
  CC [M]  net/ipv4/udp_tunnel_core.o
  CC [M]  drivers/i2c/i2c-mux.o
  CC      mm/userfaultfd.o
  CC [M]  drivers/net/ethernet/intel/e1000e/mac.o
  CC [M]  drivers/gpu/drm/xe/xe_guc_pc.o
  CC      drivers/acpi/acpica/utresrc.o
  CC      fs/mpage.o
  CC      drivers/thermal/gov_fair_share.o
  CC      kernel/taskstats.o
  CC      net/ipv6/protocol.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_dma_buf.o
  AR      drivers/net/ethernet/litex/built-in.a
  AR      drivers/net/ethernet/microchip/built-in.a
  AR      drivers/net/ethernet/mscc/built-in.a
  CC [M]  drivers/gpu/drm/xe/xe_guc_submit.o
  CC      net/ipv6/ip6_offload.o
  CC      drivers/acpi/x86/utils.o
  CC      net/ipv6/tcpv6_offload.o
  CC      drivers/acpi/x86/s2idle.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/core/uevent.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_vm.o
  CC      mm/memremap.o
  CC [M]  drivers/net/ethernet/intel/igbvf/vf.o
  CC [M]  drivers/net/ethernet/intel/igc/igc_main.o
  CC [M]  drivers/net/ethernet/intel/igbvf/mbx.o
  AR      drivers/cpuidle/governors/built-in.a
  CC [M]  drivers/net/ethernet/intel/igc/igc_mac.o
  CC [M]  drivers/gpu/drm/i915/i915_debugfs_params.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/nvfw/fw.o
  CC [M]  drivers/net/ethernet/intel/e1000e/manage.o
  CC [M]  net/ipv4/udp_tunnel_nic.o
  AR      drivers/net/ethernet/neterion/built-in.a
  CC [M]  drivers/gpu/drm/xe/xe_hw_engine.o
  AR      drivers/net/ethernet/netronome/built-in.a
  CC      net/ipv6/exthdrs_offload.o
  CC      drivers/acpi/acpica/utstate.o
  CC      drivers/acpi/acpica/utstring.o
  CC      drivers/acpi/acpica/utstrsuppt.o
  CC      drivers/cpuidle/poll_state.o
  CC      drivers/thermal/gov_step_wise.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_vm_pt.o
  LD [M]  drivers/md/persistent-data/dm-persistent-data.o
  AR      drivers/i2c/built-in.a
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_ib.o
  CC      drivers/mmc/core/mmc_ops.o
  CC [M]  drivers/gpu/drm/i915/display/intel_display_debugfs.o
  CC      drivers/acpi/debugfs.o
  CC [M]  drivers/net/ethernet/intel/igb/igb_ptp.o
  CC      drivers/thermal/gov_user_space.o
  CC      lib/iomap.o
  CC      drivers/md/dm.o
  CC      drivers/cpuidle/cpuidle-haltpoll.o
  CC      mm/hmm.o
  CC [M]  drivers/gpu/drm/i915/display/intel_pipe_crc.o
  CC      drivers/acpi/acpica/utstrtoul64.o
  CC [M]  drivers/gpu/drm/i915/i915_pmu.o
  AR      net/ipv4/built-in.a
  CC [M]  drivers/gpu/drm/nouveau/nvkm/nvfw/hs.o
  CC      drivers/acpi/acpica/utxface.o
  CC      mm/memfd.o
  AR      drivers/ufs/built-in.a
  CC      fs/proc_namespace.o
  AR      drivers/leds/trigger/built-in.a
  CC [M]  drivers/leds/trigger/ledtrig-audio.o
  AR      drivers/leds/blink/built-in.a
  CC      kernel/tsacct.o
  AR      drivers/firmware/arm_ffa/built-in.a
  AR      drivers/firmware/arm_scmi/built-in.a
  AR      drivers/firmware/broadcom/built-in.a
  AR      drivers/firmware/cirrus/built-in.a
  AR      drivers/firmware/meson/built-in.a
  CC [M]  drivers/gpu/drm/nouveau/nvkm/nvfw/ls.o
  CC      kernel/tracepoint.o
  AR      drivers/firmware/imx/built-in.a
  CC      drivers/acpi/acpica/utxfinit.o
  CC [M]  drivers/net/ethernet/intel/igbvf/ethtool.o
  AR      drivers/thermal/built-in.a
  CC [M]  drivers/gpu/drm/xe/xe_hw_engine_class_sysfs.o
  CC      kernel/latencytop.o
  CC      drivers/firmware/efi/libstub/efi-stub-helper.o
  AR      drivers/cpuidle/built-in.a
  CC      kernel/irq_work.o
  CC [M]  drivers/gpu/drm/xe/xe_hw_error.o
  CC [M]  drivers/gpu/drm/xe/xe_hw_fence.o
  CC [M]  drivers/gpu/drm/xe/xe_huc.o
  CC      drivers/firmware/efi/libstub/gop.o
  CC [M]  drivers/gpu/drm/i915/gt/gen2_engine_cs.o
  CC      drivers/acpi/acpica/utxferror.o
  AR      drivers/net/ethernet/ni/built-in.a
  CC [M]  drivers/net/ethernet/intel/igb/igb_hwmon.o
  AR      drivers/firmware/psci/built-in.a
  CC [M]  drivers/gpu/drm/nouveau/nvkm/nvfw/acr.o
  CC [M]  drivers/net/ethernet/intel/ixgbe/ixgbe_main.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/nvfw/flcn.o
  CC [M]  drivers/gpu/drm/i915/gt/gen6_engine_cs.o
  CC [M]  drivers/net/ethernet/intel/e1000e/nvm.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_pll.o
  AR      drivers/leds/simple/built-in.a
  CC      drivers/leds/led-core.o
  CC      lib/pci_iomap.o
  CC      net/ipv6/inet6_hashtables.o
  CC [M]  drivers/net/ethernet/intel/ixgbevf/vf.o
  AR      drivers/net/ethernet/intel/built-in.a
  CC [M]  drivers/net/ethernet/intel/e100.o
  CC      net/ipv6/mcast_snoop.o
  CC      kernel/static_call.o
  AR      drivers/firmware/smccc/built-in.a
  AR      drivers/firmware/tegra/built-in.a
  AR      drivers/firmware/xilinx/built-in.a
  CC      drivers/firmware/dmi_scan.o
  CC [M]  drivers/net/ethernet/intel/ixgbevf/mbx.o
  CC      drivers/acpi/acpica/utxfmutex.o
  CC      drivers/leds/led-class.o
  CC      drivers/mmc/core/sd.o
  CC [M]  drivers/net/ethernet/intel/igc/igc_i225.o
  CC [M]  drivers/net/ethernet/intel/ixgbe/ixgbe_common.o
  CC [M]  drivers/net/ethernet/intel/ixgbe/ixgbe_ethtool.o
  CC [M]  drivers/net/ethernet/intel/ixgbevf/ethtool.o
  CC      kernel/static_call_inline.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_ucode.o
  CC      fs/direct-io.o
  LD [M]  net/ipv4/udp_tunnel.o
  CC      drivers/mmc/host/sdhci.o
  CC      drivers/mmc/host/sdhci-pci-core.o
  CC [M]  drivers/gpu/drm/xe/xe_huc_debugfs.o
  CC      mm/bootmem_info.o
  CC      drivers/firmware/efi/libstub/secureboot.o
  CC      drivers/mmc/host/sdhci-pci-o2micro.o
  CC      drivers/mmc/host/sdhci-pci-arasan.o
  CC [M]  drivers/net/ethernet/intel/igc/igc_base.o
  CC [M]  drivers/net/ethernet/intel/ixgbe/ixgbe_82599.o
  CC      drivers/firmware/efi/libstub/tpm.o
  CC      lib/iomap_copy.o
  CC [M]  drivers/gpu/drm/xe/xe_irq.o
  CC [M]  drivers/net/ethernet/intel/igbvf/netdev.o
  AR      drivers/acpi/acpica/built-in.a
  CC      drivers/acpi/acpi_lpat.o
  CC [M]  drivers/net/ethernet/intel/e1000e/phy.o
  CC [M]  drivers/net/ethernet/intel/ixgbevf/ixgbevf_main.o
  CC [M]  drivers/net/ethernet/intel/ixgbevf/ipsec.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/falcon/base.o
  CC      drivers/md/dm-table.o
  CC      lib/devres.o
  CC [M]  drivers/gpu/drm/xe/xe_lrc.o
  CC      drivers/firmware/efi/libstub/file.o
  CC      drivers/leds/led-triggers.o
  CC      kernel/user-return-notifier.o
  CC [M]  drivers/gpu/drm/i915/gt/gen6_ppgtt.o
  CC [M]  drivers/net/ethernet/intel/e1000e/param.o
  CC      drivers/md/dm-target.o
  CC [M]  drivers/net/ethernet/intel/ixgbe/ixgbe_82598.o
  CC [M]  drivers/net/ethernet/intel/ixgbe/ixgbe_phy.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_bo_list.o
  AR      mm/built-in.a
  CC      fs/eventpoll.o
  CC [M]  drivers/gpu/drm/i915/gt/gen7_renderclear.o
  CC      drivers/firmware/efi/libstub/mem.o
  CC      drivers/firmware/dmi-sysfs.o
  CC      drivers/acpi/acpi_lpit.o
  CC [M]  net/ipv6/ip6_udp_tunnel.o
  CC      kernel/padata.o
  CC [M]  drivers/net/ethernet/intel/e1000e/ethtool.o
  CC      fs/anon_inodes.o
  CC      drivers/firmware/efi/libstub/random.o
  CC      drivers/firmware/efi/libstub/randomalloc.o
  CC      drivers/mmc/host/sdhci-pci-dwc-mshc.o
  CC      drivers/firmware/dmi-id.o
  CC      drivers/md/dm-linear.o
  AR      net/ipv6/built-in.a
  CC      drivers/md/dm-stripe.o
  CC [M]  drivers/net/ethernet/intel/igc/igc_nvm.o
  CC      drivers/mmc/host/sdhci-pci-gli.o
  CC      lib/check_signature.o
  CC      drivers/acpi/prmt.o
  CC      drivers/md/dm-ioctl.o
  CC      drivers/mmc/core/sd_ops.o
  AR      drivers/leds/built-in.a
  AR      drivers/crypto/stm32/built-in.a
  AR      drivers/crypto/xilinx/built-in.a
  CC      drivers/acpi/acpi_pcc.o
  CC      drivers/acpi/ac.o
  AR      drivers/crypto/hisilicon/trng/built-in.a
  AR      drivers/crypto/hisilicon/built-in.a
  AR      drivers/crypto/intel/keembay/built-in.a
  AR      drivers/crypto/intel/ixp4xx/built-in.a
  CC      drivers/firmware/efi/libstub/pci.o
  AR      drivers/crypto/intel/built-in.a
  CC      drivers/firmware/efi/libstub/skip_spaces.o
  AR      drivers/crypto/built-in.a
  CC      lib/interval_tree.o
  CC      drivers/mmc/host/sdhci-acpi.o
  CC [M]  drivers/net/ethernet/intel/igc/igc_phy.o
  CC      drivers/firmware/efi/libstub/lib-cmdline.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/falcon/cmdq.o
  CC      drivers/clocksource/acpi_pm.o
  CC      drivers/clocksource/i8253.o
  CC      kernel/jump_label.o
  CC      drivers/firmware/memmap.o
  CC      drivers/hid/usbhid/hid-core.o
  CC [M]  drivers/gpu/drm/xe/xe_migrate.o
  CC      drivers/hid/hid-core.o
  CC [M]  drivers/gpu/drm/xe/xe_mmio.o
  CC      kernel/context_tracking.o
  CC      fs/signalfd.o
  CC      drivers/md/dm-io.o
  LD [M]  drivers/net/ethernet/intel/igb/igb.o
  CC [M]  drivers/net/ethernet/intel/igc/igc_diag.o
  CC [M]  drivers/gpu/drm/xe/xe_mocs.o
  CC      drivers/mmc/host/cqhci-core.o
  CC      drivers/acpi/button.o
  CC      drivers/mmc/core/sdio.o
  CC      lib/assoc_array.o
  CC      drivers/md/dm-kcopyd.o
  AR      drivers/net/ethernet/packetengines/built-in.a
  CC      kernel/iomem.o
  CC      kernel/rseq.o
  AR      net/built-in.a
  CC      drivers/md/dm-sysfs.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_ctx.o
  AR      drivers/net/ethernet/realtek/built-in.a
  CC      drivers/acpi/fan_core.o
  CC [M]  drivers/net/ethernet/realtek/8139cp.o
  CC [M]  drivers/gpu/drm/i915/gt/gen8_engine_cs.o
  AR      drivers/net/ethernet/renesas/built-in.a
  CC [M]  drivers/gpu/drm/i915/gt/gen8_ppgtt.o
  AR      drivers/staging/media/built-in.a
  AR      drivers/staging/built-in.a
  CC      drivers/md/dm-stats.o
  CC      drivers/mmc/core/sdio_ops.o
  AR      drivers/platform/x86/amd/built-in.a
  CC      drivers/mmc/core/sdio_bus.o
  CC      drivers/platform/x86/intel/pmc/core.o
  CC      drivers/platform/x86/p2sb.o
  CC      drivers/firmware/efi/libstub/lib-ctype.o
  CC      drivers/firmware/efi/libstub/alignedmem.o
  CC      drivers/platform/x86/intel/pmc/spt.o
  AR      drivers/clocksource/built-in.a
  CC [M]  drivers/net/ethernet/realtek/8139too.o
  CC [M]  drivers/net/ethernet/intel/igc/igc_ethtool.o
  CC [M]  drivers/net/ethernet/intel/e1000e/netdev.o
  CC [M]  drivers/mmc/host/sdhci-pltfm.o
  CC [M]  drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.o
  AR      drivers/platform/surface/built-in.a
  CC      drivers/platform/x86/intel/pmc/cnp.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/falcon/fw.o
  GZIP    kernel/config_data.gz
  CC      drivers/md/dm-rq.o
  CC [M]  drivers/gpu/drm/i915/gt/intel_breadcrumbs.o
  CC [M]  drivers/net/ethernet/intel/e1000e/ptp.o
  CC      drivers/mailbox/mailbox.o
  CC      kernel/configs.o
  LD [M]  drivers/net/ethernet/intel/igbvf/igbvf.o
  CC [M]  drivers/platform/x86/intel/pmt/class.o
  CC      drivers/acpi/fan_attr.o
  CC      fs/timerfd.o
  CC      drivers/mailbox/pcc.o
  CC [M]  drivers/net/ethernet/intel/igc/igc_ptp.o
  CC [M]  drivers/net/ethernet/intel/igc/igc_dump.o
  CC [M]  drivers/net/ethernet/intel/igc/igc_tsn.o
  CC [M]  drivers/net/ethernet/intel/igc/igc_xdp.o
  CC      drivers/acpi/processor_driver.o
  CC [M]  drivers/net/ethernet/intel/ixgbe/ixgbe_mbx.o
  CC [M]  drivers/gpu/drm/xe/xe_module.o
  CC      lib/list_debug.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_sync.o
  CC      drivers/md/dm-io-rewind.o
  CC      drivers/acpi/processor_thermal.o
  CC      drivers/firmware/efi/libstub/relocate.o
  CC      drivers/platform/x86/intel/pmc/icl.o
  CC      drivers/firmware/efi/efi-bgrt.o
  CC      drivers/platform/x86/intel/pmc/tgl.o
  CC      drivers/md/dm-builtin.o
  CC      drivers/mmc/core/sdio_cis.o
  CC      drivers/acpi/processor_idle.o
  CC      drivers/mmc/core/sdio_io.o
  CC      lib/debugobjects.o
  CC      drivers/firmware/efi/libstub/printk.o
  AR      kernel/built-in.a
  CC      drivers/firmware/efi/libstub/vsprintf.o
  CC      drivers/devfreq/devfreq.o
  CC      drivers/firmware/efi/libstub/x86-stub.o
  CC      drivers/powercap/powercap_sys.o
  CC      drivers/hid/usbhid/hiddev.o
  CC      drivers/powercap/intel_rapl_common.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/falcon/msgq.o
  CC      drivers/acpi/processor_throttling.o
  AR      drivers/mailbox/built-in.a
  CC      drivers/acpi/processor_perflib.o
  STUBCPY drivers/firmware/efi/libstub/alignedmem.stub.o
  CC [M]  drivers/platform/x86/intel/pmt/telemetry.o
  CC      drivers/acpi/container.o
  AR      drivers/perf/built-in.a
  CC      drivers/ras/ras.o
  CC      drivers/ras/debugfs.o
  CC [M]  drivers/devfreq/governor_simpleondemand.o
  CC      drivers/platform/x86/intel/pmc/adl.o
  CC      drivers/platform/x86/pmc_atom.o
  CC      drivers/platform/x86/intel/pmc/mtl.o
  CC      drivers/firmware/efi/efi.o
  AR      drivers/mmc/host/built-in.a
  STUBCPY drivers/firmware/efi/libstub/efi-stub-helper.stub.o
  CC [M]  drivers/devfreq/governor_performance.o
  CC      drivers/firmware/efi/vars.o
  CC      drivers/powercap/intel_rapl_msr.o
  CC [M]  drivers/platform/x86/intel/pmt/crashlog.o
  CC      drivers/acpi/thermal.o
  CC      drivers/acpi/acpi_memhotplug.o
  CC [M]  drivers/platform/x86/wmi.o
  CC [M]  drivers/platform/x86/wmi-bmof.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/falcon/qmgr.o
  CC [M]  drivers/md/dm-bufio.o
  CC      fs/eventfd.o
  LD [M]  drivers/platform/x86/intel/pmt/pmt_class.o
  CC      drivers/hid/hid-input.o
  CC [M]  drivers/net/ethernet/intel/ixgbe/ixgbe_x540.o
  CC [M]  drivers/md/dm-bio-prison-v1.o
  CC [M]  drivers/gpu/drm/drm_color_mgmt.o
  CC [M]  drivers/gpu/drm/i915/gt/intel_context.o
  CC      drivers/acpi/ioapic.o
  CC      drivers/mmc/core/sdio_irq.o
  CC [M]  drivers/net/ethernet/realtek/r8169_main.o
  CC [M]  drivers/gpu/drm/xe/xe_pat.o
  CC [M]  drivers/gpu/drm/i915/gt/intel_context_sseu.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/falcon/v1.o
  CC      drivers/acpi/battery.o
  CC      drivers/firmware/efi/reboot.o
  AR      drivers/hwtracing/intel_th/built-in.a
  CC      drivers/android/binderfs.o
  LD [M]  drivers/net/ethernet/intel/ixgbevf/ixgbevf.o
  CC      lib/bitrev.o
  LD [M]  drivers/net/ethernet/intel/igc/igc.o
  AR      drivers/nvmem/layouts/built-in.a
  CC      drivers/nvmem/core.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_gtt_mgr.o
  CC      lib/crc16.o
  CC [M]  drivers/mtd/chips/chipreg.o
  CC      lib/crc-t10dif.o
  CC      drivers/android/binder.o
  STUBCPY drivers/firmware/efi/libstub/file.stub.o
  STUBCPY drivers/firmware/efi/libstub/gop.stub.o
  STUBCPY drivers/firmware/efi/libstub/lib-cmdline.stub.o
  STUBCPY drivers/firmware/efi/libstub/lib-ctype.stub.o
  HOSTCC  lib/gen_crc32table
  STUBCPY drivers/firmware/efi/libstub/mem.stub.o
  STUBCPY drivers/firmware/efi/libstub/pci.stub.o
  CC      drivers/platform/x86/intel/pmc/pltdrv.o
  STUBCPY drivers/firmware/efi/libstub/printk.stub.o
  CC      drivers/mmc/core/slot-gpio.o
  STUBCPY drivers/firmware/efi/libstub/random.stub.o
  CC      drivers/android/binder_alloc.o
  STUBCPY drivers/firmware/efi/libstub/randomalloc.stub.o
  CC      drivers/firmware/efi/memattr.o
  STUBCPY drivers/firmware/efi/libstub/relocate.stub.o
  STUBCPY drivers/firmware/efi/libstub/secureboot.stub.o
  STUBCPY drivers/firmware/efi/libstub/skip_spaces.stub.o
  STUBCPY drivers/firmware/efi/libstub/tpm.stub.o
  STUBCPY drivers/firmware/efi/libstub/vsprintf.stub.o
  STUBCPY drivers/firmware/efi/libstub/x86-stub.stub.o
  LD [M]  drivers/platform/x86/intel/pmt/pmt_telemetry.o
  CC      drivers/acpi/hed.o
  AR      drivers/firmware/efi/libstub/lib.a
  CC [M]  drivers/uio/uio.o
  CC      drivers/acpi/bgrt.o
  CC      drivers/acpi/cppc_acpi.o
  CC [M]  drivers/vfio/pci/vfio_pci_core.o
  CC      drivers/acpi/spcr.o
  CC [M]  drivers/vfio/pci/vfio_pci_intrs.o
  CC [M]  drivers/pps/pps.o
  CC      drivers/acpi/acpi_pad.o
  LD [M]  drivers/platform/x86/intel/pmt/pmt_crashlog.o
  CC [M]  drivers/vfio/pci/vfio_pci_rdwr.o
  CC [M]  drivers/vfio/vfio_main.o
  AR      drivers/hid/usbhid/built-in.a
  CC [M]  drivers/vfio/pci/vfio_pci_config.o
  CC      drivers/mmc/core/regulator.o
  AR      drivers/powercap/built-in.a
  CC      drivers/platform/x86/intel/turbo_max_3.o
  AR      drivers/net/ethernet/sfc/built-in.a
  CC [M]  drivers/net/ethernet/realtek/r8169_firmware.o
  CC      drivers/hid/hid-quirks.o
  AR      drivers/ras/built-in.a
  CC [M]  drivers/bluetooth/btusb.o
  CC      drivers/mmc/core/debugfs.o
  CC [M]  drivers/bluetooth/btintel.o
  CC      fs/userfaultfd.o
  CC      drivers/mmc/core/block.o
  CC      drivers/hid/hid-debug.o
  CC      lib/libcrc32c.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/falcon/gm200.o
  CC [M]  drivers/mtd/mtdcore.o
  CC [M]  drivers/mtd/mtdsuper.o
  CC [M]  drivers/pps/kapi.o
  AR      drivers/platform/x86/intel/pmc/built-in.a
  CC      lib/xxhash.o
  CC [M]  drivers/gpu/drm/xe/xe_pci.o
  CC [M]  drivers/platform/x86/mxm-wmi.o
  CC [M]  drivers/gpu/drm/i915/gt/intel_engine_cs.o
  AR      drivers/devfreq/built-in.a
  CC [M]  drivers/platform/x86/intel/vsec.o
  CC [M]  drivers/gpu/drm/i915/gt/intel_engine_heartbeat.o
  CC [M]  drivers/mtd/mtdconcat.o
  CC [M]  drivers/gpu/drm/xe/xe_pcode.o
  CC [M]  drivers/gpu/drm/xe/xe_pm.o
  CC      lib/genalloc.o
  CC      drivers/firmware/efi/tpm.o
  CC      drivers/hid/hidraw.o
  CC [M]  drivers/gpu/drm/drm_connector.o
  CC [M]  drivers/platform/x86/intel_ips.o
  CC [M]  drivers/pps/sysfs.o
  CC [M]  drivers/net/ethernet/intel/ixgbe/ixgbe_x550.o
  CC [M]  drivers/acpi/acpi_video.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_preempt_mgr.o
  CC [M]  drivers/gpu/drm/drm_crtc.o
  CC [M]  drivers/gpu/drm/i915/gt/intel_engine_pm.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/falcon/gp102.o
  CC [M]  drivers/bluetooth/btbcm.o
  CC [M]  drivers/bluetooth/btrtl.o
  CC [M]  drivers/net/ethernet/realtek/r8169_phy_config.o
  AR      drivers/nvmem/built-in.a
  CC [M]  drivers/dca/dca-core.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_vram_mgr.o
  CC [M]  drivers/vfio/pci/vfio_pci.o
  CC [M]  drivers/ssb/main.o
  CC      lib/percpu_counter.o
  CC [M]  drivers/vhost/net.o
  CC [M]  drivers/ssb/scan.o
  CC [M]  drivers/md/dm-bio-prison-v2.o
  LD [M]  drivers/pps/pps_core.o
  CC [M]  drivers/acpi/video_detect.o
  CC [M]  drivers/platform/x86/intel/rst.o
  AR      drivers/acpi/built-in.a
  CC      drivers/firmware/efi/memmap.o
  CC      lib/fault-inject.o
  CC [M]  drivers/ssb/sprom.o
  CC [M]  drivers/mtd/mtdpart.o
  CC [M]  drivers/ssb/pci.o
  LD [M]  drivers/platform/x86/intel/intel_vsec.o
  AR      drivers/platform/x86/intel/built-in.a
  CC      lib/syscall.o
  CC      lib/dynamic_debug.o
  CC      drivers/hid/hid-generic.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/falcon/ga100.o
  CC [M]  drivers/mtd/mtdchar.o
  CC [M]  drivers/gpu/drm/xe/xe_preempt_fence.o
  CC [M]  drivers/gpu/drm/xe/xe_pt.o
  CC [M]  drivers/md/dm-crypt.o
  CC      drivers/hid/hid-a4tech.o
  CC [M]  drivers/md/dm-thin.o
  CC      drivers/hid/hid-apple.o
  LD [M]  drivers/vfio/pci/vfio-pci.o
  LD [M]  drivers/vfio/pci/vfio-pci-core.o
  CC [M]  drivers/vfio/group.o
  CC [M]  drivers/vfio/iova_bitmap.o
  CC [M]  drivers/dca/dca-sysfs.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_virt.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_atomfirmware.o
  LD [M]  drivers/platform/x86/intel/intel-rst.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_vf_error.o
  AR      drivers/platform/x86/built-in.a
  AR      drivers/platform/built-in.a
  CC [M]  drivers/vhost/vhost.o
  CC      drivers/hid/hid-belkin.o
  CC [M]  drivers/gpu/drm/i915/gt/intel_engine_user.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_sched.o
  CC [M]  drivers/net/ethernet/intel/ixgbe/ixgbe_lib.o
  CC [M]  drivers/gpu/drm/drm_displayid.o
  CC [M]  drivers/gpu/drm/drm_drv.o
  CC      lib/errname.o
  CC      drivers/hid/hid-cherry.o
  CC      lib/nlattr.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/falcon/ga102.o
  CC      drivers/firmware/efi/esrt.o
  CC      drivers/hid/hid-chicony.o
  CC      lib/checksum.o
  CC      drivers/firmware/efi/efi-pstore.o
  CC      drivers/firmware/efi/cper.o
  CC      drivers/mmc/core/queue.o
  CC [M]  drivers/ssb/pcihost_wrapper.o
  CC [M]  drivers/gpu/drm/i915/gt/intel_execlists_submission.o
  CC      lib/cpu_rmap.o
  CC      lib/dynamic_queue_limits.o
  CC      fs/aio.o
  CC      drivers/hid/hid-cypress.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/acr/base.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.o
  CC [M]  drivers/md/dm-thin-metadata.o
  CC      drivers/hid/hid-ezkey.o
  LD [M]  drivers/acpi/video.o
  CC [M]  drivers/net/ethernet/intel/ixgbe/ixgbe_ptp.o
  CC      lib/glob.o
  LD [M]  drivers/dca/dca.o
  CC [M]  drivers/vhost/iotlb.o
  CC [M]  drivers/vfio/container.o
  CC [M]  drivers/ssb/driver_chipcommon.o
  CC [M]  drivers/vfio/virqfd.o
  LD [M]  drivers/net/ethernet/realtek/r8169.o
  CC [M]  drivers/gpu/drm/drm_dumb_buffers.o
  AR      drivers/net/ethernet/smsc/built-in.a
  CC [M]  drivers/net/ethernet/smsc/smsc9420.o
  CC [M]  drivers/ssb/driver_chipcommon_pmu.o
  CC      drivers/hid/hid-kensington.o
  CC [M]  drivers/vfio/vfio_iommu_type1.o
  CC      drivers/hid/hid-lg.o
  LD [M]  drivers/mtd/mtd.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/acr/lsfw.o
  CC      drivers/hid/hid-lg-g15.o
  CC [M]  drivers/gpu/drm/drm_edid.o
  CC [M]  drivers/gpu/drm/drm_encoder.o
  CC      fs/locks.o
  AR      drivers/net/ethernet/socionext/built-in.a
  CC [M]  drivers/ssb/driver_pcicore.o
  AR      drivers/net/ethernet/vertexcom/built-in.a
  CC      drivers/hid/hid-microsoft.o
  AR      drivers/net/ethernet/wangxun/built-in.a
  CC      drivers/firmware/efi/cper_cxl.o
  CC      fs/binfmt_script.o
  AR      drivers/net/ethernet/xilinx/built-in.a
  LD [M]  drivers/md/dm-bio-prison.o
  LD [M]  drivers/net/ethernet/intel/e1000e/e1000e.o
  CC      fs/binfmt_elf.o
  CC [M]  drivers/gpu/drm/xe/xe_pt_walk.o
  CC      lib/strncpy_from_user.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/acr/gm200.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_ids.o
  CC [M]  drivers/net/ethernet/intel/ixgbe/ixgbe_xsk.o
  CC      drivers/firmware/efi/runtime-wrappers.o
  CC [M]  drivers/gpu/drm/i915/gt/intel_ggtt.o
  AR      drivers/mmc/core/built-in.a
  CC      drivers/firmware/efi/dev-path-parser.o
  AR      drivers/mmc/built-in.a
  CC      drivers/firmware/efi/apple-properties.o
  CC      fs/compat_binfmt_elf.o
  CC      lib/strnlen_user.o
  CC [M]  drivers/gpu/drm/i915/gt/intel_ggtt_fencing.o
  CC [M]  drivers/gpu/drm/xe/xe_query.o
  LD [M]  drivers/vhost/vhost_net.o
  CC [M]  drivers/gpu/drm/xe/xe_range_fence.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_gmc.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/acr/gm20b.o
  CC      drivers/hid/hid-monterey.o
  CC [M]  drivers/gpu/drm/drm_file.o
  LD [M]  drivers/vhost/vhost_iotlb.o
  CC [M]  drivers/net/ethernet/intel/ixgbe/ixgbe_dcb.o
  CC [M]  drivers/gpu/drm/xe/xe_reg_sr.o
  CC [M]  drivers/gpu/drm/xe/xe_reg_whitelist.o
  CC [M]  drivers/gpu/drm/i915/gt/intel_gt.o
  CC      fs/mbcache.o
  CC      fs/posix_acl.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/acr/gp102.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/acr/gp108.o
  CC [M]  drivers/net/ethernet/intel/ixgbe/ixgbe_dcb_82598.o
  AR      drivers/net/ethernet/synopsys/built-in.a
  CC [M]  drivers/gpu/drm/xe/xe_rtp.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_mmhub.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_hdp.o
  LD [M]  drivers/ssb/ssb.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.o
  CC      lib/net_utils.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/acr/gv100.o
  AR      drivers/md/built-in.a
  CC [M]  drivers/gpu/drm/drm_fourcc.o
  CC [M]  drivers/gpu/drm/drm_framebuffer.o
  CC [M]  drivers/gpu/drm/drm_gem.o
  CC [M]  drivers/gpu/drm/i915/gt/intel_gt_buffer_pool.o
  CC      lib/sg_pool.o
  LD [M]  drivers/vfio/vfio.o
  CC      drivers/firmware/efi/earlycon.o
  CC      lib/stackdepot.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_csa.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_ras.o
  AR      drivers/hid/built-in.a
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_vm_cpu.o
  AR      drivers/net/ethernet/pensando/built-in.a
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/acr/gp10b.o
  GEN     xe_wa_oob.c xe_wa_oob.h
  GEN     xe_wa_oob.c xe_wa_oob.h
  CC [M]  drivers/gpu/drm/xe/xe_sa.o
  CC      lib/ucs2_string.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/acr/tu102.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/acr/ga100.o
  CC [M]  drivers/gpu/drm/xe/xe_sched_job.o
  CC [M]  drivers/gpu/drm/i915/gt/intel_gt_clock_utils.o
  CC      fs/coredump.o
  CC      fs/drop_caches.o
  CC [M]  drivers/net/ethernet/intel/ixgbe/ixgbe_dcb_82599.o
  CC      lib/sbitmap.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/acr/ga102.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/bar/base.o
  CC [M]  drivers/net/ethernet/intel/ixgbe/ixgbe_dcb_nl.o
  CC [M]  drivers/gpu/drm/drm_ioctl.o
  CC      fs/sysctls.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/bar/nv50.o
  CC      fs/fhandle.o
  CC [M]  drivers/gpu/drm/drm_lease.o
  LD [M]  drivers/md/dm-thin-pool.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/bar/g84.o
  CC [M]  drivers/gpu/drm/drm_managed.o
  CC      drivers/firmware/efi/cper-x86.o
  CC [M]  drivers/gpu/drm/i915/gt/intel_gt_debugfs.o
  CC [M]  drivers/gpu/drm/xe/xe_step.o
  CC [M]  drivers/gpu/drm/xe/xe_sync.o
  CC      lib/group_cpus.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/bar/gf100.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_vm_sdma.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/bar/gk20a.o
  CC [M]  lib/asn1_decoder.o
  CC [M]  drivers/gpu/drm/drm_mm.o
  CC [M]  drivers/gpu/drm/drm_mode_config.o
  CC [M]  drivers/gpu/drm/i915/gt/intel_gt_engines_debugfs.o
  CC [M]  drivers/gpu/drm/i915/gt/intel_gt_irq.o
  CC [M]  drivers/gpu/drm/i915/gt/intel_gt_mcr.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/bar/gm107.o
  CC [M]  drivers/gpu/drm/xe/xe_tile.o
  CC [M]  drivers/gpu/drm/i915/gt/intel_gt_pm.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_discovery.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_ras_eeprom.o
  CC [M]  drivers/gpu/drm/i915/gt/intel_gt_pm_debugfs.o
  GEN     lib/oid_registry_data.c
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/bar/gm20b.o
  CC [M]  drivers/gpu/drm/i915/gt/intel_gt_pm_irq.o
  AR      drivers/android/built-in.a
  CC [M]  drivers/gpu/drm/i915/gt/intel_gt_requests.o
  CC [M]  drivers/gpu/drm/xe/xe_tile_sysfs.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_nbio.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_umc.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/smu_v11_0_i2c.o
  CC [M]  lib/oid_registry.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/bar/tu102.o
  AR      lib/lib.a
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/bios/base.o
  CC [M]  drivers/net/ethernet/intel/ixgbe/ixgbe_sysfs.o
  CC [M]  drivers/gpu/drm/i915/gt/intel_gt_sysfs.o
  CC [M]  drivers/gpu/drm/drm_mode_object.o
  CC [M]  drivers/net/ethernet/intel/ixgbe/ixgbe_debugfs.o
  AR      drivers/firmware/efi/built-in.a
  AR      drivers/firmware/built-in.a
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_fru_eeprom.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/bios/bit.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_rap.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_fw_attestation.o
  CC [M]  drivers/gpu/drm/xe/xe_trace.o
  CC [M]  drivers/gpu/drm/xe/xe_ttm_sys_mgr.o
  CC [M]  drivers/gpu/drm/i915/gt/intel_gt_sysfs_pm.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/bios/boost.o
  CC [M]  drivers/gpu/drm/drm_modes.o
  CC [M]  drivers/gpu/drm/i915/gt/intel_gtt.o
  CC [M]  drivers/gpu/drm/i915/gt/intel_llc.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/bios/conn.o
  CC [M]  drivers/gpu/drm/drm_modeset_lock.o
  CC [M]  drivers/gpu/drm/drm_plane.o
  CC [M]  drivers/gpu/drm/xe/xe_ttm_stolen_mgr.o
  GEN     lib/crc32table.h
  CC      lib/crc32.o
  CC [M]  drivers/gpu/drm/i915/gt/intel_lrc.o
  CC [M]  drivers/gpu/drm/i915/gt/intel_migrate.o
  CC [M]  drivers/gpu/drm/xe/xe_ttm_vram_mgr.o
  CC [M]  drivers/net/ethernet/intel/ixgbe/ixgbe_ipsec.o
  CC [M]  drivers/gpu/drm/i915/gt/intel_mocs.o
  CC [M]  drivers/gpu/drm/drm_prime.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/bios/cstep.o
  CC [M]  drivers/gpu/drm/i915/gt/intel_ppgtt.o
  CC [M]  drivers/gpu/drm/xe/xe_tuning.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_securedisplay.o
  AR      fs/built-in.a
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/bios/dcb.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/bios/disp.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/bios/dp.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_eeprom.o
  CC [M]  drivers/gpu/drm/i915/gt/intel_rc6.o
  CC [M]  drivers/gpu/drm/drm_print.o
  CC [M]  drivers/gpu/drm/xe/xe_uc.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/bios/extdev.o
  CC [M]  drivers/gpu/drm/i915/gt/intel_region_lmem.o
  CC [M]  drivers/gpu/drm/i915/gt/intel_renderstate.o
  CC [M]  drivers/gpu/drm/i915/gt/intel_reset.o
  CC [M]  drivers/gpu/drm/drm_property.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_mca.o
  AR      lib/built-in.a
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_psp_ta.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/bios/fan.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/bios/gpio.o
  CC [M]  drivers/gpu/drm/i915/gt/intel_ring.o
  CC [M]  drivers/gpu/drm/drm_syncobj.o
  CC [M]  drivers/gpu/drm/drm_sysfs.o
  CC [M]  drivers/gpu/drm/drm_trace_points.o
  CC [M]  drivers/gpu/drm/i915/gt/intel_ring_submission.o
  CC [M]  drivers/gpu/drm/drm_vblank.o
  CC [M]  drivers/gpu/drm/drm_vblank_work.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/bios/i2c.o
  CC [M]  drivers/gpu/drm/i915/gt/intel_rps.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_lsdma.o
  CC [M]  drivers/gpu/drm/i915/gt/intel_sa_media.o
  CC [M]  drivers/gpu/drm/i915/gt/intel_sseu.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_ring_mux.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_xcp.o
  CC [M]  drivers/gpu/drm/xe/xe_uc_debugfs.o
  CC [M]  drivers/gpu/drm/i915/gt/intel_sseu_debugfs.o
  CC [M]  drivers/gpu/drm/i915/gt/intel_timeline.o
  CC [M]  drivers/gpu/drm/drm_vma_manager.o
  CC [M]  drivers/gpu/drm/xe/xe_uc_fw.o
  CC [M]  drivers/gpu/drm/i915/gt/intel_wopcm.o
  CC [M]  drivers/gpu/drm/drm_gpuva_mgr.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/bios/iccsense.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/bios/image.o
  CC [M]  drivers/gpu/drm/drm_writeback.o
  CC [M]  drivers/gpu/drm/xe/xe_vm.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_fdinfo.o
  CC [M]  drivers/gpu/drm/i915/gt/intel_workarounds.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/bios/init.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_pmu.o
  CC [M]  drivers/gpu/drm/i915/gt/shmem_utils.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/cik.o
  CC [M]  drivers/gpu/drm/lib/drm_random.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/cik_ih.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/dce_v8_0.o
  CC [M]  drivers/gpu/drm/drm_ioc32.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/bios/mxm.o
  CC [M]  drivers/gpu/drm/i915/gt/sysfs_engines.o
  CC [M]  drivers/gpu/drm/xe/xe_vm_madvise.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/gfx_v7_0.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/bios/npde.o
  CC [M]  drivers/gpu/drm/drm_panel.o
  CC [M]  drivers/gpu/drm/i915/gt/intel_ggtt_gmch.o
  CC [M]  drivers/gpu/drm/drm_pci.o
  CC [M]  drivers/gpu/drm/i915/gt/gen6_renderstate.o
  CC [M]  drivers/gpu/drm/xe/xe_wait_user_fence.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/cik_sdma.o
  CC [M]  drivers/gpu/drm/drm_debugfs.o
  LD [M]  drivers/net/ethernet/intel/ixgbe/ixgbe.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/uvd_v4_2.o
  CC [M]  drivers/gpu/drm/i915/gt/gen7_renderstate.o
  CC [M]  drivers/gpu/drm/xe/xe_wa.o
  AR      drivers/net/ethernet/built-in.a
  CC [M]  drivers/gpu/drm/drm_debugfs_crc.o
  AR      drivers/net/built-in.a
  CC [M]  drivers/gpu/drm/i915/gt/gen8_renderstate.o
  CC [M]  drivers/gpu/drm/drm_edid_load.o
  CC [M]  drivers/gpu/drm/xe/xe_wopcm.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/vce_v2_0.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/bios/pcir.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/bios/perf.o
  CC [M]  drivers/gpu/drm/xe/xe_display.o
  CC [M]  drivers/gpu/drm/xe/display/xe_fb_pin.o
  CC [M]  drivers/gpu/drm/xe/display/xe_hdcp_gsc.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/bios/pll.o
  CC [M]  drivers/gpu/drm/i915/gt/gen9_renderstate.o
  CC [M]  drivers/gpu/drm/drm_panel_orientation_quirks.o
  CC [M]  drivers/gpu/drm/i915/gem/i915_gem_busy.o
  CC [M]  drivers/gpu/drm/drm_buddy.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/bios/pmu.o
  CC [M]  drivers/gpu/drm/drm_gem_shmem_helper.o
  CC [M]  drivers/gpu/drm/i915/gem/i915_gem_clflush.o
  CC [M]  drivers/gpu/drm/drm_suballoc.o
  CC [M]  drivers/gpu/drm/drm_gem_ttm_helper.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/si.o
  CC [M]  drivers/gpu/drm/i915/gem/i915_gem_context.o
  CC [M]  drivers/gpu/drm/i915/gem/i915_gem_create.o
  CC [M]  drivers/gpu/drm/i915/gem/i915_gem_dmabuf.o
  CC [M]  drivers/gpu/drm/i915/gem/i915_gem_domain.o
  CC [M]  drivers/gpu/drm/xe/display/xe_plane_initial.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/gmc_v6_0.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/gfx_v6_0.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/si_ih.o
  CC [M]  drivers/gpu/drm/xe/display/xe_display_rps.o
  CC [M]  drivers/gpu/drm/i915/gem/i915_gem_execbuffer.o
  CC [M]  drivers/gpu/drm/xe/display/ext/i915_irq.o
  CC [M]  drivers/gpu/drm/i915/gem/i915_gem_internal.o
  CC [M]  drivers/gpu/drm/drm_atomic_helper.o
  CC [M]  drivers/gpu/drm/drm_atomic_state_helper.o
  CC [M]  drivers/gpu/drm/i915/gem/i915_gem_object.o
  CC [M]  drivers/gpu/drm/i915/gem/i915_gem_lmem.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/bios/power_budget.o
  CC [M]  drivers/gpu/drm/drm_bridge_connector.o
  CC [M]  drivers/gpu/drm/xe/display/ext/i915_utils.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/bios/ramcfg.o
  CC [M]  drivers/gpu/drm/drm_crtc_helper.o
  CC [M]  drivers/gpu/drm/xe/display/ext/intel_clock_gating.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/bios/rammap.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/si_dma.o
  CC [M]  drivers/gpu/drm/i915/gem/i915_gem_mman.o
  CC [M]  drivers/gpu/drm/drm_damage_helper.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/dce_v6_0.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/bios/shadow.o
  CC [M]  drivers/gpu/drm/drm_encoder_slave.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/uvd_v3_1.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/bios/shadowacpi.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/bios/shadowof.o
  CC [M]  drivers/gpu/drm/drm_flip_work.o
  CC [M]  drivers/gpu/drm/i915/gem/i915_gem_pages.o
  CC [M]  drivers/gpu/drm/xe/i915-soc/intel_dram.o
  CC [M]  drivers/gpu/drm/i915/gem/i915_gem_phys.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/vi.o
  CC [M]  drivers/gpu/drm/drm_format_helper.o
  CC [M]  drivers/gpu/drm/i915/gem/i915_gem_pm.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/bios/shadowpci.o
  CC [M]  drivers/gpu/drm/i915/gem/i915_gem_region.o
  CC [M]  drivers/gpu/drm/xe/i915-soc/intel_pch.o
  CC [M]  drivers/gpu/drm/xe/i915-display/icl_dsi.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_atomic.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/mxgpu_vi.o
  CC [M]  drivers/gpu/drm/drm_gem_atomic_helper.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/bios/shadowramin.o
  CC [M]  drivers/gpu/drm/i915/gem/i915_gem_shmem.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_atomic_plane.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/nbio_v6_1.o
  CC [M]  drivers/gpu/drm/i915/gem/i915_gem_shrinker.o
  CC [M]  drivers/gpu/drm/drm_gem_framebuffer_helper.o
  CC [M]  drivers/gpu/drm/i915/gem/i915_gem_stolen.o
  CC [M]  drivers/gpu/drm/i915/gem/i915_gem_throttle.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/bios/shadowrom.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/bios/timing.o
  CC [M]  drivers/gpu/drm/drm_kms_helper_common.o
  CC [M]  drivers/gpu/drm/i915/gem/i915_gem_tiling.o
  CC [M]  drivers/gpu/drm/i915/gem/i915_gem_ttm.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/soc15.o
  CC [M]  drivers/gpu/drm/drm_modeset_helper.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/bios/therm.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_audio.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/emu_soc.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/mxgpu_ai.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/bios/vmap.o
  CC [M]  drivers/gpu/drm/i915/gem/i915_gem_ttm_move.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_backlight.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/bios/volt.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/bios/vpstate.o
  CC [M]  drivers/gpu/drm/drm_plane_helper.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/nbio_v7_0.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/vega10_reg_init.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_bios.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_bw.o
  CC [M]  drivers/gpu/drm/i915/gem/i915_gem_ttm_pm.o
  CC [M]  drivers/gpu/drm/drm_probe_helper.o
  CC [M]  drivers/gpu/drm/drm_rect.o
  CC [M]  drivers/gpu/drm/drm_self_refresh_helper.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/vega20_reg_init.o
  CC [M]  drivers/gpu/drm/drm_simple_kms_helper.o
  CC [M]  drivers/gpu/drm/i915/gem/i915_gem_userptr.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/bios/xpio.o
  CC [M]  drivers/gpu/drm/i915/gem/i915_gem_wait.o
  CC [M]  drivers/gpu/drm/i915/gem/i915_gemfs.o
  CC [M]  drivers/gpu/drm/i915/i915_active.o
  CC [M]  drivers/gpu/drm/bridge/panel.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/bios/M0203.o
  CC [M]  drivers/gpu/drm/i915/i915_cmd_parser.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/nbio_v7_4.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/nbio_v2_3.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/bios/M0205.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/nv.o
  CC [M]  drivers/gpu/drm/drm_fbdev_generic.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_cdclk.o
  CC [M]  drivers/gpu/drm/i915/i915_deps.o
  CC [M]  drivers/gpu/drm/i915/i915_gem_evict.o
  CC [M]  drivers/gpu/drm/drm_fb_helper.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/bios/M0209.o
  CC [M]  drivers/gpu/drm/i915/i915_gem_gtt.o
  CC [M]  drivers/gpu/drm/i915/i915_gem_ww.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/bios/P0260.o
  CC [M]  drivers/gpu/drm/i915/i915_gem.o
  CC [M]  drivers/gpu/drm/i915/i915_query.o
  LD [M]  drivers/gpu/drm/drm.o
  CC [M]  drivers/gpu/drm/i915/i915_request.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_color.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_combo_phy.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_connector.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_crtc.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/arct_reg_init.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/mxgpu_nv.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/bus/base.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/nbio_v7_2.o
  LD [M]  drivers/gpu/drm/drm_shmem_helper.o
  CC [M]  drivers/gpu/drm/i915/i915_scheduler.o
  CC [M]  drivers/gpu/drm/i915/i915_trace_points.o
  LD [M]  drivers/gpu/drm/drm_suballoc_helper.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/bus/hwsq.o
  LD [M]  drivers/gpu/drm/drm_ttm_helper.o
  AR      drivers/gpu/drm/built-in.a
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_crtc_state_dump.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/hdp_v4_0.o
  CC [M]  drivers/gpu/drm/i915/i915_ttm_buddy_manager.o
  CC [M]  drivers/gpu/drm/i915/i915_vma.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/hdp_v5_0.o
  CC [M]  drivers/gpu/drm/i915/i915_vma_resource.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/bus/nv04.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/bus/nv31.o
  CC [M]  drivers/gpu/drm/i915/gt/uc/intel_gsc_fw.o
  CC [M]  drivers/gpu/drm/i915/gt/uc/intel_gsc_proxy.o
  CC [M]  drivers/gpu/drm/i915/gt/uc/intel_gsc_uc.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/aldebaran_reg_init.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/aldebaran.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/bus/nv50.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/bus/g94.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_cursor.o
  CC [M]  drivers/gpu/drm/i915/gt/uc/intel_gsc_uc_debugfs.o
  CC [M]  drivers/gpu/drm/i915/gt/uc/intel_gsc_uc_heci_cmd_submit.o
  CC [M]  drivers/gpu/drm/i915/gt/uc/intel_guc.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_cx0_phy.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/soc21.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_ddi.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/bus/gf100.o
  CC [M]  drivers/gpu/drm/i915/gt/uc/intel_guc_ads.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/sienna_cichlid.o
  CC [M]  drivers/gpu/drm/i915/gt/uc/intel_guc_capture.o
  CC [M]  drivers/gpu/drm/i915/gt/uc/intel_guc_ct.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_ddi_buf_trans.o
  CC [M]  drivers/gpu/drm/i915/gt/uc/intel_guc_debugfs.o
  CC [M]  drivers/gpu/drm/i915/gt/uc/intel_guc_fw.o
  CC [M]  drivers/gpu/drm/i915/gt/uc/intel_guc_hwconfig.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/clk/base.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_display.o
  CC [M]  drivers/gpu/drm/i915/gt/uc/intel_guc_log.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/clk/nv04.o
  CC [M]  drivers/gpu/drm/i915/gt/uc/intel_guc_log_debugfs.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/smu_v13_0_10.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/nbio_v4_3.o
  CC [M]  drivers/gpu/drm/i915/gt/uc/intel_guc_rc.o
  CC [M]  drivers/gpu/drm/i915/gt/uc/intel_guc_slpc.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_display_debugfs.o
  CC [M]  drivers/gpu/drm/i915/gt/uc/intel_guc_submission.o
  CC [M]  drivers/gpu/drm/i915/gt/uc/intel_huc.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/hdp_v6_0.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/clk/nv40.o
  CC [M]  drivers/gpu/drm/i915/gt/uc/intel_huc_debugfs.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_display_device.o
  CC [M]  drivers/gpu/drm/i915/gt/uc/intel_huc_fw.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/nbio_v7_7.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/clk/nv50.o
  CC [M]  drivers/gpu/drm/i915/gt/uc/intel_uc.o
  CC [M]  drivers/gpu/drm/i915/gt/uc/intel_uc_debugfs.o
  CC [M]  drivers/gpu/drm/i915/gt/uc/intel_uc_fw.o
  LD [M]  drivers/gpu/drm/drm_kms_helper.o
  CC [M]  drivers/gpu/drm/i915/gt/intel_gsc.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/hdp_v5_2.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_display_driver.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_display_irq.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_display_power.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_display_power_map.o
  CC [M]  drivers/gpu/drm/i915/i915_hwmon.o
  CC [M]  drivers/gpu/drm/i915/display/hsw_ips.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/clk/g84.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_display_power_well.o
  CC [M]  drivers/gpu/drm/i915/display/intel_atomic.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/lsdma_v6_0.o
  CC [M]  drivers/gpu/drm/i915/display/intel_atomic_plane.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_display_trace.o
  CC [M]  drivers/gpu/drm/i915/display/intel_audio.o
  CC [M]  drivers/gpu/drm/i915/display/intel_bios.o
  CC [M]  drivers/gpu/drm/i915/display/intel_bw.o
  CC [M]  drivers/gpu/drm/i915/display/intel_cdclk.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_dkl_phy.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/nbio_v7_9.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/clk/gt215.o
  CC [M]  drivers/gpu/drm/i915/display/intel_color.o
  CC [M]  drivers/gpu/drm/i915/display/intel_combo_phy.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/aqua_vanjaram_reg_init.o
  CC [M]  drivers/gpu/drm/i915/display/intel_connector.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/clk/mcp77.o
  CC [M]  drivers/gpu/drm/i915/display/intel_crtc.o
  CC [M]  drivers/gpu/drm/i915/display/intel_crtc_state_dump.o
  CC [M]  drivers/gpu/drm/i915/display/intel_cursor.o
  CC [M]  drivers/gpu/drm/i915/display/intel_display.o
  CC [M]  drivers/gpu/drm/i915/display/intel_display_driver.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/clk/gf100.o
  CC [M]  drivers/gpu/drm/i915/display/intel_display_irq.o
  CC [M]  drivers/gpu/drm/i915/display/intel_display_power.o
  CC [M]  drivers/gpu/drm/i915/display/intel_display_power_map.o
  CC [M]  drivers/gpu/drm/i915/display/intel_display_power_well.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/clk/gk104.o
  CC [M]  drivers/gpu/drm/i915/display/intel_display_reset.o
  CC [M]  drivers/gpu/drm/i915/display/intel_display_rps.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_dmc.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/df_v1_7.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_dp.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_dp_aux.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/df_v3_6.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_dp_aux_backlight.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/df_v4_3.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/gmc_v7_0.o
  CC [M]  drivers/gpu/drm/i915/display/intel_dmc.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/gmc_v8_0.o
  CC [M]  drivers/gpu/drm/i915/display/intel_dpio_phy.o
  CC [M]  drivers/gpu/drm/i915/display/intel_dpll.o
  CC [M]  drivers/gpu/drm/i915/display/intel_dpll_mgr.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/clk/gk20a.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/clk/gm20b.o
  CC [M]  drivers/gpu/drm/i915/display/intel_dpt.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_dp_hdcp.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/gfxhub_v1_0.o
  CC [M]  drivers/gpu/drm/i915/display/intel_drrs.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_dp_link_training.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/clk/pllnv04.o
  CC [M]  drivers/gpu/drm/i915/display/intel_dsb.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/clk/pllgt215.o
  CC [M]  drivers/gpu/drm/i915/display/intel_fb.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_dp_mst.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/mmhub_v1_0.o
  CC [M]  drivers/gpu/drm/i915/display/intel_fb_pin.o
  CC [M]  drivers/gpu/drm/i915/display/intel_fdi.o
  CC [M]  drivers/gpu/drm/i915/display/intel_fbc.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/gmc_v9_0.o
  CC [M]  drivers/gpu/drm/i915/display/intel_fifo_underrun.o
  CC [M]  drivers/gpu/drm/i915/display/intel_frontbuffer.o
  CC [M]  drivers/gpu/drm/i915/display/intel_global_state.o
  CC [M]  drivers/gpu/drm/i915/display/intel_hdcp.o
  CC [M]  drivers/gpu/drm/i915/display/intel_hdcp_gsc.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/gfxhub_v1_1.o
  CC [M]  drivers/gpu/drm/i915/display/intel_hotplug.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_dpll.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/mmhub_v9_4.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_dpll_mgr.o
  CC [M]  drivers/gpu/drm/i915/display/intel_hotplug_irq.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_dpt.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/devinit/base.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/devinit/nv04.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/gfxhub_v2_0.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/devinit/nv05.o
  CC [M]  drivers/gpu/drm/i915/display/intel_hti.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/devinit/nv10.o
  CC [M]  drivers/gpu/drm/i915/display/intel_load_detect.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_drrs.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_dsb.o
  CC [M]  drivers/gpu/drm/i915/display/intel_lpe_audio.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_dsi.o
  CC [M]  drivers/gpu/drm/i915/display/intel_modeset_lock.o
  CC [M]  drivers/gpu/drm/i915/display/intel_modeset_verify.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_dsi_dcs_backlight.o
  CC [M]  drivers/gpu/drm/i915/display/intel_modeset_setup.o
  CC [M]  drivers/gpu/drm/i915/display/intel_overlay.o
  CC [M]  drivers/gpu/drm/i915/display/intel_pch_display.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_dsi_vbt.o
  CC [M]  drivers/gpu/drm/i915/display/intel_pch_refclk.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/mmhub_v2_0.o
  CC [M]  drivers/gpu/drm/i915/display/intel_plane_initial.o
  CC [M]  drivers/gpu/drm/i915/display/intel_pmdemand.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/devinit/nv1a.o
  CC [M]  drivers/gpu/drm/i915/display/intel_psr.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_fb.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_fbc.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/gmc_v10_0.o
  CC [M]  drivers/gpu/drm/i915/display/intel_quirks.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/devinit/nv20.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/gfxhub_v2_1.o
  CC [M]  drivers/gpu/drm/i915/display/intel_sprite.o
  CC [M]  drivers/gpu/drm/i915/display/intel_sprite_uapi.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/devinit/nv50.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_fdi.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/devinit/g84.o
  CC [M]  drivers/gpu/drm/i915/display/intel_tc.o
  CC [M]  drivers/gpu/drm/i915/display/intel_vblank.o
  CC [M]  drivers/gpu/drm/i915/display/intel_vga.o
  CC [M]  drivers/gpu/drm/i915/display/intel_wm.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_fifo_underrun.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_frontbuffer.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/mmhub_v2_3.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_global_state.o
  CC [M]  drivers/gpu/drm/i915/display/i9xx_plane.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_gmbus.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_hdcp.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/mmhub_v1_7.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/devinit/g98.o
  CC [M]  drivers/gpu/drm/i915/display/i9xx_wm.o
  CC [M]  drivers/gpu/drm/i915/display/skl_scaler.o
  CC [M]  drivers/gpu/drm/i915/display/skl_universal_plane.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/gfxhub_v3_0.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/mmhub_v3_0.o
  CC [M]  drivers/gpu/drm/i915/display/skl_watermark.o
  CC [M]  drivers/gpu/drm/i915/display/intel_acpi.o
  CC [M]  drivers/gpu/drm/i915/display/intel_opregion.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/devinit/gt215.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_hdmi.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/devinit/mcp89.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_hotplug.o
  CC [M]  drivers/gpu/drm/i915/display/intel_fbdev.o
  CC [M]  drivers/gpu/drm/i915/display/dvo_ch7017.o
  CC [M]  drivers/gpu/drm/i915/display/dvo_ch7xxx.o
  CC [M]  drivers/gpu/drm/i915/display/dvo_ivch.o
  CC [M]  drivers/gpu/drm/i915/display/dvo_ns2501.o
  CC [M]  drivers/gpu/drm/i915/display/dvo_sil164.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/mmhub_v3_0_2.o
  CC [M]  drivers/gpu/drm/i915/display/dvo_tfp410.o
  CC [M]  drivers/gpu/drm/i915/display/g4x_dp.o
  CC [M]  drivers/gpu/drm/i915/display/g4x_hdmi.o
  CC [M]  drivers/gpu/drm/i915/display/icl_dsi.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/devinit/gf100.o
  CC [M]  drivers/gpu/drm/i915/display/intel_backlight.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_hotplug_irq.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_hti.o
  CC [M]  drivers/gpu/drm/i915/display/intel_crt.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_lspcon.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_modeset_lock.o
  CC [M]  drivers/gpu/drm/i915/display/intel_cx0_phy.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/devinit/gm107.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_modeset_setup.o
  CC [M]  drivers/gpu/drm/i915/display/intel_ddi.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_modeset_verify.o
  CC [M]  drivers/gpu/drm/i915/display/intel_ddi_buf_trans.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/gmc_v11_0.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_panel.o
  CC [M]  drivers/gpu/drm/i915/display/intel_display_device.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/mmhub_v3_0_1.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/gfxhub_v3_0_3.o
  CC [M]  drivers/gpu/drm/i915/display/intel_display_trace.o
  CC [M]  drivers/gpu/drm/i915/display/intel_dkl_phy.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/gfxhub_v1_2.o
  CC [M]  drivers/gpu/drm/i915/display/intel_dp.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/mmhub_v1_8.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/devinit/gm200.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/umc_v6_0.o
  CC [M]  drivers/gpu/drm/i915/display/intel_dp_aux.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_pipe_crc.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_pmdemand.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_pps.o
  CC [M]  drivers/gpu/drm/i915/display/intel_dp_aux_backlight.o
  CC [M]  drivers/gpu/drm/i915/display/intel_dp_hdcp.o
  CC [M]  drivers/gpu/drm/i915/display/intel_dp_link_training.o
  CC [M]  drivers/gpu/drm/i915/display/intel_dp_mst.o
  CC [M]  drivers/gpu/drm/i915/display/intel_dsi.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_psr.o
  CC [M]  drivers/gpu/drm/i915/display/intel_dsi_dcs_backlight.o
  CC [M]  drivers/gpu/drm/i915/display/intel_dsi_vbt.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/devinit/gv100.o
  CC [M]  drivers/gpu/drm/i915/display/intel_dvo.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/umc_v6_1.o
  CC [M]  drivers/gpu/drm/i915/display/intel_gmbus.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_qp_tables.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_quirks.o
  CC [M]  drivers/gpu/drm/i915/display/intel_hdmi.o
  CC [M]  drivers/gpu/drm/i915/display/intel_lspcon.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/devinit/tu102.o
  CC [M]  drivers/gpu/drm/i915/display/intel_lvds.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/devinit/ga100.o
  CC [M]  drivers/gpu/drm/i915/display/intel_panel.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/umc_v6_7.o
  CC [M]  drivers/gpu/drm/i915/display/intel_pps.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_snps_phy.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_tc.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_vblank.o
  CC [M]  drivers/gpu/drm/i915/display/intel_qp_tables.o
  CC [M]  drivers/gpu/drm/i915/display/intel_sdvo.o
  CC [M]  drivers/gpu/drm/i915/display/intel_snps_phy.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fault/base.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_vdsc.o
  CC [M]  drivers/gpu/drm/i915/display/intel_tv.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/umc_v8_7.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/umc_v8_10.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_vga.o
  CC [M]  drivers/gpu/drm/i915/display/intel_vdsc.o
  CC [M]  drivers/gpu/drm/i915/display/intel_vrr.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_vrr.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_irq.o
  CC [M]  drivers/gpu/drm/i915/display/vlv_dsi.o
  CC [M]  drivers/gpu/drm/i915/display/vlv_dsi_pll.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_ih.o
  CC [M]  drivers/gpu/drm/i915/i915_perf.o
  CC [M]  drivers/gpu/drm/i915/pxp/intel_pxp.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_wm.o
  CC [M]  drivers/gpu/drm/xe/i915-display/skl_scaler.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fault/user.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/iceland_ih.o
  CC [M]  drivers/gpu/drm/i915/pxp/intel_pxp_tee.o
  CC [M]  drivers/gpu/drm/xe/i915-display/skl_universal_plane.o
  CC [M]  drivers/gpu/drm/i915/pxp/intel_pxp_huc.o
  CC [M]  drivers/gpu/drm/i915/pxp/intel_pxp_cmd.o
  CC [M]  drivers/gpu/drm/i915/pxp/intel_pxp_debugfs.o
  CC [M]  drivers/gpu/drm/i915/pxp/intel_pxp_gsccs.o
  CC [M]  drivers/gpu/drm/xe/i915-display/skl_watermark.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fault/gp100.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fault/gp10b.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/tonga_ih.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fault/gv100.o
  CC [M]  drivers/gpu/drm/i915/pxp/intel_pxp_irq.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_acpi.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_opregion.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/cz_ih.o
  CC [M]  drivers/gpu/drm/i915/pxp/intel_pxp_pm.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/vega10_ih.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fault/tu102.o
  CC [M]  drivers/gpu/drm/i915/pxp/intel_pxp_session.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_fbdev.o
  CC [M]  drivers/gpu/drm/i915/i915_gpu_error.o
  CC [M]  drivers/gpu/drm/i915/gem/selftests/i915_gem_client_blt.o
  CC [M]  drivers/gpu/drm/i915/gem/selftests/igt_gem_utils.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fb/base.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fb/nv04.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fb/nv10.o
  CC [M]  drivers/gpu/drm/xe/xe_guc.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/vega20_ih.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fb/nv1a.o
  CC [M]  drivers/gpu/drm/i915/selftests/intel_scheduler_helpers.o
  CC [M]  drivers/gpu/drm/i915/selftests/i915_random.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fb/nv20.o
  CC [M]  drivers/gpu/drm/i915/selftests/i915_selftest.o
  CC [M]  drivers/gpu/drm/i915/selftests/igt_atomic.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/navi10_ih.o
  CC [M]  drivers/gpu/drm/xe/xe_ring_ops.o
  CC [M]  drivers/gpu/drm/i915/selftests/igt_flush_test.o
  CC [M]  drivers/gpu/drm/i915/selftests/igt_live_test.o
  CC [M]  drivers/gpu/drm/i915/selftests/igt_mmap.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fb/nv25.o
  CC [M]  drivers/gpu/drm/i915/selftests/igt_reset.o
  CC [M]  drivers/gpu/drm/i915/selftests/igt_spinner.o
  CC [M]  drivers/gpu/drm/i915/selftests/librapl.o
  HDRTEST drivers/gpu/drm/xe/abi/guc_klvs_abi.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fb/nv30.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fb/nv35.o
  CC [M]  drivers/gpu/drm/i915/i915_vgpu.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/ih_v6_0.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_psp.o
  HDRTEST drivers/gpu/drm/xe/abi/guc_errors_abi.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/psp_v3_1.o
  HDRTEST drivers/gpu/drm/i915/display/intel_dkl_phy_regs.h
  HDRTEST drivers/gpu/drm/i915/display/intel_crtc_state_dump.h
  HDRTEST drivers/gpu/drm/i915/display/hsw_ips.h
  HDRTEST drivers/gpu/drm/i915/display/g4x_hdmi.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/psp_v10_0.o
  HDRTEST drivers/gpu/drm/xe/abi/guc_actions_slpc_abi.h
  HDRTEST drivers/gpu/drm/i915/display/intel_hdcp_regs.h
  HDRTEST drivers/gpu/drm/i915/display/intel_overlay.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/psp_v11_0.o
  HDRTEST drivers/gpu/drm/i915/display/intel_display.h
  HDRTEST drivers/gpu/drm/i915/display/skl_watermark_regs.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fb/nv36.o
  HDRTEST drivers/gpu/drm/i915/display/intel_dmc.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/psp_v11_0_8.o
  HDRTEST drivers/gpu/drm/i915/display/intel_vga.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fb/nv40.o
  HDRTEST drivers/gpu/drm/xe/abi/guc_communication_mmio_abi.h
  HDRTEST drivers/gpu/drm/i915/display/intel_audio.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fb/nv41.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fb/nv44.o
  HDRTEST drivers/gpu/drm/i915/display/intel_lvds.h
  HDRTEST drivers/gpu/drm/xe/abi/guc_actions_abi.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fb/nv46.o
  HDRTEST drivers/gpu/drm/i915/display/intel_modeset_setup.h
  HDRTEST drivers/gpu/drm/i915/display/intel_cdclk.h
  HDRTEST drivers/gpu/drm/xe/abi/guc_communication_ctb_abi.h
  HDRTEST drivers/gpu/drm/xe/abi/guc_messages_abi.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fb/nv47.o
  HDRTEST drivers/gpu/drm/xe/compat-i915-headers/i915_vma_types.h
  HDRTEST drivers/gpu/drm/xe/compat-i915-headers/i915_irq.h
  HDRTEST drivers/gpu/drm/xe/compat-i915-headers/vlv_sideband_reg.h
  HDRTEST drivers/gpu/drm/i915/display/intel_display_limits.h
  HDRTEST drivers/gpu/drm/xe/compat-i915-headers/intel_wakeref.h
  HDRTEST drivers/gpu/drm/i915/display/intel_hotplug.h
  HDRTEST drivers/gpu/drm/xe/compat-i915-headers/intel_pcode.h
  HDRTEST drivers/gpu/drm/i915/display/intel_dkl_phy.h
  HDRTEST drivers/gpu/drm/i915/display/intel_atomic.h
  HDRTEST drivers/gpu/drm/xe/compat-i915-headers/i915_drv.h
  HDRTEST drivers/gpu/drm/i915/display/intel_display_driver.h
  HDRTEST drivers/gpu/drm/i915/display/intel_dpll.h
  HDRTEST drivers/gpu/drm/i915/display/vlv_dsi_pll_regs.h
  HDRTEST drivers/gpu/drm/xe/compat-i915-headers/i915_reg_defs.h
  HDRTEST drivers/gpu/drm/i915/display/intel_dp_mst.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fb/nv49.o
  HDRTEST drivers/gpu/drm/i915/display/intel_fdi_regs.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/psp_v12_0.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fb/nv4e.o
  HDRTEST drivers/gpu/drm/i915/display/g4x_dp.h
  HDRTEST drivers/gpu/drm/i915/display/intel_tc.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fb/nv50.o
  HDRTEST drivers/gpu/drm/i915/display/intel_frontbuffer.h
  HDRTEST drivers/gpu/drm/i915/display/intel_dsi_vbt.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/psp_v13_0.o
  HDRTEST drivers/gpu/drm/i915/display/intel_psr.h
  HDRTEST drivers/gpu/drm/xe/compat-i915-headers/i915_trace.h
  HDRTEST drivers/gpu/drm/i915/display/intel_crt.h
  HDRTEST drivers/gpu/drm/xe/compat-i915-headers/i915_reg.h
  HDRTEST drivers/gpu/drm/xe/compat-i915-headers/i915_active_types.h
  HDRTEST drivers/gpu/drm/i915/display/intel_opregion.h
  HDRTEST drivers/gpu/drm/i915/display/intel_snps_phy_regs.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fb/g84.o
  HDRTEST drivers/gpu/drm/i915/display/i9xx_wm.h
  HDRTEST drivers/gpu/drm/i915/display/intel_cx0_phy_regs.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fb/gt215.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/psp_v13_0_4.o
  HDRTEST drivers/gpu/drm/i915/display/intel_global_state.h
  HDRTEST drivers/gpu/drm/i915/display/intel_lpe_audio.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/dce_v10_0.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/dce_v11_0.o
  HDRTEST drivers/gpu/drm/i915/display/intel_drrs.h
  HDRTEST drivers/gpu/drm/i915/display/intel_display_rps.h
  HDRTEST drivers/gpu/drm/i915/display/intel_fbdev.h
  HDRTEST drivers/gpu/drm/i915/display/intel_pps_regs.h
  HDRTEST drivers/gpu/drm/xe/compat-i915-headers/i915_utils.h
  HDRTEST drivers/gpu/drm/i915/display/intel_hdmi.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fb/mcp77.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_vkms.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fb/mcp89.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_gfx.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fb/gf100.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fb/gf108.o
  HDRTEST drivers/gpu/drm/i915/display/intel_fdi.h
  HDRTEST drivers/gpu/drm/i915/display/intel_fb.h
  HDRTEST drivers/gpu/drm/i915/display/intel_qp_tables.h
  HDRTEST drivers/gpu/drm/i915/display/intel_dsb_regs.h
  HDRTEST drivers/gpu/drm/i915/display/intel_vdsc.h
  HDRTEST drivers/gpu/drm/i915/display/intel_snps_phy.h
  HDRTEST drivers/gpu/drm/i915/display/intel_display_core.h
  HDRTEST drivers/gpu/drm/i915/display/vlv_dsi_pll.h
  HDRTEST drivers/gpu/drm/i915/display/intel_dvo_dev.h
  HDRTEST drivers/gpu/drm/i915/display/intel_hdcp.h
  HDRTEST drivers/gpu/drm/xe/compat-i915-headers/i915_config.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fb/gk104.o
  HDRTEST drivers/gpu/drm/xe/compat-i915-headers/i915_vma.h
  HDRTEST drivers/gpu/drm/i915/display/intel_sdvo_regs.h
  HDRTEST drivers/gpu/drm/xe/compat-i915-headers/vlv_sideband.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_rlc.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/gfx_v8_0.o
  HDRTEST drivers/gpu/drm/xe/compat-i915-headers/intel_mchbar_regs.h
  HDRTEST drivers/gpu/drm/xe/compat-i915-headers/i915_debugfs.h
  HDRTEST drivers/gpu/drm/xe/compat-i915-headers/soc/intel_pch.h
  HDRTEST drivers/gpu/drm/xe/compat-i915-headers/soc/intel_dram.h
  HDRTEST drivers/gpu/drm/i915/display/intel_pch_refclk.h
  HDRTEST drivers/gpu/drm/xe/compat-i915-headers/soc/intel_gmch.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fb/gk110.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/gfx_v9_0.o
  HDRTEST drivers/gpu/drm/xe/compat-i915-headers/i915_vgpu.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/gfx_v9_4.o
  HDRTEST drivers/gpu/drm/i915/display/intel_modeset_lock.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/gfx_v9_4_2.o
  HDRTEST drivers/gpu/drm/xe/compat-i915-headers/i915_fixed.h
  HDRTEST drivers/gpu/drm/i915/display/intel_display_trace.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/gfx_v9_4_3.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/gfx_v10_0.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fb/gk20a.o
  HDRTEST drivers/gpu/drm/xe/compat-i915-headers/intel_runtime_pm.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/imu_v11_0.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fb/gm107.o
  HDRTEST drivers/gpu/drm/i915/display/intel_display_power.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/gfx_v11_0.o
  HDRTEST drivers/gpu/drm/xe/compat-i915-headers/intel_uncore.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fb/gm200.o
  HDRTEST drivers/gpu/drm/xe/compat-i915-headers/intel_pci_config.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/gfx_v11_0_3.o
  HDRTEST drivers/gpu/drm/xe/compat-i915-headers/gt/intel_rps.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/imu_v11_0_3.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_sdma.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fb/gm20b.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fb/gp100.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fb/gp102.o
  HDRTEST drivers/gpu/drm/i915/display/intel_dp_aux_regs.h
  HDRTEST drivers/gpu/drm/i915/display/i9xx_plane.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/sdma_v2_4.o
  HDRTEST drivers/gpu/drm/xe/compat-i915-headers/intel_clock_gating.h
  HDRTEST drivers/gpu/drm/i915/display/intel_dp_aux_backlight.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fb/gp10b.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fb/gv100.o
  HDRTEST drivers/gpu/drm/i915/display/intel_dpll_mgr.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/sdma_v3_0.o
  HDRTEST drivers/gpu/drm/i915/display/vlv_dsi.h
  HDRTEST drivers/gpu/drm/xe/regs/xe_reg_defs.h
  HDRTEST drivers/gpu/drm/i915/display/intel_plane_initial.h
  HDRTEST drivers/gpu/drm/xe/regs/xe_guc_regs.h
  HDRTEST drivers/gpu/drm/i915/display/intel_display_device.h
  HDRTEST drivers/gpu/drm/i915/display/intel_fifo_underrun.h
  HDRTEST drivers/gpu/drm/xe/regs/xe_gt_regs.h
  HDRTEST drivers/gpu/drm/xe/regs/xe_regs.h
  HDRTEST drivers/gpu/drm/xe/regs/xe_gt_error_regs.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/sdma_v4_0.o
  HDRTEST drivers/gpu/drm/xe/regs/xe_tile_error_regs.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/sdma_v4_4.o
  HDRTEST drivers/gpu/drm/xe/regs/xe_gpu_commands.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/sdma_v4_4_2.o
  HDRTEST drivers/gpu/drm/i915/display/intel_cursor.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/sdma_v5_0.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fb/tu102.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fb/ga100.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fb/ga102.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/sdma_v5_2.o
  HDRTEST drivers/gpu/drm/i915/display/vlv_dsi_regs.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/sdma_v6_0.o
  HDRTEST drivers/gpu/drm/i915/display/intel_cx0_phy.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fb/ram.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_mes.o
  HDRTEST drivers/gpu/drm/xe/regs/xe_lrc_layout.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramnv04.o
  HDRTEST drivers/gpu/drm/i915/display/skl_scaler.h
  HDRTEST drivers/gpu/drm/i915/display/intel_hti.h
  HDRTEST drivers/gpu/drm/i915/display/icl_dsi_regs.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/mes_v10_1.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramnv10.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/mes_v11_0.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramnv1a.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.o
  HDRTEST drivers/gpu/drm/i915/display/intel_atomic_plane.h
  HDRTEST drivers/gpu/drm/i915/display/skl_watermark.h
  HDRTEST drivers/gpu/drm/i915/display/intel_fbc.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramnv20.o
  HDRTEST drivers/gpu/drm/i915/display/intel_display_reg_defs.h
  HDRTEST drivers/gpu/drm/i915/display/intel_acpi.h
  HDRTEST drivers/gpu/drm/i915/display/intel_connector.h
  HDRTEST drivers/gpu/drm/i915/display/intel_dpt.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramnv40.o
  HDRTEST drivers/gpu/drm/i915/display/intel_quirks.h
  HDRTEST drivers/gpu/drm/xe/regs/xe_engine_regs.h
  HDRTEST drivers/gpu/drm/i915/display/intel_dp_link_training.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/uvd_v5_0.o
  HDRTEST drivers/gpu/drm/i915/display/intel_color.h
  HDRTEST drivers/gpu/drm/xe/tests/xe_test.h
  HDRTEST drivers/gpu/drm/i915/display/intel_crtc.h
  HDRTEST drivers/gpu/drm/i915/display/intel_display_debugfs.h
  HDRTEST drivers/gpu/drm/i915/display/intel_modeset_verify.h
  HDRTEST drivers/gpu/drm/i915/display/intel_display_power_well.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/uvd_v6_0.o
  HDRTEST drivers/gpu/drm/i915/display/intel_psr_regs.h
  HDRTEST drivers/gpu/drm/i915/display/intel_wm.h
  HDRTEST drivers/gpu/drm/i915/display/intel_pipe_crc.h
  HDRTEST drivers/gpu/drm/xe/tests/xe_pci_test.h
  HDRTEST drivers/gpu/drm/i915/display/intel_audio_regs.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramnv41.o
  HDRTEST drivers/gpu/drm/i915/display/intel_panel.h
  HDRTEST drivers/gpu/drm/xe/tests/xe_migrate_test.h
  HDRTEST drivers/gpu/drm/xe/tests/xe_dma_buf_test.h
  HDRTEST drivers/gpu/drm/i915/display/intel_sprite.h
  HDRTEST drivers/gpu/drm/i915/display/intel_wm_types.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramnv44.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/uvd_v7_0.o
  HDRTEST drivers/gpu/drm/xe/tests/xe_bo_test.h
  HDRTEST drivers/gpu/drm/xe/xe_bb.h
  HDRTEST drivers/gpu/drm/i915/display/intel_tv.h
  HDRTEST drivers/gpu/drm/i915/display/intel_hti_regs.h
  HDRTEST drivers/gpu/drm/i915/display/intel_vrr.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramnv49.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_vce.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramnv4e.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/vce_v3_0.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/vce_v4_0.o
  HDRTEST drivers/gpu/drm/i915/display/intel_load_detect.h
  HDRTEST drivers/gpu/drm/i915/display/skl_universal_plane.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramnv50.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.o
  HDRTEST drivers/gpu/drm/i915/display/intel_mg_phy_regs.h
  HDRTEST drivers/gpu/drm/i915/display/intel_bw.h
  HDRTEST drivers/gpu/drm/i915/display/intel_display_irq.h
  HDRTEST drivers/gpu/drm/i915/display/intel_de.h
  HDRTEST drivers/gpu/drm/i915/display/intel_lvds_regs.h
  HDRTEST drivers/gpu/drm/i915/display/intel_gmbus_regs.h
  HDRTEST drivers/gpu/drm/i915/display/intel_dsi_dcs_backlight.h
  HDRTEST drivers/gpu/drm/xe/xe_bb_types.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramgt215.o
  HDRTEST drivers/gpu/drm/i915/display/intel_dvo.h
  HDRTEST drivers/gpu/drm/xe/xe_bo.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/vcn_sw_ring.o
  HDRTEST drivers/gpu/drm/i915/display/intel_sdvo.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fb/rammcp77.o
  HDRTEST drivers/gpu/drm/i915/display/intel_dp_aux.h
  HDRTEST drivers/gpu/drm/i915/display/intel_vdsc_regs.h
  HDRTEST drivers/gpu/drm/i915/display/intel_combo_phy.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/vcn_v1_0.o
  HDRTEST drivers/gpu/drm/i915/display/intel_dvo_regs.h
  HDRTEST drivers/gpu/drm/i915/display/intel_gmbus.h
  HDRTEST drivers/gpu/drm/i915/display/intel_hdcp_gsc.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/vcn_v2_0.o
  HDRTEST drivers/gpu/drm/i915/display/intel_dsi.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/vcn_v2_5.o
  HDRTEST drivers/gpu/drm/i915/display/intel_dmc_regs.h
  HDRTEST drivers/gpu/drm/xe/xe_bo_doc.h
  HDRTEST drivers/gpu/drm/xe/xe_bo_evict.h
  HDRTEST drivers/gpu/drm/i915/display/intel_ddi.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramgf100.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/vcn_v3_0.o
  HDRTEST drivers/gpu/drm/xe/xe_bo_types.h
  HDRTEST drivers/gpu/drm/i915/display/intel_hotplug_irq.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramgf108.o
  HDRTEST drivers/gpu/drm/i915/display/intel_tv_regs.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/vcn_v4_0.o
  HDRTEST drivers/gpu/drm/i915/display/intel_dsb.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramgk104.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/vcn_v4_0_3.o
  HDRTEST drivers/gpu/drm/xe/xe_debugfs.h
  HDRTEST drivers/gpu/drm/xe/xe_devcoredump.h
  HDRTEST drivers/gpu/drm/i915/display/intel_bios.h
  HDRTEST drivers/gpu/drm/xe/xe_devcoredump_types.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_jpeg.o
  HDRTEST drivers/gpu/drm/i915/display/intel_pch_display.h
  HDRTEST drivers/gpu/drm/i915/display/intel_display_types.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramgm107.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramgm200.o
  HDRTEST drivers/gpu/drm/i915/display/intel_backlight.h
  HDRTEST drivers/gpu/drm/i915/display/intel_vblank.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/jpeg_v1_0.o
  HDRTEST drivers/gpu/drm/xe/xe_device.h
  HDRTEST drivers/gpu/drm/i915/display/intel_dp.h
  HDRTEST drivers/gpu/drm/i915/display/intel_pmdemand.h
  HDRTEST drivers/gpu/drm/i915/display/intel_backlight_regs.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/jpeg_v2_0.o
  HDRTEST drivers/gpu/drm/xe/xe_device_sysfs.h
  HDRTEST drivers/gpu/drm/xe/xe_device_types.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/jpeg_v2_5.o
  HDRTEST drivers/gpu/drm/i915/display/intel_combo_phy_regs.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/jpeg_v3_0.o
  HDRTEST drivers/gpu/drm/i915/display/intel_display_reset.h
  HDRTEST drivers/gpu/drm/i915/display/intel_display_power_map.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramgp100.o
  HDRTEST drivers/gpu/drm/i915/display/intel_ddi_buf_trans.h
  HDRTEST drivers/gpu/drm/xe/xe_display.h
  HDRTEST drivers/gpu/drm/i915/display/icl_dsi.h
  HDRTEST drivers/gpu/drm/i915/display/intel_lspcon.h
  HDRTEST drivers/gpu/drm/i915/display/intel_dpio_phy.h
  HDRTEST drivers/gpu/drm/i915/display/intel_dp_hdcp.h
  HDRTEST drivers/gpu/drm/i915/display/intel_fb_pin.h
  HDRTEST drivers/gpu/drm/i915/display/intel_pps.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/jpeg_v4_0.o
  HDRTEST drivers/gpu/drm/i915/display/intel_sprite_uapi.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/jpeg_v4_0_3.o
  HDRTEST drivers/gpu/drm/i915/gem/i915_gem_ttm.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramga102.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/athub_v1_0.o
  HDRTEST drivers/gpu/drm/i915/gem/i915_gem_region.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fb/sddr2.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fb/sddr3.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/athub_v2_0.o
  HDRTEST drivers/gpu/drm/i915/gem/i915_gem_context_types.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/athub_v2_1.o
  HDRTEST drivers/gpu/drm/i915/gem/i915_gem_lmem.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fb/gddr3.o
  HDRTEST drivers/gpu/drm/i915/gem/i915_gem_mman.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/athub_v3_0.o
  HDRTEST drivers/gpu/drm/i915/gem/i915_gem_object_types.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/smuio_v9_0.o
  HDRTEST drivers/gpu/drm/xe/xe_dma_buf.h
  HDRTEST drivers/gpu/drm/i915/gem/i915_gem_context.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fb/gddr5.o
  HDRTEST drivers/gpu/drm/i915/gem/i915_gem_clflush.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/smuio_v11_0.o
  HDRTEST drivers/gpu/drm/i915/gem/i915_gem_tiling.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/smuio_v11_0_6.o
  HDRTEST drivers/gpu/drm/xe/xe_drv.h
  HDRTEST drivers/gpu/drm/i915/gem/i915_gem_stolen.h
  HDRTEST drivers/gpu/drm/i915/gem/i915_gem_ttm_pm.h
  HDRTEST drivers/gpu/drm/i915/gem/i915_gem_create.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/smuio_v13_0.o
  HDRTEST drivers/gpu/drm/i915/gem/i915_gem_ttm_move.h
  HDRTEST drivers/gpu/drm/i915/gem/i915_gem_ioctls.h
  HDRTEST drivers/gpu/drm/xe/xe_exec.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/smuio_v13_0_3.o
  HDRTEST drivers/gpu/drm/i915/gem/i915_gem_domain.h
  HDRTEST drivers/gpu/drm/xe/xe_exec_queue.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/smuio_v13_0_6.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fuse/base.o
  HDRTEST drivers/gpu/drm/i915/gem/i915_gem_internal.h
  HDRTEST drivers/gpu/drm/i915/gem/i915_gem_dmabuf.h
  HDRTEST drivers/gpu/drm/xe/xe_exec_queue_types.h
  HDRTEST drivers/gpu/drm/xe/xe_execlist.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fuse/nv50.o
  HDRTEST drivers/gpu/drm/i915/gem/selftests/mock_context.h
  HDRTEST drivers/gpu/drm/i915/gem/selftests/huge_gem_object.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fuse/gf100.o
  HDRTEST drivers/gpu/drm/xe/xe_execlist_types.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fuse/gm107.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/gpio/base.o
  HDRTEST drivers/gpu/drm/xe/xe_force_wake.h
  HDRTEST drivers/gpu/drm/i915/gem/selftests/mock_gem_object.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_reset.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/gpio/nv10.o
  HDRTEST drivers/gpu/drm/i915/gem/selftests/mock_dmabuf.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/mca_v3_0.o
  HDRTEST drivers/gpu/drm/xe/xe_force_wake_types.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd.o
  HDRTEST drivers/gpu/drm/i915/gem/selftests/igt_gem_utils.h
  HDRTEST drivers/gpu/drm/xe/xe_ggtt.h
  HDRTEST drivers/gpu/drm/xe/xe_ggtt_types.h
  HDRTEST drivers/gpu/drm/i915/gem/i915_gem_userptr.h
  HDRTEST drivers/gpu/drm/i915/gem/i915_gem_pm.h
  HDRTEST drivers/gpu/drm/xe/xe_gt.h
  HDRTEST drivers/gpu/drm/xe/xe_gt_clock.h
  HDRTEST drivers/gpu/drm/xe/xe_gt_debugfs.h
  HDRTEST drivers/gpu/drm/xe/xe_gt_idle_sysfs.h
  HDRTEST drivers/gpu/drm/xe/xe_gt_idle_sysfs_types.h
  HDRTEST drivers/gpu/drm/xe/xe_gt_mcr.h
  HDRTEST drivers/gpu/drm/xe/xe_gt_pagefault.h
  HDRTEST drivers/gpu/drm/xe/xe_gt_printk.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_module.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_device.o
  HDRTEST drivers/gpu/drm/i915/gem/i915_gem_shrinker.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/gpio/nv50.o
  HDRTEST drivers/gpu/drm/xe/xe_gt_sysfs.h
  HDRTEST drivers/gpu/drm/i915/gem/i915_gemfs.h
  HDRTEST drivers/gpu/drm/i915/gem/i915_gem_object.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/gpio/g94.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_chardev.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/gpio/gf119.o
  HDRTEST drivers/gpu/drm/xe/xe_gt_sysfs_types.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_topology.o
  HDRTEST drivers/gpu/drm/xe/xe_gt_tlb_invalidation.h
  HDRTEST drivers/gpu/drm/i915/gt/intel_timeline_types.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_pasid.o
  HDRTEST drivers/gpu/drm/i915/gt/selftest_engine.h
  HDRTEST drivers/gpu/drm/i915/gt/intel_breadcrumbs.h
  HDRTEST drivers/gpu/drm/i915/gt/intel_engine_heartbeat.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_doorbell.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_flat_memory.o
  HDRTEST drivers/gpu/drm/xe/xe_gt_tlb_invalidation_types.h
  HDRTEST drivers/gpu/drm/xe/xe_gt_topology.h
  HDRTEST drivers/gpu/drm/xe/xe_gt_types.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_process.o
  HDRTEST drivers/gpu/drm/i915/gt/intel_context_types.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_queue.o
  HDRTEST drivers/gpu/drm/xe/xe_guc.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/gpio/gk104.o
  HDRTEST drivers/gpu/drm/i915/gt/intel_execlists_submission.h
  HDRTEST drivers/gpu/drm/i915/gt/intel_gt_pm.h
  HDRTEST drivers/gpu/drm/i915/gt/selftest_rc6.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/gpio/ga102.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_mqd_manager.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/gsp/base.o
  HDRTEST drivers/gpu/drm/i915/gt/intel_llc_types.h
  HDRTEST drivers/gpu/drm/i915/gt/intel_gt.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/gsp/gv100.o
  HDRTEST drivers/gpu/drm/xe/xe_guc_ads.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/gsp/ga102.o
  HDRTEST drivers/gpu/drm/xe/xe_guc_ads_types.h
  HDRTEST drivers/gpu/drm/xe/xe_guc_ct.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/i2c/base.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_mqd_manager_cik.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_mqd_manager_vi.o
  HDRTEST drivers/gpu/drm/xe/xe_guc_ct_types.h
  HDRTEST drivers/gpu/drm/i915/gt/intel_region_lmem.h
  HDRTEST drivers/gpu/drm/xe/xe_guc_debugfs.h
  HDRTEST drivers/gpu/drm/xe/xe_guc_exec_queue_types.h
  HDRTEST drivers/gpu/drm/i915/gt/intel_gt_requests.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/i2c/nv04.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_mqd_manager_v9.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_mqd_manager_v10.o
  HDRTEST drivers/gpu/drm/i915/gt/intel_ggtt_gmch.h
  HDRTEST drivers/gpu/drm/i915/gt/intel_gt_print.h
  HDRTEST drivers/gpu/drm/xe/xe_guc_fwif.h
  HDRTEST drivers/gpu/drm/xe/xe_guc_hwconfig.h
  HDRTEST drivers/gpu/drm/i915/gt/gen8_ppgtt.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/i2c/nv4e.o
  HDRTEST drivers/gpu/drm/xe/xe_guc_log.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/i2c/nv50.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/i2c/g94.o
  HDRTEST drivers/gpu/drm/xe/xe_guc_log_types.h
  HDRTEST drivers/gpu/drm/xe/xe_guc_pc.h
  HDRTEST drivers/gpu/drm/xe/xe_guc_pc_types.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_mqd_manager_v11.o
  HDRTEST drivers/gpu/drm/xe/xe_guc_submit.h
  HDRTEST drivers/gpu/drm/xe/xe_guc_submit_types.h
  HDRTEST drivers/gpu/drm/xe/xe_guc_types.h
  HDRTEST drivers/gpu/drm/xe/xe_huc.h
  HDRTEST drivers/gpu/drm/i915/gt/intel_gt_mcr.h
  HDRTEST drivers/gpu/drm/xe/xe_huc_debugfs.h
  HDRTEST drivers/gpu/drm/i915/gt/intel_timeline.h
  HDRTEST drivers/gpu/drm/xe/xe_huc_types.h
  HDRTEST drivers/gpu/drm/xe/xe_hw_engine.h
  HDRTEST drivers/gpu/drm/xe/xe_hw_engine_class_sysfs.h
  HDRTEST drivers/gpu/drm/xe/xe_hw_engine_types.h
  HDRTEST drivers/gpu/drm/xe/xe_hw_error.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_kernel_queue.o
  HDRTEST drivers/gpu/drm/xe/xe_hw_fence.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_packet_manager.o
  HDRTEST drivers/gpu/drm/i915/gt/gen6_engine_cs.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/i2c/gf117.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/i2c/gf119.o
  HDRTEST drivers/gpu/drm/i915/gt/intel_gt_pm_debugfs.h
  HDRTEST drivers/gpu/drm/i915/gt/intel_workarounds_types.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_packet_manager_vi.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/i2c/gk104.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/i2c/gk110.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/i2c/gm200.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/i2c/pad.o
  HDRTEST drivers/gpu/drm/xe/xe_hw_fence_types.h
  HDRTEST drivers/gpu/drm/xe/xe_irq.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_packet_manager_v9.o
  HDRTEST drivers/gpu/drm/xe/xe_lrc.h
  HDRTEST drivers/gpu/drm/i915/gt/selftest_rps.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_process_queue_manager.o
  HDRTEST drivers/gpu/drm/i915/gt/intel_sa_media.h
  HDRTEST drivers/gpu/drm/i915/gt/intel_gt_debugfs.h
  HDRTEST drivers/gpu/drm/xe/xe_lrc_types.h
  HDRTEST drivers/gpu/drm/xe/xe_macros.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/i2c/padnv04.o
  HDRTEST drivers/gpu/drm/xe/xe_map.h
  HDRTEST drivers/gpu/drm/xe/xe_migrate.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/i2c/padnv4e.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_device_queue_manager.o
  HDRTEST drivers/gpu/drm/i915/gt/intel_gt_clock_utils.h
  HDRTEST drivers/gpu/drm/i915/gt/intel_rps_types.h
  HDRTEST drivers/gpu/drm/i915/gt/selftest_engine_heartbeat.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_device_queue_manager_cik.o
  HDRTEST drivers/gpu/drm/i915/gt/sysfs_engines.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/i2c/padnv50.o
  HDRTEST drivers/gpu/drm/i915/gt/gen7_renderclear.h
  HDRTEST drivers/gpu/drm/i915/gt/intel_context.h
  HDRTEST drivers/gpu/drm/i915/gt/intel_wopcm.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/i2c/padg94.o
  HDRTEST drivers/gpu/drm/i915/gt/intel_mocs.h
  HDRTEST drivers/gpu/drm/xe/xe_migrate_doc.h
  HDRTEST drivers/gpu/drm/i915/gt/intel_engine_pm.h
  HDRTEST drivers/gpu/drm/xe/xe_mmio.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_device_queue_manager_vi.o
  HDRTEST drivers/gpu/drm/xe/xe_mocs.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_device_queue_manager_v9.o
  HDRTEST drivers/gpu/drm/xe/xe_module.h
  HDRTEST drivers/gpu/drm/xe/xe_pat.h
  HDRTEST drivers/gpu/drm/xe/xe_pci.h
  HDRTEST drivers/gpu/drm/i915/gt/intel_gt_sysfs.h
  HDRTEST drivers/gpu/drm/i915/gt/intel_rc6.h
  HDRTEST drivers/gpu/drm/i915/gt/intel_ring_types.h
  HDRTEST drivers/gpu/drm/xe/xe_pci_types.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_device_queue_manager_v10.o
  HDRTEST drivers/gpu/drm/i915/gt/intel_workarounds.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_device_queue_manager_v11.o
  HDRTEST drivers/gpu/drm/i915/gt/intel_engine_regs.h
  HDRTEST drivers/gpu/drm/i915/gt/intel_gt_pm_irq.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/i2c/padgf119.o
  HDRTEST drivers/gpu/drm/i915/gt/shmem_utils.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_interrupt.o
  HDRTEST drivers/gpu/drm/i915/gt/intel_engine.h
  HDRTEST drivers/gpu/drm/i915/gt/intel_reset_types.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/i2c/padgm200.o
  HDRTEST drivers/gpu/drm/xe/xe_pcode.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_events.o
  HDRTEST drivers/gpu/drm/xe/xe_pcode_api.h
  HDRTEST drivers/gpu/drm/i915/gt/intel_gt_regs.h
  HDRTEST drivers/gpu/drm/xe/xe_platform_types.h
  HDRTEST drivers/gpu/drm/i915/gt/intel_reset.h
  HDRTEST drivers/gpu/drm/xe/xe_pm.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/i2c/bus.o
  HDRTEST drivers/gpu/drm/xe/xe_preempt_fence.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/../amdkfd/cik_event_interrupt.o
  HDRTEST drivers/gpu/drm/xe/xe_preempt_fence_types.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/i2c/busnv04.o
  HDRTEST drivers/gpu/drm/i915/gt/uc/intel_gsc_fw.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/i2c/busnv4e.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_int_process_v9.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_int_process_v10.o
  HDRTEST drivers/gpu/drm/i915/gt/uc/guc_capture_fwif.h
  HDRTEST drivers/gpu/drm/i915/gt/uc/intel_uc.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_int_process_v11.o
  HDRTEST drivers/gpu/drm/i915/gt/uc/intel_uc_fw_abi.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/i2c/busnv50.o
  HDRTEST drivers/gpu/drm/i915/gt/uc/intel_guc_print.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/i2c/busgf119.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_smi_events.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/i2c/bit.o
  HDRTEST drivers/gpu/drm/xe/xe_pt.h
  HDRTEST drivers/gpu/drm/i915/gt/uc/intel_guc_fw.h
  HDRTEST drivers/gpu/drm/xe/xe_pt_types.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_crat.o
  HDRTEST drivers/gpu/drm/xe/xe_pt_walk.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_debug.o
  HDRTEST drivers/gpu/drm/xe/xe_query.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/i2c/aux.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_debugfs.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/i2c/auxg94.o
  HDRTEST drivers/gpu/drm/xe/xe_range_fence.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/i2c/auxgf119.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_svm.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_migrate.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_fence.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gpuvm.o
  HDRTEST drivers/gpu/drm/i915/gt/uc/intel_guc_debugfs.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v8.o
  HDRTEST drivers/gpu/drm/i915/gt/uc/abi/guc_klvs_abi.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v9.o
  HDRTEST drivers/gpu/drm/i915/gt/uc/abi/guc_errors_abi.h
  HDRTEST drivers/gpu/drm/xe/xe_reg_sr.h
  HDRTEST drivers/gpu/drm/xe/xe_reg_sr_types.h
  HDRTEST drivers/gpu/drm/i915/gt/uc/abi/guc_actions_slpc_abi.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_arcturus.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/i2c/auxgm200.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_aldebaran.o
  HDRTEST drivers/gpu/drm/i915/gt/uc/abi/guc_communication_mmio_abi.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gc_9_4_3.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v10.o
  HDRTEST drivers/gpu/drm/xe/xe_reg_whitelist.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/i2c/anx9805.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/iccsense/base.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v10_3.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v11.o
  HDRTEST drivers/gpu/drm/xe/xe_res_cursor.h
  HDRTEST drivers/gpu/drm/xe/xe_ring_ops.h
  HDRTEST drivers/gpu/drm/xe/xe_ring_ops_types.h
  HDRTEST drivers/gpu/drm/i915/gt/uc/abi/guc_actions_abi.h
  HDRTEST drivers/gpu/drm/i915/gt/uc/abi/guc_communication_ctb_abi.h
  HDRTEST drivers/gpu/drm/xe/xe_rtp.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v7.o
  HDRTEST drivers/gpu/drm/xe/xe_rtp_types.h
  HDRTEST drivers/gpu/drm/i915/gt/uc/abi/guc_messages_abi.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/iccsense/gf100.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/instmem/base.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_cgs.o
  HDRTEST drivers/gpu/drm/xe/xe_sa.h
  HDRTEST drivers/gpu/drm/i915/gt/uc/intel_gsc_uc_debugfs.h
  HDRTEST drivers/gpu/drm/i915/gt/uc/intel_gsc_uc_heci_cmd_submit.h
  HDRTEST drivers/gpu/drm/xe/xe_sa_types.h
  HDRTEST drivers/gpu/drm/xe/xe_sched_job.h
  HDRTEST drivers/gpu/drm/xe/xe_sched_job_types.h
  HDRTEST drivers/gpu/drm/i915/gt/uc/intel_guc_reg.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_job.o
  HDRTEST drivers/gpu/drm/i915/gt/uc/intel_gsc_uc.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_acp.o
  HDRTEST drivers/gpu/drm/xe/xe_step.h
  HDRTEST drivers/gpu/drm/xe/xe_step_types.h
  HDRTEST drivers/gpu/drm/i915/gt/uc/intel_huc.h
  HDRTEST drivers/gpu/drm/i915/gt/uc/intel_gsc_binary_headers.h
  HDRTEST drivers/gpu/drm/xe/xe_sync.h
  HDRTEST drivers/gpu/drm/i915/gt/uc/intel_guc.h
  HDRTEST drivers/gpu/drm/xe/xe_sync_types.h
  HDRTEST drivers/gpu/drm/xe/xe_tile.h
  HDRTEST drivers/gpu/drm/xe/xe_tile_sysfs.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/../acp/acp_hw.o
  HDRTEST drivers/gpu/drm/i915/gt/uc/intel_huc_print.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_ioc32.o
  HDRTEST drivers/gpu/drm/i915/gt/uc/intel_huc_fw.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/instmem/nv04.o
  HDRTEST drivers/gpu/drm/xe/xe_tile_sysfs_types.h
  HDRTEST drivers/gpu/drm/xe/xe_trace.h
  HDRTEST drivers/gpu/drm/xe/xe_ttm_stolen_mgr.h
  HDRTEST drivers/gpu/drm/xe/xe_ttm_sys_mgr.h
  HDRTEST drivers/gpu/drm/xe/xe_ttm_vram_mgr.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/instmem/nv40.o
  HDRTEST drivers/gpu/drm/i915/gt/uc/intel_guc_fwif.h
  HDRTEST drivers/gpu/drm/i915/gt/uc/intel_guc_capture.h
  HDRTEST drivers/gpu/drm/xe/xe_ttm_vram_mgr_types.h
  HDRTEST drivers/gpu/drm/xe/xe_tuning.h
  HDRTEST drivers/gpu/drm/xe/xe_uc.h
  HDRTEST drivers/gpu/drm/xe/xe_uc_debugfs.h
  HDRTEST drivers/gpu/drm/xe/xe_uc_fw.h
  HDRTEST drivers/gpu/drm/xe/xe_uc_fw_abi.h
  HDRTEST drivers/gpu/drm/i915/gt/uc/intel_guc_log_debugfs.h
  HDRTEST drivers/gpu/drm/xe/xe_uc_fw_types.h
  HDRTEST drivers/gpu/drm/i915/gt/uc/intel_gsc_proxy.h
  HDRTEST drivers/gpu/drm/xe/xe_uc_types.h
  HDRTEST drivers/gpu/drm/i915/gt/uc/intel_guc_submission.h
  HDRTEST drivers/gpu/drm/xe/xe_vm.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_acpi.o
  HDRTEST drivers/gpu/drm/xe/xe_vm_doc.h
  HDRTEST drivers/gpu/drm/xe/xe_vm_madvise.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_hmm.o
  HDRTEST drivers/gpu/drm/xe/xe_vm_types.h
  HDRTEST drivers/gpu/drm/xe/xe_wa.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/instmem/nv50.o
  HDRTEST drivers/gpu/drm/i915/gt/uc/intel_guc_slpc_types.h
  HDRTEST drivers/gpu/drm/xe/xe_wait_user_fence.h
  HDRTEST drivers/gpu/drm/xe/xe_wopcm.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/swsmu/smu11/arcturus_ppt.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/instmem/gk20a.o
  HDRTEST drivers/gpu/drm/xe/xe_wopcm_types.h
  LD [M]  drivers/gpu/drm/xe/xe.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/ltc/base.o
  HDRTEST drivers/gpu/drm/i915/gt/uc/intel_guc_log.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/ltc/gf100.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/swsmu/smu11/navi10_ppt.o
  HDRTEST drivers/gpu/drm/i915/gt/uc/intel_guc_ct.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/ltc/gk104.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/ltc/gm107.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/ltc/gm200.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/swsmu/smu11/sienna_cichlid_ppt.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/swsmu/smu11/vangogh_ppt.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/ltc/gp100.o
  HDRTEST drivers/gpu/drm/i915/gt/uc/intel_guc_slpc.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/swsmu/smu11/cyan_skillfish_ppt.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/ltc/gp102.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/ltc/gp10b.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/ltc/ga102.o
  HDRTEST drivers/gpu/drm/i915/gt/uc/intel_uc_fw.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/mc/base.o
  HDRTEST drivers/gpu/drm/i915/gt/uc/intel_guc_ads.h
  HDRTEST drivers/gpu/drm/i915/gt/uc/intel_uc_debugfs.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/swsmu/smu11/smu_v11_0.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/swsmu/smu12/renoir_ppt.o
  HDRTEST drivers/gpu/drm/i915/gt/uc/intel_guc_rc.h
  HDRTEST drivers/gpu/drm/i915/gt/uc/intel_huc_debugfs.h
  HDRTEST drivers/gpu/drm/i915/gt/intel_hwconfig.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/swsmu/smu12/smu_v12_0.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/mc/nv04.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/swsmu/smu13/smu_v13_0.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/swsmu/smu13/aldebaran_ppt.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/swsmu/smu13/yellow_carp_ppt.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/swsmu/smu13/smu_v13_0_0_ppt.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/swsmu/smu13/smu_v13_0_4_ppt.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/mc/nv11.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/mc/nv17.o
  HDRTEST drivers/gpu/drm/i915/gt/intel_llc.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/mc/nv44.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/swsmu/smu13/smu_v13_0_5_ppt.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/swsmu/smu13/smu_v13_0_7_ppt.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/swsmu/smu13/smu_v13_0_6_ppt.o
  HDRTEST drivers/gpu/drm/i915/gt/gen8_engine_cs.h
  HDRTEST drivers/gpu/drm/i915/gt/intel_sseu_debugfs.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/swsmu/amdgpu_smu.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/mc/nv50.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/swsmu/smu_cmn.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/powerplay/smumgr/smumgr.o
  HDRTEST drivers/gpu/drm/i915/gt/intel_rc6_types.h
  HDRTEST drivers/gpu/drm/i915/gt/intel_context_param.h
  HDRTEST drivers/gpu/drm/i915/gt/intel_gpu_commands.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/mc/g84.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/mc/g98.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/powerplay/smumgr/smu8_smumgr.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/powerplay/smumgr/tonga_smumgr.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/mc/gt215.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/powerplay/smumgr/fiji_smumgr.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/mc/gf100.o
  HDRTEST drivers/gpu/drm/i915/gt/intel_engine_user.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/mc/gk104.o
  HDRTEST drivers/gpu/drm/i915/gt/intel_gt_irq.h
  HDRTEST drivers/gpu/drm/i915/gt/intel_gsc.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/mc/gk20a.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/mc/gp100.o
  HDRTEST drivers/gpu/drm/i915/gt/intel_rps.h
  HDRTEST drivers/gpu/drm/i915/gt/selftest_llc.h
  HDRTEST drivers/gpu/drm/i915/gt/gen6_ppgtt.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/mc/gp10b.o
  HDRTEST drivers/gpu/drm/i915/gt/intel_ggtt_fencing.h
  HDRTEST drivers/gpu/drm/i915/gt/intel_migrate_types.h
  HDRTEST drivers/gpu/drm/i915/gt/selftests/mock_timeline.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/powerplay/smumgr/polaris10_smumgr.o
  HDRTEST drivers/gpu/drm/i915/gt/intel_lrc.h
  HDRTEST drivers/gpu/drm/i915/gt/intel_lrc_reg.h
  HDRTEST drivers/gpu/drm/i915/gt/intel_migrate.h
  HDRTEST drivers/gpu/drm/i915/gt/intel_gt_sysfs_pm.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/mc/ga100.o
  HDRTEST drivers/gpu/drm/i915/gt/intel_breadcrumbs_types.h
  HDRTEST drivers/gpu/drm/i915/gt/intel_gt_buffer_pool.h
  HDRTEST drivers/gpu/drm/i915/gt/mock_engine.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/powerplay/smumgr/iceland_smumgr.o
  HDRTEST drivers/gpu/drm/i915/gt/intel_engine_stats.h
  HDRTEST drivers/gpu/drm/i915/gt/intel_gtt.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/mmu/base.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/powerplay/smumgr/smu7_smumgr.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/mmu/nv04.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/powerplay/smumgr/vega10_smumgr.o
  HDRTEST drivers/gpu/drm/i915/gt/intel_gt_buffer_pool_types.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/mmu/nv41.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/mmu/nv44.o
  HDRTEST drivers/gpu/drm/i915/gt/intel_ring.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/mmu/nv50.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/powerplay/smumgr/smu10_smumgr.o
  HDRTEST drivers/gpu/drm/i915/gt/intel_gt_types.h
  HDRTEST drivers/gpu/drm/i915/gt/intel_renderstate.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/powerplay/smumgr/ci_smumgr.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/powerplay/smumgr/vega12_smumgr.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/powerplay/smumgr/vegam_smumgr.o
  HDRTEST drivers/gpu/drm/i915/gt/intel_sseu.h
  HDRTEST drivers/gpu/drm/i915/gt/intel_engine_types.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/powerplay/smumgr/smu9_smumgr.o
  HDRTEST drivers/gpu/drm/i915/gt/intel_gt_engines_debugfs.h
  HDRTEST drivers/gpu/drm/i915/gt/gen2_engine_cs.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/mmu/g84.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/powerplay/smumgr/vega20_smumgr.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/hwmgr.o
  HDRTEST drivers/gpu/drm/i915/gvt/gvt.h
  HDRTEST drivers/gpu/drm/i915/gvt/trace.h
  HDRTEST drivers/gpu/drm/i915/gvt/debug.h
  HDRTEST drivers/gpu/drm/i915/gvt/edid.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/mmu/mcp77.o
  HDRTEST drivers/gpu/drm/i915/gvt/page_track.h
  HDRTEST drivers/gpu/drm/i915/gvt/mmio.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/processpptables.o
  HDRTEST drivers/gpu/drm/i915/gvt/sched_policy.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/mmu/gf100.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/hardwaremanager.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/mmu/gk104.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/smu8_hwmgr.o
  HDRTEST drivers/gpu/drm/i915/gvt/fb_decoder.h
  HDRTEST drivers/gpu/drm/i915/gvt/cmd_parser.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/pppcielanes.o
  HDRTEST drivers/gpu/drm/i915/gvt/dmabuf.h
  HDRTEST drivers/gpu/drm/i915/gvt/mmio_context.h
  HDRTEST drivers/gpu/drm/i915/gvt/display.h
  HDRTEST drivers/gpu/drm/i915/gvt/gtt.h
  HDRTEST drivers/gpu/drm/i915/gvt/scheduler.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/mmu/gk20a.o
  HDRTEST drivers/gpu/drm/i915/gvt/reg.h
  HDRTEST drivers/gpu/drm/i915/gvt/execlist.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/process_pptables_v1_0.o
  HDRTEST drivers/gpu/drm/i915/gvt/interrupt.h
  HDRTEST drivers/gpu/drm/i915/i915_active.h
  HDRTEST drivers/gpu/drm/i915/i915_active_types.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/ppatomctrl.o
  HDRTEST drivers/gpu/drm/i915/i915_cmd_parser.h
  HDRTEST drivers/gpu/drm/i915/i915_config.h
  HDRTEST drivers/gpu/drm/i915/i915_debugfs.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/ppatomfwctrl.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/mmu/gm200.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/mmu/gm20b.o
  HDRTEST drivers/gpu/drm/i915/i915_debugfs_params.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/mmu/gp100.o
  HDRTEST drivers/gpu/drm/i915/i915_deps.h
  HDRTEST drivers/gpu/drm/i915/i915_driver.h
  HDRTEST drivers/gpu/drm/i915/i915_drm_client.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/mmu/gp10b.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/mmu/gv100.o
  HDRTEST drivers/gpu/drm/i915/i915_drv.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/smu7_hwmgr.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/smu7_powertune.o
  HDRTEST drivers/gpu/drm/i915/i915_file_private.h
  HDRTEST drivers/gpu/drm/i915/i915_fixed.h
  HDRTEST drivers/gpu/drm/i915/i915_gem.h
  HDRTEST drivers/gpu/drm/i915/i915_gem_evict.h
  HDRTEST drivers/gpu/drm/i915/i915_gem_gtt.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/mmu/tu102.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/smu7_thermal.o
  HDRTEST drivers/gpu/drm/i915/i915_gem_ww.h
  HDRTEST drivers/gpu/drm/i915/i915_getparam.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/smu7_clockpowergating.o
  HDRTEST drivers/gpu/drm/i915/i915_gpu_error.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/vega10_processpptables.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/vega10_hwmgr.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/mmu/mem.o
  HDRTEST drivers/gpu/drm/i915/i915_hwmon.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/mmu/memnv04.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/mmu/memnv50.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/mmu/memgf100.o
  HDRTEST drivers/gpu/drm/i915/i915_ioc32.h
  HDRTEST drivers/gpu/drm/i915/i915_ioctl.h
  HDRTEST drivers/gpu/drm/i915/i915_iosf_mbi.h
  HDRTEST drivers/gpu/drm/i915/i915_irq.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/vega10_powertune.o
  HDRTEST drivers/gpu/drm/i915/i915_memcpy.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmm.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/vega10_thermal.o
  HDRTEST drivers/gpu/drm/i915/i915_mitigations.h
  HDRTEST drivers/gpu/drm/i915/i915_mm.h
  HDRTEST drivers/gpu/drm/i915/i915_params.h
  HDRTEST drivers/gpu/drm/i915/i915_pci.h
  HDRTEST drivers/gpu/drm/i915/i915_perf.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/smu10_hwmgr.o
  HDRTEST drivers/gpu/drm/i915/i915_perf_oa_regs.h
  HDRTEST drivers/gpu/drm/i915/i915_perf_types.h
  HDRTEST drivers/gpu/drm/i915/i915_pmu.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/pp_psm.o
  HDRTEST drivers/gpu/drm/i915/i915_priolist_types.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/vega12_processpptables.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/vega12_hwmgr.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmmnv04.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmmnv41.o
  HDRTEST drivers/gpu/drm/i915/i915_pvinfo.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmmnv44.o
  HDRTEST drivers/gpu/drm/i915/i915_query.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmmnv50.o
  HDRTEST drivers/gpu/drm/i915/i915_reg.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmmmcp77.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/vega12_thermal.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmmgf100.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmmgk104.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmmgk20a.o
  HDRTEST drivers/gpu/drm/i915/i915_reg_defs.h
  HDRTEST drivers/gpu/drm/i915/i915_request.h
  HDRTEST drivers/gpu/drm/i915/i915_scatterlist.h
  HDRTEST drivers/gpu/drm/i915/i915_scheduler.h
  HDRTEST drivers/gpu/drm/i915/i915_scheduler_types.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmmgm200.o
  HDRTEST drivers/gpu/drm/i915/i915_selftest.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/pp_overdriver.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/smu_helper.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/vega20_processpptables.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmmgm20b.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/vega20_hwmgr.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/vega20_powertune.o
  HDRTEST drivers/gpu/drm/i915/i915_suspend.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmmgp100.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmmgp10b.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmmgv100.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/vega20_thermal.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmmtu102.o
  HDRTEST drivers/gpu/drm/i915/i915_sw_fence.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/common_baco.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/vega10_baco.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/vega20_baco.o
  HDRTEST drivers/gpu/drm/i915/i915_sw_fence_work.h
  HDRTEST drivers/gpu/drm/i915/i915_switcheroo.h
  HDRTEST drivers/gpu/drm/i915/i915_syncmap.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/mmu/umem.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/vega12_baco.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/smu9_baco.o
  HDRTEST drivers/gpu/drm/i915/i915_sysfs.h
  HDRTEST drivers/gpu/drm/i915/i915_tasklet.h
  HDRTEST drivers/gpu/drm/i915/i915_trace.h
  HDRTEST drivers/gpu/drm/i915/i915_ttm_buddy_manager.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/mmu/ummu.o
  HDRTEST drivers/gpu/drm/i915/i915_user_extensions.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/tonga_baco.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/polaris_baco.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/fiji_baco.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/mmu/uvmm.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/ci_baco.o
  HDRTEST drivers/gpu/drm/i915/i915_utils.h
  HDRTEST drivers/gpu/drm/i915/i915_vgpu.h
  HDRTEST drivers/gpu/drm/i915/i915_vma.h
  HDRTEST drivers/gpu/drm/i915/i915_vma_resource.h
  HDRTEST drivers/gpu/drm/i915/i915_vma_types.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/smu7_baco.o
  HDRTEST drivers/gpu/drm/i915/intel_clock_gating.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/mxm/base.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/mxm/mxms.o
  HDRTEST drivers/gpu/drm/i915/intel_device_info.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/powerplay/amd_powerplay.o
  HDRTEST drivers/gpu/drm/i915/intel_gvt.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/mxm/nv50.o
  HDRTEST drivers/gpu/drm/i915/intel_mchbar_regs.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/pci/agp.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/legacy-dpm/legacy_dpm.o
  HDRTEST drivers/gpu/drm/i915/intel_memory_region.h
  HDRTEST drivers/gpu/drm/i915/intel_pci_config.h
  HDRTEST drivers/gpu/drm/i915/intel_pcode.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/pci/base.o
  HDRTEST drivers/gpu/drm/i915/intel_region_ttm.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/pci/pcie.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/pci/nv04.o
  HDRTEST drivers/gpu/drm/i915/intel_runtime_pm.h
  HDRTEST drivers/gpu/drm/i915/intel_sbi.h
  HDRTEST drivers/gpu/drm/i915/intel_step.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/pci/nv40.o
  HDRTEST drivers/gpu/drm/i915/intel_uncore.h
  HDRTEST drivers/gpu/drm/i915/intel_wakeref.h
  HDRTEST drivers/gpu/drm/i915/pxp/intel_pxp_tee.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/legacy-dpm/kv_dpm.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/legacy-dpm/kv_smc.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/legacy-dpm/si_dpm.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/legacy-dpm/si_smc.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/amdgpu_dpm.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/pci/nv46.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/amdgpu_pm.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/pci/nv4c.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/pci/g84.o
  HDRTEST drivers/gpu/drm/i915/pxp/intel_pxp_irq.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/amdgpu_dpm_internal.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/pci/g92.o
  HDRTEST drivers/gpu/drm/i915/pxp/intel_pxp_session.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/amdgpu_dm/amdgpu_dm.o
  HDRTEST drivers/gpu/drm/i915/pxp/intel_pxp_cmd_interface_43.h
  HDRTEST drivers/gpu/drm/i915/pxp/intel_pxp_gsccs.h
  HDRTEST drivers/gpu/drm/i915/pxp/intel_pxp_cmd.h
  HDRTEST drivers/gpu/drm/i915/pxp/intel_pxp.h
  HDRTEST drivers/gpu/drm/i915/pxp/intel_pxp_types.h
  HDRTEST drivers/gpu/drm/i915/pxp/intel_pxp_debugfs.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/amdgpu_dm/amdgpu_dm_plane.o
  HDRTEST drivers/gpu/drm/i915/pxp/intel_pxp_cmd_interface_cmn.h
  HDRTEST drivers/gpu/drm/i915/pxp/intel_pxp_huc.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/pci/g94.o
  HDRTEST drivers/gpu/drm/i915/pxp/intel_pxp_pm.h
  HDRTEST drivers/gpu/drm/i915/pxp/intel_pxp_cmd_interface_42.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/pci/gf100.o
  HDRTEST drivers/gpu/drm/i915/pxp/intel_pxp_regs.h
  HDRTEST drivers/gpu/drm/i915/selftests/igt_live_test.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/amdgpu_dm/amdgpu_dm_crtc.o
  HDRTEST drivers/gpu/drm/i915/selftests/igt_atomic.h
  HDRTEST drivers/gpu/drm/i915/selftests/mock_gem_device.h
  HDRTEST drivers/gpu/drm/i915/selftests/mock_drm.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/pci/gf106.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/amdgpu_dm/amdgpu_dm_irq.o
  HDRTEST drivers/gpu/drm/i915/selftests/igt_reset.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/amdgpu_dm/amdgpu_dm_mst_types.o
  HDRTEST drivers/gpu/drm/i915/selftests/intel_scheduler_helpers.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/pci/gk104.o
  HDRTEST drivers/gpu/drm/i915/selftests/lib_sw_fence.h
  HDRTEST drivers/gpu/drm/i915/selftests/i915_perf_selftests.h
  HDRTEST drivers/gpu/drm/i915/selftests/mock_uncore.h
  HDRTEST drivers/gpu/drm/i915/selftests/mock_gtt.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/amdgpu_dm/amdgpu_dm_color.o
  HDRTEST drivers/gpu/drm/i915/selftests/i915_mock_selftests.h
  HDRTEST drivers/gpu/drm/i915/selftests/mock_request.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/amdgpu_dm/dc_fpu.o
  HDRTEST drivers/gpu/drm/i915/selftests/i915_random.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/pci/gp100.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/pmu/base.o
  HDRTEST drivers/gpu/drm/i915/selftests/igt_spinner.h
  HDRTEST drivers/gpu/drm/i915/selftests/librapl.h
  HDRTEST drivers/gpu/drm/i915/selftests/mock_region.h
  HDRTEST drivers/gpu/drm/i915/selftests/i915_live_selftests.h
  HDRTEST drivers/gpu/drm/i915/selftests/igt_mmap.h
  HDRTEST drivers/gpu/drm/i915/selftests/igt_flush_test.h
  HDRTEST drivers/gpu/drm/i915/soc/intel_pch.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/pmu/memx.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/amdgpu_dm/amdgpu_dm_services.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/amdgpu_dm/amdgpu_dm_helpers.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/pmu/gt215.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/pmu/gf100.o
  HDRTEST drivers/gpu/drm/i915/soc/intel_dram.h
  HDRTEST drivers/gpu/drm/i915/soc/intel_gmch.h
  HDRTEST drivers/gpu/drm/i915/vlv_sideband.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/pmu/gf119.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/pmu/gk104.o
  HDRTEST drivers/gpu/drm/i915/vlv_sideband_reg.h
  HDRTEST drivers/gpu/drm/i915/vlv_suspend.h
  LD [M]  drivers/gpu/drm/i915/i915.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/pmu/gk110.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/pmu/gk208.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/amdgpu_dm/amdgpu_dm_pp_smu.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/amdgpu_dm/amdgpu_dm_psr.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/pmu/gk20a.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/pmu/gm107.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/pmu/gm200.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/pmu/gm20b.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/pmu/gp102.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/amdgpu_dm/amdgpu_dm_hdcp.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/pmu/gp10b.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/amdgpu_dm/amdgpu_dm_crc.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/amdgpu_dm/amdgpu_dm_debugfs.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/basics/conversion.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/privring/gf100.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/basics/fixpt31_32.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/privring/gf117.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/privring/gk104.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/privring/gk20a.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/basics/vector.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/privring/gm200.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/privring/gp10b.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/therm/base.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/therm/fan.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/therm/fannil.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/therm/fanpwm.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/basics/dc_common.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/therm/fantog.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/therm/ic.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/therm/temp.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/therm/nv40.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/bios/bios_parser.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/therm/nv50.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/therm/g84.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/bios/bios_parser_interface.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/bios/bios_parser_helper.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/therm/gt215.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/therm/gf100.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table_helper.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/bios/bios_parser_common.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/therm/gf119.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/therm/gk104.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table_helper2.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/bios/bios_parser2.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/bios/dce60/command_table_helper_dce60.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/bios/dce80/command_table_helper_dce80.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/therm/gm107.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/therm/gm200.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/bios/dce110/command_table_helper_dce110.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/therm/gp100.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/bios/dce112/command_table_helper_dce112.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/bios/dce112/command_table_helper2_dce112.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/dml/calcs/dce_calcs.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/timer/base.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/dml/calcs/custom_float.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/timer/nv04.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/dml/calcs/bw_fixed.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/timer/nv40.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/dml/display_mode_lib.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/timer/nv41.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/timer/gk20a.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/top/base.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/top/gk104.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/dml/display_rq_dlg_helpers.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/top/ga100.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/dml/dml1_display_rq_dlg_calc.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/vfn/base.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/dml/dcn10/dcn10_fpu.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/dml/dcn20/dcn20_fpu.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/dml/display_mode_vba.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/dml/dcn20/display_rq_dlg_calc_20.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/vfn/uvfn.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/dml/dcn20/display_mode_vba_20.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/dml/dcn20/display_rq_dlg_calc_20v2.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/vfn/gv100.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/vfn/tu102.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/dml/dcn20/display_mode_vba_20v2.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/dml/dcn21/display_rq_dlg_calc_21.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/vfn/ga100.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/dml/dcn21/display_mode_vba_21.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/dml/dcn30/dcn30_fpu.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/volt/base.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/volt/gpio.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/dml/dcn30/display_mode_vba_30.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/volt/nv40.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/dml/dcn30/display_rq_dlg_calc_30.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/volt/gf100.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/volt/gf117.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/dml/dcn31/display_mode_vba_31.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/dml/dcn31/display_rq_dlg_calc_31.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/dml/dcn314/display_mode_vba_314.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/dml/dcn314/display_rq_dlg_calc_314.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/dml/dcn32/display_mode_vba_32.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/dml/dcn32/display_rq_dlg_calc_32.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/volt/gk104.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/volt/gk20a.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/dml/dcn32/display_mode_vba_util_32.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/volt/gm20b.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/falcon.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/dml/dcn31/dcn31_fpu.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/dml/dcn32/dcn32_fpu.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/xtensa.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/bsp/g84.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/dml/dcn321/dcn321_fpu.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/ce/gt215.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/dml/dcn301/dcn301_fpu.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/ce/gf100.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/dml/dcn302/dcn302_fpu.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/dml/dcn303/dcn303_fpu.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/ce/gk104.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/ce/gm107.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/dml/dcn314/dcn314_fpu.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/dml/dsc/rc_calc_fpu.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/dml/calcs/dcn_calcs.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/ce/gm200.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/dml/calcs/dcn_calc_math.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/ce/gp100.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/ce/gp102.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/ce/gv100.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/dml/calcs/dcn_calc_auto.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/clk_mgr/clk_mgr.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/clk_mgr/dce60/dce60_clk_mgr.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/ce/tu102.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/ce/ga100.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/clk_mgr/dce100/dce_clk_mgr.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/ce/ga102.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/clk_mgr/dce110/dce110_clk_mgr.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/cipher/g84.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/clk_mgr/dce112/dce112_clk_mgr.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/device/acpi.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/device/base.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/clk_mgr/dce120/dce120_clk_mgr.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/device/ctrl.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/device/pci.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/device/tegra.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/device/user.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/disp/base.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/clk_mgr/dcn10/rv1_clk_mgr.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/clk_mgr/dcn10/rv1_clk_mgr_vbios_smu.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/clk_mgr/dcn10/rv2_clk_mgr.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/clk_mgr/dcn20/dcn20_clk_mgr.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/disp/chan.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/clk_mgr/dcn201/dcn201_clk_mgr.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/disp/conn.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/clk_mgr/dcn21/rn_clk_mgr.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/disp/dp.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/clk_mgr/dcn21/rn_clk_mgr_vbios_smu.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/disp/hdmi.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/disp/head.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/disp/ior.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/clk_mgr/dcn30/dcn30_clk_mgr.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/clk_mgr/dcn30/dcn30_clk_mgr_smu_msg.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/clk_mgr/dcn301/vg_clk_mgr.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/clk_mgr/dcn301/dcn301_smu.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/disp/outp.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/clk_mgr/dcn31/dcn31_smu.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/disp/vga.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/disp/nv04.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/clk_mgr/dcn31/dcn31_clk_mgr.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/disp/nv50.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/disp/g84.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/clk_mgr/dcn314/dcn314_smu.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/disp/g94.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/clk_mgr/dcn314/dcn314_clk_mgr.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/disp/gt200.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/clk_mgr/dcn315/dcn315_smu.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/clk_mgr/dcn315/dcn315_clk_mgr.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/clk_mgr/dcn316/dcn316_smu.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/disp/mcp77.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/disp/gt215.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/clk_mgr/dcn316/dcn316_clk_mgr.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/clk_mgr/dcn32/dcn32_clk_mgr.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/disp/mcp89.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/disp/gf119.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/clk_mgr/dcn32/dcn32_clk_mgr_smu_msg.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/dce/dce_audio.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/disp/gk104.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/disp/gk110.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/disp/gm107.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/dce/dce_stream_encoder.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/dce/dce_link_encoder.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/dce/dce_hwseq.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/dce/dce_mem_input.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/dce/dce_clock_source.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/dce/dce_scl_filters.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/disp/gm200.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/dce/dce_transform.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/disp/gp100.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/dce/dce_opp.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/dce/dce_dmcu.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/disp/gp102.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/disp/gv100.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/disp/tu102.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/disp/ga102.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/dce/dce_abm.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/dce/dce_ipp.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/disp/udisp.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/dce/dce_aux.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/dce/dce_i2c.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/disp/uconn.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/disp/uoutp.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/dce/dce_i2c_hw.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/dce/dce_i2c_sw.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/disp/uhead.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/dce/dmub_psr.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/dma/base.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/dma/nv04.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/dce/dmub_abm.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/dce/dmub_abm_lcd.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/dce/dce_panel_cntl.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/dce/dmub_hw_lock_mgr.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/dce/dmub_outbox.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/gpio/gpio_base.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/gpio/gpio_service.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/dma/nv50.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/dma/gf100.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/dma/gf119.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/dma/gv100.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/dma/user.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/dma/usernv04.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/dma/usernv50.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/dma/usergf100.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/gpio/hw_factory.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/gpio/hw_gpio.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/dma/usergf119.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/gpio/hw_hpd.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/gpio/hw_ddc.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/gpio/hw_generic.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/dma/usergv100.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/gpio/hw_translate.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/gpio/dce60/hw_translate_dce60.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/fifo/base.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/gpio/dce60/hw_factory_dce60.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/fifo/cgrp.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/fifo/chan.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/gpio/dce80/hw_translate_dce80.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/gpio/dce80/hw_factory_dce80.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/gpio/dce110/hw_translate_dce110.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/gpio/dce110/hw_factory_dce110.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/gpio/dce120/hw_translate_dce120.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/gpio/dce120/hw_factory_dce120.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/gpio/dcn10/hw_translate_dcn10.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/fifo/chid.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/gpio/dcn10/hw_factory_dcn10.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/fifo/runl.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/fifo/runq.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/gpio/dcn20/hw_translate_dcn20.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/gpio/dcn20/hw_factory_dcn20.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/gpio/dcn21/hw_translate_dcn21.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/fifo/nv04.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/gpio/dcn21/hw_factory_dcn21.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/fifo/nv10.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/fifo/nv17.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/fifo/nv40.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/gpio/dcn30/hw_translate_dcn30.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/gpio/dcn30/hw_factory_dcn30.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/fifo/nv50.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/fifo/g84.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/fifo/g98.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/gpio/dcn315/hw_translate_dcn315.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/fifo/gf100.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/gpio/dcn315/hw_factory_dcn315.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/gpio/dcn32/hw_translate_dcn32.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/fifo/gk104.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/gpio/dcn32/hw_factory_dcn32.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/irq/irq_service.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/fifo/gk110.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/fifo/gk208.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/irq/dce60/irq_service_dce60.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/irq/dce80/irq_service_dce80.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/fifo/gk20a.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/irq/dce110/irq_service_dce110.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/irq/dce120/irq_service_dce120.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/fifo/gm107.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/fifo/gm200.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/irq/dcn10/irq_service_dcn10.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/fifo/gp100.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/fifo/gv100.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/fifo/tu102.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/irq/dcn20/irq_service_dcn20.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/fifo/ga100.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/fifo/ga102.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/fifo/ucgrp.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/fifo/uchan.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/irq/dcn21/irq_service_dcn21.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/irq/dcn201/irq_service_dcn201.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/irq/dcn30/irq_service_dcn30.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/gr/base.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/irq/dcn302/irq_service_dcn302.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/irq/dcn303/irq_service_dcn303.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/irq/dcn31/irq_service_dcn31.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/gr/nv04.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/gr/nv10.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/gr/nv15.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/gr/nv17.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/gr/nv20.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/irq/dcn314/irq_service_dcn314.o
  CC [M]  drivers/gp



^ permalink raw reply	[flat|nested] 21+ messages in thread

* [Intel-xe] ✗ CI.Hooks: failure for Supporting RAS on XE (rev4)
  2023-08-23  8:58 [Intel-xe] [PATCH v5 0/4] Supporting RAS on XE Himal Prasad Ghimiray
                   ` (7 preceding siblings ...)
  2023-08-23  9:05 ` [Intel-xe] ✓ CI.Build: " Patchwork
@ 2023-08-23  9:05 ` Patchwork
  8 siblings, 0 replies; 21+ messages in thread
From: Patchwork @ 2023-08-23  9:05 UTC (permalink / raw)
  To: Himal Prasad Ghimiray; +Cc: intel-xe

== Series Details ==

Series: Supporting RAS on XE (rev4)
URL   : https://patchwork.freedesktop.org/series/122257/
State : failure

== Summary ==

run-parts: executing /workspace/ci/hooks/00-showenv
/workspace
+ pwd
+ ls -la
total 516
drwxrwxr-x 10 1003 1003   4096 Aug 23 09:05 .
drwxr-xr-x  1 root root   4096 Aug 23 09:05 ..
-rw-rw-r--  1 1003 1003 389827 Aug 23 09:05 build.log
-rw-rw-r--  1 1003 1003   1388 Aug 23 09:00 checkpatch.log
drwxrwxr-x  5 1003 1003   4096 Aug 23 08:58 ci
drwxrwxr-x  9 1003 1003   4096 Aug 23 08:58 docker
drwxrwxr-x  8 1003 1003   4096 Aug 23 08:58 .git
-rw-rw-r--  1 1003 1003    376 Aug 23 09:00 git_apply.log
drwxrwxr-x  4 1003 1003   4096 Aug 23 08:58 .github
-rw-rw-r--  1 1003 1003    233 Aug 23 08:58 .groovylintrc.json
-rw-rw-r--  1 1003 1003     78 Aug 23 09:05 hooks.log
drwxrwxr-x 31 1003 1003   4096 Aug 23 09:04 kernel
-rw-rw-r--  1 1003 1003  40553 Aug 23 09:00 kernel.mbox
-rw-rw-r--  1 1003 1003  26091 Aug 23 09:01 kunit.log
-rw-rw-r--  1 1003 1003     48 Aug 23 09:00 parent.tag
drwxrwxr-x 45 1003 1003   4096 Aug 23 08:58 pipelines
-rw-rw-r--  1 1003 1003    793 Aug 23 08:58 README.adoc
drwxrwxr-x  3 1003 1003   4096 Aug 23 08:58 scripts
drwxrwxr-x  2 1003 1003   4096 Aug 23 08:58 .vscode
+ uname -a
Linux 49dd93adc551 5.4.0-149-generic #166-Ubuntu SMP Tue Apr 18 16:51:45 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux
+ export
+ grep -Ei '(^|\W)CI_'
declare -x CI_KERNEL_BUILD_DIR="/workspace/kernel/build64"
declare -x CI_KERNEL_IMAGES_DIR="/workspace/kernel/archive/boot"
declare -x CI_KERNEL_MODULES_DIR="/workspace/kernel/archive"
declare -x CI_KERNEL_SRC_DIR="/workspace/kernel"
declare -x CI_SRC_DIR="/workspace/kernel"
declare -x CI_TOOLS_SRC_DIR="/workspace/ci"
declare -x CI_WORKSPACE_DIR="/workspace"
+ '[' -n /workspace ']'
+ git_args='-C /workspace/kernel'
+ git_log_args=
+ git --no-pager -C /workspace/kernel log --format=oneline --abbrev-commit
40f6806a6 drm/xe: Process fatal hardware errors.
2ff6e8da6 drm/xe: Support GT hardware error reporting for PVC.
67fdb785d drm/xe: Log and count the GT hardware errors.
4a8624496 drm/xe: Handle errors from various components.
3a964d065 drm/xe/lnl: Hook up MOCS table
run-parts: executing /workspace/ci/hooks/10-build-W1
+ SRC_DIR=/workspace/kernel
+ RESTORE_DISPLAY_CONFIG=0
+ '[' -n /workspace/kernel/build64 ']'
+ BUILD_DIR=/workspace/kernel/build64
+ cd /workspace/kernel
+ grep -q -e '^CONFIG_DRM_XE_DISPLAY=[yY]' /workspace/kernel/build64/.config
+ RESTORE_DISPLAY_CONFIG=1
+ trap cleanup EXIT
+ ./scripts/config --file /workspace/kernel/build64/.config --disable CONFIG_DRM_XE_DISPLAY
++ nproc
+ make -j48 O=/workspace/kernel/build64 modules_prepare
make[1]: Entering directory '/workspace/kernel/build64'
  SYNC    include/config/auto.conf.cmd
  GEN     Makefile
  GEN     Makefile
  UPD     include/generated/compile.h
  UPD     include/config/kernel.release
  UPD     include/generated/utsrelease.h
  DESCEND objtool
  CALL    ../scripts/checksyscalls.sh
  HOSTCC  /workspace/kernel/build64/tools/objtool/fixdep.o
  HOSTLD  /workspace/kernel/build64/tools/objtool/fixdep-in.o
  LINK    /workspace/kernel/build64/tools/objtool/fixdep
  INSTALL libsubcmd_headers
  CC      /workspace/kernel/build64/tools/objtool/libsubcmd/exec-cmd.o
  CC      /workspace/kernel/build64/tools/objtool/libsubcmd/help.o
  CC      /workspace/kernel/build64/tools/objtool/libsubcmd/pager.o
  CC      /workspace/kernel/build64/tools/objtool/libsubcmd/parse-options.o
  CC      /workspace/kernel/build64/tools/objtool/libsubcmd/run-command.o
  CC      /workspace/kernel/build64/tools/objtool/libsubcmd/subcmd-config.o
  CC      /workspace/kernel/build64/tools/objtool/libsubcmd/sigchain.o
  LD      /workspace/kernel/build64/tools/objtool/libsubcmd/libsubcmd-in.o
  AR      /workspace/kernel/build64/tools/objtool/libsubcmd/libsubcmd.a
  CC      /workspace/kernel/build64/tools/objtool/weak.o
  CC      /workspace/kernel/build64/tools/objtool/check.o
  CC      /workspace/kernel/build64/tools/objtool/special.o
  CC      /workspace/kernel/build64/tools/objtool/builtin-check.o
  CC      /workspace/kernel/build64/tools/objtool/elf.o
  CC      /workspace/kernel/build64/tools/objtool/objtool.o
  CC      /workspace/kernel/build64/tools/objtool/orc_gen.o
  CC      /workspace/kernel/build64/tools/objtool/orc_dump.o
  CC      /workspace/kernel/build64/tools/objtool/libstring.o
  CC      /workspace/kernel/build64/tools/objtool/libctype.o
  CC      /workspace/kernel/build64/tools/objtool/str_error_r.o
  CC      /workspace/kernel/build64/tools/objtool/librbtree.o
  CC      /workspace/kernel/build64/tools/objtool/arch/x86/special.o
  CC      /workspace/kernel/build64/tools/objtool/arch/x86/decode.o
  LD      /workspace/kernel/build64/tools/objtool/arch/x86/objtool-in.o
  LD      /workspace/kernel/build64/tools/objtool/objtool-in.o
  LINK    /workspace/kernel/build64/tools/objtool/objtool
make[1]: Leaving directory '/workspace/kernel/build64'
++ nproc
+ make -j48 O=/workspace/kernel/build64 M=drivers/gpu/drm/xe W=1
make[1]: Entering directory '/workspace/kernel/build64'
  CC [M]  drivers/gpu/drm/xe/xe_bb.o
  CC [M]  drivers/gpu/drm/xe/xe_bo.o
  CC [M]  drivers/gpu/drm/xe/xe_bo_evict.o
  CC [M]  drivers/gpu/drm/xe/xe_debugfs.o
  CC [M]  drivers/gpu/drm/xe/xe_devcoredump.o
  CC [M]  drivers/gpu/drm/xe/xe_device.o
  CC [M]  drivers/gpu/drm/xe/xe_device_sysfs.o
  CC [M]  drivers/gpu/drm/xe/xe_dma_buf.o
  CC [M]  drivers/gpu/drm/xe/xe_exec.o
  CC [M]  drivers/gpu/drm/xe/xe_execlist.o
  CC [M]  drivers/gpu/drm/xe/xe_exec_queue.o
  CC [M]  drivers/gpu/drm/xe/xe_force_wake.o
  CC [M]  drivers/gpu/drm/xe/xe_ggtt.o
  CC [M]  drivers/gpu/drm/xe/xe_gt.o
  CC [M]  drivers/gpu/drm/xe/xe_gt_clock.o
  CC [M]  drivers/gpu/drm/xe/xe_gt_debugfs.o
  CC [M]  drivers/gpu/drm/xe/xe_gt_idle_sysfs.o
  CC [M]  drivers/gpu/drm/xe/xe_gt_mcr.o
  CC [M]  drivers/gpu/drm/xe/xe_gt_pagefault.o
  CC [M]  drivers/gpu/drm/xe/xe_gt_sysfs.o
  CC [M]  drivers/gpu/drm/xe/xe_gt_tlb_invalidation.o
  CC [M]  drivers/gpu/drm/xe/xe_gt_topology.o
  HOSTCC  drivers/gpu/drm/xe/xe_gen_wa_oob
  CC [M]  drivers/gpu/drm/xe/xe_guc_ads.o
  CC [M]  drivers/gpu/drm/xe/xe_guc_ct.o
  CC [M]  drivers/gpu/drm/xe/xe_guc_debugfs.o
  CC [M]  drivers/gpu/drm/xe/xe_guc_hwconfig.o
  CC [M]  drivers/gpu/drm/xe/xe_guc_log.o
  CC [M]  drivers/gpu/drm/xe/xe_guc_pc.o
  CC [M]  drivers/gpu/drm/xe/xe_guc_submit.o
  CC [M]  drivers/gpu/drm/xe/xe_hw_engine.o
  CC [M]  drivers/gpu/drm/xe/xe_hw_engine_class_sysfs.o
  CC [M]  drivers/gpu/drm/xe/xe_hw_error.o
  CC [M]  drivers/gpu/drm/xe/xe_hw_fence.o
  CC [M]  drivers/gpu/drm/xe/xe_huc.o
  CC [M]  drivers/gpu/drm/xe/xe_huc_debugfs.o
  CC [M]  drivers/gpu/drm/xe/xe_irq.o
  CC [M]  drivers/gpu/drm/xe/xe_lrc.o
  CC [M]  drivers/gpu/drm/xe/xe_migrate.o
  CC [M]  drivers/gpu/drm/xe/xe_mmio.o
  CC [M]  drivers/gpu/drm/xe/xe_mocs.o
  CC [M]  drivers/gpu/drm/xe/xe_module.o
  CC [M]  drivers/gpu/drm/xe/xe_pat.o
  CC [M]  drivers/gpu/drm/xe/xe_pci.o
  CC [M]  drivers/gpu/drm/xe/xe_pcode.o
  CC [M]  drivers/gpu/drm/xe/xe_pm.o
  CC [M]  drivers/gpu/drm/xe/xe_preempt_fence.o
  CC [M]  drivers/gpu/drm/xe/xe_pt.o
  CC [M]  drivers/gpu/drm/xe/xe_pt_walk.o
  CC [M]  drivers/gpu/drm/xe/xe_query.o
  CC [M]  drivers/gpu/drm/xe/xe_range_fence.o
  CC [M]  drivers/gpu/drm/xe/xe_reg_sr.o
  CC [M]  drivers/gpu/drm/xe/xe_reg_whitelist.o
  CC [M]  drivers/gpu/drm/xe/xe_rtp.o
  CC [M]  drivers/gpu/drm/xe/xe_sa.o
  CC [M]  drivers/gpu/drm/xe/xe_sched_job.o
  CC [M]  drivers/gpu/drm/xe/xe_step.o
  CC [M]  drivers/gpu/drm/xe/xe_sync.o
  CC [M]  drivers/gpu/drm/xe/xe_tile.o
  CC [M]  drivers/gpu/drm/xe/xe_tile_sysfs.o
  CC [M]  drivers/gpu/drm/xe/xe_trace.o
  CC [M]  drivers/gpu/drm/xe/xe_ttm_sys_mgr.o
  CC [M]  drivers/gpu/drm/xe/xe_ttm_stolen_mgr.o
  CC [M]  drivers/gpu/drm/xe/xe_ttm_vram_mgr.o
  CC [M]  drivers/gpu/drm/xe/xe_tuning.o
  CC [M]  drivers/gpu/drm/xe/xe_uc.o
  CC [M]  drivers/gpu/drm/xe/xe_uc_debugfs.o
  CC [M]  drivers/gpu/drm/xe/xe_uc_fw.o
  CC [M]  drivers/gpu/drm/xe/xe_vm_madvise.o
  CC [M]  drivers/gpu/drm/xe/xe_wait_user_fence.o
  CC [M]  drivers/gpu/drm/xe/xe_wopcm.o
  HDRTEST drivers/gpu/drm/xe/abi/guc_klvs_abi.h
  HDRTEST drivers/gpu/drm/xe/abi/guc_errors_abi.h
../drivers/gpu/drm/xe/xe_hw_error.c:430: warning: Function parameter or member 'xe' not described in 'xe_process_hw_errors'
../drivers/gpu/drm/xe/xe_hw_error.c:430: warning: expecting prototype for process_hw_errors(). Prototype was for xe_process_hw_errors() instead
  HDRTEST drivers/gpu/drm/xe/abi/guc_actions_slpc_abi.h
  HDRTEST drivers/gpu/drm/xe/abi/guc_communication_mmio_abi.h
  HDRTEST drivers/gpu/drm/xe/abi/guc_actions_abi.h
  CC [M]  drivers/gpu/drm/xe/tests/xe_bo_test.o
  HDRTEST drivers/gpu/drm/xe/abi/guc_communication_ctb_abi.h
  CC [M]  drivers/gpu/drm/xe/tests/xe_dma_buf_test.o
  HDRTEST drivers/gpu/drm/xe/abi/guc_messages_abi.h
  CC [M]  drivers/gpu/drm/xe/tests/xe_migrate_test.o
  CC [M]  drivers/gpu/drm/xe/tests/xe_pci_test.o
  HDRTEST drivers/gpu/drm/xe/regs/xe_reg_defs.h
  HDRTEST drivers/gpu/drm/xe/regs/xe_guc_regs.h
  HDRTEST drivers/gpu/drm/xe/regs/xe_gt_regs.h
  CC [M]  drivers/gpu/drm/xe/tests/xe_rtp_test.o
  HDRTEST drivers/gpu/drm/xe/regs/xe_regs.h
  HDRTEST drivers/gpu/drm/xe/regs/xe_gt_error_regs.h
  HDRTEST drivers/gpu/drm/xe/regs/xe_tile_error_regs.h
  HDRTEST drivers/gpu/drm/xe/regs/xe_gpu_commands.h
  CC [M]  drivers/gpu/drm/xe/tests/xe_wa_test.o
  HDRTEST drivers/gpu/drm/xe/regs/xe_lrc_layout.h
  HDRTEST drivers/gpu/drm/xe/regs/xe_engine_regs.h
  HDRTEST drivers/gpu/drm/xe/tests/xe_test.h
  HDRTEST drivers/gpu/drm/xe/tests/xe_pci_test.h
  HDRTEST drivers/gpu/drm/xe/tests/xe_migrate_test.h
  HDRTEST drivers/gpu/drm/xe/tests/xe_dma_buf_test.h
  HDRTEST drivers/gpu/drm/xe/tests/xe_bo_test.h
  HDRTEST drivers/gpu/drm/xe/xe_bb.h
  HDRTEST drivers/gpu/drm/xe/xe_bb_types.h
  HDRTEST drivers/gpu/drm/xe/xe_bo.h
  HDRTEST drivers/gpu/drm/xe/xe_bo_doc.h
  HDRTEST drivers/gpu/drm/xe/xe_bo_evict.h
  HDRTEST drivers/gpu/drm/xe/xe_bo_types.h
  HDRTEST drivers/gpu/drm/xe/xe_debugfs.h
  HDRTEST drivers/gpu/drm/xe/xe_devcoredump.h
  HDRTEST drivers/gpu/drm/xe/xe_devcoredump_types.h
  HDRTEST drivers/gpu/drm/xe/xe_device.h
  HDRTEST drivers/gpu/drm/xe/xe_device_sysfs.h
  HDRTEST drivers/gpu/drm/xe/xe_device_types.h
  HDRTEST drivers/gpu/drm/xe/xe_dma_buf.h
  HDRTEST drivers/gpu/drm/xe/xe_drv.h
  HDRTEST drivers/gpu/drm/xe/xe_exec.h
  HDRTEST drivers/gpu/drm/xe/xe_exec_queue.h
  HDRTEST drivers/gpu/drm/xe/xe_exec_queue_types.h
  HDRTEST drivers/gpu/drm/xe/xe_execlist.h
  HDRTEST drivers/gpu/drm/xe/xe_execlist_types.h
  HDRTEST drivers/gpu/drm/xe/xe_force_wake.h
  HDRTEST drivers/gpu/drm/xe/xe_force_wake_types.h
  HDRTEST drivers/gpu/drm/xe/xe_ggtt.h
  HDRTEST drivers/gpu/drm/xe/xe_ggtt_types.h
  HDRTEST drivers/gpu/drm/xe/xe_gt.h
  HDRTEST drivers/gpu/drm/xe/xe_gt_clock.h
  HDRTEST drivers/gpu/drm/xe/xe_gt_debugfs.h
  HDRTEST drivers/gpu/drm/xe/xe_gt_idle_sysfs.h
  HDRTEST drivers/gpu/drm/xe/xe_gt_idle_sysfs_types.h
  HDRTEST drivers/gpu/drm/xe/xe_gt_mcr.h
  HDRTEST drivers/gpu/drm/xe/xe_gt_pagefault.h
  HDRTEST drivers/gpu/drm/xe/xe_gt_printk.h
  HDRTEST drivers/gpu/drm/xe/xe_gt_sysfs.h
  HDRTEST drivers/gpu/drm/xe/xe_gt_sysfs_types.h
  HDRTEST drivers/gpu/drm/xe/xe_gt_tlb_invalidation.h
  HDRTEST drivers/gpu/drm/xe/xe_gt_tlb_invalidation_types.h
  HDRTEST drivers/gpu/drm/xe/xe_gt_topology.h
  HDRTEST drivers/gpu/drm/xe/xe_gt_types.h
  HDRTEST drivers/gpu/drm/xe/xe_guc.h
  HDRTEST drivers/gpu/drm/xe/xe_guc_ads.h
  HDRTEST drivers/gpu/drm/xe/xe_guc_ads_types.h
  HDRTEST drivers/gpu/drm/xe/xe_guc_ct.h
  HDRTEST drivers/gpu/drm/xe/xe_guc_ct_types.h
  HDRTEST drivers/gpu/drm/xe/xe_guc_debugfs.h
  HDRTEST drivers/gpu/drm/xe/xe_guc_exec_queue_types.h
  HDRTEST drivers/gpu/drm/xe/xe_guc_fwif.h
  HDRTEST drivers/gpu/drm/xe/xe_guc_hwconfig.h
  HDRTEST drivers/gpu/drm/xe/xe_guc_log.h
  HDRTEST drivers/gpu/drm/xe/xe_guc_log_types.h
  HDRTEST drivers/gpu/drm/xe/xe_guc_pc.h
  HDRTEST drivers/gpu/drm/xe/xe_guc_pc_types.h
  HDRTEST drivers/gpu/drm/xe/xe_guc_submit.h
  HDRTEST drivers/gpu/drm/xe/xe_guc_submit_types.h
  HDRTEST drivers/gpu/drm/xe/xe_guc_types.h
  HDRTEST drivers/gpu/drm/xe/xe_huc.h
  HDRTEST drivers/gpu/drm/xe/xe_huc_debugfs.h
  HDRTEST drivers/gpu/drm/xe/xe_huc_types.h
  HDRTEST drivers/gpu/drm/xe/xe_hw_engine.h
  HDRTEST drivers/gpu/drm/xe/xe_hw_engine_class_sysfs.h
  HDRTEST drivers/gpu/drm/xe/xe_hw_engine_types.h
  HDRTEST drivers/gpu/drm/xe/xe_hw_error.h
  HDRTEST drivers/gpu/drm/xe/xe_hw_fence.h
  HDRTEST drivers/gpu/drm/xe/xe_hw_fence_types.h
  HDRTEST drivers/gpu/drm/xe/xe_irq.h
  HDRTEST drivers/gpu/drm/xe/xe_lrc.h
  HDRTEST drivers/gpu/drm/xe/xe_lrc_types.h
  HDRTEST drivers/gpu/drm/xe/xe_macros.h
  HDRTEST drivers/gpu/drm/xe/xe_map.h
  HDRTEST drivers/gpu/drm/xe/xe_migrate.h
  HDRTEST drivers/gpu/drm/xe/xe_migrate_doc.h
  HDRTEST drivers/gpu/drm/xe/xe_mmio.h
  HDRTEST drivers/gpu/drm/xe/xe_mocs.h
  HDRTEST drivers/gpu/drm/xe/xe_module.h
  HDRTEST drivers/gpu/drm/xe/xe_pat.h
  HDRTEST drivers/gpu/drm/xe/xe_pci.h
  HDRTEST drivers/gpu/drm/xe/xe_pci_types.h
  HDRTEST drivers/gpu/drm/xe/xe_pcode.h
  HDRTEST drivers/gpu/drm/xe/xe_pcode_api.h
  HDRTEST drivers/gpu/drm/xe/xe_platform_types.h
  HDRTEST drivers/gpu/drm/xe/xe_pm.h
  HDRTEST drivers/gpu/drm/xe/xe_preempt_fence.h
  HDRTEST drivers/gpu/drm/xe/xe_preempt_fence_types.h
  HDRTEST drivers/gpu/drm/xe/xe_pt.h
  HDRTEST drivers/gpu/drm/xe/xe_pt_types.h
  HDRTEST drivers/gpu/drm/xe/xe_pt_walk.h
  HDRTEST drivers/gpu/drm/xe/xe_query.h
  HDRTEST drivers/gpu/drm/xe/xe_range_fence.h
  HDRTEST drivers/gpu/drm/xe/xe_reg_sr.h
  HDRTEST drivers/gpu/drm/xe/xe_reg_sr_types.h
  HDRTEST drivers/gpu/drm/xe/xe_reg_whitelist.h
  HDRTEST drivers/gpu/drm/xe/xe_res_cursor.h
  HDRTEST drivers/gpu/drm/xe/xe_ring_ops.h
  HDRTEST drivers/gpu/drm/xe/xe_ring_ops_types.h
  HDRTEST drivers/gpu/drm/xe/xe_rtp.h
  HDRTEST drivers/gpu/drm/xe/xe_rtp_types.h
  HDRTEST drivers/gpu/drm/xe/xe_sa.h
  HDRTEST drivers/gpu/drm/xe/xe_sa_types.h
  HDRTEST drivers/gpu/drm/xe/xe_sched_job.h
  HDRTEST drivers/gpu/drm/xe/xe_sched_job_types.h
  HDRTEST drivers/gpu/drm/xe/xe_step.h
  HDRTEST drivers/gpu/drm/xe/xe_step_types.h
  HDRTEST drivers/gpu/drm/xe/xe_sync.h
  HDRTEST drivers/gpu/drm/xe/xe_sync_types.h
  HDRTEST drivers/gpu/drm/xe/xe_tile.h
  HDRTEST drivers/gpu/drm/xe/xe_tile_sysfs.h
  HDRTEST drivers/gpu/drm/xe/xe_tile_sysfs_types.h
  HDRTEST drivers/gpu/drm/xe/xe_trace.h
  HDRTEST drivers/gpu/drm/xe/xe_ttm_stolen_mgr.h
  HDRTEST drivers/gpu/drm/xe/xe_ttm_sys_mgr.h
  HDRTEST drivers/gpu/drm/xe/xe_ttm_vram_mgr.h
  HDRTEST drivers/gpu/drm/xe/xe_ttm_vram_mgr_types.h
  HDRTEST drivers/gpu/drm/xe/xe_tuning.h
  HDRTEST drivers/gpu/drm/xe/xe_uc.h
  HDRTEST drivers/gpu/drm/xe/xe_uc_debugfs.h
  HDRTEST drivers/gpu/drm/xe/xe_uc_fw.h
  HDRTEST drivers/gpu/drm/xe/xe_uc_fw_abi.h
  HDRTEST drivers/gpu/drm/xe/xe_uc_fw_types.h
  HDRTEST drivers/gpu/drm/xe/xe_uc_types.h
  HDRTEST drivers/gpu/drm/xe/xe_vm.h
  HDRTEST drivers/gpu/drm/xe/xe_vm_doc.h
  HDRTEST drivers/gpu/drm/xe/xe_vm_madvise.h
  HDRTEST drivers/gpu/drm/xe/xe_vm_types.h
  HDRTEST drivers/gpu/drm/xe/xe_wa.h
  HDRTEST drivers/gpu/drm/xe/xe_wait_user_fence.h
  HDRTEST drivers/gpu/drm/xe/xe_wopcm.h
  HDRTEST drivers/gpu/drm/xe/xe_wopcm_types.h
  GEN     xe_wa_oob.c xe_wa_oob.h
  GEN     xe_wa_oob.c xe_wa_oob.h
  CC [M]  drivers/gpu/drm/xe/xe_guc.o
  CC [M]  drivers/gpu/drm/xe/xe_ring_ops.o
  CC [M]  drivers/gpu/drm/xe/xe_vm.o
  CC [M]  drivers/gpu/drm/xe/xe_wa.o
  LD [M]  drivers/gpu/drm/xe/xe.o
  MODPOST drivers/gpu/drm/xe/Module.symvers
  CC [M]  drivers/gpu/drm/xe/xe.mod.o
  CC [M]  drivers/gpu/drm/xe/tests/xe_bo_test.mod.o
  CC [M]  drivers/gpu/drm/xe/tests/xe_dma_buf_test.mod.o
  CC [M]  drivers/gpu/drm/xe/tests/xe_migrate_test.mod.o
  CC [M]  drivers/gpu/drm/xe/tests/xe_pci_test.mod.o
  CC [M]  drivers/gpu/drm/xe/tests/xe_rtp_test.mod.o
  CC [M]  drivers/gpu/drm/xe/tests/xe_wa_test.mod.o
  LD [M]  drivers/gpu/drm/xe/xe.ko
  LD [M]  drivers/gpu/drm/xe/tests/xe_dma_buf_test.ko
  LD [M]  drivers/gpu/drm/xe/tests/xe_migrate_test.ko
  LD [M]  drivers/gpu/drm/xe/tests/xe_rtp_test.ko
  LD [M]  drivers/gpu/drm/xe/tests/xe_wa_test.ko
  LD [M]  drivers/gpu/drm/xe/tests/xe_pci_test.ko
  LD [M]  drivers/gpu/drm/xe/tests/xe_bo_test.ko
make[1]: Leaving directory '/workspace/kernel/build64'
+ cleanup
+ '[' 1 -eq 1 ']'
+ ./scripts/config --file /workspace/kernel/build64/.config --enable CONFIG_DRM_XE_DISPLAY
run-parts: executing /workspace/ci/hooks/20-kernel-doc
+ SRC_DIR=/workspace/kernel
+ cd /workspace/kernel
+ find drivers/gpu/drm/xe/ -name '*.[ch]' -not -path 'drivers/gpu/drm/xe/display/*'
+ xargs ./scripts/kernel-doc -Werror -none include/uapi/drm/xe_drm.h
drivers/gpu/drm/xe/xe_device_types.h:182: warning: Function parameter or member 'errors' not described in 'xe_tile'
drivers/gpu/drm/xe/xe_device_types.h:472: warning: Function parameter or member 'hw_err_regs' not described in 'xe_device'
drivers/gpu/drm/xe/xe_hw_error.c:431: warning: Function parameter or member 'xe' not described in 'xe_process_hw_errors'
drivers/gpu/drm/xe/xe_hw_error.c:431: warning: expecting prototype for process_hw_errors(). Prototype was for xe_process_hw_errors() instead
drivers/gpu/drm/xe/xe_gt_types.h:358: warning: Function parameter or member 'errors' not described in 'xe_gt'
5 warnings as Errors
run-parts: /workspace/ci/hooks/20-kernel-doc exited with return code 123



^ permalink raw reply	[flat|nested] 21+ messages in thread

* Re: [Intel-xe] [PATCH v5 1/4] drm/xe: Handle errors from various components.
  2023-08-23  8:58 ` [Intel-xe] [PATCH v5 1/4] drm/xe: Handle errors from various components Himal Prasad Ghimiray
@ 2023-09-26  4:20   ` Aravind Iddamsetty
  2023-09-26  4:57     ` Ghimiray, Himal Prasad
  2023-10-04 12:07   ` Aravind Iddamsetty
  1 sibling, 1 reply; 21+ messages in thread
From: Aravind Iddamsetty @ 2023-09-26  4:20 UTC (permalink / raw)
  To: Himal Prasad Ghimiray, intel-xe; +Cc: Jani Nikula, Matt Roper, Rodrigo Vivi


On 23/08/23 14:28, Himal Prasad Ghimiray wrote:
> The GFX device can generate numbers of classes of error under the new
> infrastructure: correctable, non-fatal, and fatal errors.
The GFX device reports two classes of errors: uncorrectable and correctable.
Depending on the severity uncorrectable errors are further classified as non fatal and fatal.
> The non-fatal and fatal error classes distinguish between levels of
> severity for uncorrectable errors. Driver will only handle logging
> of errors and updating counters from various components within the
> graphics device. Anything more will be handled at system level.
>
> For errors that will route as interrupts, three bits in the Master
> Interrupt Register will be used to convey the class of error.
>
> For each class of error: Determine source of error (IP block) by reading
> the Device Error Source Register (RW1C) that
> corresponds to the class of error being serviced.
>
> Bspec: 50875, 53073, 53074, 53075

Also may be you want to squash this with the last patch where fatal error processing is done,
fatal errors are defined here but processed in your last patch or move all fatal definition to last patch.
> Cc: Rodrigo Vivi <rodrigo.vivi@intel.com>
> Cc: Aravind Iddamsetty <aravind.iddamsetty@intel.com>
> Cc: Matthew Brost <matthew.brost@intel.com>
> Cc: Matt Roper <matthew.d.roper@intel.com>
> Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
> Cc: Jani Nikula <jani.nikula@intel.com>
> Signed-off-by: Himal Prasad Ghimiray <himal.prasad.ghimiray@intel.com>
> ---
>  drivers/gpu/drm/xe/Makefile                  |   1 +
>  drivers/gpu/drm/xe/regs/xe_regs.h            |   2 +-
>  drivers/gpu/drm/xe/regs/xe_tile_error_regs.h |  15 ++
>  drivers/gpu/drm/xe/xe_device_types.h         |  11 +
>  drivers/gpu/drm/xe/xe_hw_error.c             | 211 +++++++++++++++++++
>  drivers/gpu/drm/xe/xe_hw_error.h             |  64 ++++++
>  drivers/gpu/drm/xe/xe_irq.c                  |   3 +
>  7 files changed, 306 insertions(+), 1 deletion(-)
>  create mode 100644 drivers/gpu/drm/xe/regs/xe_tile_error_regs.h
>  create mode 100644 drivers/gpu/drm/xe/xe_hw_error.c
>  create mode 100644 drivers/gpu/drm/xe/xe_hw_error.h
>
> diff --git a/drivers/gpu/drm/xe/Makefile b/drivers/gpu/drm/xe/Makefile
> index 550cdfed729e..6290c8ce0e84 100644
> --- a/drivers/gpu/drm/xe/Makefile
> +++ b/drivers/gpu/drm/xe/Makefile
> @@ -75,6 +75,7 @@ xe-y += xe_bb.o \
>  	xe_guc_submit.o \
>  	xe_hw_engine.o \
>  	xe_hw_engine_class_sysfs.o \
> +	xe_hw_error.o \
>  	xe_hw_fence.o \
>  	xe_huc.o \
>  	xe_huc_debugfs.o \
> diff --git a/drivers/gpu/drm/xe/regs/xe_regs.h b/drivers/gpu/drm/xe/regs/xe_regs.h
> index 39d7b0740bf0..e223975a5acf 100644
> --- a/drivers/gpu/drm/xe/regs/xe_regs.h
> +++ b/drivers/gpu/drm/xe/regs/xe_regs.h
> @@ -88,7 +88,7 @@
>  #define   GU_MISC_IRQ				REG_BIT(29)
>  #define   DISPLAY_IRQ				REG_BIT(16)
>  #define   GT_DW_IRQ(x)				REG_BIT(x)
> +#define   XE_ERROR_IRQ(x)			REG_BIT(26 + (x))
>  
>  #define PVC_RP_STATE_CAP			XE_REG(0x281014)
> -
>  #endif
> diff --git a/drivers/gpu/drm/xe/regs/xe_tile_error_regs.h b/drivers/gpu/drm/xe/regs/xe_tile_error_regs.h
> new file mode 100644
> index 000000000000..db78d6687213
> --- /dev/null
> +++ b/drivers/gpu/drm/xe/regs/xe_tile_error_regs.h
> @@ -0,0 +1,15 @@
> +/* SPDX-License-Identifier: MIT */
> +/*
> + * Copyright © 2023 Intel Corporation
> + */
> +#ifndef XE_TILE_ERROR_REGS_H_
> +#define XE_TILE_ERROR_REGS_H_
> +
> +#include <linux/stddef.h>
> +
> +#define _DEV_ERR_STAT_NONFATAL                         0x100178
> +#define _DEV_ERR_STAT_CORRECTABLE                      0x10017c
> +#define DEV_ERR_STAT_REG(x)                            XE_REG(_PICK_EVEN((x), \
> +								_DEV_ERR_STAT_CORRECTABLE, \
> +								_DEV_ERR_STAT_NONFATAL))
> +#endif
> diff --git a/drivers/gpu/drm/xe/xe_device_types.h b/drivers/gpu/drm/xe/xe_device_types.h
> index dbb732e14606..4e4184977709 100644
> --- a/drivers/gpu/drm/xe/xe_device_types.h
> +++ b/drivers/gpu/drm/xe/xe_device_types.h
> @@ -14,6 +14,7 @@
>  
>  #include "xe_devcoredump_types.h"
>  #include "xe_gt_types.h"
> +#include "xe_hw_error.h"
>  #include "xe_platform_types.h"
>  #include "xe_step_types.h"
>  
> @@ -172,6 +173,11 @@ struct xe_tile {
>  
>  	/** @sysfs: sysfs' kobj used by xe_tile_sysfs */
>  	struct kobject *sysfs;
> +
> +	/** @tile_hw_errors: hardware errors reported for the tile */
> +	struct tile_hw_errors {
> +		unsigned long count[XE_TILE_HW_ERROR_MAX];
> +	} errors;
>  };
>  
>  /**
> @@ -359,6 +365,11 @@ struct xe_device {
>  	 */
>  	struct task_struct *pm_callback_task;
>  
> +	/** @hardware_errors_regs: list of hw error regs*/
> +	struct hardware_errors_regs {
> +		const struct err_msg_cntr_pair *dev_err_stat[HARDWARE_ERROR_MAX];

I'm just thinking if it makes sense to move it to respective structs like tile or gt, any thoughts?
> +	} hw_err_regs;
> +
>  	/* private: */
>  
>  #if IS_ENABLED(CONFIG_DRM_XE_DISPLAY)
> diff --git a/drivers/gpu/drm/xe/xe_hw_error.c b/drivers/gpu/drm/xe/xe_hw_error.c
> new file mode 100644
> index 000000000000..357d0f962d91
> --- /dev/null
> +++ b/drivers/gpu/drm/xe/xe_hw_error.c
> @@ -0,0 +1,211 @@
> +// SPDX-License-Identifier: MIT
> +/*
> + * Copyright © 2023 Intel Corporation
> + */
> +
> +#include "xe_hw_error.h"
> +
> +#include "regs/xe_regs.h"
> +#include "regs/xe_tile_error_regs.h"
> +#include "xe_device.h"
> +#include "xe_mmio.h"
> +
> +static const char *
> +hardware_error_type_to_str(const enum hardware_error hw_err)
> +{
> +	switch (hw_err) {
> +	case HARDWARE_ERROR_CORRECTABLE:
> +		return "CORRECTABLE";
> +	case HARDWARE_ERROR_NONFATAL:
> +		return "NONFATAL";
> +	case HARDWARE_ERROR_FATAL:
> +		return "FATAL";
> +	default:
> +		return "UNKNOWN";
> +	}
> +}
> +
> +static const struct err_msg_cntr_pair dg2_err_stat_fatal_reg[] = {

the name err_msg_cntr_pair might not be appropriate as it err name and index into
tile_hw_errors. err_name_index_pair ?? thoughts
> +	[0]         = {"GT",			XE_TILE_HW_ERR_GT_FATAL},
> +	[1 ... 3]   = {"Undefined",		XE_TILE_HW_ERR_UNKNOWN_FATAL},
> +	[4]         = {"DISPLAY",		XE_TILE_HW_ERR_DISPLAY_FATAL},
> +	[5 ... 7]   = {"Undefined",		XE_TILE_HW_ERR_UNKNOWN_FATAL},
> +	[8]         = {"GSC error",		XE_TILE_HW_ERR_GSC_FATAL},
> +	[9 ... 11]  = {"Undefined",		XE_TILE_HW_ERR_UNKNOWN_FATAL},
> +	[12]        = {"SGUNIT",		XE_TILE_HW_ERR_SGUNIT_FATAL},
> +	[13 ... 15] = {"Undefined",             XE_TILE_HW_ERR_UNKNOWN_FATAL},
> +	[16]        = {"SOC",			XE_TILE_HW_ERR_SOC_FATAL},
> +	[17 ... 31] = {"Undefined",             XE_TILE_HW_ERR_UNKNOWN_FATAL},
> +};
> +
> +static const struct err_msg_cntr_pair dg2_err_stat_nonfatal_reg[] = {
> +	[0]         = {"GT",			XE_TILE_HW_ERR_GT_NONFATAL},
> +	[1 ... 3]   = {"Undefined",		XE_TILE_HW_ERR_UNKNOWN_NONFATAL},
> +	[4]         = {"DISPLAY",		XE_TILE_HW_ERR_DISPLAY_NONFATAL},
> +	[5 ... 7]   = {"Undefined",		XE_TILE_HW_ERR_UNKNOWN_NONFATAL},
> +	[8]         = {"GSC error",		XE_TILE_HW_ERR_GSC_NONFATAL},
> +	[9 ... 11]  = {"Undefined",		XE_TILE_HW_ERR_UNKNOWN_NONFATAL},
> +	[12]        = {"SGUNIT",		XE_TILE_HW_ERR_SGUNIT_NONFATAL},
> +	[13 ... 15] = {"Undefined",             XE_TILE_HW_ERR_UNKNOWN_NONFATAL},
> +	[16]        = {"SOC",			XE_TILE_HW_ERR_SOC_NONFATAL},
> +	[17 ... 19] = {"Undefined",             XE_TILE_HW_ERR_UNKNOWN_NONFATAL},
> +	[20]        = {"MERT",			XE_TILE_HW_ERR_MERT_NONFATAL},
> +	[21 ... 31] = {"Undefined",             XE_TILE_HW_ERR_UNKNOWN_NONFATAL},
> +};
> +
> +static const struct err_msg_cntr_pair dg2_err_stat_correctable_reg[] = {
> +	[0]         = {"GT",			XE_TILE_HW_ERR_GT_CORR},
> +	[1 ... 3]   = {"Undefined",		XE_TILE_HW_ERR_UNKNOWN_CORR},
> +	[4]         = {"DISPLAY",		XE_TILE_HW_ERR_DISPLAY_CORR},
> +	[5 ... 7]   = {"Undefined",		XE_TILE_HW_ERR_UNKNOWN_CORR},
> +	[8]         = {"GSC error",		XE_TILE_HW_ERR_GSC_CORR},
> +	[9 ... 11]  = {"Undefined",		XE_TILE_HW_ERR_UNKNOWN_CORR},
> +	[12]        = {"SGUNIT",		XE_TILE_HW_ERR_SGUNIT_CORR},
> +	[13 ... 15] = {"Undefined",             XE_TILE_HW_ERR_UNKNOWN_CORR},
> +	[16]        = {"SOC",			XE_TILE_HW_ERR_SOC_CORR},
> +	[17 ... 31] = {"Undefined",             XE_TILE_HW_ERR_UNKNOWN_CORR},
> +};
> +
> +static const struct err_msg_cntr_pair pvc_err_stat_fatal_reg[] = {
> +	[0]         =  {"GT",			XE_TILE_HW_ERR_GT_FATAL},
> +	[1]         =  {"SGGI Cmd Parity",	XE_TILE_HW_ERR_SGGI_FATAL},
> +	[2 ... 7]   =  {"Undefined",		XE_TILE_HW_ERR_UNKNOWN_FATAL},
> +	[8]         =  {"GSC error",		XE_TILE_HW_ERR_GSC_FATAL},
> +	[9]         =  {"SGLI Cmd Parity",	XE_TILE_HW_ERR_SGLI_FATAL},
> +	[10 ... 12] =  {"Undefined",		XE_TILE_HW_ERR_UNKNOWN_FATAL},
> +	[13]        =  {"SGCI Cmd Parity",	XE_TILE_HW_ERR_SGCI_FATAL},
> +	[14 ... 15] =  {"Undefined",		XE_TILE_HW_ERR_UNKNOWN_FATAL},
> +	[16]        =  {"SOC ERROR",		XE_TILE_HW_ERR_SOC_FATAL},
> +	[17 ... 19] =  {"Undefined",		XE_TILE_HW_ERR_UNKNOWN_FATAL},
> +	[20]        =  {"MERT Cmd Parity",	XE_TILE_HW_ERR_MERT_FATAL},
> +	[21 ... 31] =  {"Undefined",		XE_TILE_HW_ERR_UNKNOWN_FATAL},
> +};
> +
> +static const struct err_msg_cntr_pair pvc_err_stat_nonfatal_reg[] = {
> +	[0]         =  {"GT",			XE_TILE_HW_ERR_GT_NONFATAL},
> +	[1]         =  {"SGGI Data Parity",	XE_TILE_HW_ERR_SGGI_NONFATAL},
> +	[2 ... 7]   =  {"Undefined",		XE_TILE_HW_ERR_UNKNOWN_NONFATAL},
> +	[8]         =  {"GSC",			XE_TILE_HW_ERR_GSC_NONFATAL},
> +	[9]         =  {"SGLI Data Parity",	XE_TILE_HW_ERR_SGLI_NONFATAL},
> +	[10 ... 12] =  {"Undefined",		XE_TILE_HW_ERR_UNKNOWN_NONFATAL},
> +	[13]        =  {"SGCI Data Parity",	XE_TILE_HW_ERR_SGCI_NONFATAL},
> +	[14 ... 15] =  {"Undefined",		XE_TILE_HW_ERR_UNKNOWN_NONFATAL},
> +	[16]        =  {"SOC",			XE_TILE_HW_ERR_SOC_NONFATAL},
> +	[17 ... 19] =  {"Undefined",		XE_TILE_HW_ERR_UNKNOWN_NONFATAL},
> +	[20]        =  {"MERT Data Parity",	XE_TILE_HW_ERR_MERT_NONFATAL},
> +	[21 ... 31] =  {"Undefined",            XE_TILE_HW_ERR_UNKNOWN_NONFATAL},
> +};
> +
> +static const struct err_msg_cntr_pair pvc_err_stat_correctable_reg[] = {
> +	[0]         =  {"GT",			XE_TILE_HW_ERR_GT_CORR},
> +	[1 ... 7]   =  {"Undefined",		XE_TILE_HW_ERR_UNKNOWN_CORR},
> +	[8]         =  {"GSC",			XE_TILE_HW_ERR_GSC_CORR},
> +	[9 ... 31]  =  {"Undefined",		XE_TILE_HW_ERR_UNKNOWN_CORR},
> +};
> +
> +static const struct err_msg_cntr_pair dev_err_stat_fatal_reg[] = {
> +	[0]         =  {"GT",			XE_TILE_HW_ERR_GT_FATAL},
> +	[1 ... 31]  =  {"Undefined",		XE_TILE_HW_ERR_UNKNOWN_FATAL},
> +};
> +
> +static const struct err_msg_cntr_pair dev_err_stat_nonfatal_reg[] = {
> +	[0]         =  {"GT",			XE_TILE_HW_ERR_GT_NONFATAL},
> +	[1 ... 31]  =  {"Undefined",            XE_TILE_HW_ERR_UNKNOWN_NONFATAL},
> +};
> +
> +static const struct err_msg_cntr_pair dev_err_stat_correctable_reg[] = {
> +	[0]         =  {"GT",			XE_TILE_HW_ERR_GT_CORR},
> +	[1 ... 31]  =  {"Undefined",		XE_TILE_HW_ERR_UNKNOWN_CORR},
> +};
> +
> +void xe_assign_hw_err_regs(struct xe_device *xe)
> +{
> +	const struct err_msg_cntr_pair **dev_err_stat = xe->hw_err_regs.dev_err_stat;
> +
> +	if (xe->info.platform == XE_DG2) {
> +		dev_err_stat[HARDWARE_ERROR_CORRECTABLE] = dg2_err_stat_correctable_reg;
> +		dev_err_stat[HARDWARE_ERROR_NONFATAL] = dg2_err_stat_nonfatal_reg;
> +		dev_err_stat[HARDWARE_ERROR_FATAL] = dg2_err_stat_fatal_reg;
> +	} else if (xe->info.platform == XE_PVC) {
> +		dev_err_stat[HARDWARE_ERROR_CORRECTABLE] = pvc_err_stat_correctable_reg;
> +		dev_err_stat[HARDWARE_ERROR_NONFATAL] = pvc_err_stat_nonfatal_reg;
> +		dev_err_stat[HARDWARE_ERROR_FATAL] = pvc_err_stat_fatal_reg;
> +	} else {
> +		/* For other platforms report only GT errors */
why only GT errors??
> +		dev_err_stat[HARDWARE_ERROR_CORRECTABLE] = dev_err_stat_correctable_reg;
> +		dev_err_stat[HARDWARE_ERROR_NONFATAL] = dev_err_stat_nonfatal_reg;
> +		dev_err_stat[HARDWARE_ERROR_FATAL] = dev_err_stat_fatal_reg;
> +	}
> +}
> +
> +static void
> +xe_hw_error_source_handler(struct xe_tile *tile, const enum hardware_error hw_err)
> +{
> +	const char *hw_err_str = hardware_error_type_to_str(hw_err);
> +	const struct hardware_errors_regs *err_regs;
> +	const struct err_msg_cntr_pair *errstat;
> +	unsigned long errsrc;
> +	unsigned long flags;
> +	const char *errmsg;
> +	struct xe_gt *mmio;
> +	u32 indx;
> +	u32 errbit;
> +
> +	spin_lock_irqsave(&tile_to_xe(tile)->irq.lock, flags);
> +	err_regs = &tile_to_xe(tile)->hw_err_regs;
> +	errstat = err_regs->dev_err_stat[hw_err];
> +	mmio = tile->primary_gt;
> +	errsrc = xe_mmio_read32(mmio, DEV_ERR_STAT_REG(hw_err));
> +	if (!errsrc) {
> +		drm_err_ratelimited(&tile_to_xe(tile)->drm, HW_ERR
> +				    "TILE%d detected DEV_ERR_STAT_REG_%s blank!\n",
> +				    tile->id, hw_err_str);
> +		goto unlock;
> +	}
> +
> +	drm_info(&tile_to_xe(tile)->drm, HW_ERR
> +		 "TILE%d DEV_ERR_STAT_REG_%s=0x%08lx\n", tile->id, hw_err_str, errsrc);
> +
> +	for_each_set_bit(errbit, &errsrc, 32) {
> +		errmsg = errstat[errbit].errmsg;
> +		indx = errstat[errbit].cntr_indx;
> +
> +		if (hw_err == HARDWARE_ERROR_CORRECTABLE)
> +			drm_warn(&tile_to_xe(tile)->drm,
> +				 HW_ERR "TILE%d detected %s %s error, bit[%d] is set\n",
> +				 tile->id, errmsg, hw_err_str, errbit);
> +
> +		else
> +			drm_err_ratelimited(&tile_to_xe(tile)->drm,
> +					    HW_ERR "TILE%d detected %s %s error, bit[%d] is set\n",
> +					    tile->id, errmsg, hw_err_str, errbit);
> +		tile->errors.count[indx]++;

The register here is a top level register and some of the sources have second error level registers
so the count shall be at second level source for all those that have and not at global level as here
it will not give granularity.
> +	}
> +
> +	xe_mmio_write32(mmio, DEV_ERR_STAT_REG(hw_err), errsrc);
> +unlock:
> +	spin_unlock_irqrestore(&tile_to_xe(tile)->irq.lock, flags);
> +}
> +
> +/*
> + * XE Platforms adds three Error bits to the Master Interrupt
> + * Register to support error handling. These three bits are
> + * used to convey the class of error:
> + * FATAL, NONFATAL, or CORRECTABLE.
> + *
> + * To process an interrupt:
> + *       Determine source of error (IP block) by reading
> + *	 the Device Error Source Register (RW1C) that
> + *	 corresponds to the class of error being serviced
> + *	 and log the error.
> + */
> +void
> +xe_hw_error_irq_handler(struct xe_tile *tile, const u32 master_ctl)
> +{
> +	enum hardware_error hw_err;
> +
> +	for (hw_err = 0; hw_err < HARDWARE_ERROR_MAX; hw_err++) {
> +		if (master_ctl & XE_ERROR_IRQ(hw_err))
> +			xe_hw_error_source_handler(tile, hw_err);
> +	}
> +}
> diff --git a/drivers/gpu/drm/xe/xe_hw_error.h b/drivers/gpu/drm/xe/xe_hw_error.h
> new file mode 100644
> index 000000000000..c0c05b9130eb
> --- /dev/null
> +++ b/drivers/gpu/drm/xe/xe_hw_error.h
> @@ -0,0 +1,64 @@
> +/* SPDX-License-Identifier: MIT */
> +/*
> + * Copyright © 2023 Intel Corporation
> + */
> +#ifndef XE_HW_ERRORS_H_
> +#define XE_HW_ERRORS_H_
> +
> +#include <linux/stddef.h>
> +#include <linux/types.h>
> +
> +/* Error categories reported by hardware */
> +enum hardware_error {
> +	HARDWARE_ERROR_CORRECTABLE = 0,
> +	HARDWARE_ERROR_NONFATAL = 1,
> +	HARDWARE_ERROR_FATAL = 2,
> +	HARDWARE_ERROR_MAX,
> +};
> +
> +/* Count of  Correctable and Uncorrectable errors reported on tile */
> +enum xe_tile_hw_errors {
> +	XE_TILE_HW_ERR_GT_FATAL = 0,
> +	XE_TILE_HW_ERR_SGGI_FATAL,
> +	XE_TILE_HW_ERR_DISPLAY_FATAL,
> +	XE_TILE_HW_ERR_SGDI_FATAL,
> +	XE_TILE_HW_ERR_SGLI_FATAL,
> +	XE_TILE_HW_ERR_SGUNIT_FATAL,
> +	XE_TILE_HW_ERR_SGCI_FATAL,
> +	XE_TILE_HW_ERR_GSC_FATAL,
> +	XE_TILE_HW_ERR_SOC_FATAL,
> +	XE_TILE_HW_ERR_MERT_FATAL,
> +	XE_TILE_HW_ERR_SGMI_FATAL,
> +	XE_TILE_HW_ERR_UNKNOWN_FATAL,
> +	XE_TILE_HW_ERR_SGGI_NONFATAL,
> +	XE_TILE_HW_ERR_DISPLAY_NONFATAL,
> +	XE_TILE_HW_ERR_SGDI_NONFATAL,
> +	XE_TILE_HW_ERR_SGLI_NONFATAL,
> +	XE_TILE_HW_ERR_GT_NONFATAL,
> +	XE_TILE_HW_ERR_SGUNIT_NONFATAL,
> +	XE_TILE_HW_ERR_SGCI_NONFATAL,
> +	XE_TILE_HW_ERR_GSC_NONFATAL,
> +	XE_TILE_HW_ERR_SOC_NONFATAL,
> +	XE_TILE_HW_ERR_MERT_NONFATAL,
> +	XE_TILE_HW_ERR_SGMI_NONFATAL,
> +	XE_TILE_HW_ERR_UNKNOWN_NONFATAL,
> +	XE_TILE_HW_ERR_GT_CORR,
> +	XE_TILE_HW_ERR_DISPLAY_CORR,
> +	XE_TILE_HW_ERR_SGUNIT_CORR,
> +	XE_TILE_HW_ERR_GSC_CORR,
> +	XE_TILE_HW_ERR_SOC_CORR,
> +	XE_TILE_HW_ERR_UNKNOWN_CORR,
> +	XE_TILE_HW_ERROR_MAX,
> +};
> +
> +struct err_msg_cntr_pair {
> +	const char *errmsg;
> +	const u32 cntr_indx;
> +};
> +
> +struct xe_device;
> +struct xe_tile;
> +
> +void xe_hw_error_irq_handler(struct xe_tile *tile, const u32 master_ctl);
> +void xe_assign_hw_err_regs(struct xe_device *xe);
> +#endif
> diff --git a/drivers/gpu/drm/xe/xe_irq.c b/drivers/gpu/drm/xe/xe_irq.c
> index 1dee3e832eb5..48b933234342 100644
> --- a/drivers/gpu/drm/xe/xe_irq.c
> +++ b/drivers/gpu/drm/xe/xe_irq.c
> @@ -418,6 +418,7 @@ static irqreturn_t dg1_irq_handler(int irq, void *arg)
>  		xe_mmio_write32(mmio, GFX_MSTR_IRQ, master_ctl);
>  
>  		gt_irq_handler(tile, master_ctl, intr_dw, identity);
> +		xe_hw_error_irq_handler(tile, master_ctl);
>  
>  		/*
>  		 * Display interrupts (including display backlight operations
> @@ -572,6 +573,8 @@ int xe_irq_install(struct xe_device *xe)
>  		return -EINVAL;
>  	}
>  
> +	xe_assign_hw_err_regs(xe);
> +
>  	xe->irq.enabled = true;
>  
>  	xe_irq_reset(xe);
Thanks,
Aravind.

^ permalink raw reply	[flat|nested] 21+ messages in thread

* Re: [Intel-xe] [PATCH v5 2/4] drm/xe: Log and count the GT hardware errors.
  2023-08-23  8:58 ` [Intel-xe] [PATCH v5 2/4] drm/xe: Log and count the GT hardware errors Himal Prasad Ghimiray
@ 2023-09-26  4:20   ` Aravind Iddamsetty
  2023-09-26  5:08     ` Ghimiray, Himal Prasad
  0 siblings, 1 reply; 21+ messages in thread
From: Aravind Iddamsetty @ 2023-09-26  4:20 UTC (permalink / raw)
  To: Himal Prasad Ghimiray, intel-xe; +Cc: Jani Nikula, Matt Roper, Rodrigo Vivi


On 23/08/23 14:28, Himal Prasad Ghimiray wrote:
> For the errors reported by GT unit, read the GT error register.
> Log and count these errors and clear the error register.
>
> Bspec: 53088, 53089, 53090
>
> Cc: Rodrigo Vivi <rodrigo.vivi@intel.com>
> Cc: Aravind Iddamsetty <aravind.iddamsetty@intel.com>
> Cc: Matthew Brost <matthew.brost@intel.com>
> Cc: Matt Roper <matthew.d.roper@intel.com>
> Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
> Cc: Jani Nikula <jani.nikula@intel.com>
> Signed-off-by: Himal Prasad Ghimiray <himal.prasad.ghimiray@intel.com>
> ---
>  drivers/gpu/drm/xe/regs/xe_gt_error_regs.h | 13 +++
>  drivers/gpu/drm/xe/xe_device_types.h       |  1 +
>  drivers/gpu/drm/xe/xe_gt_types.h           |  7 ++
>  drivers/gpu/drm/xe/xe_hw_error.c           | 96 +++++++++++++++++++++-
>  drivers/gpu/drm/xe/xe_hw_error.h           | 24 ++++++
>  5 files changed, 140 insertions(+), 1 deletion(-)
>  create mode 100644 drivers/gpu/drm/xe/regs/xe_gt_error_regs.h
>
> diff --git a/drivers/gpu/drm/xe/regs/xe_gt_error_regs.h b/drivers/gpu/drm/xe/regs/xe_gt_error_regs.h
> new file mode 100644
> index 000000000000..6180704a6149
> --- /dev/null
> +++ b/drivers/gpu/drm/xe/regs/xe_gt_error_regs.h
> @@ -0,0 +1,13 @@
> +/* SPDX-License-Identifier: MIT */
> +/*
> + * Copyright © 2023 Intel Corporation
> + */
> +#ifndef XE_GT_ERROR_REGS_H_
> +#define XE_GT_ERROR_REGS_H_
> +
> +#define _ERR_STAT_GT_COR                0x100160
> +#define _ERR_STAT_GT_NONFATAL           0x100164
> +#define ERR_STAT_GT_REG(x)              XE_REG(_PICK_EVEN((x), \
> +						_ERR_STAT_GT_COR, \
> +						_ERR_STAT_GT_NONFATAL))
> +#endif
> diff --git a/drivers/gpu/drm/xe/xe_device_types.h b/drivers/gpu/drm/xe/xe_device_types.h
> index 4e4184977709..96029d3348b3 100644
> --- a/drivers/gpu/drm/xe/xe_device_types.h
> +++ b/drivers/gpu/drm/xe/xe_device_types.h
> @@ -368,6 +368,7 @@ struct xe_device {
>  	/** @hardware_errors_regs: list of hw error regs*/
>  	struct hardware_errors_regs {
>  		const struct err_msg_cntr_pair *dev_err_stat[HARDWARE_ERROR_MAX];
> +		const struct err_msg_cntr_pair *err_stat_gt[HARDWARE_ERROR_MAX];

same here should we make it part of struct xe_gt?
>  	} hw_err_regs;
>  
>  	/* private: */
> diff --git a/drivers/gpu/drm/xe/xe_gt_types.h b/drivers/gpu/drm/xe/xe_gt_types.h
> index 35b8c19fa8bf..5daff5c434c7 100644
> --- a/drivers/gpu/drm/xe/xe_gt_types.h
> +++ b/drivers/gpu/drm/xe/xe_gt_types.h
> @@ -9,10 +9,12 @@
>  #include "xe_force_wake_types.h"
>  #include "xe_gt_idle_sysfs_types.h"
>  #include "xe_hw_engine_types.h"
> +#include "xe_hw_error.h"
>  #include "xe_hw_fence_types.h"
>  #include "xe_reg_sr_types.h"
>  #include "xe_sa_types.h"
>  #include "xe_uc_types.h"
> +#include "regs/xe_gt_error_regs.h"
>  
>  struct xe_exec_queue_ops;
>  struct xe_migrate;
> @@ -346,6 +348,11 @@ struct xe_gt {
>  		/** @oob: bitmap with active OOB workaroudns */
>  		unsigned long *oob;
>  	} wa_active;
> +
> +	/** @gt_hw_errors: hardware errors reported for the gt */
> +	struct gt_hw_errors {
> +		 unsigned long count[XE_GT_HW_ERROR_MAX];
> +	} errors;
>  };
>  
>  #endif
> diff --git a/drivers/gpu/drm/xe/xe_hw_error.c b/drivers/gpu/drm/xe/xe_hw_error.c
> index 357d0f962d91..10aad0c396fb 100644
> --- a/drivers/gpu/drm/xe/xe_hw_error.c
> +++ b/drivers/gpu/drm/xe/xe_hw_error.c
> @@ -118,14 +118,48 @@ static const struct err_msg_cntr_pair dev_err_stat_correctable_reg[] = {
>  	[1 ... 31]  =  {"Undefined",		XE_TILE_HW_ERR_UNKNOWN_CORR},
>  };
>  
> +static const struct err_msg_cntr_pair err_stat_gt_fatal_reg[] = {
> +	[0]         =  {"Undefined",		XE_GT_HW_ERR_UNKNOWN_FATAL},
> +	[1]         =  {"Array BIST",		XE_GT_HW_ERR_ARR_BIST_FATAL},
> +	[2]         =  {"Undefined",		XE_GT_HW_ERR_UNKNOWN_FATAL},
> +	[3]         =  {"FPU",			XE_GT_HW_ERR_FPU_FATAL},
> +	[4]         =  {"L3 Double",		XE_GT_HW_ERR_L3_DOUB_FATAL},
> +	[5]         =  {"L3 ECC Checker",	XE_GT_HW_ERR_L3_ECC_CHK_FATAL},
> +	[6]         =  {"GUC SRAM",		XE_GT_HW_ERR_GUC_FATAL},
> +	[7]         =  {"Undefined",		XE_GT_HW_ERR_UNKNOWN_FATAL},
> +	[8]         =  {"IDI PARITY",		XE_GT_HW_ERR_IDI_PAR_FATAL},
> +	[9]	    =  {"SQIDI",		XE_GT_HW_ERR_SQIDI_FATAL},
> +	[10 ... 11] =  {"Undefined",		XE_GT_HW_ERR_UNKNOWN_FATAL},
> +	[12]        =  {"SAMPLER",		XE_GT_HW_ERR_SAMPLER_FATAL},
> +	[13]        =  {"SLM",			XE_GT_HW_ERR_SLM_FATAL},
> +	[14]        =  {"EU IC",		XE_GT_HW_ERR_EU_IC_FATAL},
> +	[15]        =  {"EU GRF",		XE_GT_HW_ERR_EU_GRF_FATAL},
> +	[16 ... 31] =  {"Undefined",            XE_GT_HW_ERR_UNKNOWN_FATAL},
> +};

as the fatal error path is different, these shall be enabled in the patch that enables
fatal error processing.
> +
> +static const struct err_msg_cntr_pair err_stat_gt_correctable_reg[] = {
> +	[0]         = {"L3 SINGLE",		XE_GT_HW_ERR_L3_SNG_CORR},
> +	[1]         = {"SINGLE BIT GUC SRAM",	XE_GT_HW_ERR_GUC_CORR},
> +	[2 ... 11]  = {"Undefined",		XE_GT_HW_ERR_UNKNOWN_CORR},
> +	[12]        = {"SINGLE BIT SAMPLER",	XE_GT_HW_ERR_SAMPLER_CORR},
> +	[13]        = {"SINGLE BIT SLM",	XE_GT_HW_ERR_SLM_CORR},
> +	[14]        = {"SINGLE BIT EU IC",	XE_GT_HW_ERR_EU_IC_CORR},
> +	[15]        = {"SINGLE BIT EU GRF",	XE_GT_HW_ERR_EU_GRF_CORR},
> +	[16 ... 31] = {"Undefined",             XE_GT_HW_ERR_UNKNOWN_CORR},
> +};
> +
>  void xe_assign_hw_err_regs(struct xe_device *xe)
>  {
>  	const struct err_msg_cntr_pair **dev_err_stat = xe->hw_err_regs.dev_err_stat;
> +	const struct err_msg_cntr_pair **err_stat_gt = xe->hw_err_regs.err_stat_gt;
>  
>  	if (xe->info.platform == XE_DG2) {
>  		dev_err_stat[HARDWARE_ERROR_CORRECTABLE] = dg2_err_stat_correctable_reg;
>  		dev_err_stat[HARDWARE_ERROR_NONFATAL] = dg2_err_stat_nonfatal_reg;
>  		dev_err_stat[HARDWARE_ERROR_FATAL] = dg2_err_stat_fatal_reg;
> +
> +		err_stat_gt[HARDWARE_ERROR_CORRECTABLE] = err_stat_gt_correctable_reg;
> +		err_stat_gt[HARDWARE_ERROR_FATAL] = err_stat_gt_fatal_reg;
>  	} else if (xe->info.platform == XE_PVC) {
>  		dev_err_stat[HARDWARE_ERROR_CORRECTABLE] = pvc_err_stat_correctable_reg;
>  		dev_err_stat[HARDWARE_ERROR_NONFATAL] = pvc_err_stat_nonfatal_reg;
> @@ -135,9 +169,67 @@ void xe_assign_hw_err_regs(struct xe_device *xe)
>  		dev_err_stat[HARDWARE_ERROR_CORRECTABLE] = dev_err_stat_correctable_reg;
>  		dev_err_stat[HARDWARE_ERROR_NONFATAL] = dev_err_stat_nonfatal_reg;
>  		dev_err_stat[HARDWARE_ERROR_FATAL] = dev_err_stat_fatal_reg;
> +
> +		err_stat_gt[HARDWARE_ERROR_CORRECTABLE] = err_stat_gt_correctable_reg;
> +		err_stat_gt[HARDWARE_ERROR_FATAL] = err_stat_gt_fatal_reg;
what platforms are targeted as part of else?
>  	}
>  }
>  
> +static void
> +xe_gt_hw_error_handler(struct xe_gt *gt, const enum hardware_error hw_err)

the function is defined here and changed in next patch can't we have a
common one between these.
> +{
> +	const char *hw_err_str = hardware_error_type_to_str(hw_err);
> +	const struct err_msg_cntr_pair *errstat;
> +	struct hardware_errors_regs *err_regs;
> +	unsigned long errsrc;
> +	const char *errmsg;
> +	u32 indx;
> +	u32 errbit;
> +
> +	if (gt_to_xe(gt)->info.platform == XE_PVC)
> +		return;
> +
> +	lockdep_assert_held(&gt_to_xe(gt)->irq.lock);
> +	err_regs = &gt_to_xe(gt)->hw_err_regs;
> +	errsrc = xe_mmio_read32(gt, ERR_STAT_GT_REG(hw_err));
> +	if (!errsrc) {
> +		drm_err_ratelimited(&gt_to_xe(gt)->drm, HW_ERR
> +				    "GT%d detected ERR_STAT_GT_REG_%s blank!\n",
> +				    gt->info.id, hw_err_str);
> +		return;
> +	}
> +
> +	drm_info(&gt_to_xe(gt)->drm, HW_ERR "GT%d ERR_STAT_GT_REG_%s=0x%08lx\n",
> +		 gt->info.id, hw_err_str, errsrc);
will drm_dbg makes more sense here and everywhere else to dump the register contents
> +
> +	if (hw_err == HARDWARE_ERROR_NONFATAL) {
> +		/*  The GT Non Fatal Error Status Register has only reserved bits
> +		 *  Nothing to service.
> +		 */
> +		drm_err_ratelimited(&gt_to_xe(gt)->drm, HW_ERR "GT%d detected %s error\n",
> +				    gt->info.id, hw_err_str);
> +		goto clear_reg;
> +	}
> +
> +	errstat = err_regs->err_stat_gt[hw_err];
> +	for_each_set_bit(errbit, &errsrc, 32) {
> +		errmsg = errstat[errbit].errmsg;
> +		indx = errstat[errbit].cntr_indx;
> +
> +		if (hw_err == HARDWARE_ERROR_FATAL)
> +			drm_err_ratelimited(&gt_to_xe(gt)->drm, HW_ERR
> +					    "GT%d detected %s %s error, bit[%d] is set\n",
> +					    gt->info.id, errmsg, hw_err_str, errbit);

this shall be part of last patch in the series, where the fatal errors are processed.
> +		else
> +			drm_warn(&gt_to_xe(gt)->drm, HW_ERR
> +				 "GT%d detected %s %s error, bit[%d] is set\n",
> +				 gt->info.id, errmsg, hw_err_str, errbit);
> +
> +		gt->errors.count[indx]++;
> +	}
> +clear_reg: xe_mmio_write32(gt, ERR_STAT_GT_REG(hw_err), errsrc);
a new line after a label is preferred.
> +}
> +
>  static void
>  xe_hw_error_source_handler(struct xe_tile *tile, const enum hardware_error hw_err)
>  {
> @@ -174,7 +266,6 @@ xe_hw_error_source_handler(struct xe_tile *tile, const enum hardware_error hw_er
>  			drm_warn(&tile_to_xe(tile)->drm,
>  				 HW_ERR "TILE%d detected %s %s error, bit[%d] is set\n",
>  				 tile->id, errmsg, hw_err_str, errbit);
> -
>  		else
>  			drm_err_ratelimited(&tile_to_xe(tile)->drm,
>  					    HW_ERR "TILE%d detected %s %s error, bit[%d] is set\n",
> @@ -182,6 +273,9 @@ xe_hw_error_source_handler(struct xe_tile *tile, const enum hardware_error hw_er
>  		tile->errors.count[indx]++;
>  	}
>  
> +	if (errsrc & REG_BIT(0))

define the BIT and use it here.
> +		xe_gt_hw_error_handler(tile->primary_gt, hw_err);
> +
>  	xe_mmio_write32(mmio, DEV_ERR_STAT_REG(hw_err), errsrc);
>  unlock:
>  	spin_unlock_irqrestore(&tile_to_xe(tile)->irq.lock, flags);
> diff --git a/drivers/gpu/drm/xe/xe_hw_error.h b/drivers/gpu/drm/xe/xe_hw_error.h
> index c0c05b9130eb..82c947247c27 100644
> --- a/drivers/gpu/drm/xe/xe_hw_error.h
> +++ b/drivers/gpu/drm/xe/xe_hw_error.h
> @@ -51,6 +51,30 @@ enum xe_tile_hw_errors {
>  	XE_TILE_HW_ERROR_MAX,
>  };
>  
> +/* Count of GT Correctable and FATAL HW ERRORS */
> +enum xe_gt_hw_errors {
> +	XE_GT_HW_ERR_L3_SNG_CORR,
> +	XE_GT_HW_ERR_GUC_CORR,
> +	XE_GT_HW_ERR_SAMPLER_CORR,
> +	XE_GT_HW_ERR_SLM_CORR,
> +	XE_GT_HW_ERR_EU_IC_CORR,
> +	XE_GT_HW_ERR_EU_GRF_CORR,
> +	XE_GT_HW_ERR_UNKNOWN_CORR,
> +	XE_GT_HW_ERR_ARR_BIST_FATAL,
> +	XE_GT_HW_ERR_FPU_FATAL,
> +	XE_GT_HW_ERR_L3_DOUB_FATAL,
> +	XE_GT_HW_ERR_L3_ECC_CHK_FATAL,
> +	XE_GT_HW_ERR_GUC_FATAL,
> +	XE_GT_HW_ERR_IDI_PAR_FATAL,
> +	XE_GT_HW_ERR_SQIDI_FATAL,
> +	XE_GT_HW_ERR_SAMPLER_FATAL,
> +	XE_GT_HW_ERR_SLM_FATAL,
> +	XE_GT_HW_ERR_EU_IC_FATAL,
> +	XE_GT_HW_ERR_EU_GRF_FATAL,
> +	XE_GT_HW_ERR_UNKNOWN_FATAL,
> +	XE_GT_HW_ERROR_MAX,
> +};
same here, define all fatals where they are actually used.
> +
>  struct err_msg_cntr_pair {
>  	const char *errmsg;
>  	const u32 cntr_indx;
Thanks,
Aravind.

^ permalink raw reply	[flat|nested] 21+ messages in thread

* Re: [Intel-xe] [PATCH v5 3/4] drm/xe: Support GT hardware error reporting for PVC.
  2023-08-23  8:58 ` [Intel-xe] [PATCH v5 3/4] drm/xe: Support GT hardware error reporting for PVC Himal Prasad Ghimiray
@ 2023-09-26  4:21   ` Aravind Iddamsetty
  2023-09-26  5:11     ` Ghimiray, Himal Prasad
  0 siblings, 1 reply; 21+ messages in thread
From: Aravind Iddamsetty @ 2023-09-26  4:21 UTC (permalink / raw)
  To: Himal Prasad Ghimiray, intel-xe; +Cc: Matt Roper, Rodrigo Vivi


On 23/08/23 14:28, Himal Prasad Ghimiray wrote:
> PVC supports GT error reporting via vector registers alongwith
> error status register. Add support to report these errors and
> update respective counters.
> Incase of Subslice error reported by vector register, process the
> error status register for applicable bits.
>
> Bspec: 54179, 54177, 53088, 53089
>
> Cc: Rodrigo Vivi <rodrigo.vivi@intel.com>
> Cc: Aravind Iddamsetty <aravind.iddamsetty@intel.com>
> Cc: Matthew Brost <matthew.brost@intel.com>
> Cc: Matt Roper <matthew.d.roper@intel.com>
> Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
> Signed-off-by: Himal Prasad Ghimiray <himal.prasad.ghimiray@intel.com>
> ---
>  drivers/gpu/drm/xe/regs/xe_gt_error_regs.h |  16 +++
>  drivers/gpu/drm/xe/xe_hw_error.c           | 122 ++++++++++++++++++++-
>  drivers/gpu/drm/xe/xe_hw_error.h           |  20 ++++
>  3 files changed, 154 insertions(+), 4 deletions(-)
>
> diff --git a/drivers/gpu/drm/xe/regs/xe_gt_error_regs.h b/drivers/gpu/drm/xe/regs/xe_gt_error_regs.h
> index 6180704a6149..39ea87914465 100644
> --- a/drivers/gpu/drm/xe/regs/xe_gt_error_regs.h
> +++ b/drivers/gpu/drm/xe/regs/xe_gt_error_regs.h
> @@ -10,4 +10,20 @@
>  #define ERR_STAT_GT_REG(x)              XE_REG(_PICK_EVEN((x), \
>  						_ERR_STAT_GT_COR, \
>  						_ERR_STAT_GT_NONFATAL))
> +
> +#define _ERR_STAT_GT_COR_VCTR_0         0x1002a0
> +#define _ERR_STAT_GT_COR_VCTR_1         0x1002a4
> +#define ERR_STAT_GT_COR_VCTR_REG(x)     XE_REG(_PICK_EVEN((x), \
> +						_ERR_STAT_GT_COR_VCTR_0, \
> +						_ERR_STAT_GT_COR_VCTR_1))
> +
> +#define _ERR_STAT_GT_FATAL_VCTR_0       0x100260
> +#define _ERR_STAT_GT_FATAL_VCTR_1       0x100264

the registers shall be defined in the ascending order of their addresses.
> +#define ERR_STAT_GT_FATAL_VCTR_REG(x)   XE_REG(_PICK_EVEN((x), \
> +						_ERR_STAT_GT_FATAL_VCTR_0, \
> +						_ERR_STAT_GT_FATAL_VCTR_1))
> +
> +#define ERR_STAT_GT_VCTR_REG(hw_err, x) (hw_err == HARDWARE_ERROR_CORRECTABLE ? \
> +						ERR_STAT_GT_COR_VCTR_REG(x) : \
> +						ERR_STAT_GT_FATAL_VCTR_REG(x))
>  #endif
> diff --git a/drivers/gpu/drm/xe/xe_hw_error.c b/drivers/gpu/drm/xe/xe_hw_error.c
> index 10aad0c396fb..deb020a509d2 100644
> --- a/drivers/gpu/drm/xe/xe_hw_error.c
> +++ b/drivers/gpu/drm/xe/xe_hw_error.c
> @@ -148,6 +148,41 @@ static const struct err_msg_cntr_pair err_stat_gt_correctable_reg[] = {
>  	[16 ... 31] = {"Undefined",             XE_GT_HW_ERR_UNKNOWN_CORR},
>  };
>  
> +static const struct err_msg_cntr_pair pvc_err_stat_gt_fatal_reg[] = {
> +	[0 ... 2]   =  {"Undefined",		XE_GT_HW_ERR_UNKNOWN_FATAL},
> +	[3]         =  {"FPU",			XE_GT_HW_ERR_FPU_FATAL},
> +	[4 ... 5]   =  {"Undefined",            XE_GT_HW_ERR_UNKNOWN_FATAL},
> +	[6]         =  {"GUC SRAM",		XE_GT_HW_ERR_GUC_FATAL},
> +	[7 ... 12]  =  {"Undefined",		XE_GT_HW_ERR_UNKNOWN_FATAL},
> +	[13]        =  {"SLM",			XE_GT_HW_ERR_SLM_FATAL},
> +	[14]        =  {"Undefined",		XE_GT_HW_ERR_UNKNOWN_FATAL},
> +	[15]        =  {"EU GRF",		XE_GT_HW_ERR_EU_GRF_FATAL},
> +	[16 ... 31] =  {"Undefined",            XE_GT_HW_ERR_UNKNOWN_FATAL},
> +};

let all fatal definitions be moved into the patch in which fatal is processed
> +
> +static const struct err_msg_cntr_pair pvc_err_stat_gt_correctable_reg[] = {
> +	[0]         = {"Undefined",             XE_GT_HW_ERR_UNKNOWN_CORR},
> +	[1]         = {"SINGLE BIT GUC SRAM",	XE_GT_HW_ERR_GUC_CORR},
> +	[2 ... 12]  = {"Undefined",		XE_GT_HW_ERR_UNKNOWN_CORR},
> +	[13]        = {"SINGLE BIT SLM",	XE_GT_HW_ERR_SLM_CORR},
> +	[14]        = {"SINGLE BIT EU IC",	XE_GT_HW_ERR_EU_IC_CORR},
> +	[15]        = {"SINGLE BIT EU GRF",	XE_GT_HW_ERR_EU_GRF_CORR},
> +	[16 ... 31] = {"Undefined",             XE_GT_HW_ERR_UNKNOWN_CORR},
> +};
> +
> +static const struct err_msg_cntr_pair err_stat_gt_fatal_vectr_reg[] = {
> +	[0 ... 1]         = {"SUBSLICE",	XE_GT_HW_ERR_SUBSLICE_FATAL},
> +	[2 ... 3]         = {"L3BANK",		XE_GT_HW_ERR_L3BANK_FATAL},
> +	[4 ... 5]         = {"Undefined",	XE_GT_HW_ERR_UNKNOWN_FATAL},
> +	[6]               = {"TLB",		XE_GT_HW_ERR_TLB_FATAL},
> +	[7]               = {"L3 FABRIC",	XE_GT_HW_ERR_L3_FABRIC_FATAL},
> +};
> +
> +static const struct err_msg_cntr_pair err_stat_gt_correctable_vectr_reg[] = {
> +	[0 ... 1]         = {"SUBSLICE",	XE_GT_HW_ERR_SUBSLICE_CORR},
> +	[2 ... 3]         = {"L3BANK",		XE_GT_HW_ERR_L3BANK_CORR},
> +};
> +
>  void xe_assign_hw_err_regs(struct xe_device *xe)
>  {
>  	const struct err_msg_cntr_pair **dev_err_stat = xe->hw_err_regs.dev_err_stat;
> @@ -164,6 +199,8 @@ void xe_assign_hw_err_regs(struct xe_device *xe)
>  		dev_err_stat[HARDWARE_ERROR_CORRECTABLE] = pvc_err_stat_correctable_reg;
>  		dev_err_stat[HARDWARE_ERROR_NONFATAL] = pvc_err_stat_nonfatal_reg;
>  		dev_err_stat[HARDWARE_ERROR_FATAL] = pvc_err_stat_fatal_reg;
> +		err_stat_gt[HARDWARE_ERROR_CORRECTABLE] = pvc_err_stat_gt_correctable_reg;
> +		err_stat_gt[HARDWARE_ERROR_FATAL] = pvc_err_stat_gt_fatal_reg;
>  	} else {
>  		/* For other platforms report only GT errors */
>  		dev_err_stat[HARDWARE_ERROR_CORRECTABLE] = dev_err_stat_correctable_reg;
> @@ -176,7 +213,7 @@ void xe_assign_hw_err_regs(struct xe_device *xe)
>  }
>  
>  static void
> -xe_gt_hw_error_handler(struct xe_gt *gt, const enum hardware_error hw_err)
> +xe_gt_hw_error_status_reg_handler(struct xe_gt *gt, const enum hardware_error hw_err)

is xe_gt_hw_error_log_status_reg sounding better ? and have this in the earlier patch
>  {
>  	const char *hw_err_str = hardware_error_type_to_str(hw_err);
>  	const struct err_msg_cntr_pair *errstat;
> @@ -186,9 +223,6 @@ xe_gt_hw_error_handler(struct xe_gt *gt, const enum hardware_error hw_err)
>  	u32 indx;
>  	u32 errbit;
>  
> -	if (gt_to_xe(gt)->info.platform == XE_PVC)
> -		return;
> -
>  	lockdep_assert_held(&gt_to_xe(gt)->irq.lock);
>  	err_regs = &gt_to_xe(gt)->hw_err_regs;
>  	errsrc = xe_mmio_read32(gt, ERR_STAT_GT_REG(hw_err));
> @@ -230,6 +264,86 @@ xe_gt_hw_error_handler(struct xe_gt *gt, const enum hardware_error hw_err)
>  clear_reg: xe_mmio_write32(gt, ERR_STAT_GT_REG(hw_err), errsrc);
>  }
>  
> +static void
> +xe_gt_hw_error_vectr_reg_handler(struct xe_gt *gt, const enum hardware_error hw_err)

similarly, xe_gt_hw_error_log_vector_reg
> +{
> +	const char *hw_err_str = hardware_error_type_to_str(hw_err);
> +	const struct err_msg_cntr_pair *errvctr;
> +	const char *errmsg;
> +	bool errstat_read;
> +	u32 num_vctr_reg;
> +	u32 indx;
> +	u32 vctr;
> +	u32 i;
> +
> +	switch (hw_err) {
> +	case HARDWARE_ERROR_FATAL:
> +		num_vctr_reg = ERR_STAT_GT_FATAL_VCTR_LEN;
> +		errvctr = err_stat_gt_fatal_vectr_reg;
why don't we define registers once like it's done  in  xe_assign_hw_err_regs.
> +		break;
> +	case HARDWARE_ERROR_NONFATAL:
> +		/*  The GT Non Fatal Error Status Register has only reserved bits
> +		 *  Nothing to service.
> +		 */
> +		drm_err_ratelimited(&gt_to_xe(gt)->drm, HW_ERR "GT%d detected %s error\n",
> +				    gt->info.id, hw_err_str);
> +		return;
> +	case HARDWARE_ERROR_CORRECTABLE:
> +		num_vctr_reg = ERR_STAT_GT_COR_VCTR_LEN;
> +		errvctr = err_stat_gt_correctable_vectr_reg;
> +		break;
> +	default:
> +		return;
> +	}
> +
> +	errstat_read = false;
> +
> +	for (i = 0 ; i < num_vctr_reg; i++) {
> +		vctr = xe_mmio_read32(gt, ERR_STAT_GT_VCTR_REG(hw_err, i));
> +		if (!vctr)
> +			continue;
> +
> +		errmsg = errvctr[i].errmsg;
> +		indx = errvctr[i].cntr_indx;
> +
> +		if (hw_err == HARDWARE_ERROR_FATAL)
> +			drm_err_ratelimited(&gt_to_xe(gt)->drm, HW_ERR
> +					    "GT%d detected %s %s error. ERR_VECT_GT_%s[%d]:0x%08x\n",
> +					    gt->info.id, errmsg, hw_err_str, hw_err_str, i, vctr);
> +		else
> +			drm_warn(&gt_to_xe(gt)->drm, HW_ERR
> +				 "GT%d detected %s %s error. ERR_VECT_GT_%s[%d]:0x%08x\n",
> +				 gt->info.id, errmsg, hw_err_str, hw_err_str, i, vctr);
> +
> +		if (i < ERR_STAT_GT_VCTR4)
> +			gt->errors.count[indx] += hweight32(vctr);
> +
> +		if (i == ERR_STAT_GT_VCTR6)
> +			gt->errors.count[indx] += hweight16(vctr);
> +
> +		if (i == ERR_STAT_GT_VCTR7)
> +			gt->errors.count[indx] += hweight8(vctr);
> +
> +		if (i < ERR_STAT_GT_VCTR2 && !errstat_read) {
> +			xe_gt_hw_error_status_reg_handler(gt, hw_err);
> +			errstat_read = true;

what is the need of errstat_read, isn't i < ERR_STAT_GT_VCTR2 sufficient

and also instead of if check for every i we can have switch case

switch (i) {

case ERR_STAT_GT_VCTR0:
case ERR_STAT_GT_VCTR1:
case ERR_STAT_GT_VCTR2:
case ERR_STAT_GT_VCTR3:

   gt->errors.count[indx] += hweight32(vctr);

    if ( i < ERR_STAT_GT_VCTR2)

        xe_gt_hw_error_status_reg_handler(gt, hw_err);

    break;

case ERR_STAT_GT_VCTR6:
case ERR_STAT_GT_VCTR7:

    gt->errors.count[indx] += (i == ERR_STAT_GT_VCTR6) ? hweight16(vctr) : hweight8(vctr);
    break;

default:

}

> +		}
> +
> +		xe_mmio_write32(gt, ERR_STAT_GT_VCTR_REG(hw_err, i), vctr);
> +	}
> +}
> +
> +static void
> +xe_gt_hw_error_handler(struct xe_gt *gt, const enum hardware_error hw_err)
> +{
> +	lockdep_assert_held(&gt_to_xe(gt)->irq.lock);
> +
> +	if (gt_to_xe(gt)->info.platform == XE_PVC)
> +		xe_gt_hw_error_vectr_reg_handler(gt, hw_err);
> +	else
> +		xe_gt_hw_error_status_reg_handler(gt, hw_err);
> +}
> +
>  static void
>  xe_hw_error_source_handler(struct xe_tile *tile, const enum hardware_error hw_err)
>  {
> diff --git a/drivers/gpu/drm/xe/xe_hw_error.h b/drivers/gpu/drm/xe/xe_hw_error.h
> index 82c947247c27..3fcbbcc338fe 100644
> --- a/drivers/gpu/drm/xe/xe_hw_error.h
> +++ b/drivers/gpu/drm/xe/xe_hw_error.h
> @@ -51,8 +51,21 @@ enum xe_tile_hw_errors {
>  	XE_TILE_HW_ERROR_MAX,
>  };
>  
> +enum gt_vctr_registers {
> +	ERR_STAT_GT_VCTR0 = 0,
> +	ERR_STAT_GT_VCTR1,
> +	ERR_STAT_GT_VCTR2,
> +	ERR_STAT_GT_VCTR3,
> +	ERR_STAT_GT_VCTR4,
> +	ERR_STAT_GT_VCTR5,
> +	ERR_STAT_GT_VCTR6,
> +	ERR_STAT_GT_VCTR7,
> +};
> +
>  /* Count of GT Correctable and FATAL HW ERRORS */
>  enum xe_gt_hw_errors {
> +	XE_GT_HW_ERR_SUBSLICE_CORR,
> +	XE_GT_HW_ERR_L3BANK_CORR,
>  	XE_GT_HW_ERR_L3_SNG_CORR,
>  	XE_GT_HW_ERR_GUC_CORR,
>  	XE_GT_HW_ERR_SAMPLER_CORR,
> @@ -60,6 +73,8 @@ enum xe_gt_hw_errors {
>  	XE_GT_HW_ERR_EU_IC_CORR,
>  	XE_GT_HW_ERR_EU_GRF_CORR,
>  	XE_GT_HW_ERR_UNKNOWN_CORR,
> +	XE_GT_HW_ERR_SUBSLICE_FATAL,
> +	XE_GT_HW_ERR_L3BANK_FATAL,
>  	XE_GT_HW_ERR_ARR_BIST_FATAL,
>  	XE_GT_HW_ERR_FPU_FATAL,
>  	XE_GT_HW_ERR_L3_DOUB_FATAL,
> @@ -71,10 +86,15 @@ enum xe_gt_hw_errors {
>  	XE_GT_HW_ERR_SLM_FATAL,
>  	XE_GT_HW_ERR_EU_IC_FATAL,
>  	XE_GT_HW_ERR_EU_GRF_FATAL,
> +	XE_GT_HW_ERR_TLB_FATAL,
> +	XE_GT_HW_ERR_L3_FABRIC_FATAL,
>  	XE_GT_HW_ERR_UNKNOWN_FATAL,
>  	XE_GT_HW_ERROR_MAX,
>  };
>  
> +#define ERR_STAT_GT_COR_VCTR_LEN (4)
> +#define ERR_STAT_GT_FATAL_VCTR_LEN (8)
> +
>  struct err_msg_cntr_pair {
>  	const char *errmsg;
>  	const u32 cntr_indx;
Thanks,
Aravind.

^ permalink raw reply	[flat|nested] 21+ messages in thread

* Re: [Intel-xe] [PATCH v5 4/4] drm/xe: Process fatal hardware errors.
  2023-08-23  8:58 ` [Intel-xe] [PATCH v5 4/4] drm/xe: Process fatal hardware errors Himal Prasad Ghimiray
@ 2023-09-26  4:21   ` Aravind Iddamsetty
  2023-09-26 10:24     ` Ghimiray, Himal Prasad
  0 siblings, 1 reply; 21+ messages in thread
From: Aravind Iddamsetty @ 2023-09-26  4:21 UTC (permalink / raw)
  To: Himal Prasad Ghimiray, intel-xe; +Cc: Matt Roper, Rodrigo Vivi


On 23/08/23 14:28, Himal Prasad Ghimiray wrote:
> Fatal errors are reported as PCIe errors. When a PCIe error is asserted,
> the OS will perform a device warm reset which causes the driver to reload.
> The error registers are sticky and the values are maintained through a
> warm reset. We read these registers during the boot flow of the driver and
> increment the respective error counters.
>
> Bspec: 53076
please mention 50875 as well.
>
> Cc: Rodrigo Vivi <rodrigo.vivi@intel.com>
> Cc: Aravind Iddamsetty <aravind.iddamsetty@intel.com>
> Cc: Matthew Brost <matthew.brost@intel.com>
> Cc: Matt Roper <matthew.d.roper@intel.com>
> Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
> Signed-off-by: Himal Prasad Ghimiray <himal.prasad.ghimiray@intel.com>
> ---
>  drivers/gpu/drm/xe/regs/xe_regs.h |  3 +++
>  drivers/gpu/drm/xe/xe_hw_error.c  | 37 ++++++++++++++++++++++++++++++-
>  drivers/gpu/drm/xe/xe_hw_error.h  |  3 ++-
>  drivers/gpu/drm/xe/xe_irq.c       |  2 +-
>  4 files changed, 42 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/gpu/drm/xe/regs/xe_regs.h b/drivers/gpu/drm/xe/regs/xe_regs.h
> index e223975a5acf..b8f2b1762d3f 100644
> --- a/drivers/gpu/drm/xe/regs/xe_regs.h
> +++ b/drivers/gpu/drm/xe/regs/xe_regs.h
> @@ -90,5 +90,8 @@
>  #define   GT_DW_IRQ(x)				REG_BIT(x)
>  #define   XE_ERROR_IRQ(x)			REG_BIT(26 + (x))
>  
> +#define DEV_PCIEERR_STATUS			XE_REG(0x100180)
> +#define   DEV_PCIEERR_IS_FATAL(x)		REG_BIT(x * 4 + 2)
place it as per the address.
> +
>  #define PVC_RP_STATE_CAP			XE_REG(0x281014)
>  #endif
> diff --git a/drivers/gpu/drm/xe/xe_hw_error.c b/drivers/gpu/drm/xe/xe_hw_error.c
> index deb020a509d2..9595e3369656 100644
> --- a/drivers/gpu/drm/xe/xe_hw_error.c
> +++ b/drivers/gpu/drm/xe/xe_hw_error.c
> @@ -183,7 +183,7 @@ static const struct err_msg_cntr_pair err_stat_gt_correctable_vectr_reg[] = {
>  	[2 ... 3]         = {"L3BANK",		XE_GT_HW_ERR_L3BANK_CORR},
>  };
>  
> -void xe_assign_hw_err_regs(struct xe_device *xe)
> +static void xe_assign_hw_err_regs(struct xe_device *xe)

change it in the patch that introduced it.
>  {
>  	const struct err_msg_cntr_pair **dev_err_stat = xe->hw_err_regs.dev_err_stat;
>  	const struct err_msg_cntr_pair **err_stat_gt = xe->hw_err_regs.err_stat_gt;
> @@ -417,3 +417,38 @@ xe_hw_error_irq_handler(struct xe_tile *tile, const u32 master_ctl)
>  			xe_hw_error_source_handler(tile, hw_err);
>  	}
>  }
> +
> +/**
> + * process_hw_errors - checks for the occurrence of HW errors
> + *
> + * This checks for the HW Errors including FATAL errors that might
> + * have occurred in the previous boot of the driver which will
> + * initiate PCIe FLR reset of the device and cause the

this is not right, in fact it is better to rephrase as:

"fatal will result in a card warm reset and driver will be reloaded."

> + * driver to reload.
> + */
> +void xe_process_hw_errors(struct xe_device *xe)
> +{
> +	struct xe_tile *root_tile = xe_device_get_root_tile(xe);
> +	struct xe_gt *root_mmio = root_tile->primary_gt;
> +
> +	u32 dev_pcieerr_status, master_ctl;
> +	struct xe_tile *tile;
> +	int i;
> +
> +	xe_assign_hw_err_regs(xe);

lets still have this in xe_irq_install, as it serves for a different purpose.
> +
> +	dev_pcieerr_status = xe_mmio_read32(root_mmio, DEV_PCIEERR_STATUS);
> +
> +	for_each_tile(tile, xe, i) {
> +		struct xe_gt *mmio = tile->primary_gt;
> +
> +		if (dev_pcieerr_status & DEV_PCIEERR_IS_FATAL(i))
> +			xe_hw_error_source_handler(tile, HARDWARE_ERROR_FATAL);
> +
> +		master_ctl = xe_mmio_read32(mmio, GFX_MSTR_IRQ);
> +		xe_hw_error_irq_handler(tile, master_ctl);
> +		xe_mmio_write32(mmio, GFX_MSTR_IRQ, master_ctl);
> +	}
> +	if (dev_pcieerr_status)
> +		xe_mmio_write32(root_mmio, DEV_PCIEERR_STATUS, dev_pcieerr_status);
> +}
> diff --git a/drivers/gpu/drm/xe/xe_hw_error.h b/drivers/gpu/drm/xe/xe_hw_error.h
> index 3fcbbcc338fe..2812407dd4bf 100644
> --- a/drivers/gpu/drm/xe/xe_hw_error.h
> +++ b/drivers/gpu/drm/xe/xe_hw_error.h
> @@ -104,5 +104,6 @@ struct xe_device;
>  struct xe_tile;
>  
>  void xe_hw_error_irq_handler(struct xe_tile *tile, const u32 master_ctl);
> -void xe_assign_hw_err_regs(struct xe_device *xe);
> +void xe_process_hw_errors(struct xe_device *xe);
> +
>  #endif
> diff --git a/drivers/gpu/drm/xe/xe_irq.c b/drivers/gpu/drm/xe/xe_irq.c
> index 48b933234342..be152ebd6ce9 100644
> --- a/drivers/gpu/drm/xe/xe_irq.c
> +++ b/drivers/gpu/drm/xe/xe_irq.c
> @@ -573,7 +573,7 @@ int xe_irq_install(struct xe_device *xe)
>  		return -EINVAL;
>  	}
>  
> -	xe_assign_hw_err_regs(xe);
> +	xe_process_hw_errors(xe);

this shall be called before xe_irq_reset.
>  
>  	xe->irq.enabled = true;
>  
Thanks,
Aravind.

^ permalink raw reply	[flat|nested] 21+ messages in thread

* Re: [Intel-xe] [PATCH v5 1/4] drm/xe: Handle errors from various components.
  2023-09-26  4:20   ` Aravind Iddamsetty
@ 2023-09-26  4:57     ` Ghimiray, Himal Prasad
  2023-09-26 10:09       ` Aravind Iddamsetty
  0 siblings, 1 reply; 21+ messages in thread
From: Ghimiray, Himal Prasad @ 2023-09-26  4:57 UTC (permalink / raw)
  To: Aravind Iddamsetty, intel-xe; +Cc: Jani Nikula, Matt Roper, Rodrigo Vivi


On 26-09-2023 09:50, Aravind Iddamsetty wrote:
> On 23/08/23 14:28, Himal Prasad Ghimiray wrote:
>> The GFX device can generate numbers of classes of error under the new
>> infrastructure: correctable, non-fatal, and fatal errors.
> The GFX device reports two classes of errors: uncorrectable and correctable.
> Depending on the severity uncorrectable errors are further classified as non fatal and fatal.
>> The non-fatal and fatal error classes distinguish between levels of
>> severity for uncorrectable errors. Driver will only handle logging
>> of errors and updating counters from various components within the
>> graphics device. Anything more will be handled at system level.
>>
>> For errors that will route as interrupts, three bits in the Master
>> Interrupt Register will be used to convey the class of error.
>>
>> For each class of error: Determine source of error (IP block) by reading
>> the Device Error Source Register (RW1C) that
>> corresponds to the class of error being serviced.
>>
>> Bspec: 50875, 53073, 53074, 53075
> Also may be you want to squash this with the last patch where fatal error processing is done,
> fatal errors are defined here but processed in your last patch or move all fatal definition to last patch.
Makes sense. Will squash in last patch.
>> Cc: Rodrigo Vivi <rodrigo.vivi@intel.com>
>> Cc: Aravind Iddamsetty <aravind.iddamsetty@intel.com>
>> Cc: Matthew Brost <matthew.brost@intel.com>
>> Cc: Matt Roper <matthew.d.roper@intel.com>
>> Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
>> Cc: Jani Nikula <jani.nikula@intel.com>
>> Signed-off-by: Himal Prasad Ghimiray <himal.prasad.ghimiray@intel.com>
>> ---
>>   drivers/gpu/drm/xe/Makefile                  |   1 +
>>   drivers/gpu/drm/xe/regs/xe_regs.h            |   2 +-
>>   drivers/gpu/drm/xe/regs/xe_tile_error_regs.h |  15 ++
>>   drivers/gpu/drm/xe/xe_device_types.h         |  11 +
>>   drivers/gpu/drm/xe/xe_hw_error.c             | 211 +++++++++++++++++++
>>   drivers/gpu/drm/xe/xe_hw_error.h             |  64 ++++++
>>   drivers/gpu/drm/xe/xe_irq.c                  |   3 +
>>   7 files changed, 306 insertions(+), 1 deletion(-)
>>   create mode 100644 drivers/gpu/drm/xe/regs/xe_tile_error_regs.h
>>   create mode 100644 drivers/gpu/drm/xe/xe_hw_error.c
>>   create mode 100644 drivers/gpu/drm/xe/xe_hw_error.h
>>
>> diff --git a/drivers/gpu/drm/xe/Makefile b/drivers/gpu/drm/xe/Makefile
>> index 550cdfed729e..6290c8ce0e84 100644
>> --- a/drivers/gpu/drm/xe/Makefile
>> +++ b/drivers/gpu/drm/xe/Makefile
>> @@ -75,6 +75,7 @@ xe-y += xe_bb.o \
>>   	xe_guc_submit.o \
>>   	xe_hw_engine.o \
>>   	xe_hw_engine_class_sysfs.o \
>> +	xe_hw_error.o \
>>   	xe_hw_fence.o \
>>   	xe_huc.o \
>>   	xe_huc_debugfs.o \
>> diff --git a/drivers/gpu/drm/xe/regs/xe_regs.h b/drivers/gpu/drm/xe/regs/xe_regs.h
>> index 39d7b0740bf0..e223975a5acf 100644
>> --- a/drivers/gpu/drm/xe/regs/xe_regs.h
>> +++ b/drivers/gpu/drm/xe/regs/xe_regs.h
>> @@ -88,7 +88,7 @@
>>   #define   GU_MISC_IRQ				REG_BIT(29)
>>   #define   DISPLAY_IRQ				REG_BIT(16)
>>   #define   GT_DW_IRQ(x)				REG_BIT(x)
>> +#define   XE_ERROR_IRQ(x)			REG_BIT(26 + (x))
>>   
>>   #define PVC_RP_STATE_CAP			XE_REG(0x281014)
>> -
>>   #endif
>> diff --git a/drivers/gpu/drm/xe/regs/xe_tile_error_regs.h b/drivers/gpu/drm/xe/regs/xe_tile_error_regs.h
>> new file mode 100644
>> index 000000000000..db78d6687213
>> --- /dev/null
>> +++ b/drivers/gpu/drm/xe/regs/xe_tile_error_regs.h
>> @@ -0,0 +1,15 @@
>> +/* SPDX-License-Identifier: MIT */
>> +/*
>> + * Copyright © 2023 Intel Corporation
>> + */
>> +#ifndef XE_TILE_ERROR_REGS_H_
>> +#define XE_TILE_ERROR_REGS_H_
>> +
>> +#include <linux/stddef.h>
>> +
>> +#define _DEV_ERR_STAT_NONFATAL                         0x100178
>> +#define _DEV_ERR_STAT_CORRECTABLE                      0x10017c
>> +#define DEV_ERR_STAT_REG(x)                            XE_REG(_PICK_EVEN((x), \
>> +								_DEV_ERR_STAT_CORRECTABLE, \
>> +								_DEV_ERR_STAT_NONFATAL))
>> +#endif
>> diff --git a/drivers/gpu/drm/xe/xe_device_types.h b/drivers/gpu/drm/xe/xe_device_types.h
>> index dbb732e14606..4e4184977709 100644
>> --- a/drivers/gpu/drm/xe/xe_device_types.h
>> +++ b/drivers/gpu/drm/xe/xe_device_types.h
>> @@ -14,6 +14,7 @@
>>   
>>   #include "xe_devcoredump_types.h"
>>   #include "xe_gt_types.h"
>> +#include "xe_hw_error.h"
>>   #include "xe_platform_types.h"
>>   #include "xe_step_types.h"
>>   
>> @@ -172,6 +173,11 @@ struct xe_tile {
>>   
>>   	/** @sysfs: sysfs' kobj used by xe_tile_sysfs */
>>   	struct kobject *sysfs;
>> +
>> +	/** @tile_hw_errors: hardware errors reported for the tile */
>> +	struct tile_hw_errors {
>> +		unsigned long count[XE_TILE_HW_ERROR_MAX];
>> +	} errors;
>>   };
>>   
>>   /**
>> @@ -359,6 +365,11 @@ struct xe_device {
>>   	 */
>>   	struct task_struct *pm_callback_task;
>>   
>> +	/** @hardware_errors_regs: list of hw error regs*/
>> +	struct hardware_errors_regs {
>> +		const struct err_msg_cntr_pair *dev_err_stat[HARDWARE_ERROR_MAX];
> I'm just thinking if it makes sense to move it to respective structs like tile or gt, any thoughts?
These structures are platform dependent not tiles/gt. IMO device is 
right place.
>> +	} hw_err_regs;
>> +
>>   	/* private: */
>>   
>>   #if IS_ENABLED(CONFIG_DRM_XE_DISPLAY)
>> diff --git a/drivers/gpu/drm/xe/xe_hw_error.c b/drivers/gpu/drm/xe/xe_hw_error.c
>> new file mode 100644
>> index 000000000000..357d0f962d91
>> --- /dev/null
>> +++ b/drivers/gpu/drm/xe/xe_hw_error.c
>> @@ -0,0 +1,211 @@
>> +// SPDX-License-Identifier: MIT
>> +/*
>> + * Copyright © 2023 Intel Corporation
>> + */
>> +
>> +#include "xe_hw_error.h"
>> +
>> +#include "regs/xe_regs.h"
>> +#include "regs/xe_tile_error_regs.h"
>> +#include "xe_device.h"
>> +#include "xe_mmio.h"
>> +
>> +static const char *
>> +hardware_error_type_to_str(const enum hardware_error hw_err)
>> +{
>> +	switch (hw_err) {
>> +	case HARDWARE_ERROR_CORRECTABLE:
>> +		return "CORRECTABLE";
>> +	case HARDWARE_ERROR_NONFATAL:
>> +		return "NONFATAL";
>> +	case HARDWARE_ERROR_FATAL:
>> +		return "FATAL";
>> +	default:
>> +		return "UNKNOWN";
>> +	}
>> +}
>> +
>> +static const struct err_msg_cntr_pair dg2_err_stat_fatal_reg[] = {
> the name err_msg_cntr_pair might not be appropriate as it err name and index into
> tile_hw_errors. err_name_index_pair ?? thoughts
ok.
>> +	[0]         = {"GT",			XE_TILE_HW_ERR_GT_FATAL},
>> +	[1 ... 3]   = {"Undefined",		XE_TILE_HW_ERR_UNKNOWN_FATAL},
>> +	[4]         = {"DISPLAY",		XE_TILE_HW_ERR_DISPLAY_FATAL},
>> +	[5 ... 7]   = {"Undefined",		XE_TILE_HW_ERR_UNKNOWN_FATAL},
>> +	[8]         = {"GSC error",		XE_TILE_HW_ERR_GSC_FATAL},
>> +	[9 ... 11]  = {"Undefined",		XE_TILE_HW_ERR_UNKNOWN_FATAL},
>> +	[12]        = {"SGUNIT",		XE_TILE_HW_ERR_SGUNIT_FATAL},
>> +	[13 ... 15] = {"Undefined",             XE_TILE_HW_ERR_UNKNOWN_FATAL},
>> +	[16]        = {"SOC",			XE_TILE_HW_ERR_SOC_FATAL},
>> +	[17 ... 31] = {"Undefined",             XE_TILE_HW_ERR_UNKNOWN_FATAL},
>> +};
>> +
>> +static const struct err_msg_cntr_pair dg2_err_stat_nonfatal_reg[] = {
>> +	[0]         = {"GT",			XE_TILE_HW_ERR_GT_NONFATAL},
>> +	[1 ... 3]   = {"Undefined",		XE_TILE_HW_ERR_UNKNOWN_NONFATAL},
>> +	[4]         = {"DISPLAY",		XE_TILE_HW_ERR_DISPLAY_NONFATAL},
>> +	[5 ... 7]   = {"Undefined",		XE_TILE_HW_ERR_UNKNOWN_NONFATAL},
>> +	[8]         = {"GSC error",		XE_TILE_HW_ERR_GSC_NONFATAL},
>> +	[9 ... 11]  = {"Undefined",		XE_TILE_HW_ERR_UNKNOWN_NONFATAL},
>> +	[12]        = {"SGUNIT",		XE_TILE_HW_ERR_SGUNIT_NONFATAL},
>> +	[13 ... 15] = {"Undefined",             XE_TILE_HW_ERR_UNKNOWN_NONFATAL},
>> +	[16]        = {"SOC",			XE_TILE_HW_ERR_SOC_NONFATAL},
>> +	[17 ... 19] = {"Undefined",             XE_TILE_HW_ERR_UNKNOWN_NONFATAL},
>> +	[20]        = {"MERT",			XE_TILE_HW_ERR_MERT_NONFATAL},
>> +	[21 ... 31] = {"Undefined",             XE_TILE_HW_ERR_UNKNOWN_NONFATAL},
>> +};
>> +
>> +static const struct err_msg_cntr_pair dg2_err_stat_correctable_reg[] = {
>> +	[0]         = {"GT",			XE_TILE_HW_ERR_GT_CORR},
>> +	[1 ... 3]   = {"Undefined",		XE_TILE_HW_ERR_UNKNOWN_CORR},
>> +	[4]         = {"DISPLAY",		XE_TILE_HW_ERR_DISPLAY_CORR},
>> +	[5 ... 7]   = {"Undefined",		XE_TILE_HW_ERR_UNKNOWN_CORR},
>> +	[8]         = {"GSC error",		XE_TILE_HW_ERR_GSC_CORR},
>> +	[9 ... 11]  = {"Undefined",		XE_TILE_HW_ERR_UNKNOWN_CORR},
>> +	[12]        = {"SGUNIT",		XE_TILE_HW_ERR_SGUNIT_CORR},
>> +	[13 ... 15] = {"Undefined",             XE_TILE_HW_ERR_UNKNOWN_CORR},
>> +	[16]        = {"SOC",			XE_TILE_HW_ERR_SOC_CORR},
>> +	[17 ... 31] = {"Undefined",             XE_TILE_HW_ERR_UNKNOWN_CORR},
>> +};
>> +
>> +static const struct err_msg_cntr_pair pvc_err_stat_fatal_reg[] = {
>> +	[0]         =  {"GT",			XE_TILE_HW_ERR_GT_FATAL},
>> +	[1]         =  {"SGGI Cmd Parity",	XE_TILE_HW_ERR_SGGI_FATAL},
>> +	[2 ... 7]   =  {"Undefined",		XE_TILE_HW_ERR_UNKNOWN_FATAL},
>> +	[8]         =  {"GSC error",		XE_TILE_HW_ERR_GSC_FATAL},
>> +	[9]         =  {"SGLI Cmd Parity",	XE_TILE_HW_ERR_SGLI_FATAL},
>> +	[10 ... 12] =  {"Undefined",		XE_TILE_HW_ERR_UNKNOWN_FATAL},
>> +	[13]        =  {"SGCI Cmd Parity",	XE_TILE_HW_ERR_SGCI_FATAL},
>> +	[14 ... 15] =  {"Undefined",		XE_TILE_HW_ERR_UNKNOWN_FATAL},
>> +	[16]        =  {"SOC ERROR",		XE_TILE_HW_ERR_SOC_FATAL},
>> +	[17 ... 19] =  {"Undefined",		XE_TILE_HW_ERR_UNKNOWN_FATAL},
>> +	[20]        =  {"MERT Cmd Parity",	XE_TILE_HW_ERR_MERT_FATAL},
>> +	[21 ... 31] =  {"Undefined",		XE_TILE_HW_ERR_UNKNOWN_FATAL},
>> +};
>> +
>> +static const struct err_msg_cntr_pair pvc_err_stat_nonfatal_reg[] = {
>> +	[0]         =  {"GT",			XE_TILE_HW_ERR_GT_NONFATAL},
>> +	[1]         =  {"SGGI Data Parity",	XE_TILE_HW_ERR_SGGI_NONFATAL},
>> +	[2 ... 7]   =  {"Undefined",		XE_TILE_HW_ERR_UNKNOWN_NONFATAL},
>> +	[8]         =  {"GSC",			XE_TILE_HW_ERR_GSC_NONFATAL},
>> +	[9]         =  {"SGLI Data Parity",	XE_TILE_HW_ERR_SGLI_NONFATAL},
>> +	[10 ... 12] =  {"Undefined",		XE_TILE_HW_ERR_UNKNOWN_NONFATAL},
>> +	[13]        =  {"SGCI Data Parity",	XE_TILE_HW_ERR_SGCI_NONFATAL},
>> +	[14 ... 15] =  {"Undefined",		XE_TILE_HW_ERR_UNKNOWN_NONFATAL},
>> +	[16]        =  {"SOC",			XE_TILE_HW_ERR_SOC_NONFATAL},
>> +	[17 ... 19] =  {"Undefined",		XE_TILE_HW_ERR_UNKNOWN_NONFATAL},
>> +	[20]        =  {"MERT Data Parity",	XE_TILE_HW_ERR_MERT_NONFATAL},
>> +	[21 ... 31] =  {"Undefined",            XE_TILE_HW_ERR_UNKNOWN_NONFATAL},
>> +};
>> +
>> +static const struct err_msg_cntr_pair pvc_err_stat_correctable_reg[] = {
>> +	[0]         =  {"GT",			XE_TILE_HW_ERR_GT_CORR},
>> +	[1 ... 7]   =  {"Undefined",		XE_TILE_HW_ERR_UNKNOWN_CORR},
>> +	[8]         =  {"GSC",			XE_TILE_HW_ERR_GSC_CORR},
>> +	[9 ... 31]  =  {"Undefined",		XE_TILE_HW_ERR_UNKNOWN_CORR},
>> +};
>> +
>> +static const struct err_msg_cntr_pair dev_err_stat_fatal_reg[] = {
>> +	[0]         =  {"GT",			XE_TILE_HW_ERR_GT_FATAL},
>> +	[1 ... 31]  =  {"Undefined",		XE_TILE_HW_ERR_UNKNOWN_FATAL},
>> +};
>> +
>> +static const struct err_msg_cntr_pair dev_err_stat_nonfatal_reg[] = {
>> +	[0]         =  {"GT",			XE_TILE_HW_ERR_GT_NONFATAL},
>> +	[1 ... 31]  =  {"Undefined",            XE_TILE_HW_ERR_UNKNOWN_NONFATAL},
>> +};
>> +
>> +static const struct err_msg_cntr_pair dev_err_stat_correctable_reg[] = {
>> +	[0]         =  {"GT",			XE_TILE_HW_ERR_GT_CORR},
>> +	[1 ... 31]  =  {"Undefined",		XE_TILE_HW_ERR_UNKNOWN_CORR},
>> +};
>> +
>> +void xe_assign_hw_err_regs(struct xe_device *xe)
>> +{
>> +	const struct err_msg_cntr_pair **dev_err_stat = xe->hw_err_regs.dev_err_stat;
>> +
>> +	if (xe->info.platform == XE_DG2) {
>> +		dev_err_stat[HARDWARE_ERROR_CORRECTABLE] = dg2_err_stat_correctable_reg;
>> +		dev_err_stat[HARDWARE_ERROR_NONFATAL] = dg2_err_stat_nonfatal_reg;
>> +		dev_err_stat[HARDWARE_ERROR_FATAL] = dg2_err_stat_fatal_reg;
>> +	} else if (xe->info.platform == XE_PVC) {
>> +		dev_err_stat[HARDWARE_ERROR_CORRECTABLE] = pvc_err_stat_correctable_reg;
>> +		dev_err_stat[HARDWARE_ERROR_NONFATAL] = pvc_err_stat_nonfatal_reg;
>> +		dev_err_stat[HARDWARE_ERROR_FATAL] = pvc_err_stat_fatal_reg;
>> +	} else {
>> +		/* For other platforms report only GT errors */
> why only GT errors??

Because GT errors will only be common to all platforms. The other errors 
are platform specific.

>> +		dev_err_stat[HARDWARE_ERROR_CORRECTABLE] = dev_err_stat_correctable_reg;
>> +		dev_err_stat[HARDWARE_ERROR_NONFATAL] = dev_err_stat_nonfatal_reg;
>> +		dev_err_stat[HARDWARE_ERROR_FATAL] = dev_err_stat_fatal_reg;
>> +	}
>> +}
>> +
>> +static void
>> +xe_hw_error_source_handler(struct xe_tile *tile, const enum hardware_error hw_err)
>> +{
>> +	const char *hw_err_str = hardware_error_type_to_str(hw_err);
>> +	const struct hardware_errors_regs *err_regs;
>> +	const struct err_msg_cntr_pair *errstat;
>> +	unsigned long errsrc;
>> +	unsigned long flags;
>> +	const char *errmsg;
>> +	struct xe_gt *mmio;
>> +	u32 indx;
>> +	u32 errbit;
>> +
>> +	spin_lock_irqsave(&tile_to_xe(tile)->irq.lock, flags);
>> +	err_regs = &tile_to_xe(tile)->hw_err_regs;
>> +	errstat = err_regs->dev_err_stat[hw_err];
>> +	mmio = tile->primary_gt;
>> +	errsrc = xe_mmio_read32(mmio, DEV_ERR_STAT_REG(hw_err));
>> +	if (!errsrc) {
>> +		drm_err_ratelimited(&tile_to_xe(tile)->drm, HW_ERR
>> +				    "TILE%d detected DEV_ERR_STAT_REG_%s blank!\n",
>> +				    tile->id, hw_err_str);
>> +		goto unlock;
>> +	}
>> +
>> +	drm_info(&tile_to_xe(tile)->drm, HW_ERR
>> +		 "TILE%d DEV_ERR_STAT_REG_%s=0x%08lx\n", tile->id, hw_err_str, errsrc);
>> +
>> +	for_each_set_bit(errbit, &errsrc, 32) {
>> +		errmsg = errstat[errbit].errmsg;
>> +		indx = errstat[errbit].cntr_indx;
>> +
>> +		if (hw_err == HARDWARE_ERROR_CORRECTABLE)
>> +			drm_warn(&tile_to_xe(tile)->drm,
>> +				 HW_ERR "TILE%d detected %s %s error, bit[%d] is set\n",
>> +				 tile->id, errmsg, hw_err_str, errbit);
>> +
>> +		else
>> +			drm_err_ratelimited(&tile_to_xe(tile)->drm,
>> +					    HW_ERR "TILE%d detected %s %s error, bit[%d] is set\n",
>> +					    tile->id, errmsg, hw_err_str, errbit);
>> +		tile->errors.count[indx]++;
> The register here is a top level register and some of the sources have second error level registers
> so the count shall be at second level source for all those that have and not at global level as here
> it will not give granularity.

My idea of having counter at top level was to have cumulative numbers 
for errors.

It will provide summation of all MSI's in case of correctable gt. Can we 
removed but looks logical to retain it.

>> +	}
>> +
>> +	xe_mmio_write32(mmio, DEV_ERR_STAT_REG(hw_err), errsrc);
>> +unlock:
>> +	spin_unlock_irqrestore(&tile_to_xe(tile)->irq.lock, flags);
>> +}
>> +
>> +/*
>> + * XE Platforms adds three Error bits to the Master Interrupt
>> + * Register to support error handling. These three bits are
>> + * used to convey the class of error:
>> + * FATAL, NONFATAL, or CORRECTABLE.
>> + *
>> + * To process an interrupt:
>> + *       Determine source of error (IP block) by reading
>> + *	 the Device Error Source Register (RW1C) that
>> + *	 corresponds to the class of error being serviced
>> + *	 and log the error.
>> + */
>> +void
>> +xe_hw_error_irq_handler(struct xe_tile *tile, const u32 master_ctl)
>> +{
>> +	enum hardware_error hw_err;
>> +
>> +	for (hw_err = 0; hw_err < HARDWARE_ERROR_MAX; hw_err++) {
>> +		if (master_ctl & XE_ERROR_IRQ(hw_err))
>> +			xe_hw_error_source_handler(tile, hw_err);
>> +	}
>> +}
>> diff --git a/drivers/gpu/drm/xe/xe_hw_error.h b/drivers/gpu/drm/xe/xe_hw_error.h
>> new file mode 100644
>> index 000000000000..c0c05b9130eb
>> --- /dev/null
>> +++ b/drivers/gpu/drm/xe/xe_hw_error.h
>> @@ -0,0 +1,64 @@
>> +/* SPDX-License-Identifier: MIT */
>> +/*
>> + * Copyright © 2023 Intel Corporation
>> + */
>> +#ifndef XE_HW_ERRORS_H_
>> +#define XE_HW_ERRORS_H_
>> +
>> +#include <linux/stddef.h>
>> +#include <linux/types.h>
>> +
>> +/* Error categories reported by hardware */
>> +enum hardware_error {
>> +	HARDWARE_ERROR_CORRECTABLE = 0,
>> +	HARDWARE_ERROR_NONFATAL = 1,
>> +	HARDWARE_ERROR_FATAL = 2,
>> +	HARDWARE_ERROR_MAX,
>> +};
>> +
>> +/* Count of  Correctable and Uncorrectable errors reported on tile */
>> +enum xe_tile_hw_errors {
>> +	XE_TILE_HW_ERR_GT_FATAL = 0,
>> +	XE_TILE_HW_ERR_SGGI_FATAL,
>> +	XE_TILE_HW_ERR_DISPLAY_FATAL,
>> +	XE_TILE_HW_ERR_SGDI_FATAL,
>> +	XE_TILE_HW_ERR_SGLI_FATAL,
>> +	XE_TILE_HW_ERR_SGUNIT_FATAL,
>> +	XE_TILE_HW_ERR_SGCI_FATAL,
>> +	XE_TILE_HW_ERR_GSC_FATAL,
>> +	XE_TILE_HW_ERR_SOC_FATAL,
>> +	XE_TILE_HW_ERR_MERT_FATAL,
>> +	XE_TILE_HW_ERR_SGMI_FATAL,
>> +	XE_TILE_HW_ERR_UNKNOWN_FATAL,
>> +	XE_TILE_HW_ERR_SGGI_NONFATAL,
>> +	XE_TILE_HW_ERR_DISPLAY_NONFATAL,
>> +	XE_TILE_HW_ERR_SGDI_NONFATAL,
>> +	XE_TILE_HW_ERR_SGLI_NONFATAL,
>> +	XE_TILE_HW_ERR_GT_NONFATAL,
>> +	XE_TILE_HW_ERR_SGUNIT_NONFATAL,
>> +	XE_TILE_HW_ERR_SGCI_NONFATAL,
>> +	XE_TILE_HW_ERR_GSC_NONFATAL,
>> +	XE_TILE_HW_ERR_SOC_NONFATAL,
>> +	XE_TILE_HW_ERR_MERT_NONFATAL,
>> +	XE_TILE_HW_ERR_SGMI_NONFATAL,
>> +	XE_TILE_HW_ERR_UNKNOWN_NONFATAL,
>> +	XE_TILE_HW_ERR_GT_CORR,
>> +	XE_TILE_HW_ERR_DISPLAY_CORR,
>> +	XE_TILE_HW_ERR_SGUNIT_CORR,
>> +	XE_TILE_HW_ERR_GSC_CORR,
>> +	XE_TILE_HW_ERR_SOC_CORR,
>> +	XE_TILE_HW_ERR_UNKNOWN_CORR,
>> +	XE_TILE_HW_ERROR_MAX,
>> +};
>> +
>> +struct err_msg_cntr_pair {
>> +	const char *errmsg;
>> +	const u32 cntr_indx;
>> +};
>> +
>> +struct xe_device;
>> +struct xe_tile;
>> +
>> +void xe_hw_error_irq_handler(struct xe_tile *tile, const u32 master_ctl);
>> +void xe_assign_hw_err_regs(struct xe_device *xe);
>> +#endif
>> diff --git a/drivers/gpu/drm/xe/xe_irq.c b/drivers/gpu/drm/xe/xe_irq.c
>> index 1dee3e832eb5..48b933234342 100644
>> --- a/drivers/gpu/drm/xe/xe_irq.c
>> +++ b/drivers/gpu/drm/xe/xe_irq.c
>> @@ -418,6 +418,7 @@ static irqreturn_t dg1_irq_handler(int irq, void *arg)
>>   		xe_mmio_write32(mmio, GFX_MSTR_IRQ, master_ctl);
>>   
>>   		gt_irq_handler(tile, master_ctl, intr_dw, identity);
>> +		xe_hw_error_irq_handler(tile, master_ctl);
>>   
>>   		/*
>>   		 * Display interrupts (including display backlight operations
>> @@ -572,6 +573,8 @@ int xe_irq_install(struct xe_device *xe)
>>   		return -EINVAL;
>>   	}
>>   
>> +	xe_assign_hw_err_regs(xe);
>> +
>>   	xe->irq.enabled = true;
>>   
>>   	xe_irq_reset(xe);
> Thanks,
> Aravind.

^ permalink raw reply	[flat|nested] 21+ messages in thread

* Re: [Intel-xe] [PATCH v5 2/4] drm/xe: Log and count the GT hardware errors.
  2023-09-26  4:20   ` Aravind Iddamsetty
@ 2023-09-26  5:08     ` Ghimiray, Himal Prasad
  0 siblings, 0 replies; 21+ messages in thread
From: Ghimiray, Himal Prasad @ 2023-09-26  5:08 UTC (permalink / raw)
  To: Aravind Iddamsetty, intel-xe; +Cc: Jani Nikula, Matt Roper, Rodrigo Vivi


On 26-09-2023 09:50, Aravind Iddamsetty wrote:
> On 23/08/23 14:28, Himal Prasad Ghimiray wrote:
>> For the errors reported by GT unit, read the GT error register.
>> Log and count these errors and clear the error register.
>>
>> Bspec: 53088, 53089, 53090
>>
>> Cc: Rodrigo Vivi <rodrigo.vivi@intel.com>
>> Cc: Aravind Iddamsetty <aravind.iddamsetty@intel.com>
>> Cc: Matthew Brost <matthew.brost@intel.com>
>> Cc: Matt Roper <matthew.d.roper@intel.com>
>> Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
>> Cc: Jani Nikula <jani.nikula@intel.com>
>> Signed-off-by: Himal Prasad Ghimiray <himal.prasad.ghimiray@intel.com>
>> ---
>>   drivers/gpu/drm/xe/regs/xe_gt_error_regs.h | 13 +++
>>   drivers/gpu/drm/xe/xe_device_types.h       |  1 +
>>   drivers/gpu/drm/xe/xe_gt_types.h           |  7 ++
>>   drivers/gpu/drm/xe/xe_hw_error.c           | 96 +++++++++++++++++++++-
>>   drivers/gpu/drm/xe/xe_hw_error.h           | 24 ++++++
>>   5 files changed, 140 insertions(+), 1 deletion(-)
>>   create mode 100644 drivers/gpu/drm/xe/regs/xe_gt_error_regs.h
>>
>> diff --git a/drivers/gpu/drm/xe/regs/xe_gt_error_regs.h b/drivers/gpu/drm/xe/regs/xe_gt_error_regs.h
>> new file mode 100644
>> index 000000000000..6180704a6149
>> --- /dev/null
>> +++ b/drivers/gpu/drm/xe/regs/xe_gt_error_regs.h
>> @@ -0,0 +1,13 @@
>> +/* SPDX-License-Identifier: MIT */
>> +/*
>> + * Copyright © 2023 Intel Corporation
>> + */
>> +#ifndef XE_GT_ERROR_REGS_H_
>> +#define XE_GT_ERROR_REGS_H_
>> +
>> +#define _ERR_STAT_GT_COR                0x100160
>> +#define _ERR_STAT_GT_NONFATAL           0x100164
>> +#define ERR_STAT_GT_REG(x)              XE_REG(_PICK_EVEN((x), \
>> +						_ERR_STAT_GT_COR, \
>> +						_ERR_STAT_GT_NONFATAL))
>> +#endif
>> diff --git a/drivers/gpu/drm/xe/xe_device_types.h b/drivers/gpu/drm/xe/xe_device_types.h
>> index 4e4184977709..96029d3348b3 100644
>> --- a/drivers/gpu/drm/xe/xe_device_types.h
>> +++ b/drivers/gpu/drm/xe/xe_device_types.h
>> @@ -368,6 +368,7 @@ struct xe_device {
>>   	/** @hardware_errors_regs: list of hw error regs*/
>>   	struct hardware_errors_regs {
>>   		const struct err_msg_cntr_pair *dev_err_stat[HARDWARE_ERROR_MAX];
>> +		const struct err_msg_cntr_pair *err_stat_gt[HARDWARE_ERROR_MAX];
> same here should we make it part of struct xe_gt?
Same comment as in previous patch.
>>   	} hw_err_regs;
>>   
>>   	/* private: */
>> diff --git a/drivers/gpu/drm/xe/xe_gt_types.h b/drivers/gpu/drm/xe/xe_gt_types.h
>> index 35b8c19fa8bf..5daff5c434c7 100644
>> --- a/drivers/gpu/drm/xe/xe_gt_types.h
>> +++ b/drivers/gpu/drm/xe/xe_gt_types.h
>> @@ -9,10 +9,12 @@
>>   #include "xe_force_wake_types.h"
>>   #include "xe_gt_idle_sysfs_types.h"
>>   #include "xe_hw_engine_types.h"
>> +#include "xe_hw_error.h"
>>   #include "xe_hw_fence_types.h"
>>   #include "xe_reg_sr_types.h"
>>   #include "xe_sa_types.h"
>>   #include "xe_uc_types.h"
>> +#include "regs/xe_gt_error_regs.h"
>>   
>>   struct xe_exec_queue_ops;
>>   struct xe_migrate;
>> @@ -346,6 +348,11 @@ struct xe_gt {
>>   		/** @oob: bitmap with active OOB workaroudns */
>>   		unsigned long *oob;
>>   	} wa_active;
>> +
>> +	/** @gt_hw_errors: hardware errors reported for the gt */
>> +	struct gt_hw_errors {
>> +		 unsigned long count[XE_GT_HW_ERROR_MAX];
>> +	} errors;
>>   };
>>   
>>   #endif
>> diff --git a/drivers/gpu/drm/xe/xe_hw_error.c b/drivers/gpu/drm/xe/xe_hw_error.c
>> index 357d0f962d91..10aad0c396fb 100644
>> --- a/drivers/gpu/drm/xe/xe_hw_error.c
>> +++ b/drivers/gpu/drm/xe/xe_hw_error.c
>> @@ -118,14 +118,48 @@ static const struct err_msg_cntr_pair dev_err_stat_correctable_reg[] = {
>>   	[1 ... 31]  =  {"Undefined",		XE_TILE_HW_ERR_UNKNOWN_CORR},
>>   };
>>   
>> +static const struct err_msg_cntr_pair err_stat_gt_fatal_reg[] = {
>> +	[0]         =  {"Undefined",		XE_GT_HW_ERR_UNKNOWN_FATAL},
>> +	[1]         =  {"Array BIST",		XE_GT_HW_ERR_ARR_BIST_FATAL},
>> +	[2]         =  {"Undefined",		XE_GT_HW_ERR_UNKNOWN_FATAL},
>> +	[3]         =  {"FPU",			XE_GT_HW_ERR_FPU_FATAL},
>> +	[4]         =  {"L3 Double",		XE_GT_HW_ERR_L3_DOUB_FATAL},
>> +	[5]         =  {"L3 ECC Checker",	XE_GT_HW_ERR_L3_ECC_CHK_FATAL},
>> +	[6]         =  {"GUC SRAM",		XE_GT_HW_ERR_GUC_FATAL},
>> +	[7]         =  {"Undefined",		XE_GT_HW_ERR_UNKNOWN_FATAL},
>> +	[8]         =  {"IDI PARITY",		XE_GT_HW_ERR_IDI_PAR_FATAL},
>> +	[9]	    =  {"SQIDI",		XE_GT_HW_ERR_SQIDI_FATAL},
>> +	[10 ... 11] =  {"Undefined",		XE_GT_HW_ERR_UNKNOWN_FATAL},
>> +	[12]        =  {"SAMPLER",		XE_GT_HW_ERR_SAMPLER_FATAL},
>> +	[13]        =  {"SLM",			XE_GT_HW_ERR_SLM_FATAL},
>> +	[14]        =  {"EU IC",		XE_GT_HW_ERR_EU_IC_FATAL},
>> +	[15]        =  {"EU GRF",		XE_GT_HW_ERR_EU_GRF_FATAL},
>> +	[16 ... 31] =  {"Undefined",            XE_GT_HW_ERR_UNKNOWN_FATAL},
>> +};
> as the fatal error path is different, these shall be enabled in the patch that enables
> fatal error processing.
Will squash patch 1 and 4. so fatal reporting will be retained here.
>> +
>> +static const struct err_msg_cntr_pair err_stat_gt_correctable_reg[] = {
>> +	[0]         = {"L3 SINGLE",		XE_GT_HW_ERR_L3_SNG_CORR},
>> +	[1]         = {"SINGLE BIT GUC SRAM",	XE_GT_HW_ERR_GUC_CORR},
>> +	[2 ... 11]  = {"Undefined",		XE_GT_HW_ERR_UNKNOWN_CORR},
>> +	[12]        = {"SINGLE BIT SAMPLER",	XE_GT_HW_ERR_SAMPLER_CORR},
>> +	[13]        = {"SINGLE BIT SLM",	XE_GT_HW_ERR_SLM_CORR},
>> +	[14]        = {"SINGLE BIT EU IC",	XE_GT_HW_ERR_EU_IC_CORR},
>> +	[15]        = {"SINGLE BIT EU GRF",	XE_GT_HW_ERR_EU_GRF_CORR},
>> +	[16 ... 31] = {"Undefined",             XE_GT_HW_ERR_UNKNOWN_CORR},
>> +};
>> +
>>   void xe_assign_hw_err_regs(struct xe_device *xe)
>>   {
>>   	const struct err_msg_cntr_pair **dev_err_stat = xe->hw_err_regs.dev_err_stat;
>> +	const struct err_msg_cntr_pair **err_stat_gt = xe->hw_err_regs.err_stat_gt;
>>   
>>   	if (xe->info.platform == XE_DG2) {
>>   		dev_err_stat[HARDWARE_ERROR_CORRECTABLE] = dg2_err_stat_correctable_reg;
>>   		dev_err_stat[HARDWARE_ERROR_NONFATAL] = dg2_err_stat_nonfatal_reg;
>>   		dev_err_stat[HARDWARE_ERROR_FATAL] = dg2_err_stat_fatal_reg;
>> +
>> +		err_stat_gt[HARDWARE_ERROR_CORRECTABLE] = err_stat_gt_correctable_reg;
>> +		err_stat_gt[HARDWARE_ERROR_FATAL] = err_stat_gt_fatal_reg;
>>   	} else if (xe->info.platform == XE_PVC) {
>>   		dev_err_stat[HARDWARE_ERROR_CORRECTABLE] = pvc_err_stat_correctable_reg;
>>   		dev_err_stat[HARDWARE_ERROR_NONFATAL] = pvc_err_stat_nonfatal_reg;
>> @@ -135,9 +169,67 @@ void xe_assign_hw_err_regs(struct xe_device *xe)
>>   		dev_err_stat[HARDWARE_ERROR_CORRECTABLE] = dev_err_stat_correctable_reg;
>>   		dev_err_stat[HARDWARE_ERROR_NONFATAL] = dev_err_stat_nonfatal_reg;
>>   		dev_err_stat[HARDWARE_ERROR_FATAL] = dev_err_stat_fatal_reg;
>> +
>> +		err_stat_gt[HARDWARE_ERROR_CORRECTABLE] = err_stat_gt_correctable_reg;
>> +		err_stat_gt[HARDWARE_ERROR_FATAL] = err_stat_gt_fatal_reg;
> what platforms are targeted as part of else?
Assumption is all platforms will support GT error reporting.
>>   	}
>>   }
>>   
>> +static void
>> +xe_gt_hw_error_handler(struct xe_gt *gt, const enum hardware_error hw_err)
> the function is defined here and changed in next patch can't we have a
> common one between these.
WIll address.
>> +{
>> +	const char *hw_err_str = hardware_error_type_to_str(hw_err);
>> +	const struct err_msg_cntr_pair *errstat;
>> +	struct hardware_errors_regs *err_regs;
>> +	unsigned long errsrc;
>> +	const char *errmsg;
>> +	u32 indx;
>> +	u32 errbit;
>> +
>> +	if (gt_to_xe(gt)->info.platform == XE_PVC)
>> +		return;
>> +
>> +	lockdep_assert_held(&gt_to_xe(gt)->irq.lock);
>> +	err_regs = &gt_to_xe(gt)->hw_err_regs;
>> +	errsrc = xe_mmio_read32(gt, ERR_STAT_GT_REG(hw_err));
>> +	if (!errsrc) {
>> +		drm_err_ratelimited(&gt_to_xe(gt)->drm, HW_ERR
>> +				    "GT%d detected ERR_STAT_GT_REG_%s blank!\n",
>> +				    gt->info.id, hw_err_str);
>> +		return;
>> +	}
>> +
>> +	drm_info(&gt_to_xe(gt)->drm, HW_ERR "GT%d ERR_STAT_GT_REG_%s=0x%08lx\n",
>> +		 gt->info.id, hw_err_str, errsrc);
> will drm_dbg makes more sense here and everywhere else to dump the register contents
Ya sure.
>> +
>> +	if (hw_err == HARDWARE_ERROR_NONFATAL) {
>> +		/*  The GT Non Fatal Error Status Register has only reserved bits
>> +		 *  Nothing to service.
>> +		 */
>> +		drm_err_ratelimited(&gt_to_xe(gt)->drm, HW_ERR "GT%d detected %s error\n",
>> +				    gt->info.id, hw_err_str);
>> +		goto clear_reg;
>> +	}
>> +
>> +	errstat = err_regs->err_stat_gt[hw_err];
>> +	for_each_set_bit(errbit, &errsrc, 32) {
>> +		errmsg = errstat[errbit].errmsg;
>> +		indx = errstat[errbit].cntr_indx;
>> +
>> +		if (hw_err == HARDWARE_ERROR_FATAL)
>> +			drm_err_ratelimited(&gt_to_xe(gt)->drm, HW_ERR
>> +					    "GT%d detected %s %s error, bit[%d] is set\n",
>> +					    gt->info.id, errmsg, hw_err_str, errbit);
> this shall be part of last patch in the series, where the fatal errors are processed.
>> +		else
>> +			drm_warn(&gt_to_xe(gt)->drm, HW_ERR
>> +				 "GT%d detected %s %s error, bit[%d] is set\n",
>> +				 gt->info.id, errmsg, hw_err_str, errbit);
>> +
>> +		gt->errors.count[indx]++;
>> +	}
>> +clear_reg: xe_mmio_write32(gt, ERR_STAT_GT_REG(hw_err), errsrc);
> a new line after a label is preferred.
ok.
>> +}
>> +
>>   static void
>>   xe_hw_error_source_handler(struct xe_tile *tile, const enum hardware_error hw_err)
>>   {
>> @@ -174,7 +266,6 @@ xe_hw_error_source_handler(struct xe_tile *tile, const enum hardware_error hw_er
>>   			drm_warn(&tile_to_xe(tile)->drm,
>>   				 HW_ERR "TILE%d detected %s %s error, bit[%d] is set\n",
>>   				 tile->id, errmsg, hw_err_str, errbit);
>> -
>>   		else
>>   			drm_err_ratelimited(&tile_to_xe(tile)->drm,
>>   					    HW_ERR "TILE%d detected %s %s error, bit[%d] is set\n",
>> @@ -182,6 +273,9 @@ xe_hw_error_source_handler(struct xe_tile *tile, const enum hardware_error hw_er
>>   		tile->errors.count[indx]++;
>>   	}
>>   
>> +	if (errsrc & REG_BIT(0))
> define the BIT and use it here.
Hmm
>> +		xe_gt_hw_error_handler(tile->primary_gt, hw_err);
>> +
>>   	xe_mmio_write32(mmio, DEV_ERR_STAT_REG(hw_err), errsrc);
>>   unlock:
>>   	spin_unlock_irqrestore(&tile_to_xe(tile)->irq.lock, flags);
>> diff --git a/drivers/gpu/drm/xe/xe_hw_error.h b/drivers/gpu/drm/xe/xe_hw_error.h
>> index c0c05b9130eb..82c947247c27 100644
>> --- a/drivers/gpu/drm/xe/xe_hw_error.h
>> +++ b/drivers/gpu/drm/xe/xe_hw_error.h
>> @@ -51,6 +51,30 @@ enum xe_tile_hw_errors {
>>   	XE_TILE_HW_ERROR_MAX,
>>   };
>>   
>> +/* Count of GT Correctable and FATAL HW ERRORS */
>> +enum xe_gt_hw_errors {
>> +	XE_GT_HW_ERR_L3_SNG_CORR,
>> +	XE_GT_HW_ERR_GUC_CORR,
>> +	XE_GT_HW_ERR_SAMPLER_CORR,
>> +	XE_GT_HW_ERR_SLM_CORR,
>> +	XE_GT_HW_ERR_EU_IC_CORR,
>> +	XE_GT_HW_ERR_EU_GRF_CORR,
>> +	XE_GT_HW_ERR_UNKNOWN_CORR,
>> +	XE_GT_HW_ERR_ARR_BIST_FATAL,
>> +	XE_GT_HW_ERR_FPU_FATAL,
>> +	XE_GT_HW_ERR_L3_DOUB_FATAL,
>> +	XE_GT_HW_ERR_L3_ECC_CHK_FATAL,
>> +	XE_GT_HW_ERR_GUC_FATAL,
>> +	XE_GT_HW_ERR_IDI_PAR_FATAL,
>> +	XE_GT_HW_ERR_SQIDI_FATAL,
>> +	XE_GT_HW_ERR_SAMPLER_FATAL,
>> +	XE_GT_HW_ERR_SLM_FATAL,
>> +	XE_GT_HW_ERR_EU_IC_FATAL,
>> +	XE_GT_HW_ERR_EU_GRF_FATAL,
>> +	XE_GT_HW_ERR_UNKNOWN_FATAL,
>> +	XE_GT_HW_ERROR_MAX,
>> +};
> same here, define all fatals where they are actually used.
>> +
>>   struct err_msg_cntr_pair {
>>   	const char *errmsg;
>>   	const u32 cntr_indx;
> Thanks,
> Aravind.

^ permalink raw reply	[flat|nested] 21+ messages in thread

* Re: [Intel-xe] [PATCH v5 3/4] drm/xe: Support GT hardware error reporting for PVC.
  2023-09-26  4:21   ` Aravind Iddamsetty
@ 2023-09-26  5:11     ` Ghimiray, Himal Prasad
  0 siblings, 0 replies; 21+ messages in thread
From: Ghimiray, Himal Prasad @ 2023-09-26  5:11 UTC (permalink / raw)
  To: Aravind Iddamsetty, intel-xe; +Cc: Matt Roper, Rodrigo Vivi


On 26-09-2023 09:51, Aravind Iddamsetty wrote:
> On 23/08/23 14:28, Himal Prasad Ghimiray wrote:
>> PVC supports GT error reporting via vector registers alongwith
>> error status register. Add support to report these errors and
>> update respective counters.
>> Incase of Subslice error reported by vector register, process the
>> error status register for applicable bits.
>>
>> Bspec: 54179, 54177, 53088, 53089
>>
>> Cc: Rodrigo Vivi <rodrigo.vivi@intel.com>
>> Cc: Aravind Iddamsetty <aravind.iddamsetty@intel.com>
>> Cc: Matthew Brost <matthew.brost@intel.com>
>> Cc: Matt Roper <matthew.d.roper@intel.com>
>> Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
>> Signed-off-by: Himal Prasad Ghimiray <himal.prasad.ghimiray@intel.com>
>> ---
>>   drivers/gpu/drm/xe/regs/xe_gt_error_regs.h |  16 +++
>>   drivers/gpu/drm/xe/xe_hw_error.c           | 122 ++++++++++++++++++++-
>>   drivers/gpu/drm/xe/xe_hw_error.h           |  20 ++++
>>   3 files changed, 154 insertions(+), 4 deletions(-)
>>
>> diff --git a/drivers/gpu/drm/xe/regs/xe_gt_error_regs.h b/drivers/gpu/drm/xe/regs/xe_gt_error_regs.h
>> index 6180704a6149..39ea87914465 100644
>> --- a/drivers/gpu/drm/xe/regs/xe_gt_error_regs.h
>> +++ b/drivers/gpu/drm/xe/regs/xe_gt_error_regs.h
>> @@ -10,4 +10,20 @@
>>   #define ERR_STAT_GT_REG(x)              XE_REG(_PICK_EVEN((x), \
>>   						_ERR_STAT_GT_COR, \
>>   						_ERR_STAT_GT_NONFATAL))
>> +
>> +#define _ERR_STAT_GT_COR_VCTR_0         0x1002a0
>> +#define _ERR_STAT_GT_COR_VCTR_1         0x1002a4
>> +#define ERR_STAT_GT_COR_VCTR_REG(x)     XE_REG(_PICK_EVEN((x), \
>> +						_ERR_STAT_GT_COR_VCTR_0, \
>> +						_ERR_STAT_GT_COR_VCTR_1))
>> +
>> +#define _ERR_STAT_GT_FATAL_VCTR_0       0x100260
>> +#define _ERR_STAT_GT_FATAL_VCTR_1       0x100264
> the registers shall be defined in the ascending order of their addresses.
sure.
>> +#define ERR_STAT_GT_FATAL_VCTR_REG(x)   XE_REG(_PICK_EVEN((x), \
>> +						_ERR_STAT_GT_FATAL_VCTR_0, \
>> +						_ERR_STAT_GT_FATAL_VCTR_1))
>> +
>> +#define ERR_STAT_GT_VCTR_REG(hw_err, x) (hw_err == HARDWARE_ERROR_CORRECTABLE ? \
>> +						ERR_STAT_GT_COR_VCTR_REG(x) : \
>> +						ERR_STAT_GT_FATAL_VCTR_REG(x))
>>   #endif
>> diff --git a/drivers/gpu/drm/xe/xe_hw_error.c b/drivers/gpu/drm/xe/xe_hw_error.c
>> index 10aad0c396fb..deb020a509d2 100644
>> --- a/drivers/gpu/drm/xe/xe_hw_error.c
>> +++ b/drivers/gpu/drm/xe/xe_hw_error.c
>> @@ -148,6 +148,41 @@ static const struct err_msg_cntr_pair err_stat_gt_correctable_reg[] = {
>>   	[16 ... 31] = {"Undefined",             XE_GT_HW_ERR_UNKNOWN_CORR},
>>   };
>>   
>> +static const struct err_msg_cntr_pair pvc_err_stat_gt_fatal_reg[] = {
>> +	[0 ... 2]   =  {"Undefined",		XE_GT_HW_ERR_UNKNOWN_FATAL},
>> +	[3]         =  {"FPU",			XE_GT_HW_ERR_FPU_FATAL},
>> +	[4 ... 5]   =  {"Undefined",            XE_GT_HW_ERR_UNKNOWN_FATAL},
>> +	[6]         =  {"GUC SRAM",		XE_GT_HW_ERR_GUC_FATAL},
>> +	[7 ... 12]  =  {"Undefined",		XE_GT_HW_ERR_UNKNOWN_FATAL},
>> +	[13]        =  {"SLM",			XE_GT_HW_ERR_SLM_FATAL},
>> +	[14]        =  {"Undefined",		XE_GT_HW_ERR_UNKNOWN_FATAL},
>> +	[15]        =  {"EU GRF",		XE_GT_HW_ERR_EU_GRF_FATAL},
>> +	[16 ... 31] =  {"Undefined",            XE_GT_HW_ERR_UNKNOWN_FATAL},
>> +};
> let all fatal definitions be moved into the patch in which fatal is processed
Squashing patch 4 with pacth 1.
>> +
>> +static const struct err_msg_cntr_pair pvc_err_stat_gt_correctable_reg[] = {
>> +	[0]         = {"Undefined",             XE_GT_HW_ERR_UNKNOWN_CORR},
>> +	[1]         = {"SINGLE BIT GUC SRAM",	XE_GT_HW_ERR_GUC_CORR},
>> +	[2 ... 12]  = {"Undefined",		XE_GT_HW_ERR_UNKNOWN_CORR},
>> +	[13]        = {"SINGLE BIT SLM",	XE_GT_HW_ERR_SLM_CORR},
>> +	[14]        = {"SINGLE BIT EU IC",	XE_GT_HW_ERR_EU_IC_CORR},
>> +	[15]        = {"SINGLE BIT EU GRF",	XE_GT_HW_ERR_EU_GRF_CORR},
>> +	[16 ... 31] = {"Undefined",             XE_GT_HW_ERR_UNKNOWN_CORR},
>> +};
>> +
>> +static const struct err_msg_cntr_pair err_stat_gt_fatal_vectr_reg[] = {
>> +	[0 ... 1]         = {"SUBSLICE",	XE_GT_HW_ERR_SUBSLICE_FATAL},
>> +	[2 ... 3]         = {"L3BANK",		XE_GT_HW_ERR_L3BANK_FATAL},
>> +	[4 ... 5]         = {"Undefined",	XE_GT_HW_ERR_UNKNOWN_FATAL},
>> +	[6]               = {"TLB",		XE_GT_HW_ERR_TLB_FATAL},
>> +	[7]               = {"L3 FABRIC",	XE_GT_HW_ERR_L3_FABRIC_FATAL},
>> +};
>> +
>> +static const struct err_msg_cntr_pair err_stat_gt_correctable_vectr_reg[] = {
>> +	[0 ... 1]         = {"SUBSLICE",	XE_GT_HW_ERR_SUBSLICE_CORR},
>> +	[2 ... 3]         = {"L3BANK",		XE_GT_HW_ERR_L3BANK_CORR},
>> +};
>> +
>>   void xe_assign_hw_err_regs(struct xe_device *xe)
>>   {
>>   	const struct err_msg_cntr_pair **dev_err_stat = xe->hw_err_regs.dev_err_stat;
>> @@ -164,6 +199,8 @@ void xe_assign_hw_err_regs(struct xe_device *xe)
>>   		dev_err_stat[HARDWARE_ERROR_CORRECTABLE] = pvc_err_stat_correctable_reg;
>>   		dev_err_stat[HARDWARE_ERROR_NONFATAL] = pvc_err_stat_nonfatal_reg;
>>   		dev_err_stat[HARDWARE_ERROR_FATAL] = pvc_err_stat_fatal_reg;
>> +		err_stat_gt[HARDWARE_ERROR_CORRECTABLE] = pvc_err_stat_gt_correctable_reg;
>> +		err_stat_gt[HARDWARE_ERROR_FATAL] = pvc_err_stat_gt_fatal_reg;
>>   	} else {
>>   		/* For other platforms report only GT errors */
>>   		dev_err_stat[HARDWARE_ERROR_CORRECTABLE] = dev_err_stat_correctable_reg;
>> @@ -176,7 +213,7 @@ void xe_assign_hw_err_regs(struct xe_device *xe)
>>   }
>>   
>>   static void
>> -xe_gt_hw_error_handler(struct xe_gt *gt, const enum hardware_error hw_err)
>> +xe_gt_hw_error_status_reg_handler(struct xe_gt *gt, const enum hardware_error hw_err)
> is xe_gt_hw_error_log_status_reg sounding better ? and have this in the earlier patch
Ok
>>   {
>>   	const char *hw_err_str = hardware_error_type_to_str(hw_err);
>>   	const struct err_msg_cntr_pair *errstat;
>> @@ -186,9 +223,6 @@ xe_gt_hw_error_handler(struct xe_gt *gt, const enum hardware_error hw_err)
>>   	u32 indx;
>>   	u32 errbit;
>>   
>> -	if (gt_to_xe(gt)->info.platform == XE_PVC)
>> -		return;
>> -
>>   	lockdep_assert_held(&gt_to_xe(gt)->irq.lock);
>>   	err_regs = &gt_to_xe(gt)->hw_err_regs;
>>   	errsrc = xe_mmio_read32(gt, ERR_STAT_GT_REG(hw_err));
>> @@ -230,6 +264,86 @@ xe_gt_hw_error_handler(struct xe_gt *gt, const enum hardware_error hw_err)
>>   clear_reg: xe_mmio_write32(gt, ERR_STAT_GT_REG(hw_err), errsrc);
>>   }
>>   
>> +static void
>> +xe_gt_hw_error_vectr_reg_handler(struct xe_gt *gt, const enum hardware_error hw_err)
> similarly, xe_gt_hw_error_log_vector_reg
ok
>> +{
>> +	const char *hw_err_str = hardware_error_type_to_str(hw_err);
>> +	const struct err_msg_cntr_pair *errvctr;
>> +	const char *errmsg;
>> +	bool errstat_read;
>> +	u32 num_vctr_reg;
>> +	u32 indx;
>> +	u32 vctr;
>> +	u32 i;
>> +
>> +	switch (hw_err) {
>> +	case HARDWARE_ERROR_FATAL:
>> +		num_vctr_reg = ERR_STAT_GT_FATAL_VCTR_LEN;
>> +		errvctr = err_stat_gt_fatal_vectr_reg;
> why don't we define registers once like it's done  in  xe_assign_hw_err_regs.
>> +		break;
>> +	case HARDWARE_ERROR_NONFATAL:
>> +		/*  The GT Non Fatal Error Status Register has only reserved bits
>> +		 *  Nothing to service.
>> +		 */
>> +		drm_err_ratelimited(&gt_to_xe(gt)->drm, HW_ERR "GT%d detected %s error\n",
>> +				    gt->info.id, hw_err_str);
>> +		return;
>> +	case HARDWARE_ERROR_CORRECTABLE:
>> +		num_vctr_reg = ERR_STAT_GT_COR_VCTR_LEN;
>> +		errvctr = err_stat_gt_correctable_vectr_reg;
>> +		break;
>> +	default:
>> +		return;
>> +	}
>> +
>> +	errstat_read = false;
>> +
>> +	for (i = 0 ; i < num_vctr_reg; i++) {
>> +		vctr = xe_mmio_read32(gt, ERR_STAT_GT_VCTR_REG(hw_err, i));
>> +		if (!vctr)
>> +			continue;
>> +
>> +		errmsg = errvctr[i].errmsg;
>> +		indx = errvctr[i].cntr_indx;
>> +
>> +		if (hw_err == HARDWARE_ERROR_FATAL)
>> +			drm_err_ratelimited(&gt_to_xe(gt)->drm, HW_ERR
>> +					    "GT%d detected %s %s error. ERR_VECT_GT_%s[%d]:0x%08x\n",
>> +					    gt->info.id, errmsg, hw_err_str, hw_err_str, i, vctr);
>> +		else
>> +			drm_warn(&gt_to_xe(gt)->drm, HW_ERR
>> +				 "GT%d detected %s %s error. ERR_VECT_GT_%s[%d]:0x%08x\n",
>> +				 gt->info.id, errmsg, hw_err_str, hw_err_str, i, vctr);
>> +
>> +		if (i < ERR_STAT_GT_VCTR4)
>> +			gt->errors.count[indx] += hweight32(vctr);
>> +
>> +		if (i == ERR_STAT_GT_VCTR6)
>> +			gt->errors.count[indx] += hweight16(vctr);
>> +
>> +		if (i == ERR_STAT_GT_VCTR7)
>> +			gt->errors.count[indx] += hweight8(vctr);
>> +
>> +		if (i < ERR_STAT_GT_VCTR2 && !errstat_read) {
>> +			xe_gt_hw_error_status_reg_handler(gt, hw_err);
>> +			errstat_read = true;
> what is the need of errstat_read, isn't i < ERR_STAT_GT_VCTR2 sufficient
In case we see errors from both vect0 and vect1. We shouldn't be 
servicing error status register twice.
>
> and also instead of if check for every i we can have switch case
>
> switch (i) {
>
> case ERR_STAT_GT_VCTR0:
> case ERR_STAT_GT_VCTR1:
> case ERR_STAT_GT_VCTR2:
> case ERR_STAT_GT_VCTR3:
>
>     gt->errors.count[indx] += hweight32(vctr);
>
>      if ( i < ERR_STAT_GT_VCTR2)
>
>          xe_gt_hw_error_status_reg_handler(gt, hw_err);
>
>      break;
>
> case ERR_STAT_GT_VCTR6:
> case ERR_STAT_GT_VCTR7:
>
>      gt->errors.count[indx] += (i == ERR_STAT_GT_VCTR6) ? hweight16(vctr) : hweight8(vctr);
>      break;
>
> default:
Looks clean. Will use this.
>
> }
>
>> +		}
>> +
>> +		xe_mmio_write32(gt, ERR_STAT_GT_VCTR_REG(hw_err, i), vctr);
>> +	}
>> +}
>> +
>> +static void
>> +xe_gt_hw_error_handler(struct xe_gt *gt, const enum hardware_error hw_err)
>> +{
>> +	lockdep_assert_held(&gt_to_xe(gt)->irq.lock);
>> +
>> +	if (gt_to_xe(gt)->info.platform == XE_PVC)
>> +		xe_gt_hw_error_vectr_reg_handler(gt, hw_err);
>> +	else
>> +		xe_gt_hw_error_status_reg_handler(gt, hw_err);
>> +}
>> +
>>   static void
>>   xe_hw_error_source_handler(struct xe_tile *tile, const enum hardware_error hw_err)
>>   {
>> diff --git a/drivers/gpu/drm/xe/xe_hw_error.h b/drivers/gpu/drm/xe/xe_hw_error.h
>> index 82c947247c27..3fcbbcc338fe 100644
>> --- a/drivers/gpu/drm/xe/xe_hw_error.h
>> +++ b/drivers/gpu/drm/xe/xe_hw_error.h
>> @@ -51,8 +51,21 @@ enum xe_tile_hw_errors {
>>   	XE_TILE_HW_ERROR_MAX,
>>   };
>>   
>> +enum gt_vctr_registers {
>> +	ERR_STAT_GT_VCTR0 = 0,
>> +	ERR_STAT_GT_VCTR1,
>> +	ERR_STAT_GT_VCTR2,
>> +	ERR_STAT_GT_VCTR3,
>> +	ERR_STAT_GT_VCTR4,
>> +	ERR_STAT_GT_VCTR5,
>> +	ERR_STAT_GT_VCTR6,
>> +	ERR_STAT_GT_VCTR7,
>> +};
>> +
>>   /* Count of GT Correctable and FATAL HW ERRORS */
>>   enum xe_gt_hw_errors {
>> +	XE_GT_HW_ERR_SUBSLICE_CORR,
>> +	XE_GT_HW_ERR_L3BANK_CORR,
>>   	XE_GT_HW_ERR_L3_SNG_CORR,
>>   	XE_GT_HW_ERR_GUC_CORR,
>>   	XE_GT_HW_ERR_SAMPLER_CORR,
>> @@ -60,6 +73,8 @@ enum xe_gt_hw_errors {
>>   	XE_GT_HW_ERR_EU_IC_CORR,
>>   	XE_GT_HW_ERR_EU_GRF_CORR,
>>   	XE_GT_HW_ERR_UNKNOWN_CORR,
>> +	XE_GT_HW_ERR_SUBSLICE_FATAL,
>> +	XE_GT_HW_ERR_L3BANK_FATAL,
>>   	XE_GT_HW_ERR_ARR_BIST_FATAL,
>>   	XE_GT_HW_ERR_FPU_FATAL,
>>   	XE_GT_HW_ERR_L3_DOUB_FATAL,
>> @@ -71,10 +86,15 @@ enum xe_gt_hw_errors {
>>   	XE_GT_HW_ERR_SLM_FATAL,
>>   	XE_GT_HW_ERR_EU_IC_FATAL,
>>   	XE_GT_HW_ERR_EU_GRF_FATAL,
>> +	XE_GT_HW_ERR_TLB_FATAL,
>> +	XE_GT_HW_ERR_L3_FABRIC_FATAL,
>>   	XE_GT_HW_ERR_UNKNOWN_FATAL,
>>   	XE_GT_HW_ERROR_MAX,
>>   };
>>   
>> +#define ERR_STAT_GT_COR_VCTR_LEN (4)
>> +#define ERR_STAT_GT_FATAL_VCTR_LEN (8)
>> +
>>   struct err_msg_cntr_pair {
>>   	const char *errmsg;
>>   	const u32 cntr_indx;
> Thanks,
> Aravind.

^ permalink raw reply	[flat|nested] 21+ messages in thread

* Re: [Intel-xe] [PATCH v5 1/4] drm/xe: Handle errors from various components.
  2023-09-26  4:57     ` Ghimiray, Himal Prasad
@ 2023-09-26 10:09       ` Aravind Iddamsetty
  0 siblings, 0 replies; 21+ messages in thread
From: Aravind Iddamsetty @ 2023-09-26 10:09 UTC (permalink / raw)
  To: Ghimiray, Himal Prasad, intel-xe; +Cc: Jani Nikula, Matt Roper, Rodrigo Vivi


On 26/09/23 10:27, Ghimiray, Himal Prasad wrote:
>
> On 26-09-2023 09:50, Aravind Iddamsetty wrote:
>> On 23/08/23 14:28, Himal Prasad Ghimiray wrote:
>>> The GFX device can generate numbers of classes of error under the new
>>> infrastructure: correctable, non-fatal, and fatal errors.
>> The GFX device reports two classes of errors: uncorrectable and correctable.
>> Depending on the severity uncorrectable errors are further classified as non fatal and fatal.
>>> The non-fatal and fatal error classes distinguish between levels of
>>> severity for uncorrectable errors. Driver will only handle logging
>>> of errors and updating counters from various components within the
>>> graphics device. Anything more will be handled at system level.
>>>
>>> For errors that will route as interrupts, three bits in the Master
>>> Interrupt Register will be used to convey the class of error.
>>>
>>> For each class of error: Determine source of error (IP block) by reading
>>> the Device Error Source Register (RW1C) that
>>> corresponds to the class of error being serviced.
>>>
>>> Bspec: 50875, 53073, 53074, 53075
>> Also may be you want to squash this with the last patch where fatal error processing is done,
>> fatal errors are defined here but processed in your last patch or move all fatal definition to last patch.
> Makes sense. Will squash in last patch.
>>> Cc: Rodrigo Vivi <rodrigo.vivi@intel.com>
>>> Cc: Aravind Iddamsetty <aravind.iddamsetty@intel.com>
>>> Cc: Matthew Brost <matthew.brost@intel.com>
>>> Cc: Matt Roper <matthew.d.roper@intel.com>
>>> Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
>>> Cc: Jani Nikula <jani.nikula@intel.com>
>>> Signed-off-by: Himal Prasad Ghimiray <himal.prasad.ghimiray@intel.com>
>>> ---
>>>   drivers/gpu/drm/xe/Makefile                  |   1 +
>>>   drivers/gpu/drm/xe/regs/xe_regs.h            |   2 +-
>>>   drivers/gpu/drm/xe/regs/xe_tile_error_regs.h |  15 ++
>>>   drivers/gpu/drm/xe/xe_device_types.h         |  11 +
>>>   drivers/gpu/drm/xe/xe_hw_error.c             | 211 +++++++++++++++++++
>>>   drivers/gpu/drm/xe/xe_hw_error.h             |  64 ++++++
>>>   drivers/gpu/drm/xe/xe_irq.c                  |   3 +
>>>   7 files changed, 306 insertions(+), 1 deletion(-)
>>>   create mode 100644 drivers/gpu/drm/xe/regs/xe_tile_error_regs.h
>>>   create mode 100644 drivers/gpu/drm/xe/xe_hw_error.c
>>>   create mode 100644 drivers/gpu/drm/xe/xe_hw_error.h
>>>
>>> diff --git a/drivers/gpu/drm/xe/Makefile b/drivers/gpu/drm/xe/Makefile
>>> index 550cdfed729e..6290c8ce0e84 100644
>>> --- a/drivers/gpu/drm/xe/Makefile
>>> +++ b/drivers/gpu/drm/xe/Makefile
>>> @@ -75,6 +75,7 @@ xe-y += xe_bb.o \
>>>       xe_guc_submit.o \
>>>       xe_hw_engine.o \
>>>       xe_hw_engine_class_sysfs.o \
>>> +    xe_hw_error.o \
>>>       xe_hw_fence.o \
>>>       xe_huc.o \
>>>       xe_huc_debugfs.o \
>>> diff --git a/drivers/gpu/drm/xe/regs/xe_regs.h b/drivers/gpu/drm/xe/regs/xe_regs.h
>>> index 39d7b0740bf0..e223975a5acf 100644
>>> --- a/drivers/gpu/drm/xe/regs/xe_regs.h
>>> +++ b/drivers/gpu/drm/xe/regs/xe_regs.h
>>> @@ -88,7 +88,7 @@
>>>   #define   GU_MISC_IRQ                REG_BIT(29)
>>>   #define   DISPLAY_IRQ                REG_BIT(16)
>>>   #define   GT_DW_IRQ(x)                REG_BIT(x)
>>> +#define   XE_ERROR_IRQ(x)            REG_BIT(26 + (x))
>>>     #define PVC_RP_STATE_CAP            XE_REG(0x281014)
>>> -
>>>   #endif
>>> diff --git a/drivers/gpu/drm/xe/regs/xe_tile_error_regs.h b/drivers/gpu/drm/xe/regs/xe_tile_error_regs.h
>>> new file mode 100644
>>> index 000000000000..db78d6687213
>>> --- /dev/null
>>> +++ b/drivers/gpu/drm/xe/regs/xe_tile_error_regs.h
>>> @@ -0,0 +1,15 @@
>>> +/* SPDX-License-Identifier: MIT */
>>> +/*
>>> + * Copyright © 2023 Intel Corporation
>>> + */
>>> +#ifndef XE_TILE_ERROR_REGS_H_
>>> +#define XE_TILE_ERROR_REGS_H_
>>> +
>>> +#include <linux/stddef.h>
>>> +
>>> +#define _DEV_ERR_STAT_NONFATAL                         0x100178
>>> +#define _DEV_ERR_STAT_CORRECTABLE                      0x10017c
>>> +#define DEV_ERR_STAT_REG(x)                            XE_REG(_PICK_EVEN((x), \
>>> +                                _DEV_ERR_STAT_CORRECTABLE, \
>>> +                                _DEV_ERR_STAT_NONFATAL))
>>> +#endif
>>> diff --git a/drivers/gpu/drm/xe/xe_device_types.h b/drivers/gpu/drm/xe/xe_device_types.h
>>> index dbb732e14606..4e4184977709 100644
>>> --- a/drivers/gpu/drm/xe/xe_device_types.h
>>> +++ b/drivers/gpu/drm/xe/xe_device_types.h
>>> @@ -14,6 +14,7 @@
>>>     #include "xe_devcoredump_types.h"
>>>   #include "xe_gt_types.h"
>>> +#include "xe_hw_error.h"
>>>   #include "xe_platform_types.h"
>>>   #include "xe_step_types.h"
>>>   @@ -172,6 +173,11 @@ struct xe_tile {
>>>         /** @sysfs: sysfs' kobj used by xe_tile_sysfs */
>>>       struct kobject *sysfs;
>>> +
>>> +    /** @tile_hw_errors: hardware errors reported for the tile */
>>> +    struct tile_hw_errors {
>>> +        unsigned long count[XE_TILE_HW_ERROR_MAX];
>>> +    } errors;
>>>   };
>>>     /**
>>> @@ -359,6 +365,11 @@ struct xe_device {
>>>        */
>>>       struct task_struct *pm_callback_task;
>>>   +    /** @hardware_errors_regs: list of hw error regs*/
>>> +    struct hardware_errors_regs {
>>> +        const struct err_msg_cntr_pair *dev_err_stat[HARDWARE_ERROR_MAX];
>> I'm just thinking if it makes sense to move it to respective structs like tile or gt, any thoughts?
> These structures are platform dependent not tiles/gt. IMO device is right place.

they may be platform specific, but if I notice dev_err_stat is accounted in tile_hw_errors and similarly
err_stat_gt is accounted in gt_hw_errors so they are associated to tile and gt.
>>> +    } hw_err_regs;
>>> +
>>>       /* private: */
>>>     #if IS_ENABLED(CONFIG_DRM_XE_DISPLAY)
>>> diff --git a/drivers/gpu/drm/xe/xe_hw_error.c b/drivers/gpu/drm/xe/xe_hw_error.c
>>> new file mode 100644
>>> index 000000000000..357d0f962d91
>>> --- /dev/null
>>> +++ b/drivers/gpu/drm/xe/xe_hw_error.c
>>> @@ -0,0 +1,211 @@
>>> +// SPDX-License-Identifier: MIT
>>> +/*
>>> + * Copyright © 2023 Intel Corporation
>>> + */
>>> +
>>> +#include "xe_hw_error.h"
>>> +
>>> +#include "regs/xe_regs.h"
>>> +#include "regs/xe_tile_error_regs.h"
>>> +#include "xe_device.h"
>>> +#include "xe_mmio.h"
>>> +
>>> +static const char *
>>> +hardware_error_type_to_str(const enum hardware_error hw_err)
>>> +{
>>> +    switch (hw_err) {
>>> +    case HARDWARE_ERROR_CORRECTABLE:
>>> +        return "CORRECTABLE";
>>> +    case HARDWARE_ERROR_NONFATAL:
>>> +        return "NONFATAL";
>>> +    case HARDWARE_ERROR_FATAL:
>>> +        return "FATAL";
>>> +    default:
>>> +        return "UNKNOWN";
>>> +    }
>>> +}
>>> +
>>> +static const struct err_msg_cntr_pair dg2_err_stat_fatal_reg[] = {
>> the name err_msg_cntr_pair might not be appropriate as it err name and index into
>> tile_hw_errors. err_name_index_pair ?? thoughts
> ok.
>>> +    [0]         = {"GT",            XE_TILE_HW_ERR_GT_FATAL},
>>> +    [1 ... 3]   = {"Undefined",        XE_TILE_HW_ERR_UNKNOWN_FATAL},
>>> +    [4]         = {"DISPLAY",        XE_TILE_HW_ERR_DISPLAY_FATAL},
>>> +    [5 ... 7]   = {"Undefined",        XE_TILE_HW_ERR_UNKNOWN_FATAL},
>>> +    [8]         = {"GSC error",        XE_TILE_HW_ERR_GSC_FATAL},
>>> +    [9 ... 11]  = {"Undefined",        XE_TILE_HW_ERR_UNKNOWN_FATAL},
>>> +    [12]        = {"SGUNIT",        XE_TILE_HW_ERR_SGUNIT_FATAL},
>>> +    [13 ... 15] = {"Undefined",             XE_TILE_HW_ERR_UNKNOWN_FATAL},
>>> +    [16]        = {"SOC",            XE_TILE_HW_ERR_SOC_FATAL},
>>> +    [17 ... 31] = {"Undefined",             XE_TILE_HW_ERR_UNKNOWN_FATAL},
>>> +};
>>> +
>>> +static const struct err_msg_cntr_pair dg2_err_stat_nonfatal_reg[] = {
>>> +    [0]         = {"GT",            XE_TILE_HW_ERR_GT_NONFATAL},
>>> +    [1 ... 3]   = {"Undefined",        XE_TILE_HW_ERR_UNKNOWN_NONFATAL},
>>> +    [4]         = {"DISPLAY",        XE_TILE_HW_ERR_DISPLAY_NONFATAL},
>>> +    [5 ... 7]   = {"Undefined",        XE_TILE_HW_ERR_UNKNOWN_NONFATAL},
>>> +    [8]         = {"GSC error",        XE_TILE_HW_ERR_GSC_NONFATAL},
>>> +    [9 ... 11]  = {"Undefined",        XE_TILE_HW_ERR_UNKNOWN_NONFATAL},
>>> +    [12]        = {"SGUNIT",        XE_TILE_HW_ERR_SGUNIT_NONFATAL},
>>> +    [13 ... 15] = {"Undefined",             XE_TILE_HW_ERR_UNKNOWN_NONFATAL},
>>> +    [16]        = {"SOC",            XE_TILE_HW_ERR_SOC_NONFATAL},
>>> +    [17 ... 19] = {"Undefined",             XE_TILE_HW_ERR_UNKNOWN_NONFATAL},
>>> +    [20]        = {"MERT",            XE_TILE_HW_ERR_MERT_NONFATAL},
>>> +    [21 ... 31] = {"Undefined",             XE_TILE_HW_ERR_UNKNOWN_NONFATAL},
>>> +};
>>> +
>>> +static const struct err_msg_cntr_pair dg2_err_stat_correctable_reg[] = {
>>> +    [0]         = {"GT",            XE_TILE_HW_ERR_GT_CORR},
>>> +    [1 ... 3]   = {"Undefined",        XE_TILE_HW_ERR_UNKNOWN_CORR},
>>> +    [4]         = {"DISPLAY",        XE_TILE_HW_ERR_DISPLAY_CORR},
>>> +    [5 ... 7]   = {"Undefined",        XE_TILE_HW_ERR_UNKNOWN_CORR},
>>> +    [8]         = {"GSC error",        XE_TILE_HW_ERR_GSC_CORR},
>>> +    [9 ... 11]  = {"Undefined",        XE_TILE_HW_ERR_UNKNOWN_CORR},
>>> +    [12]        = {"SGUNIT",        XE_TILE_HW_ERR_SGUNIT_CORR},
>>> +    [13 ... 15] = {"Undefined",             XE_TILE_HW_ERR_UNKNOWN_CORR},
>>> +    [16]        = {"SOC",            XE_TILE_HW_ERR_SOC_CORR},
>>> +    [17 ... 31] = {"Undefined",             XE_TILE_HW_ERR_UNKNOWN_CORR},
>>> +};
>>> +
>>> +static const struct err_msg_cntr_pair pvc_err_stat_fatal_reg[] = {
>>> +    [0]         =  {"GT",            XE_TILE_HW_ERR_GT_FATAL},
>>> +    [1]         =  {"SGGI Cmd Parity",    XE_TILE_HW_ERR_SGGI_FATAL},
>>> +    [2 ... 7]   =  {"Undefined",        XE_TILE_HW_ERR_UNKNOWN_FATAL},
>>> +    [8]         =  {"GSC error",        XE_TILE_HW_ERR_GSC_FATAL},
>>> +    [9]         =  {"SGLI Cmd Parity",    XE_TILE_HW_ERR_SGLI_FATAL},
>>> +    [10 ... 12] =  {"Undefined",        XE_TILE_HW_ERR_UNKNOWN_FATAL},
>>> +    [13]        =  {"SGCI Cmd Parity",    XE_TILE_HW_ERR_SGCI_FATAL},
>>> +    [14 ... 15] =  {"Undefined",        XE_TILE_HW_ERR_UNKNOWN_FATAL},
>>> +    [16]        =  {"SOC ERROR",        XE_TILE_HW_ERR_SOC_FATAL},
>>> +    [17 ... 19] =  {"Undefined",        XE_TILE_HW_ERR_UNKNOWN_FATAL},
>>> +    [20]        =  {"MERT Cmd Parity",    XE_TILE_HW_ERR_MERT_FATAL},
>>> +    [21 ... 31] =  {"Undefined",        XE_TILE_HW_ERR_UNKNOWN_FATAL},
>>> +};
>>> +
>>> +static const struct err_msg_cntr_pair pvc_err_stat_nonfatal_reg[] = {
>>> +    [0]         =  {"GT",            XE_TILE_HW_ERR_GT_NONFATAL},
>>> +    [1]         =  {"SGGI Data Parity",    XE_TILE_HW_ERR_SGGI_NONFATAL},
>>> +    [2 ... 7]   =  {"Undefined",        XE_TILE_HW_ERR_UNKNOWN_NONFATAL},
>>> +    [8]         =  {"GSC",            XE_TILE_HW_ERR_GSC_NONFATAL},
>>> +    [9]         =  {"SGLI Data Parity",    XE_TILE_HW_ERR_SGLI_NONFATAL},
>>> +    [10 ... 12] =  {"Undefined",        XE_TILE_HW_ERR_UNKNOWN_NONFATAL},
>>> +    [13]        =  {"SGCI Data Parity",    XE_TILE_HW_ERR_SGCI_NONFATAL},
>>> +    [14 ... 15] =  {"Undefined",        XE_TILE_HW_ERR_UNKNOWN_NONFATAL},
>>> +    [16]        =  {"SOC",            XE_TILE_HW_ERR_SOC_NONFATAL},
>>> +    [17 ... 19] =  {"Undefined",        XE_TILE_HW_ERR_UNKNOWN_NONFATAL},
>>> +    [20]        =  {"MERT Data Parity",    XE_TILE_HW_ERR_MERT_NONFATAL},
>>> +    [21 ... 31] =  {"Undefined",            XE_TILE_HW_ERR_UNKNOWN_NONFATAL},
>>> +};
>>> +
>>> +static const struct err_msg_cntr_pair pvc_err_stat_correctable_reg[] = {
>>> +    [0]         =  {"GT",            XE_TILE_HW_ERR_GT_CORR},
>>> +    [1 ... 7]   =  {"Undefined",        XE_TILE_HW_ERR_UNKNOWN_CORR},
>>> +    [8]         =  {"GSC",            XE_TILE_HW_ERR_GSC_CORR},
>>> +    [9 ... 31]  =  {"Undefined",        XE_TILE_HW_ERR_UNKNOWN_CORR},
>>> +};
>>> +
>>> +static const struct err_msg_cntr_pair dev_err_stat_fatal_reg[] = {
>>> +    [0]         =  {"GT",            XE_TILE_HW_ERR_GT_FATAL},
>>> +    [1 ... 31]  =  {"Undefined",        XE_TILE_HW_ERR_UNKNOWN_FATAL},
>>> +};
>>> +
>>> +static const struct err_msg_cntr_pair dev_err_stat_nonfatal_reg[] = {
>>> +    [0]         =  {"GT",            XE_TILE_HW_ERR_GT_NONFATAL},
>>> +    [1 ... 31]  =  {"Undefined",            XE_TILE_HW_ERR_UNKNOWN_NONFATAL},
>>> +};
>>> +
>>> +static const struct err_msg_cntr_pair dev_err_stat_correctable_reg[] = {
>>> +    [0]         =  {"GT",            XE_TILE_HW_ERR_GT_CORR},
>>> +    [1 ... 31]  =  {"Undefined",        XE_TILE_HW_ERR_UNKNOWN_CORR},
>>> +};
>>> +
>>> +void xe_assign_hw_err_regs(struct xe_device *xe)
>>> +{
>>> +    const struct err_msg_cntr_pair **dev_err_stat = xe->hw_err_regs.dev_err_stat;
>>> +
>>> +    if (xe->info.platform == XE_DG2) {
>>> +        dev_err_stat[HARDWARE_ERROR_CORRECTABLE] = dg2_err_stat_correctable_reg;
>>> +        dev_err_stat[HARDWARE_ERROR_NONFATAL] = dg2_err_stat_nonfatal_reg;
>>> +        dev_err_stat[HARDWARE_ERROR_FATAL] = dg2_err_stat_fatal_reg;
>>> +    } else if (xe->info.platform == XE_PVC) {
>>> +        dev_err_stat[HARDWARE_ERROR_CORRECTABLE] = pvc_err_stat_correctable_reg;
>>> +        dev_err_stat[HARDWARE_ERROR_NONFATAL] = pvc_err_stat_nonfatal_reg;
>>> +        dev_err_stat[HARDWARE_ERROR_FATAL] = pvc_err_stat_fatal_reg;
>>> +    } else {
>>> +        /* For other platforms report only GT errors */
>> why only GT errors??
>
> Because GT errors will only be common to all platforms. The other errors are platform specific.

and why are we not enabling those other errors?
>
>>> +        dev_err_stat[HARDWARE_ERROR_CORRECTABLE] = dev_err_stat_correctable_reg;
>>> +        dev_err_stat[HARDWARE_ERROR_NONFATAL] = dev_err_stat_nonfatal_reg;
>>> +        dev_err_stat[HARDWARE_ERROR_FATAL] = dev_err_stat_fatal_reg;
>>> +    }
>>> +}
>>> +
>>> +static void
>>> +xe_hw_error_source_handler(struct xe_tile *tile, const enum hardware_error hw_err)
>>> +{
>>> +    const char *hw_err_str = hardware_error_type_to_str(hw_err);
>>> +    const struct hardware_errors_regs *err_regs;
>>> +    const struct err_msg_cntr_pair *errstat;
>>> +    unsigned long errsrc;
>>> +    unsigned long flags;
>>> +    const char *errmsg;
>>> +    struct xe_gt *mmio;
>>> +    u32 indx;
>>> +    u32 errbit;
>>> +
>>> +    spin_lock_irqsave(&tile_to_xe(tile)->irq.lock, flags);
>>> +    err_regs = &tile_to_xe(tile)->hw_err_regs;
>>> +    errstat = err_regs->dev_err_stat[hw_err];
>>> +    mmio = tile->primary_gt;
>>> +    errsrc = xe_mmio_read32(mmio, DEV_ERR_STAT_REG(hw_err));
>>> +    if (!errsrc) {
>>> +        drm_err_ratelimited(&tile_to_xe(tile)->drm, HW_ERR
>>> +                    "TILE%d detected DEV_ERR_STAT_REG_%s blank!\n",
>>> +                    tile->id, hw_err_str);
>>> +        goto unlock;
>>> +    }
>>> +
>>> +    drm_info(&tile_to_xe(tile)->drm, HW_ERR
>>> +         "TILE%d DEV_ERR_STAT_REG_%s=0x%08lx\n", tile->id, hw_err_str, errsrc);
>>> +
>>> +    for_each_set_bit(errbit, &errsrc, 32) {
>>> +        errmsg = errstat[errbit].errmsg;
>>> +        indx = errstat[errbit].cntr_indx;
>>> +
>>> +        if (hw_err == HARDWARE_ERROR_CORRECTABLE)
>>> +            drm_warn(&tile_to_xe(tile)->drm,
>>> +                 HW_ERR "TILE%d detected %s %s error, bit[%d] is set\n",
>>> +                 tile->id, errmsg, hw_err_str, errbit);
>>> +
>>> +        else
>>> +            drm_err_ratelimited(&tile_to_xe(tile)->drm,
>>> +                        HW_ERR "TILE%d detected %s %s error, bit[%d] is set\n",
>>> +                        tile->id, errmsg, hw_err_str, errbit);
>>> +        tile->errors.count[indx]++;
>> The register here is a top level register and some of the sources have second error level registers
>> so the count shall be at second level source for all those that have and not at global level as here
>> it will not give granularity.
>
> My idea of having counter at top level was to have cumulative numbers for errors.

It doesn't give cumulative, as multiple sub errors can be reported in a single MSI, so always
count at lower level and leave the accounting to userspace.


Thanks,

Aravind.
>
>
> It will provide summation of all MSI's in case of correctable gt. Can we removed but looks logical to retain it.
>
>>> +    }
>>> +
>>> +    xe_mmio_write32(mmio, DEV_ERR_STAT_REG(hw_err), errsrc);
>>> +unlock:
>>> +    spin_unlock_irqrestore(&tile_to_xe(tile)->irq.lock, flags);
>>> +}
>>> +
>>> +/*
>>> + * XE Platforms adds three Error bits to the Master Interrupt
>>> + * Register to support error handling. These three bits are
>>> + * used to convey the class of error:
>>> + * FATAL, NONFATAL, or CORRECTABLE.
>>> + *
>>> + * To process an interrupt:
>>> + *       Determine source of error (IP block) by reading
>>> + *     the Device Error Source Register (RW1C) that
>>> + *     corresponds to the class of error being serviced
>>> + *     and log the error.
>>> + */
>>> +void
>>> +xe_hw_error_irq_handler(struct xe_tile *tile, const u32 master_ctl)
>>> +{
>>> +    enum hardware_error hw_err;
>>> +
>>> +    for (hw_err = 0; hw_err < HARDWARE_ERROR_MAX; hw_err++) {
>>> +        if (master_ctl & XE_ERROR_IRQ(hw_err))
>>> +            xe_hw_error_source_handler(tile, hw_err);
>>> +    }
>>> +}
>>> diff --git a/drivers/gpu/drm/xe/xe_hw_error.h b/drivers/gpu/drm/xe/xe_hw_error.h
>>> new file mode 100644
>>> index 000000000000..c0c05b9130eb
>>> --- /dev/null
>>> +++ b/drivers/gpu/drm/xe/xe_hw_error.h
>>> @@ -0,0 +1,64 @@
>>> +/* SPDX-License-Identifier: MIT */
>>> +/*
>>> + * Copyright © 2023 Intel Corporation
>>> + */
>>> +#ifndef XE_HW_ERRORS_H_
>>> +#define XE_HW_ERRORS_H_
>>> +
>>> +#include <linux/stddef.h>
>>> +#include <linux/types.h>
>>> +
>>> +/* Error categories reported by hardware */
>>> +enum hardware_error {
>>> +    HARDWARE_ERROR_CORRECTABLE = 0,
>>> +    HARDWARE_ERROR_NONFATAL = 1,
>>> +    HARDWARE_ERROR_FATAL = 2,
>>> +    HARDWARE_ERROR_MAX,
>>> +};
>>> +
>>> +/* Count of  Correctable and Uncorrectable errors reported on tile */
>>> +enum xe_tile_hw_errors {
>>> +    XE_TILE_HW_ERR_GT_FATAL = 0,
>>> +    XE_TILE_HW_ERR_SGGI_FATAL,
>>> +    XE_TILE_HW_ERR_DISPLAY_FATAL,
>>> +    XE_TILE_HW_ERR_SGDI_FATAL,
>>> +    XE_TILE_HW_ERR_SGLI_FATAL,
>>> +    XE_TILE_HW_ERR_SGUNIT_FATAL,
>>> +    XE_TILE_HW_ERR_SGCI_FATAL,
>>> +    XE_TILE_HW_ERR_GSC_FATAL,
>>> +    XE_TILE_HW_ERR_SOC_FATAL,
>>> +    XE_TILE_HW_ERR_MERT_FATAL,
>>> +    XE_TILE_HW_ERR_SGMI_FATAL,
>>> +    XE_TILE_HW_ERR_UNKNOWN_FATAL,
>>> +    XE_TILE_HW_ERR_SGGI_NONFATAL,
>>> +    XE_TILE_HW_ERR_DISPLAY_NONFATAL,
>>> +    XE_TILE_HW_ERR_SGDI_NONFATAL,
>>> +    XE_TILE_HW_ERR_SGLI_NONFATAL,
>>> +    XE_TILE_HW_ERR_GT_NONFATAL,
>>> +    XE_TILE_HW_ERR_SGUNIT_NONFATAL,
>>> +    XE_TILE_HW_ERR_SGCI_NONFATAL,
>>> +    XE_TILE_HW_ERR_GSC_NONFATAL,
>>> +    XE_TILE_HW_ERR_SOC_NONFATAL,
>>> +    XE_TILE_HW_ERR_MERT_NONFATAL,
>>> +    XE_TILE_HW_ERR_SGMI_NONFATAL,
>>> +    XE_TILE_HW_ERR_UNKNOWN_NONFATAL,
>>> +    XE_TILE_HW_ERR_GT_CORR,
>>> +    XE_TILE_HW_ERR_DISPLAY_CORR,
>>> +    XE_TILE_HW_ERR_SGUNIT_CORR,
>>> +    XE_TILE_HW_ERR_GSC_CORR,
>>> +    XE_TILE_HW_ERR_SOC_CORR,
>>> +    XE_TILE_HW_ERR_UNKNOWN_CORR,
>>> +    XE_TILE_HW_ERROR_MAX,
>>> +};
>>> +
>>> +struct err_msg_cntr_pair {
>>> +    const char *errmsg;
>>> +    const u32 cntr_indx;
>>> +};
>>> +
>>> +struct xe_device;
>>> +struct xe_tile;
>>> +
>>> +void xe_hw_error_irq_handler(struct xe_tile *tile, const u32 master_ctl);
>>> +void xe_assign_hw_err_regs(struct xe_device *xe);
>>> +#endif
>>> diff --git a/drivers/gpu/drm/xe/xe_irq.c b/drivers/gpu/drm/xe/xe_irq.c
>>> index 1dee3e832eb5..48b933234342 100644
>>> --- a/drivers/gpu/drm/xe/xe_irq.c
>>> +++ b/drivers/gpu/drm/xe/xe_irq.c
>>> @@ -418,6 +418,7 @@ static irqreturn_t dg1_irq_handler(int irq, void *arg)
>>>           xe_mmio_write32(mmio, GFX_MSTR_IRQ, master_ctl);
>>>             gt_irq_handler(tile, master_ctl, intr_dw, identity);
>>> +        xe_hw_error_irq_handler(tile, master_ctl);
>>>             /*
>>>            * Display interrupts (including display backlight operations
>>> @@ -572,6 +573,8 @@ int xe_irq_install(struct xe_device *xe)
>>>           return -EINVAL;
>>>       }
>>>   +    xe_assign_hw_err_regs(xe);
>>> +
>>>       xe->irq.enabled = true;
>>>         xe_irq_reset(xe);
>> Thanks,
>> Aravind.

^ permalink raw reply	[flat|nested] 21+ messages in thread

* Re: [Intel-xe] [PATCH v5 4/4] drm/xe: Process fatal hardware errors.
  2023-09-26  4:21   ` Aravind Iddamsetty
@ 2023-09-26 10:24     ` Ghimiray, Himal Prasad
  0 siblings, 0 replies; 21+ messages in thread
From: Ghimiray, Himal Prasad @ 2023-09-26 10:24 UTC (permalink / raw)
  To: Aravind Iddamsetty, intel-xe; +Cc: Matt Roper, Rodrigo Vivi


On 26-09-2023 09:51, Aravind Iddamsetty wrote:
> On 23/08/23 14:28, Himal Prasad Ghimiray wrote:
>> Fatal errors are reported as PCIe errors. When a PCIe error is asserted,
>> the OS will perform a device warm reset which causes the driver to reload.
>> The error registers are sticky and the values are maintained through a
>> warm reset. We read these registers during the boot flow of the driver and
>> increment the respective error counters.
>>
>> Bspec: 53076
> please mention 50875 as well.
sure.
>> Cc: Rodrigo Vivi <rodrigo.vivi@intel.com>
>> Cc: Aravind Iddamsetty <aravind.iddamsetty@intel.com>
>> Cc: Matthew Brost <matthew.brost@intel.com>
>> Cc: Matt Roper <matthew.d.roper@intel.com>
>> Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
>> Signed-off-by: Himal Prasad Ghimiray <himal.prasad.ghimiray@intel.com>
>> ---
>>   drivers/gpu/drm/xe/regs/xe_regs.h |  3 +++
>>   drivers/gpu/drm/xe/xe_hw_error.c  | 37 ++++++++++++++++++++++++++++++-
>>   drivers/gpu/drm/xe/xe_hw_error.h  |  3 ++-
>>   drivers/gpu/drm/xe/xe_irq.c       |  2 +-
>>   4 files changed, 42 insertions(+), 3 deletions(-)
>>
>> diff --git a/drivers/gpu/drm/xe/regs/xe_regs.h b/drivers/gpu/drm/xe/regs/xe_regs.h
>> index e223975a5acf..b8f2b1762d3f 100644
>> --- a/drivers/gpu/drm/xe/regs/xe_regs.h
>> +++ b/drivers/gpu/drm/xe/regs/xe_regs.h
>> @@ -90,5 +90,8 @@
>>   #define   GT_DW_IRQ(x)				REG_BIT(x)
>>   #define   XE_ERROR_IRQ(x)			REG_BIT(26 + (x))
>>   
>> +#define DEV_PCIEERR_STATUS			XE_REG(0x100180)
>> +#define   DEV_PCIEERR_IS_FATAL(x)		REG_BIT(x * 4 + 2)
> place it as per the address.
>> +
>>   #define PVC_RP_STATE_CAP			XE_REG(0x281014)
>>   #endif
>> diff --git a/drivers/gpu/drm/xe/xe_hw_error.c b/drivers/gpu/drm/xe/xe_hw_error.c
>> index deb020a509d2..9595e3369656 100644
>> --- a/drivers/gpu/drm/xe/xe_hw_error.c
>> +++ b/drivers/gpu/drm/xe/xe_hw_error.c
>> @@ -183,7 +183,7 @@ static const struct err_msg_cntr_pair err_stat_gt_correctable_vectr_reg[] = {
>>   	[2 ... 3]         = {"L3BANK",		XE_GT_HW_ERR_L3BANK_CORR},
>>   };
>>   
>> -void xe_assign_hw_err_regs(struct xe_device *xe)
>> +static void xe_assign_hw_err_regs(struct xe_device *xe)
> change it in the patch that introduced it.
>>   {
>>   	const struct err_msg_cntr_pair **dev_err_stat = xe->hw_err_regs.dev_err_stat;
>>   	const struct err_msg_cntr_pair **err_stat_gt = xe->hw_err_regs.err_stat_gt;
>> @@ -417,3 +417,38 @@ xe_hw_error_irq_handler(struct xe_tile *tile, const u32 master_ctl)
>>   			xe_hw_error_source_handler(tile, hw_err);
>>   	}
>>   }
>> +
>> +/**
>> + * process_hw_errors - checks for the occurrence of HW errors
>> + *
>> + * This checks for the HW Errors including FATAL errors that might
>> + * have occurred in the previous boot of the driver which will
>> + * initiate PCIe FLR reset of the device and cause the
> this is not right, in fact it is better to rephrase as:
>
> "fatal will result in a card warm reset and driver will be reloaded."
ok
>
>> + * driver to reload.
>> + */
>> +void xe_process_hw_errors(struct xe_device *xe)
>> +{
>> +	struct xe_tile *root_tile = xe_device_get_root_tile(xe);
>> +	struct xe_gt *root_mmio = root_tile->primary_gt;
>> +
>> +	u32 dev_pcieerr_status, master_ctl;
>> +	struct xe_tile *tile;
>> +	int i;
>> +
>> +	xe_assign_hw_err_regs(xe);
> lets still have this in xe_irq_install, as it serves for a different purpose.
ok
>> +
>> +	dev_pcieerr_status = xe_mmio_read32(root_mmio, DEV_PCIEERR_STATUS);
>> +
>> +	for_each_tile(tile, xe, i) {
>> +		struct xe_gt *mmio = tile->primary_gt;
>> +
>> +		if (dev_pcieerr_status & DEV_PCIEERR_IS_FATAL(i))
>> +			xe_hw_error_source_handler(tile, HARDWARE_ERROR_FATAL);
>> +
>> +		master_ctl = xe_mmio_read32(mmio, GFX_MSTR_IRQ);
>> +		xe_hw_error_irq_handler(tile, master_ctl);
>> +		xe_mmio_write32(mmio, GFX_MSTR_IRQ, master_ctl);
>> +	}
>> +	if (dev_pcieerr_status)
>> +		xe_mmio_write32(root_mmio, DEV_PCIEERR_STATUS, dev_pcieerr_status);
>> +}
>> diff --git a/drivers/gpu/drm/xe/xe_hw_error.h b/drivers/gpu/drm/xe/xe_hw_error.h
>> index 3fcbbcc338fe..2812407dd4bf 100644
>> --- a/drivers/gpu/drm/xe/xe_hw_error.h
>> +++ b/drivers/gpu/drm/xe/xe_hw_error.h
>> @@ -104,5 +104,6 @@ struct xe_device;
>>   struct xe_tile;
>>   
>>   void xe_hw_error_irq_handler(struct xe_tile *tile, const u32 master_ctl);
>> -void xe_assign_hw_err_regs(struct xe_device *xe);
>> +void xe_process_hw_errors(struct xe_device *xe);
>> +
>>   #endif
>> diff --git a/drivers/gpu/drm/xe/xe_irq.c b/drivers/gpu/drm/xe/xe_irq.c
>> index 48b933234342..be152ebd6ce9 100644
>> --- a/drivers/gpu/drm/xe/xe_irq.c
>> +++ b/drivers/gpu/drm/xe/xe_irq.c
>> @@ -573,7 +573,7 @@ int xe_irq_install(struct xe_device *xe)
>>   		return -EINVAL;
>>   	}
>>   
>> -	xe_assign_hw_err_regs(xe);
>> +	xe_process_hw_errors(xe);
> this shall be called before xe_irq_reset.
>>   
>>   	xe->irq.enabled = true;
>>   
> Thanks,
> Aravind.

^ permalink raw reply	[flat|nested] 21+ messages in thread

* Re: [Intel-xe] [PATCH v5 1/4] drm/xe: Handle errors from various components.
  2023-08-23  8:58 ` [Intel-xe] [PATCH v5 1/4] drm/xe: Handle errors from various components Himal Prasad Ghimiray
  2023-09-26  4:20   ` Aravind Iddamsetty
@ 2023-10-04 12:07   ` Aravind Iddamsetty
  2023-10-05  4:01     ` Aravind Iddamsetty
  1 sibling, 1 reply; 21+ messages in thread
From: Aravind Iddamsetty @ 2023-10-04 12:07 UTC (permalink / raw)
  To: Himal Prasad Ghimiray, intel-xe; +Cc: Jani Nikula, Matt Roper, Rodrigo Vivi


On 23/08/23 14:28, Himal Prasad Ghimiray wrote:
> The GFX device can generate numbers of classes of error under the new
> infrastructure: correctable, non-fatal, and fatal errors.
>
> The non-fatal and fatal error classes distinguish between levels of
> severity for uncorrectable errors. Driver will only handle logging
> of errors and updating counters from various components within the
> graphics device. Anything more will be handled at system level.
>
> For errors that will route as interrupts, three bits in the Master
> Interrupt Register will be used to convey the class of error.
>
> For each class of error: Determine source of error (IP block) by reading
> the Device Error Source Register (RW1C) that
> corresponds to the class of error being serviced.
>
> Bspec: 50875, 53073, 53074, 53075
>
> Cc: Rodrigo Vivi <rodrigo.vivi@intel.com>
> Cc: Aravind Iddamsetty <aravind.iddamsetty@intel.com>
> Cc: Matthew Brost <matthew.brost@intel.com>
> Cc: Matt Roper <matthew.d.roper@intel.com>
> Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
> Cc: Jani Nikula <jani.nikula@intel.com>
> Signed-off-by: Himal Prasad Ghimiray <himal.prasad.ghimiray@intel.com>
> ---
>  drivers/gpu/drm/xe/Makefile                  |   1 +
>  drivers/gpu/drm/xe/regs/xe_regs.h            |   2 +-
>  drivers/gpu/drm/xe/regs/xe_tile_error_regs.h |  15 ++
>  drivers/gpu/drm/xe/xe_device_types.h         |  11 +
>  drivers/gpu/drm/xe/xe_hw_error.c             | 211 +++++++++++++++++++
>  drivers/gpu/drm/xe/xe_hw_error.h             |  64 ++++++
>  drivers/gpu/drm/xe/xe_irq.c                  |   3 +
>  7 files changed, 306 insertions(+), 1 deletion(-)
>  create mode 100644 drivers/gpu/drm/xe/regs/xe_tile_error_regs.h
>  create mode 100644 drivers/gpu/drm/xe/xe_hw_error.c
>  create mode 100644 drivers/gpu/drm/xe/xe_hw_error.h

<snip>

>
> +/* Count of  Correctable and Uncorrectable errors reported on tile */
> +enum xe_tile_hw_errors {
> +	XE_TILE_HW_ERR_GT_FATAL = 0,
> +	XE_TILE_HW_ERR_SGGI_FATAL,
> +	XE_TILE_HW_ERR_DISPLAY_FATAL,
> +	XE_TILE_HW_ERR_SGDI_FATAL,
> +	XE_TILE_HW_ERR_SGLI_FATAL,
> +	XE_TILE_HW_ERR_SGUNIT_FATAL,
> +	XE_TILE_HW_ERR_SGCI_FATAL,
> +	XE_TILE_HW_ERR_GSC_FATAL,
> +	XE_TILE_HW_ERR_SOC_FATAL,
> +	XE_TILE_HW_ERR_MERT_FATAL,
> +	XE_TILE_HW_ERR_SGMI_FATAL,
> +	XE_TILE_HW_ERR_UNKNOWN_FATAL,
> +	XE_TILE_HW_ERR_SGGI_NONFATAL,
> +	XE_TILE_HW_ERR_DISPLAY_NONFATAL,
> +	XE_TILE_HW_ERR_SGDI_NONFATAL,
> +	XE_TILE_HW_ERR_SGLI_NONFATAL,
> +	XE_TILE_HW_ERR_GT_NONFATAL,
> +	XE_TILE_HW_ERR_SGUNIT_NONFATAL,
> +	XE_TILE_HW_ERR_SGCI_NONFATAL,
> +	XE_TILE_HW_ERR_GSC_NONFATAL,
> +	XE_TILE_HW_ERR_SOC_NONFATAL,
> +	XE_TILE_HW_ERR_MERT_NONFATAL,
> +	XE_TILE_HW_ERR_SGMI_NONFATAL,
> +	XE_TILE_HW_ERR_UNKNOWN_NONFATAL,
> +	XE_TILE_HW_ERR_GT_CORR,
> +	XE_TILE_HW_ERR_DISPLAY_CORR,
> +	XE_TILE_HW_ERR_SGUNIT_CORR,
> +	XE_TILE_HW_ERR_GSC_CORR,
> +	XE_TILE_HW_ERR_SOC_CORR,
> +	XE_TILE_HW_ERR_UNKNOWN_CORR,
> +	XE_TILE_HW_ERROR_MAX,
> +};
> +

there are some defines which are not used in any platform specific structures,
let's clean that up and at present let's add support to only DG2 and PVC and
any specific errors for a particular platform to be added specifically for it later, applies
to all errors in the series.

Thanks,
Aravind.

^ permalink raw reply	[flat|nested] 21+ messages in thread

* Re: [Intel-xe] [PATCH v5 1/4] drm/xe: Handle errors from various components.
  2023-10-04 12:07   ` Aravind Iddamsetty
@ 2023-10-05  4:01     ` Aravind Iddamsetty
  0 siblings, 0 replies; 21+ messages in thread
From: Aravind Iddamsetty @ 2023-10-05  4:01 UTC (permalink / raw)
  To: Himal Prasad Ghimiray, intel-xe; +Cc: Jani Nikula, Matt Roper, Rodrigo Vivi


On 04/10/23 17:37, Aravind Iddamsetty wrote:
> On 23/08/23 14:28, Himal Prasad Ghimiray wrote:
>> The GFX device can generate numbers of classes of error under the new
>> infrastructure: correctable, non-fatal, and fatal errors.
>>
>> The non-fatal and fatal error classes distinguish between levels of
>> severity for uncorrectable errors. Driver will only handle logging
>> of errors and updating counters from various components within the
>> graphics device. Anything more will be handled at system level.
>>
>> For errors that will route as interrupts, three bits in the Master
>> Interrupt Register will be used to convey the class of error.
>>
>> For each class of error: Determine source of error (IP block) by reading
>> the Device Error Source Register (RW1C) that
>> corresponds to the class of error being serviced.
>>
>> Bspec: 50875, 53073, 53074, 53075
>>
>> Cc: Rodrigo Vivi <rodrigo.vivi@intel.com>
>> Cc: Aravind Iddamsetty <aravind.iddamsetty@intel.com>
>> Cc: Matthew Brost <matthew.brost@intel.com>
>> Cc: Matt Roper <matthew.d.roper@intel.com>
>> Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
>> Cc: Jani Nikula <jani.nikula@intel.com>
>> Signed-off-by: Himal Prasad Ghimiray <himal.prasad.ghimiray@intel.com>
>> ---
>>  drivers/gpu/drm/xe/Makefile                  |   1 +
>>  drivers/gpu/drm/xe/regs/xe_regs.h            |   2 +-
>>  drivers/gpu/drm/xe/regs/xe_tile_error_regs.h |  15 ++
>>  drivers/gpu/drm/xe/xe_device_types.h         |  11 +
>>  drivers/gpu/drm/xe/xe_hw_error.c             | 211 +++++++++++++++++++
>>  drivers/gpu/drm/xe/xe_hw_error.h             |  64 ++++++
>>  drivers/gpu/drm/xe/xe_irq.c                  |   3 +
>>  7 files changed, 306 insertions(+), 1 deletion(-)
>>  create mode 100644 drivers/gpu/drm/xe/regs/xe_tile_error_regs.h
>>  create mode 100644 drivers/gpu/drm/xe/xe_hw_error.c
>>  create mode 100644 drivers/gpu/drm/xe/xe_hw_error.h
> <snip>
>
>> +/* Count of  Correctable and Uncorrectable errors reported on tile */
>> +enum xe_tile_hw_errors {
>> +	XE_TILE_HW_ERR_GT_FATAL = 0,
>> +	XE_TILE_HW_ERR_SGGI_FATAL,
>> +	XE_TILE_HW_ERR_DISPLAY_FATAL,
>> +	XE_TILE_HW_ERR_SGDI_FATAL,
>> +	XE_TILE_HW_ERR_SGLI_FATAL,
>> +	XE_TILE_HW_ERR_SGUNIT_FATAL,
>> +	XE_TILE_HW_ERR_SGCI_FATAL,
>> +	XE_TILE_HW_ERR_GSC_FATAL,
>> +	XE_TILE_HW_ERR_SOC_FATAL,
>> +	XE_TILE_HW_ERR_MERT_FATAL,
>> +	XE_TILE_HW_ERR_SGMI_FATAL,
>> +	XE_TILE_HW_ERR_UNKNOWN_FATAL,
>> +	XE_TILE_HW_ERR_SGGI_NONFATAL,
>> +	XE_TILE_HW_ERR_DISPLAY_NONFATAL,
>> +	XE_TILE_HW_ERR_SGDI_NONFATAL,
>> +	XE_TILE_HW_ERR_SGLI_NONFATAL,
>> +	XE_TILE_HW_ERR_GT_NONFATAL,
>> +	XE_TILE_HW_ERR_SGUNIT_NONFATAL,
>> +	XE_TILE_HW_ERR_SGCI_NONFATAL,
>> +	XE_TILE_HW_ERR_GSC_NONFATAL,
>> +	XE_TILE_HW_ERR_SOC_NONFATAL,
>> +	XE_TILE_HW_ERR_MERT_NONFATAL,
>> +	XE_TILE_HW_ERR_SGMI_NONFATAL,
>> +	XE_TILE_HW_ERR_UNKNOWN_NONFATAL,
>> +	XE_TILE_HW_ERR_GT_CORR,
>> +	XE_TILE_HW_ERR_DISPLAY_CORR,
>> +	XE_TILE_HW_ERR_SGUNIT_CORR,
>> +	XE_TILE_HW_ERR_GSC_CORR,
>> +	XE_TILE_HW_ERR_SOC_CORR,
>> +	XE_TILE_HW_ERR_UNKNOWN_CORR,
>> +	XE_TILE_HW_ERROR_MAX,
>> +};
>> +
> there are some defines which are not used in any platform specific structures,
> let's clean that up and at present let's add support to only DG2 and PVC and
> any specific errors for a particular platform to be added specifically for it later, applies
> to all errors in the series.

Also, let's remove display as there are no known RAS errors from it.

Thanks,
Aravind.
>
> Thanks,
> Aravind.

^ permalink raw reply	[flat|nested] 21+ messages in thread

end of thread, other threads:[~2023-10-05  3:59 UTC | newest]

Thread overview: 21+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-08-23  8:58 [Intel-xe] [PATCH v5 0/4] Supporting RAS on XE Himal Prasad Ghimiray
2023-08-23  8:58 ` [Intel-xe] [PATCH v5 1/4] drm/xe: Handle errors from various components Himal Prasad Ghimiray
2023-09-26  4:20   ` Aravind Iddamsetty
2023-09-26  4:57     ` Ghimiray, Himal Prasad
2023-09-26 10:09       ` Aravind Iddamsetty
2023-10-04 12:07   ` Aravind Iddamsetty
2023-10-05  4:01     ` Aravind Iddamsetty
2023-08-23  8:58 ` [Intel-xe] [PATCH v5 2/4] drm/xe: Log and count the GT hardware errors Himal Prasad Ghimiray
2023-09-26  4:20   ` Aravind Iddamsetty
2023-09-26  5:08     ` Ghimiray, Himal Prasad
2023-08-23  8:58 ` [Intel-xe] [PATCH v5 3/4] drm/xe: Support GT hardware error reporting for PVC Himal Prasad Ghimiray
2023-09-26  4:21   ` Aravind Iddamsetty
2023-09-26  5:11     ` Ghimiray, Himal Prasad
2023-08-23  8:58 ` [Intel-xe] [PATCH v5 4/4] drm/xe: Process fatal hardware errors Himal Prasad Ghimiray
2023-09-26  4:21   ` Aravind Iddamsetty
2023-09-26 10:24     ` Ghimiray, Himal Prasad
2023-08-23  9:00 ` [Intel-xe] ✓ CI.Patch_applied: success for Supporting RAS on XE (rev4) Patchwork
2023-08-23  9:00 ` [Intel-xe] ✗ CI.checkpatch: warning " Patchwork
2023-08-23  9:01 ` [Intel-xe] ✓ CI.KUnit: success " Patchwork
2023-08-23  9:05 ` [Intel-xe] ✓ CI.Build: " Patchwork
2023-08-23  9:05 ` [Intel-xe] ✗ CI.Hooks: failure " Patchwork

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox