Intel-XE Archive on lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v6 0/3] CCS save restore for IGPU
@ 2025-06-06 12:45 Satyanarayana K V P
  2025-06-06 12:45 ` [PATCH v6 1/3] drm/xe/vf: Create contexts for CCS read write Satyanarayana K V P
                   ` (10 more replies)
  0 siblings, 11 replies; 23+ messages in thread
From: Satyanarayana K V P @ 2025-06-06 12:45 UTC (permalink / raw)
  To: intel-xe; +Cc: Satyanarayana K V P

Prior IGPU design had compression supported in GPU VA domain. For
Virtualization, this makes compression Meta data save/restore for VF as
not necessary (i.e. Compression Meta data space is automatically
save/restore with normal guest/VM memory).

With latest Xe2 architecture, compression is supported by Flat, physical
domain. Meta data/compression control surface (Aka CCS) and association
is in physical domain and data is located in BIOS/firmware-reserved CCS
pool. In virtualization/SRIOV when VF save/restore now have to account for
save/restore VF associated CCS. Without this feature any restore of
compressed resource in IGPU VF domain will have corruption as Meta data
will not be restore correctly as a part of VF save/restore flow. Making it
must have/functional feature if we are supporting compression and
Save/restore of VF on IGPU platform.

This is the first in series which adds support for CCS save/restore for
IGPU.

V5 -> V6:
- Removed dead code from xe_migrate_ccs_rw_copy() function (Matthew Brost)
- Added id field in the xe_tile_vf_ccs structure for self identification.

V4 -> V5:
- Modified read/write contexts to enums from #defines (Matthew Brost).
- The CCS BB pool size is calculated based on the system memory size
  (Michal Wajdeczko & Matthew Brost).
- Fixed review comments (Matthew Brost & Matthew Auld)
- Create a list of BBs for the given BO and fixed memory leak while
  detaching BOs. (Matthew Brost).
- Yet to cleanup xe_migrate_ccs_rw_copy() function.

V3 -> V4:
- Fixed issues reported by patchworks.

V2 -> V3:
- Added new variable which denotes the initialization of contexts.
- Attach and detach functions check for IS_VF_CCS_READY().
- Made xe_migrate structure private as per review comments.
- Created new xe_migrate functions to get lrc and exec_queue.

V1 -> V2:
- Fixed review comments.

Satyanarayana K V P (3):
  drm/xe/vf: Create contexts for CCS read write
  drm/xe/vf: Attach and detach CCS copy commands with BO
  drm/xe/vf: Register CCS read/write contexts with Guc

 drivers/gpu/drm/xe/Makefile                |   1 +
 drivers/gpu/drm/xe/xe_bb.c                 |  34 ++
 drivers/gpu/drm/xe/xe_bb.h                 |   3 +
 drivers/gpu/drm/xe/xe_bb_types.h           |   1 +
 drivers/gpu/drm/xe/xe_bo.c                 |  23 ++
 drivers/gpu/drm/xe/xe_bo_types.h           |   3 +
 drivers/gpu/drm/xe/xe_device.c             |   4 +
 drivers/gpu/drm/xe/xe_device_types.h       |   4 +
 drivers/gpu/drm/xe/xe_gt_debugfs.c         |  36 +++
 drivers/gpu/drm/xe/xe_guc_fwif.h           |   5 +
 drivers/gpu/drm/xe/xe_guc_submit.c         |  37 ++-
 drivers/gpu/drm/xe/xe_guc_submit.h         |   1 +
 drivers/gpu/drm/xe/xe_migrate.c            | 120 +++++++
 drivers/gpu/drm/xe/xe_migrate.h            |   7 +
 drivers/gpu/drm/xe/xe_pm.c                 |   4 +
 drivers/gpu/drm/xe/xe_sriov.c              |  19 ++
 drivers/gpu/drm/xe/xe_sriov.h              |   1 +
 drivers/gpu/drm/xe/xe_sriov_types.h        |   5 +
 drivers/gpu/drm/xe/xe_sriov_vf_ccs.c       | 352 +++++++++++++++++++++
 drivers/gpu/drm/xe/xe_sriov_vf_ccs.h       |  17 +
 drivers/gpu/drm/xe/xe_sriov_vf_ccs_types.h |  54 ++++
 21 files changed, 729 insertions(+), 2 deletions(-)
 create mode 100644 drivers/gpu/drm/xe/xe_sriov_vf_ccs.c
 create mode 100644 drivers/gpu/drm/xe/xe_sriov_vf_ccs.h
 create mode 100644 drivers/gpu/drm/xe/xe_sriov_vf_ccs_types.h

-- 
2.43.0


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

* [PATCH v6 1/3] drm/xe/vf: Create contexts for CCS read write
  2025-06-06 12:45 [PATCH v6 0/3] CCS save restore for IGPU Satyanarayana K V P
@ 2025-06-06 12:45 ` Satyanarayana K V P
  2025-06-06 17:18   ` Matthew Brost
                     ` (2 more replies)
  2025-06-06 12:45 ` [PATCH v6 2/3] drm/xe/vf: Attach and detach CCS copy commands with BO Satyanarayana K V P
                   ` (9 subsequent siblings)
  10 siblings, 3 replies; 23+ messages in thread
From: Satyanarayana K V P @ 2025-06-06 12:45 UTC (permalink / raw)
  To: intel-xe
  Cc: Satyanarayana K V P, Michal Wajdeczko, Michał Winiarski,
	Tomasz Lis, Matthew Brost, Matthew Auld

Create two LRCs to handle CCS meta data read / write from CCS pool in the
VM. Read context is used to hold GPU instructions to be executed at save
time and write context is used to hold GPU instructions to be executed at
the restore time.

Allocate batch buffer pool using suballocator for both read and write
contexts.

Migration framework is reused to create LRCAs for read and write.

Signed-off-by: Satyanarayana K V P <satyanarayana.k.v.p@intel.com>
---
Cc: Michal Wajdeczko <michal.wajdeczko@intel.com>
Cc: Michał Winiarski <michal.winiarski@intel.com>
Cc: Tomasz Lis <tomasz.lis@intel.com>
Cc: Matthew Brost <matthew.brost@intel.com>
Cc: Matthew Auld <matthew.auld@intel.com>

V5 -> V6:
- Added id field in the xe_tile_vf_ccs structure for self identification.

V4 -> V5:
- Modified read/write contexts to enums from #defines (Matthew Brost).
- The CCS BB pool size is calculated based on the system memory size (Michal
  Wajdeczko & Matthew Brost).

V3 -> V4:
- Fixed issues reported by patchworks.

V2 -> V3:
- Added new variable which denotes the initialization of contexts.

V1 -> V2:
- Fixed review comments.
---
 drivers/gpu/drm/xe/Makefile                |   1 +
 drivers/gpu/drm/xe/xe_device.c             |   4 +
 drivers/gpu/drm/xe/xe_device_types.h       |   4 +
 drivers/gpu/drm/xe/xe_gt_debugfs.c         |  36 ++++
 drivers/gpu/drm/xe/xe_sriov.c              |  19 +++
 drivers/gpu/drm/xe/xe_sriov.h              |   1 +
 drivers/gpu/drm/xe/xe_sriov_types.h        |   5 +
 drivers/gpu/drm/xe/xe_sriov_vf_ccs.c       | 186 +++++++++++++++++++++
 drivers/gpu/drm/xe/xe_sriov_vf_ccs.h       |  13 ++
 drivers/gpu/drm/xe/xe_sriov_vf_ccs_types.h |  46 +++++
 10 files changed, 315 insertions(+)
 create mode 100644 drivers/gpu/drm/xe/xe_sriov_vf_ccs.c
 create mode 100644 drivers/gpu/drm/xe/xe_sriov_vf_ccs.h
 create mode 100644 drivers/gpu/drm/xe/xe_sriov_vf_ccs_types.h

diff --git a/drivers/gpu/drm/xe/Makefile b/drivers/gpu/drm/xe/Makefile
index f5f5775acdc0..3b5241937742 100644
--- a/drivers/gpu/drm/xe/Makefile
+++ b/drivers/gpu/drm/xe/Makefile
@@ -140,6 +140,7 @@ xe-y += \
 	xe_memirq.o \
 	xe_sriov.o \
 	xe_sriov_vf.o \
+	xe_sriov_vf_ccs.o \
 	xe_tile_sriov_vf.o
 
 xe-$(CONFIG_PCI_IOV) += \
diff --git a/drivers/gpu/drm/xe/xe_device.c b/drivers/gpu/drm/xe/xe_device.c
index 660b0c5126dc..bf96045770c7 100644
--- a/drivers/gpu/drm/xe/xe_device.c
+++ b/drivers/gpu/drm/xe/xe_device.c
@@ -925,6 +925,10 @@ int xe_device_probe(struct xe_device *xe)
 
 	xe_vsec_init(xe);
 
+	err = xe_sriov_late_init(xe);
+	if (err)
+		goto err_unregister_display;
+
 	return devm_add_action_or_reset(xe->drm.dev, xe_device_sanitize, xe);
 
 err_unregister_display:
diff --git a/drivers/gpu/drm/xe/xe_device_types.h b/drivers/gpu/drm/xe/xe_device_types.h
index ac27389ccb8b..caf3bb1ef048 100644
--- a/drivers/gpu/drm/xe/xe_device_types.h
+++ b/drivers/gpu/drm/xe/xe_device_types.h
@@ -22,6 +22,7 @@
 #include "xe_pmu_types.h"
 #include "xe_pt_types.h"
 #include "xe_sriov_types.h"
+#include "xe_sriov_vf_ccs_types.h"
 #include "xe_step_types.h"
 #include "xe_survivability_mode_types.h"
 #include "xe_ttm_vram_mgr_types.h"
@@ -234,6 +235,9 @@ struct xe_tile {
 		struct {
 			/** @sriov.vf.ggtt_balloon: GGTT regions excluded from use. */
 			struct xe_ggtt_node *ggtt_balloon[2];
+
+			/** @sriov.vf.ccs: CCS read and write contexts for VF. */
+			struct xe_tile_vf_ccs ccs[XE_SRIOV_VF_CCS_RW_MAX_CTXS];
 		} vf;
 	} sriov;
 
diff --git a/drivers/gpu/drm/xe/xe_gt_debugfs.c b/drivers/gpu/drm/xe/xe_gt_debugfs.c
index 848618acdca8..2c6d757db810 100644
--- a/drivers/gpu/drm/xe/xe_gt_debugfs.c
+++ b/drivers/gpu/drm/xe/xe_gt_debugfs.c
@@ -134,6 +134,30 @@ static int sa_info(struct xe_gt *gt, struct drm_printer *p)
 	return 0;
 }
 
+static int sa_info_vf_ccs(struct xe_gt *gt, struct drm_printer *p)
+{
+	struct xe_tile *tile = gt_to_tile(gt);
+	struct xe_sa_manager *bb_pool;
+	int ctx_id;
+
+	if (!IS_VF_CCS_READY(gt_to_xe(gt)))
+		return 0;
+
+	xe_pm_runtime_get(gt_to_xe(gt));
+
+	for_each_ccs_rw_ctx(ctx_id) {
+		drm_printf(p, "ccs %s bb suballoc info\n", ctx_id ? "write" : "read");
+		drm_printf(p, "-------------------------\n");
+		bb_pool = tile->sriov.vf.ccs[ctx_id].mem.ccs_bb_pool;
+		drm_suballoc_dump_debug_info(&bb_pool->base, p, bb_pool->gpu_addr);
+		drm_puts(p, "\n");
+	}
+
+	xe_pm_runtime_put(gt_to_xe(gt));
+
+	return 0;
+}
+
 static int topology(struct xe_gt *gt, struct drm_printer *p)
 {
 	xe_pm_runtime_get(gt_to_xe(gt));
@@ -303,6 +327,13 @@ static const struct drm_info_list vf_safe_debugfs_list[] = {
 	{"hwconfig", .show = xe_gt_debugfs_simple_show, .data = hwconfig},
 };
 
+/*
+ * only for GT debugfs files which are valid on VF. Not valid on PF.
+ */
+static const struct drm_info_list vf_only_debugfs_list[] = {
+	{"sa_info_vf_ccs", .show = xe_gt_debugfs_simple_show, .data = sa_info_vf_ccs},
+};
+
 /* everything else should be added here */
 static const struct drm_info_list pf_only_debugfs_list[] = {
 	{"hw_engines", .show = xe_gt_debugfs_simple_show, .data = hw_engines},
@@ -419,6 +450,11 @@ void xe_gt_debugfs_register(struct xe_gt *gt)
 		drm_debugfs_create_files(pf_only_debugfs_list,
 					 ARRAY_SIZE(pf_only_debugfs_list),
 					 root, minor);
+	else
+		drm_debugfs_create_files(vf_only_debugfs_list,
+					 ARRAY_SIZE(vf_only_debugfs_list),
+					 root, minor);
+
 
 	xe_uc_debugfs_register(&gt->uc, root);
 
diff --git a/drivers/gpu/drm/xe/xe_sriov.c b/drivers/gpu/drm/xe/xe_sriov.c
index a0eab44c0e76..87911fb4eea7 100644
--- a/drivers/gpu/drm/xe/xe_sriov.c
+++ b/drivers/gpu/drm/xe/xe_sriov.c
@@ -15,6 +15,7 @@
 #include "xe_sriov.h"
 #include "xe_sriov_pf.h"
 #include "xe_sriov_vf.h"
+#include "xe_sriov_vf_ccs.h"
 
 /**
  * xe_sriov_mode_to_string - Convert enum value to string.
@@ -157,3 +158,21 @@ const char *xe_sriov_function_name(unsigned int n, char *buf, size_t size)
 		strscpy(buf, "PF", size);
 	return buf;
 }
+
+/**
+ * xe_sriov_late_init() - SR-IOV late initialization functions.
+ * @xe: the &xe_device to initialize
+ *
+ * On VF this function will initialize code for CCS migration.
+ *
+ * Return: 0 on success or a negative error code on failure.
+ */
+int xe_sriov_late_init(struct xe_device *xe)
+{
+	int err = 0;
+
+	if (IS_VF_CCS_INIT_NEEDED(xe))
+		err = xe_sriov_vf_ccs_init(xe);
+
+	return err;
+}
diff --git a/drivers/gpu/drm/xe/xe_sriov.h b/drivers/gpu/drm/xe/xe_sriov.h
index 688fbabf08f1..0e0c1abf2d14 100644
--- a/drivers/gpu/drm/xe/xe_sriov.h
+++ b/drivers/gpu/drm/xe/xe_sriov.h
@@ -18,6 +18,7 @@ const char *xe_sriov_function_name(unsigned int n, char *buf, size_t len);
 void xe_sriov_probe_early(struct xe_device *xe);
 void xe_sriov_print_info(struct xe_device *xe, struct drm_printer *p);
 int xe_sriov_init(struct xe_device *xe);
+int xe_sriov_late_init(struct xe_device *xe);
 
 static inline enum xe_sriov_mode xe_device_sriov_mode(const struct xe_device *xe)
 {
diff --git a/drivers/gpu/drm/xe/xe_sriov_types.h b/drivers/gpu/drm/xe/xe_sriov_types.h
index ca94382a721e..8abfdb2c5ead 100644
--- a/drivers/gpu/drm/xe/xe_sriov_types.h
+++ b/drivers/gpu/drm/xe/xe_sriov_types.h
@@ -71,6 +71,11 @@ struct xe_device_vf {
 		/** @migration.gt_flags: Per-GT request flags for VF migration recovery */
 		unsigned long gt_flags;
 	} migration;
+
+	struct {
+		/** @initialized: Initilalization of vf ccs is completed or not */
+		bool initialized;
+	} ccs;
 };
 
 #endif
diff --git a/drivers/gpu/drm/xe/xe_sriov_vf_ccs.c b/drivers/gpu/drm/xe/xe_sriov_vf_ccs.c
new file mode 100644
index 000000000000..41fe1f59e0e9
--- /dev/null
+++ b/drivers/gpu/drm/xe/xe_sriov_vf_ccs.c
@@ -0,0 +1,186 @@
+// SPDX-License-Identifier: MIT
+/*
+ * Copyright © 2025 Intel Corporation
+ */
+
+#include "instructions/xe_mi_commands.h"
+#include "instructions/xe_gpu_commands.h"
+#include "xe_bo.h"
+#include "xe_device.h"
+#include "xe_migrate.h"
+#include "xe_sa.h"
+#include "xe_sriov_printk.h"
+#include "xe_sriov_vf_ccs.h"
+#include "xe_sriov_vf_ccs_types.h"
+
+/**
+ * DOC: VF save/restore of compression Meta Data
+ *
+ * VF KMD registers two special contexts/LRCAs.
+ *
+ * Save Context/LRCA: contain necessary cmds+page table to trigger Meta data /
+ * compression control surface (Aka CCS) save in regular System memory in VM.
+ *
+ * Restore Context/LRCA: contain necessary cmds+page table to trigger Meta data /
+ * compression control surface (Aka CCS) Restore from regular System memory in
+ * VM to corresponding CCS pool.
+ *
+ * Below diagram explain steps needed for VF save/Restore of compression Meta
+ * Data::
+ *
+ *    CCS Save    CCS Restore          VF KMD                          Guc       BCS
+ *     LRCA        LRCA
+ *      |           |                     |                              |         |
+ *      |           |                     |                              |         |
+ *      |     Create Save LRCA            |                              |         |
+ *     [ ]<----------------------------- [ ]                             |         |
+ *      |           |                     |                              |         |
+ *      |           |                     |                              |         |
+ *      |           |                     |   Register LRCA with Guc     |         |
+ *      |           |                    [ ]--------------------------->[ ]        |
+ *      |           |                     |                              |         |
+ *      |           |                     |                              |         |
+ *      |           | Create restore LRCA |                              |         |
+ *      |          [ ]<------------------[ ]                             |         |
+ *      |           |                     |                              |         |
+ *      |           |                     |                              |         |
+ *      |           |                    [ ]-----------------------      |         |
+ *      |           |                    [ ]  Allocate main memory |     |         |
+ *      |           |                    [ ]  Allocate CCS memory  |     |         |
+ *      |           |                    [ ]<----------------------      |         |
+ *      |           |                     |                              |         |
+ *      |           |                     |                              |         |
+ *      | Update Main memory & CCS pages  |                              |         |
+ *      |   PPGTT + BB cmds to save       |                              |         |
+ *     [ ]<------------------------------[ ]                             |         |
+ *      |           |                     |                              |         |
+ *      |           |                     |                              |         |
+ *      |           | Update Main memory  |                              |         |
+ *      |           | & CCS pages PPGTT + |                              |         |
+ *      |           | BB cms to restore   |                              |         |
+ *      |          [ ]<------------------[ ]                             |         |
+ *      |           |                     |                              |         |
+ *      |           |                     |                              |         |
+ *      |           |                   VF Pause                         |         |
+ *      |           |                     |                              |Schedule |
+ *      |           |                     |                              |CCS Save |
+ *      |           |                     |                              | LRCA    |
+ *      |           |                     |                             [ ]------>[ ]
+ *      |           |                     |                              |         |
+ *      |           |                     |                              |         |
+ *      |           |                   VF Restore                       |         |
+ *      |           |                     |                              |         |
+ *      |           |                     |                              |         |
+ *      |           |                    [ ]--------------               |         |
+ *      |           |                    [ ] Fix up GGTT  |              |         |
+ *      |           |                    [ ]<-------------               |         |
+ *      |           |                     |                              |         |
+ *      |           |                     |                              |         |
+ *      |           |                     |                              |Schedule |
+ *      |           |                     |                              |CCS      |
+ *      |           |                     |                              |Restore  |
+ *      |           |                     |                              |LRCA     |
+ *      |           |                     |                             [ ]------>[ ]
+ *      |           |                     |                              |         |
+ *      |           |                     |                              |         |
+ *
+ */
+
+static u64 get_ccs_bb_pool_size(struct xe_device *xe)
+{
+	u64 sys_mem_size, ccs_mem_size, ptes, bb_pool_size;
+	struct sysinfo si;
+
+	si_meminfo(&si);
+	sys_mem_size = si.totalram * si.mem_unit;
+	ccs_mem_size = sys_mem_size / NUM_BYTES_PER_CCS_BYTE(xe);
+	ptes = DIV_ROUND_UP(sys_mem_size + ccs_mem_size, XE_PAGE_SIZE);
+
+	/**
+	 * We need below BB size to hold PTE mappings and some DWs for copy
+	 * command. In reality, we need space for many copy commands. So, let
+	 * us allocate double the calculated size which is enough to holds GPU
+	 * instructions for the whole region.
+	 */
+	bb_pool_size = ptes * sizeof(u32);
+
+	return round_up(bb_pool_size * 2, SZ_1M);
+}
+
+static int alloc_bb_pool(struct xe_tile *tile, struct xe_tile_vf_ccs *ctx)
+{
+	struct xe_device *xe = tile_to_xe(tile);
+	struct xe_sa_manager *sa_manager;
+	u64 bb_pool_size;
+	int offset, err;
+
+	bb_pool_size = get_ccs_bb_pool_size(xe);
+	xe_sriov_info(xe, "Allocating %s CCS BB pool size = %lldMB\n",
+		      ctx->id ? "Restore" : "Save", bb_pool_size / SZ_1M);
+
+	sa_manager = xe_sa_bo_manager_init(tile, bb_pool_size, SZ_16);
+
+	if (IS_ERR(sa_manager)) {
+		xe_sriov_err(xe, "Suballocator init failed with error: %pe\n",
+			     sa_manager);
+		err = PTR_ERR(sa_manager);
+		return err;
+	}
+
+	offset = 0;
+	xe_map_memset(xe, &sa_manager->bo->vmap, offset, MI_NOOP,
+		      bb_pool_size);
+
+	offset = bb_pool_size - sizeof(u32);
+	xe_map_wr(xe, &sa_manager->bo->vmap, offset, u32, MI_BATCH_BUFFER_END);
+
+	ctx->mem.ccs_bb_pool = sa_manager;
+
+	return 0;
+}
+
+/**
+ * xe_sriov_vf_ccs_init - Setup LRCA for save & restore.
+ * @xe: the &xe_device to start recovery on
+ *
+ * This function shall be called only by VF. It initializes
+ * LRCA and suballocator needed for CCS save & restore.
+ *
+ * Return: 0 on success. Negative error code on failure.
+ */
+int xe_sriov_vf_ccs_init(struct xe_device *xe)
+{
+	struct xe_migrate *migrate;
+	struct xe_tile_vf_ccs *ctx;
+	struct xe_tile *tile;
+	int tile_id, ctx_id;
+	int err = 0;
+
+	xe_assert(xe, (IS_SRIOV_VF(xe) || !IS_DGFX(xe) ||
+		       xe_device_has_flat_ccs(xe)));
+
+	for_each_tile(tile, xe, tile_id) {
+		for_each_ccs_rw_ctx(ctx_id) {
+			ctx = &tile->sriov.vf.ccs[ctx_id];
+			ctx->id = ctx_id;
+
+			migrate = xe_migrate_init(tile);
+			if (IS_ERR(migrate)) {
+				err = PTR_ERR(migrate);
+				goto err_ret;
+			}
+			ctx->migrate = migrate;
+
+			err = alloc_bb_pool(tile, ctx);
+			if (err)
+				goto err_ret;
+		}
+	}
+
+	xe->sriov.vf.ccs.initialized = 1;
+
+	return 0;
+
+err_ret:
+	return err;
+}
diff --git a/drivers/gpu/drm/xe/xe_sriov_vf_ccs.h b/drivers/gpu/drm/xe/xe_sriov_vf_ccs.h
new file mode 100644
index 000000000000..5df9ba028d14
--- /dev/null
+++ b/drivers/gpu/drm/xe/xe_sriov_vf_ccs.h
@@ -0,0 +1,13 @@
+/* SPDX-License-Identifier: MIT */
+/*
+ * Copyright © 2025 Intel Corporation
+ */
+
+#ifndef _XE_SRIOV_VF_CCS_H_
+#define _XE_SRIOV_VF_CCS_H_
+
+struct xe_device;
+
+int xe_sriov_vf_ccs_init(struct xe_device *xe);
+
+#endif
diff --git a/drivers/gpu/drm/xe/xe_sriov_vf_ccs_types.h b/drivers/gpu/drm/xe/xe_sriov_vf_ccs_types.h
new file mode 100644
index 000000000000..f67f002c7a96
--- /dev/null
+++ b/drivers/gpu/drm/xe/xe_sriov_vf_ccs_types.h
@@ -0,0 +1,46 @@
+/* SPDX-License-Identifier: MIT */
+/*
+ * Copyright © 2022-2023 Intel Corporation
+ */
+
+#ifndef _XE_SRIOV_VF_CCS__TYPES_H_
+#define _XE_SRIOV_VF_CCS__TYPES_H_
+
+#define for_each_ccs_rw_ctx(id__) \
+	for ((id__) = 0; (id__) < XE_SRIOV_VF_CCS_RW_MAX_CTXS; (id__)++)
+
+#define IS_VF_CCS_READY(xe) ({ \
+		struct xe_device *___xe = (xe); \
+		xe_assert(___xe, IS_SRIOV_VF(___xe)); \
+		___xe->sriov.vf.ccs.initialized; \
+		})
+
+#define IS_VF_CCS_INIT_NEEDED(xe) ({\
+		struct xe_device *___xe = (xe); \
+		IS_SRIOV_VF(___xe) && !IS_DGFX(___xe) && \
+		xe_device_has_flat_ccs(___xe) && GRAPHICS_VER(___xe) >= 20; \
+		})
+
+enum xe_sriov_vf_ccs_rw_ctxs {
+	XE_SRIOV_VF_CCS_RW_MIN_CTXS = 0,
+	XE_SRIOV_VF_CCS_READ_CTX = XE_SRIOV_VF_CCS_RW_MIN_CTXS,
+	XE_SRIOV_VF_CCS_WRITE_CTX,
+	XE_SRIOV_VF_CCS_RW_MAX_CTXS
+};
+
+struct xe_migrate;
+struct xe_sa_manager;
+
+struct xe_tile_vf_ccs {
+	/** @id: Id to which context it belongs to */
+	int id;
+	/** @migrate: Migration helper for save/restore of CCS data */
+	struct xe_migrate *migrate;
+
+	struct {
+		/** @ccs_rw_bb_pool: Pool from which batch buffers are allocated. */
+		struct xe_sa_manager *ccs_bb_pool;
+	} mem;
+};
+
+#endif
-- 
2.43.0


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

* [PATCH v6 2/3] drm/xe/vf: Attach and detach CCS copy commands with BO
  2025-06-06 12:45 [PATCH v6 0/3] CCS save restore for IGPU Satyanarayana K V P
  2025-06-06 12:45 ` [PATCH v6 1/3] drm/xe/vf: Create contexts for CCS read write Satyanarayana K V P
@ 2025-06-06 12:45 ` Satyanarayana K V P
  2025-06-06 17:37   ` Matthew Brost
  2025-06-06 12:45 ` [PATCH v6 3/3] drm/xe/vf: Register CCS read/write contexts with Guc Satyanarayana K V P
                   ` (8 subsequent siblings)
  10 siblings, 1 reply; 23+ messages in thread
From: Satyanarayana K V P @ 2025-06-06 12:45 UTC (permalink / raw)
  To: intel-xe
  Cc: Satyanarayana K V P, Michal Wajdeczko, Michał Winiarski,
	Tomasz Lis, Matthew Brost, Matthew Auld

Attach CCS read/write copy commands to BO for old and new mem types as
NULL -> tt or system -> tt.
Detach the CCS read/write copy commands from BO while deleting ttm bo
from xe_ttm_bo_delete_mem_notify().

Signed-off-by: Satyanarayana K V P <satyanarayana.k.v.p@intel.com>
---
Cc: Michal Wajdeczko <michal.wajdeczko@intel.com>
Cc: Michał Winiarski <michal.winiarski@intel.com>
Cc: Tomasz Lis <tomasz.lis@intel.com>
Cc: Matthew Brost <matthew.brost@intel.com>
Cc: Matthew Auld <matthew.auld@intel.com>

V5 -> V6:
- Removed dead code from xe_migrate_ccs_rw_copy() function. (Matthew Brost)

V4 -> V5:
- Create a list of BBs for the given BO and fixed memory leak while
  detaching BOs. (Matthew Brost).
- Fixed review comments (Matthew Brost & Matthew Auld).
- Yet to cleanup xe_migrate_ccs_rw_copy() function.

V3 -> V4:
- Fixed issues reported by patchworks.

V2 -> V3:
- Attach and detach functions check for IS_VF_CCS_READY().

V1 -> V2:
- Fixed review comments.
---
 drivers/gpu/drm/xe/xe_bb.c                 | 34 ++++++++
 drivers/gpu/drm/xe/xe_bb.h                 |  3 +
 drivers/gpu/drm/xe/xe_bb_types.h           |  1 +
 drivers/gpu/drm/xe/xe_bo.c                 | 23 +++++
 drivers/gpu/drm/xe/xe_bo_types.h           |  3 +
 drivers/gpu/drm/xe/xe_migrate.c            | 98 ++++++++++++++++++++++
 drivers/gpu/drm/xe/xe_migrate.h            |  4 +
 drivers/gpu/drm/xe/xe_sriov_vf_ccs.c       | 77 +++++++++++++++++
 drivers/gpu/drm/xe/xe_sriov_vf_ccs.h       |  3 +
 drivers/gpu/drm/xe/xe_sriov_vf_ccs_types.h |  8 ++
 10 files changed, 254 insertions(+)

diff --git a/drivers/gpu/drm/xe/xe_bb.c b/drivers/gpu/drm/xe/xe_bb.c
index 9570672fce33..ee31556e00bc 100644
--- a/drivers/gpu/drm/xe/xe_bb.c
+++ b/drivers/gpu/drm/xe/xe_bb.c
@@ -60,6 +60,40 @@ struct xe_bb *xe_bb_new(struct xe_gt *gt, u32 dwords, bool usm)
 	return ERR_PTR(err);
 }
 
+struct xe_bb *xe_bb_ccs_new(struct xe_gt *gt, u32 dwords,
+			    enum xe_sriov_vf_ccs_rw_ctxs ctx_id)
+{
+	struct xe_bb *bb = kmalloc(sizeof(*bb), GFP_KERNEL);
+	struct xe_tile *tile = gt_to_tile(gt);
+	struct xe_sa_manager *bb_pool;
+	int err;
+
+	if (!bb)
+		return ERR_PTR(-ENOMEM);
+
+	/*
+	 * We need to allocate space for the requested number of dwords,
+	 * one additional MI_BATCH_BUFFER_END dword, and additional buffer
+	 * space to accommodate the platform-specific hardware prefetch
+	 * requirements.
+	 */
+	bb_pool = tile->sriov.vf.ccs[ctx_id].mem.ccs_bb_pool;
+	bb->bo = xe_sa_bo_new(bb_pool, 4 * (dwords + 1) + bb_prefetch(gt));
+
+	if (IS_ERR(bb->bo)) {
+		err = PTR_ERR(bb->bo);
+		goto err;
+	}
+
+	bb->cs = xe_sa_bo_cpu_addr(bb->bo);
+	bb->len = 0;
+
+	return bb;
+err:
+	kfree(bb);
+	return ERR_PTR(err);
+}
+
 static struct xe_sched_job *
 __xe_bb_create_job(struct xe_exec_queue *q, struct xe_bb *bb, u64 *addr)
 {
diff --git a/drivers/gpu/drm/xe/xe_bb.h b/drivers/gpu/drm/xe/xe_bb.h
index fafacd73dcc3..32c9c4c5d2be 100644
--- a/drivers/gpu/drm/xe/xe_bb.h
+++ b/drivers/gpu/drm/xe/xe_bb.h
@@ -13,8 +13,11 @@ struct dma_fence;
 struct xe_gt;
 struct xe_exec_queue;
 struct xe_sched_job;
+enum xe_sriov_vf_ccs_rw_ctxs;
 
 struct xe_bb *xe_bb_new(struct xe_gt *gt, u32 size, bool usm);
+struct xe_bb *xe_bb_ccs_new(struct xe_gt *gt, u32 dwords,
+			    enum xe_sriov_vf_ccs_rw_ctxs ctx_id);
 struct xe_sched_job *xe_bb_create_job(struct xe_exec_queue *q,
 				      struct xe_bb *bb);
 struct xe_sched_job *xe_bb_create_migration_job(struct xe_exec_queue *q,
diff --git a/drivers/gpu/drm/xe/xe_bb_types.h b/drivers/gpu/drm/xe/xe_bb_types.h
index b7d30308cf90..b2358cc051ff 100644
--- a/drivers/gpu/drm/xe/xe_bb_types.h
+++ b/drivers/gpu/drm/xe/xe_bb_types.h
@@ -12,6 +12,7 @@ struct drm_suballoc;
 
 struct xe_bb {
 	struct drm_suballoc *bo;
+	struct list_head list;
 
 	u32 *cs;
 	u32 len; /* in dwords */
diff --git a/drivers/gpu/drm/xe/xe_bo.c b/drivers/gpu/drm/xe/xe_bo.c
index 61d208c85281..b2ed5a36ab3d 100644
--- a/drivers/gpu/drm/xe/xe_bo.c
+++ b/drivers/gpu/drm/xe/xe_bo.c
@@ -31,6 +31,7 @@
 #include "xe_pxp.h"
 #include "xe_res_cursor.h"
 #include "xe_shrinker.h"
+#include "xe_sriov_vf_ccs.h"
 #include "xe_trace_bo.h"
 #include "xe_ttm_stolen_mgr.h"
 #include "xe_vm.h"
@@ -948,6 +949,20 @@ static int xe_bo_move(struct ttm_buffer_object *ttm_bo, bool evict,
 	dma_fence_put(fence);
 	xe_pm_runtime_put(xe);
 
+	/*
+	 * CCS meta data is migrated from TT -> SMEM. So, let us detach the
+	 * BBs from BO as it is no longer needed.
+	 */
+	if (IS_VF_CCS_BB_VALID(xe, bo) && old_mem_type == XE_PL_TT &&
+	    new_mem->mem_type == XE_PL_SYSTEM)
+		xe_sriov_vf_ccs_detach_bo(bo);
+
+	if (IS_SRIOV_VF(xe) &&
+	    ((move_lacks_source && new_mem->mem_type == XE_PL_TT) ||
+	     (old_mem_type == XE_PL_SYSTEM && new_mem->mem_type == XE_PL_TT)) &&
+	    handle_system_ccs)
+		ret = xe_sriov_vf_ccs_attach_bo(bo);
+
 out:
 	if ((!ttm_bo->resource || ttm_bo->resource->mem_type == XE_PL_SYSTEM) &&
 	    ttm_bo->ttm) {
@@ -958,6 +973,9 @@ static int xe_bo_move(struct ttm_buffer_object *ttm_bo, bool evict,
 		if (timeout < 0)
 			ret = timeout;
 
+		if (IS_VF_CCS_BB_VALID(xe, bo))
+			xe_sriov_vf_ccs_detach_bo(bo);
+
 		xe_tt_unmap_sg(ttm_bo->ttm);
 	}
 
@@ -1482,9 +1500,14 @@ static void xe_ttm_bo_release_notify(struct ttm_buffer_object *ttm_bo)
 
 static void xe_ttm_bo_delete_mem_notify(struct ttm_buffer_object *ttm_bo)
 {
+	struct xe_bo *bo = ttm_to_xe_bo(ttm_bo);
+
 	if (!xe_bo_is_xe_bo(ttm_bo))
 		return;
 
+	if (IS_VF_CCS_BB_VALID(ttm_to_xe_device(ttm_bo->bdev), bo))
+		xe_sriov_vf_ccs_detach_bo(bo);
+
 	/*
 	 * Object is idle and about to be destroyed. Release the
 	 * dma-buf attachment.
diff --git a/drivers/gpu/drm/xe/xe_bo_types.h b/drivers/gpu/drm/xe/xe_bo_types.h
index eb5e83c5f233..481b8e0d8ab1 100644
--- a/drivers/gpu/drm/xe/xe_bo_types.h
+++ b/drivers/gpu/drm/xe/xe_bo_types.h
@@ -78,6 +78,9 @@ struct xe_bo {
 	/** @ccs_cleared */
 	bool ccs_cleared;
 
+	/** @bb_ccs_rw: BB instructions of CCS read/write. Valid only for VF */
+	struct xe_bb *bb_ccs[XE_SRIOV_VF_CCS_RW_MAX_CTXS];
+
 	/**
 	 * @cpu_caching: CPU caching mode. Currently only used for userspace
 	 * objects. Exceptions are system memory on DGFX, which is always
diff --git a/drivers/gpu/drm/xe/xe_migrate.c b/drivers/gpu/drm/xe/xe_migrate.c
index 8f8e9fdfb2a8..d7f3009260ee 100644
--- a/drivers/gpu/drm/xe/xe_migrate.c
+++ b/drivers/gpu/drm/xe/xe_migrate.c
@@ -940,6 +940,104 @@ struct dma_fence *xe_migrate_copy(struct xe_migrate *m,
 	return fence;
 }
 
+/**
+ * xe_migrate_ccs_rw_copy() - Copy content of TTM resources.
+ * @m: The migration context.
+ * @src_bo: The buffer object @src is currently bound to.
+ * @read_write : Creates BB commands for CCS read/write.
+ *
+ * Creates batch buffer instructions to copy CCS metadata from CCS pool to
+ * memory and vice versa.
+ *
+ * This function should only be called for IGPU.
+ *
+ * Return: 0 if successful, negative error code on failure.
+ */
+int xe_migrate_ccs_rw_copy(struct xe_migrate *m,
+			   struct xe_bo *src_bo,
+			   int read_write)
+
+{
+	bool src_is_pltt = read_write == XE_SRIOV_VF_CCS_WRITE_CTX;
+	bool dst_is_pltt = read_write == XE_SRIOV_VF_CCS_READ_CTX;
+	struct ttm_resource *src = src_bo->ttm.resource;
+	struct xe_gt *gt = m->tile->primary_gt;
+	struct xe_device *xe = gt_to_xe(gt);
+	struct xe_res_cursor src_it, ccs_it;
+	u64 size = src_bo->size;
+	u64 src_L0, src_L0_ofs;
+	u32 src_L0_pt;
+	int err;
+
+	xe_res_first_sg(xe_bo_sg(src_bo), 0, size, &src_it);
+
+	xe_res_first_sg(xe_bo_sg(src_bo), xe_bo_ccs_pages_start(src_bo),
+			PAGE_ALIGN(xe_device_ccs_bytes(xe, size)),
+			&ccs_it);
+
+	while (size) {
+		u32 batch_size = 8; /* arb_clear() + MI_BATCH_BUFFER_END + Flush + NOP */
+		struct xe_bb *bb;
+		u32 flush_flags = 0;
+		u64 ccs_ofs, ccs_size;
+		u32 ccs_pt;
+
+		u32 avail_pts = max_mem_transfer_per_pass(xe) / LEVEL0_PAGE_TABLE_ENCODE_SIZE;
+
+		src_L0 = xe_migrate_res_sizes(m, &src_it);
+
+		batch_size += pte_update_size(m, false, src, &src_it, &src_L0,
+					      &src_L0_ofs, &src_L0_pt, 0, 0,
+					      avail_pts);
+
+		ccs_size = xe_device_ccs_bytes(xe, src_L0);
+		batch_size += pte_update_size(m, 0, NULL, &ccs_it, &ccs_size, &ccs_ofs,
+					      &ccs_pt, 0, avail_pts, avail_pts);
+		xe_assert(xe, IS_ALIGNED(ccs_it.start, PAGE_SIZE));
+
+		/* Add copy commands size here */
+		batch_size += EMIT_COPY_CCS_DW;
+
+		bb = xe_bb_ccs_new(gt, batch_size, read_write);
+		if (IS_ERR(bb)) {
+			drm_dbg(&xe->drm, "BB allocation failed.\n");
+			err = PTR_ERR(bb);
+			goto err_ret;
+		}
+
+		emit_pte(m, bb, src_L0_pt, false, true, &src_it, src_L0, src);
+
+		emit_pte(m, bb, ccs_pt, false, false, &ccs_it, ccs_size, src);
+
+		bb->cs[bb->len++] = MI_FLUSH_DW | MI_INVALIDATE_TLB | MI_FLUSH_DW_OP_STOREDW |
+					MI_FLUSH_IMM_DW;
+		bb->cs[bb->len++] = MI_NOOP;
+		bb->cs[bb->len++] = MI_NOOP;
+
+		flush_flags = xe_migrate_ccs_copy(m, bb, src_L0_ofs, src_is_pltt,
+						  src_L0_ofs, dst_is_pltt,
+						  src_L0, ccs_ofs, true);
+
+		bb->cs[bb->len++] = MI_FLUSH_DW | MI_INVALIDATE_TLB | MI_FLUSH_DW_OP_STOREDW |
+					MI_FLUSH_IMM_DW | flush_flags;
+		bb->cs[bb->len++] = MI_NOOP;
+		bb->cs[bb->len++] = MI_NOOP;
+
+		if (size == src_bo->size) {
+			src_bo->bb_ccs[read_write] = bb;
+			INIT_LIST_HEAD(&src_bo->bb_ccs[read_write]->list);
+		} else {
+			list_add(&bb->list, &src_bo->bb_ccs[read_write]->list);
+		}
+
+		size -= src_L0;
+	}
+	return 0;
+
+err_ret:
+	return err;
+}
+
 static void emit_clear_link_copy(struct xe_gt *gt, struct xe_bb *bb, u64 src_ofs,
 				 u32 size, u32 pitch)
 {
diff --git a/drivers/gpu/drm/xe/xe_migrate.h b/drivers/gpu/drm/xe/xe_migrate.h
index fb9839c1bae0..ab5ebb44d2c9 100644
--- a/drivers/gpu/drm/xe/xe_migrate.h
+++ b/drivers/gpu/drm/xe/xe_migrate.h
@@ -112,6 +112,10 @@ struct dma_fence *xe_migrate_copy(struct xe_migrate *m,
 				  struct ttm_resource *dst,
 				  bool copy_only_ccs);
 
+int xe_migrate_ccs_rw_copy(struct xe_migrate *m,
+			   struct xe_bo *src_bo,
+			   int read_write);
+
 int xe_migrate_access_memory(struct xe_migrate *m, struct xe_bo *bo,
 			     unsigned long offset, void *buf, int len,
 			     int write);
diff --git a/drivers/gpu/drm/xe/xe_sriov_vf_ccs.c b/drivers/gpu/drm/xe/xe_sriov_vf_ccs.c
index 41fe1f59e0e9..4b5cfc0d421b 100644
--- a/drivers/gpu/drm/xe/xe_sriov_vf_ccs.c
+++ b/drivers/gpu/drm/xe/xe_sriov_vf_ccs.c
@@ -5,6 +5,7 @@
 
 #include "instructions/xe_mi_commands.h"
 #include "instructions/xe_gpu_commands.h"
+#include "xe_bb.h"
 #include "xe_bo.h"
 #include "xe_device.h"
 #include "xe_migrate.h"
@@ -184,3 +185,79 @@ int xe_sriov_vf_ccs_init(struct xe_device *xe)
 err_ret:
 	return err;
 }
+
+/**
+ * xe_sriov_vf_ccs_attach_bo - Insert CCS read write commands in the BO.
+ * @bo: the &buffer object to which batch buffer commands will be added.
+ *
+ * This function shall be called only by VF. It inserts the PTEs and copy
+ * command instructions in the BO by calling xe_migrate_ccs_rw_copy()
+ * function.
+ *
+ * Returns: 0 if successful, negative error code on failure.
+ */
+int xe_sriov_vf_ccs_attach_bo(struct xe_bo *bo)
+{
+	struct xe_device *xe = xe_bo_device(bo);
+	struct xe_migrate *migrate;
+	struct xe_tile *tile;
+	int tile_id, ctx_id;
+	struct xe_bb *bb;
+	int err = 0;
+
+	if (!IS_VF_CCS_READY(xe))
+		return 0;
+
+	for_each_tile(tile, xe, tile_id) {
+		for_each_ccs_rw_ctx(ctx_id) {
+			bb = bo->bb_ccs[ctx_id];
+			if (bb)
+				xe_sriov_err(xe, "Probable memory leak\n");
+
+			migrate = tile->sriov.vf.ccs[ctx_id].migrate;
+			err = xe_migrate_ccs_rw_copy(migrate, bo, ctx_id);
+		}
+	}
+	return err;
+}
+
+/**
+ * xe_sriov_vf_ccs_detach_bo - Remove CCS read write commands from the BO.
+ * @bo: the &buffer object from which batch buffer commands will be removed.
+ *
+ * This function shall be called only by VF. It removes the PTEs and copy
+ * command instructions from the BO. Make sure to update the BB with MI_NOOP
+ * before freeing.
+ *
+ * Returns: 0 if successful, negative error code on failure.
+ */
+int xe_sriov_vf_ccs_detach_bo(struct xe_bo *bo)
+{
+	struct xe_device *xe = xe_bo_device(bo);
+	struct xe_bb *bb, *pos, *temp;
+	struct xe_tile *tile;
+	int tile_id, ctx_id;
+
+	if (!IS_VF_CCS_READY(xe))
+		return 0;
+
+	for_each_tile(tile, xe, tile_id) {
+		for_each_ccs_rw_ctx(ctx_id) {
+			bb = bo->bb_ccs[ctx_id];
+			if (!bb)
+				continue;
+
+			list_for_each_entry_safe(pos, temp, &bb->list, list) {
+				list_del(&pos->list);
+				memset(pos->cs, MI_NOOP, pos->len * sizeof(u32));
+				xe_bb_free(pos, NULL);
+			}
+
+			/* Free-up head BB */
+			memset(bb->cs, MI_NOOP, bb->len * sizeof(u32));
+			xe_bb_free(bb, NULL);
+			bo->bb_ccs[ctx_id] = NULL;
+		}
+	}
+	return 0;
+}
diff --git a/drivers/gpu/drm/xe/xe_sriov_vf_ccs.h b/drivers/gpu/drm/xe/xe_sriov_vf_ccs.h
index 5df9ba028d14..5d5e4bd25904 100644
--- a/drivers/gpu/drm/xe/xe_sriov_vf_ccs.h
+++ b/drivers/gpu/drm/xe/xe_sriov_vf_ccs.h
@@ -7,7 +7,10 @@
 #define _XE_SRIOV_VF_CCS_H_
 
 struct xe_device;
+struct xe_bo;
 
 int xe_sriov_vf_ccs_init(struct xe_device *xe);
+int xe_sriov_vf_ccs_attach_bo(struct xe_bo *bo);
+int xe_sriov_vf_ccs_detach_bo(struct xe_bo *bo);
 
 #endif
diff --git a/drivers/gpu/drm/xe/xe_sriov_vf_ccs_types.h b/drivers/gpu/drm/xe/xe_sriov_vf_ccs_types.h
index f67f002c7a96..9545c5cfc2b1 100644
--- a/drivers/gpu/drm/xe/xe_sriov_vf_ccs_types.h
+++ b/drivers/gpu/drm/xe/xe_sriov_vf_ccs_types.h
@@ -28,6 +28,14 @@ enum xe_sriov_vf_ccs_rw_ctxs {
 	XE_SRIOV_VF_CCS_RW_MAX_CTXS
 };
 
+#define IS_VF_CCS_BB_VALID(xe, bo) ({ \
+		struct xe_device *___xe = (xe); \
+		struct xe_bo *___bo = (bo); \
+		IS_SRIOV_VF(___xe) && \
+		___bo->bb_ccs[XE_SRIOV_VF_CCS_READ_CTX] && \
+		___bo->bb_ccs[XE_SRIOV_VF_CCS_WRITE_CTX]; \
+		})
+
 struct xe_migrate;
 struct xe_sa_manager;
 
-- 
2.43.0


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

* [PATCH v6 3/3] drm/xe/vf: Register CCS read/write contexts with Guc
  2025-06-06 12:45 [PATCH v6 0/3] CCS save restore for IGPU Satyanarayana K V P
  2025-06-06 12:45 ` [PATCH v6 1/3] drm/xe/vf: Create contexts for CCS read write Satyanarayana K V P
  2025-06-06 12:45 ` [PATCH v6 2/3] drm/xe/vf: Attach and detach CCS copy commands with BO Satyanarayana K V P
@ 2025-06-06 12:45 ` Satyanarayana K V P
  2025-06-09 16:28   ` Matthew Brost
  2025-06-06 14:16 ` ✓ CI.Patch_applied: success for CCS save restore for IGPU (rev6) Patchwork
                   ` (7 subsequent siblings)
  10 siblings, 1 reply; 23+ messages in thread
From: Satyanarayana K V P @ 2025-06-06 12:45 UTC (permalink / raw)
  To: intel-xe
  Cc: Satyanarayana K V P, Michal Wajdeczko, Michał Winiarski,
	Tomasz Lis, Matthew Brost, Matthew Auld, Maarten Lankhorst

Register read write contexts with newly added flags with GUC and
enable the context immediately after registration.
Re-register the context with Guc when resuming from runtime suspend as
soft reset is applied to Guc during xe_pm_runtime_resume().
Make Ring head=tail while unbinding device to avoid issues with VF pause
after device is unbinded.

Signed-off-by: Satyanarayana K V P <satyanarayana.k.v.p@intel.com>
---
Cc: Michal Wajdeczko <michal.wajdeczko@intel.com>
Cc: Michał Winiarski <michal.winiarski@intel.com>
Cc: Tomasz Lis <tomasz.lis@intel.com>
Cc: Matthew Brost <matthew.brost@intel.com>
Cc: Matthew Auld <matthew.auld@intel.com>
Cc: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>

V5 -> V6:
- None

V4 -> V5:
- Fixed review comments (Matthew Brost).

V3 -> V4:
- Fixed issues reported by patchworks.

V2 -> V3:
- Made xe_migrate structure private as per review comments.
- Created new xe_migrate functions to get lrc and exec_queue.

V1 -> V2:
- Fixed review comments.
---
 drivers/gpu/drm/xe/xe_guc_fwif.h     |  5 ++
 drivers/gpu/drm/xe/xe_guc_submit.c   | 37 +++++++++++-
 drivers/gpu/drm/xe/xe_guc_submit.h   |  1 +
 drivers/gpu/drm/xe/xe_migrate.c      | 22 +++++++
 drivers/gpu/drm/xe/xe_migrate.h      |  3 +
 drivers/gpu/drm/xe/xe_pm.c           |  4 ++
 drivers/gpu/drm/xe/xe_sriov_vf_ccs.c | 89 ++++++++++++++++++++++++++++
 drivers/gpu/drm/xe/xe_sriov_vf_ccs.h |  1 +
 8 files changed, 160 insertions(+), 2 deletions(-)

diff --git a/drivers/gpu/drm/xe/xe_guc_fwif.h b/drivers/gpu/drm/xe/xe_guc_fwif.h
index 6f57578b07cb..71a5208d0316 100644
--- a/drivers/gpu/drm/xe/xe_guc_fwif.h
+++ b/drivers/gpu/drm/xe/xe_guc_fwif.h
@@ -45,6 +45,11 @@
 #define GUC_MAX_ENGINE_CLASSES		16
 #define GUC_MAX_INSTANCES_PER_CLASS	32
 
+#define GUC_CONTEXT_NORMAL			0
+#define GUC_CONTEXT_COMPRESSION_SAVE		1
+#define GUC_CONTEXT_COMPRESSION_RESTORE	2
+#define GUC_CONTEXT_MAX_TYPES			(GUC_CONTEXT_COMPRESSION_RESTORE + 1)
+
 /* Helper for context registration H2G */
 struct guc_ctxt_registration_info {
 	u32 flags;
diff --git a/drivers/gpu/drm/xe/xe_guc_submit.c b/drivers/gpu/drm/xe/xe_guc_submit.c
index 80f748baad3f..4e1423b0f07c 100644
--- a/drivers/gpu/drm/xe/xe_guc_submit.c
+++ b/drivers/gpu/drm/xe/xe_guc_submit.c
@@ -531,7 +531,7 @@ static void __register_exec_queue(struct xe_guc *guc,
 	xe_guc_ct_send(&guc->ct, action, ARRAY_SIZE(action), 0, 0);
 }
 
-static void register_exec_queue(struct xe_exec_queue *q)
+static void register_exec_queue(struct xe_exec_queue *q, int ctx_type)
 {
 	struct xe_guc *guc = exec_queue_to_guc(q);
 	struct xe_device *xe = guc_to_xe(guc);
@@ -539,6 +539,7 @@ static void register_exec_queue(struct xe_exec_queue *q)
 	struct guc_ctxt_registration_info info;
 
 	xe_gt_assert(guc_to_gt(guc), !exec_queue_registered(q));
+	xe_gt_assert(guc_to_gt(guc), ctx_type < GUC_CONTEXT_MAX_TYPES);
 
 	memset(&info, 0, sizeof(info));
 	info.context_idx = q->guc->id;
@@ -548,6 +549,9 @@ static void register_exec_queue(struct xe_exec_queue *q)
 	info.hwlrca_hi = upper_32_bits(xe_lrc_descriptor(lrc));
 	info.flags = CONTEXT_REGISTRATION_FLAG_KMD;
 
+	if (ctx_type != GUC_CONTEXT_NORMAL)
+		info.flags |= BIT(ctx_type);
+
 	if (xe_exec_queue_is_parallel(q)) {
 		u64 ggtt_addr = xe_lrc_parallel_ggtt_addr(lrc);
 		struct iosys_map map = xe_lrc_parallel_map(lrc);
@@ -750,7 +754,7 @@ guc_exec_queue_run_job(struct drm_sched_job *drm_job)
 
 	if (!exec_queue_killed_or_banned_or_wedged(q) && !xe_sched_job_is_error(job)) {
 		if (!exec_queue_registered(q))
-			register_exec_queue(q);
+			register_exec_queue(q, GUC_CONTEXT_NORMAL);
 		if (!lr)	/* LR jobs are emitted in the exec IOCTL */
 			q->ring_ops->emit_job(job);
 		submit_exec_queue(q);
@@ -2347,6 +2351,35 @@ static void guc_exec_queue_print(struct xe_exec_queue *q, struct drm_printer *p)
 	xe_guc_exec_queue_snapshot_free(snapshot);
 }
 
+/**
+ * xe_guc_register_exec_queue - Register exec queue for a given context type.
+ * @q - Execution queue
+ * @ctx_type - Type of the context
+ *
+ * This function registers the execution queue with the guc. Special context
+ * types like GUC_CONTEXT_COMPRESSION_SAVE and GUC_CONTEXT_COMPRESSION_RESTORE
+ * are only applicable for IGPU and in the VF.
+ * Submits the execution queue to GUC after registering it.
+ *
+ * Returns - Success or asserts.
+ */
+int xe_guc_register_exec_queue(struct xe_exec_queue *q, int ctx_type)
+{
+	struct xe_guc *guc = exec_queue_to_guc(q);
+	struct xe_device *xe = guc_to_xe(guc);
+
+	if (ctx_type != GUC_CONTEXT_NORMAL) {
+		xe_assert(xe, IS_SRIOV_VF(xe) || !IS_DGFX(xe));
+		xe_assert(xe, (ctx_type > GUC_CONTEXT_NORMAL &&
+			       ctx_type < GUC_CONTEXT_MAX_TYPES));
+	}
+
+	register_exec_queue(q, ctx_type);
+	enable_scheduling(q);
+
+	return 0;
+}
+
 /**
  * xe_guc_submit_print - GuC Submit Print.
  * @guc: GuC.
diff --git a/drivers/gpu/drm/xe/xe_guc_submit.h b/drivers/gpu/drm/xe/xe_guc_submit.h
index 9b71a986c6ca..f1a26d498339 100644
--- a/drivers/gpu/drm/xe/xe_guc_submit.h
+++ b/drivers/gpu/drm/xe/xe_guc_submit.h
@@ -39,5 +39,6 @@ xe_guc_exec_queue_snapshot_print(struct xe_guc_submit_exec_queue_snapshot *snaps
 void
 xe_guc_exec_queue_snapshot_free(struct xe_guc_submit_exec_queue_snapshot *snapshot);
 void xe_guc_submit_print(struct xe_guc *guc, struct drm_printer *p);
+int xe_guc_register_exec_queue(struct xe_exec_queue *q, int ctx_type);
 
 #endif
diff --git a/drivers/gpu/drm/xe/xe_migrate.c b/drivers/gpu/drm/xe/xe_migrate.c
index d7f3009260ee..dbc1bbfc944f 100644
--- a/drivers/gpu/drm/xe/xe_migrate.c
+++ b/drivers/gpu/drm/xe/xe_migrate.c
@@ -1038,6 +1038,28 @@ int xe_migrate_ccs_rw_copy(struct xe_migrate *m,
 	return err;
 }
 
+/**
+ * xe_get_migrate_lrc() - Get the LRC from migrate context.
+ * @migrate: Migrate context.
+ *
+ * Return: Pointer to LRC on success, error on failure
+ */
+struct xe_lrc *xe_migrate_get_lrc(struct xe_migrate *migrate)
+{
+	return migrate->q->lrc[0];
+}
+
+/**
+ * xe_get_migrate_exec_queue() - Get the execution queue from migrate context.
+ * @migrate: Migrate context.
+ *
+ * Return: Pointer to execution queue on success, error on failure
+ */
+struct xe_exec_queue *xe_migrate_get_exec_queue(struct xe_migrate *migrate)
+{
+	return migrate->q;
+}
+
 static void emit_clear_link_copy(struct xe_gt *gt, struct xe_bb *bb, u64 src_ofs,
 				 u32 size, u32 pitch)
 {
diff --git a/drivers/gpu/drm/xe/xe_migrate.h b/drivers/gpu/drm/xe/xe_migrate.h
index ab5ebb44d2c9..016747916c31 100644
--- a/drivers/gpu/drm/xe/xe_migrate.h
+++ b/drivers/gpu/drm/xe/xe_migrate.h
@@ -116,6 +116,9 @@ int xe_migrate_ccs_rw_copy(struct xe_migrate *m,
 			   struct xe_bo *src_bo,
 			   int read_write);
 
+struct xe_lrc *xe_migrate_get_lrc(struct xe_migrate *migrate);
+struct xe_exec_queue *xe_migrate_get_exec_queue(struct xe_migrate *migrate);
+
 int xe_migrate_access_memory(struct xe_migrate *m, struct xe_bo *bo,
 			     unsigned long offset, void *buf, int len,
 			     int write);
diff --git a/drivers/gpu/drm/xe/xe_pm.c b/drivers/gpu/drm/xe/xe_pm.c
index f64ebd7b854a..a47539ce98eb 100644
--- a/drivers/gpu/drm/xe/xe_pm.c
+++ b/drivers/gpu/drm/xe/xe_pm.c
@@ -22,6 +22,7 @@
 #include "xe_irq.h"
 #include "xe_pcode.h"
 #include "xe_pxp.h"
+#include "xe_sriov_vf_ccs.h"
 #include "xe_trace.h"
 #include "xe_wa.h"
 
@@ -546,6 +547,9 @@ int xe_pm_runtime_resume(struct xe_device *xe)
 
 	xe_pxp_pm_resume(xe->pxp);
 
+	if (IS_SRIOV_VF(xe))
+		xe_sriov_vf_ccs_register_context(xe);
+
 out:
 	xe_rpm_lockmap_release(xe);
 	xe_pm_write_callback_task(xe, NULL);
diff --git a/drivers/gpu/drm/xe/xe_sriov_vf_ccs.c b/drivers/gpu/drm/xe/xe_sriov_vf_ccs.c
index 4b5cfc0d421b..9afb652f6299 100644
--- a/drivers/gpu/drm/xe/xe_sriov_vf_ccs.c
+++ b/drivers/gpu/drm/xe/xe_sriov_vf_ccs.c
@@ -8,6 +8,9 @@
 #include "xe_bb.h"
 #include "xe_bo.h"
 #include "xe_device.h"
+#include "xe_exec_queue_types.h"
+#include "xe_guc_submit.h"
+#include "xe_lrc.h"
 #include "xe_migrate.h"
 #include "xe_sa.h"
 #include "xe_sriov_printk.h"
@@ -140,6 +143,82 @@ static int alloc_bb_pool(struct xe_tile *tile, struct xe_tile_vf_ccs *ctx)
 	return 0;
 }
 
+static void ccs_rw_update_ring(struct xe_tile_vf_ccs *ctx)
+{
+	struct xe_lrc *lrc = xe_migrate_get_lrc(ctx->migrate);
+	u32 addr = ctx->mem.ccs_bb_pool->gpu_addr;
+	u32 dw[10], i = 0;
+
+	dw[i++] = MI_ARB_ON_OFF | MI_ARB_DISABLE;
+	dw[i++] = MI_BATCH_BUFFER_START | XE_INSTR_NUM_DW(3);
+	dw[i++] = addr;
+	dw[i++] = 0;
+	dw[i++] = MI_NOOP;
+
+	xe_lrc_write_ring(lrc, dw, i * sizeof(u32));
+}
+
+static int register_save_restore_context(struct xe_migrate *m, int ctx_id)
+{
+	int err = -EINVAL;
+	int ctx_type;
+
+	switch (ctx_id) {
+	case XE_SRIOV_VF_CCS_READ_CTX:
+		ctx_type = GUC_CONTEXT_COMPRESSION_SAVE;
+		break;
+	case XE_SRIOV_VF_CCS_WRITE_CTX:
+		ctx_type = GUC_CONTEXT_COMPRESSION_RESTORE;
+		break;
+	default:
+		return err;
+	}
+
+	err = xe_guc_register_exec_queue(xe_migrate_get_exec_queue(m), ctx_type);
+	return err;
+}
+
+/**
+ * xe_sriov_vf_ccs_register_context - Register read/write contexts with guc.
+ * @xe: the &xe_device to register contexts on.
+ *
+ * This function registers read and write contexts with Guc. Re-registration
+ * is needed whenever resuming from pm runtime suspend.
+ *
+ * Return: 0 on success. Negative error code on failure.
+ */
+int xe_sriov_vf_ccs_register_context(struct xe_device *xe)
+{
+	struct xe_tile_vf_ccs *ctx;
+	struct xe_tile *tile;
+	int tile_id, ctx_id;
+	int err;
+
+	if (!IS_VF_CCS_READY(xe))
+		return 0;
+
+	for_each_tile(tile, xe, tile_id) {
+		for_each_ccs_rw_ctx(ctx_id) {
+			ctx = &tile->sriov.vf.ccs[ctx_id];
+			err = register_save_restore_context(ctx->migrate, ctx_id);
+		}
+	}
+
+	return err;
+}
+
+static void xe_sriov_vf_ccs_fini(void *arg)
+{
+	struct xe_tile_vf_ccs *ctx = arg;
+	struct xe_lrc *lrc = xe_migrate_get_lrc(ctx->migrate);
+
+	/*
+	 * Make TAIL = HEAD in the ring so that no issues are seen if Guc
+	 * submits this context to HW on VF pause after unbinding device.
+	 */
+	xe_lrc_set_ring_tail(lrc, xe_lrc_ring_head(lrc));
+}
+
 /**
  * xe_sriov_vf_ccs_init - Setup LRCA for save & restore.
  * @xe: the &xe_device to start recovery on
@@ -175,6 +254,16 @@ int xe_sriov_vf_ccs_init(struct xe_device *xe)
 			err = alloc_bb_pool(tile, ctx);
 			if (err)
 				goto err_ret;
+
+			ccs_rw_update_ring(ctx);
+
+			err = register_save_restore_context(migrate, ctx_id);
+			if (err)
+				goto err_ret;
+
+			err = devm_add_action_or_reset(xe->drm.dev,
+						       xe_sriov_vf_ccs_fini,
+						       ctx);
 		}
 	}
 
diff --git a/drivers/gpu/drm/xe/xe_sriov_vf_ccs.h b/drivers/gpu/drm/xe/xe_sriov_vf_ccs.h
index 5d5e4bd25904..1f1baf685fec 100644
--- a/drivers/gpu/drm/xe/xe_sriov_vf_ccs.h
+++ b/drivers/gpu/drm/xe/xe_sriov_vf_ccs.h
@@ -12,5 +12,6 @@ struct xe_bo;
 int xe_sriov_vf_ccs_init(struct xe_device *xe);
 int xe_sriov_vf_ccs_attach_bo(struct xe_bo *bo);
 int xe_sriov_vf_ccs_detach_bo(struct xe_bo *bo);
+int xe_sriov_vf_ccs_register_context(struct xe_device *xe);
 
 #endif
-- 
2.43.0


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

* ✓ CI.Patch_applied: success for CCS save restore for IGPU (rev6)
  2025-06-06 12:45 [PATCH v6 0/3] CCS save restore for IGPU Satyanarayana K V P
                   ` (2 preceding siblings ...)
  2025-06-06 12:45 ` [PATCH v6 3/3] drm/xe/vf: Register CCS read/write contexts with Guc Satyanarayana K V P
@ 2025-06-06 14:16 ` Patchwork
  2025-06-06 14:17 ` ✗ CI.checkpatch: warning " Patchwork
                   ` (6 subsequent siblings)
  10 siblings, 0 replies; 23+ messages in thread
From: Patchwork @ 2025-06-06 14:16 UTC (permalink / raw)
  To: Satyanarayana K V P; +Cc: intel-xe

== Series Details ==

Series: CCS save restore for IGPU (rev6)
URL   : https://patchwork.freedesktop.org/series/149108/
State : success

== Summary ==

=== Applying kernel patches on branch 'drm-tip' with base: ===
Base commit: 2f92a5cfa1b0 drm-tip: 2025y-06m-06d-13h-50m-30s UTC integration manifest
=== git am output follows ===
Applying: drm/xe/vf: Create contexts for CCS read write
Applying: drm/xe/vf: Attach and detach CCS copy commands with BO
Applying: drm/xe/vf: Register CCS read/write contexts with Guc



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

* ✗ CI.checkpatch: warning for CCS save restore for IGPU (rev6)
  2025-06-06 12:45 [PATCH v6 0/3] CCS save restore for IGPU Satyanarayana K V P
                   ` (3 preceding siblings ...)
  2025-06-06 14:16 ` ✓ CI.Patch_applied: success for CCS save restore for IGPU (rev6) Patchwork
@ 2025-06-06 14:17 ` Patchwork
  2025-06-06 14:18 ` ✓ CI.KUnit: success " Patchwork
                   ` (5 subsequent siblings)
  10 siblings, 0 replies; 23+ messages in thread
From: Patchwork @ 2025-06-06 14:17 UTC (permalink / raw)
  To: Satyanarayana K V P; +Cc: intel-xe

== Series Details ==

Series: CCS save restore for IGPU (rev6)
URL   : https://patchwork.freedesktop.org/series/149108/
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
202708c00696422fd217223bb679a353a5936e23
+ cd /kernel
+ git config --global --add safe.directory /kernel
+ git log -n1
commit 2829e9090ebea4110a9b3eceec2dd858cfc56d9c
Author: Satyanarayana K V P <satyanarayana.k.v.p@intel.com>
Date:   Fri Jun 6 18:15:58 2025 +0530

    drm/xe/vf: Register CCS read/write contexts with Guc
    
    Register read write contexts with newly added flags with GUC and
    enable the context immediately after registration.
    Re-register the context with Guc when resuming from runtime suspend as
    soft reset is applied to Guc during xe_pm_runtime_resume().
    Make Ring head=tail while unbinding device to avoid issues with VF pause
    after device is unbinded.
    
    Signed-off-by: Satyanarayana K V P <satyanarayana.k.v.p@intel.com>
+ /mt/dim checkpatch 2f92a5cfa1b06e29699d63b805ce3e4aab6c4f77 drm-intel
47fbf39a611c drm/xe/vf: Create contexts for CCS read write
-:191: WARNING:FILE_PATH_CHANGES: added, moved or deleted file(s), does MAINTAINERS need updating?
#191: 
new file mode 100644

-:415: CHECK:MACRO_ARG_REUSE: Macro argument reuse 'id__' - possible side-effects?
#415: FILE: drivers/gpu/drm/xe/xe_sriov_vf_ccs_types.h:9:
+#define for_each_ccs_rw_ctx(id__) \
+	for ((id__) = 0; (id__) < XE_SRIOV_VF_CCS_RW_MAX_CTXS; (id__)++)

total: 0 errors, 1 warnings, 1 checks, 378 lines checked
50bff8ae864f drm/xe/vf: Attach and detach CCS copy commands with BO
2829e9090ebe drm/xe/vf: Register CCS read/write contexts with Guc



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

* ✓ CI.KUnit: success for CCS save restore for IGPU (rev6)
  2025-06-06 12:45 [PATCH v6 0/3] CCS save restore for IGPU Satyanarayana K V P
                   ` (4 preceding siblings ...)
  2025-06-06 14:17 ` ✗ CI.checkpatch: warning " Patchwork
@ 2025-06-06 14:18 ` Patchwork
  2025-06-06 14:29 ` ✓ CI.Build: " Patchwork
                   ` (4 subsequent siblings)
  10 siblings, 0 replies; 23+ messages in thread
From: Patchwork @ 2025-06-06 14:18 UTC (permalink / raw)
  To: Satyanarayana K V P; +Cc: intel-xe

== Series Details ==

Series: CCS save restore for IGPU (rev6)
URL   : https://patchwork.freedesktop.org/series/149108/
State : success

== Summary ==

+ trap cleanup EXIT
+ /kernel/tools/testing/kunit/kunit.py run --kunitconfig /kernel/drivers/gpu/drm/xe/.kunitconfig
[14:17:13] Configuring KUnit Kernel ...
Generating .config ...
Populating config with:
$ make ARCH=um O=.kunit olddefconfig
[14:17:17] Building KUnit Kernel ...
Populating config with:
$ make ARCH=um O=.kunit olddefconfig
Building with:
$ make all compile_commands.json scripts_gdb ARCH=um O=.kunit --jobs=48
[14:17:43] Starting KUnit Kernel (1/1)...
[14:17:43] ============================================================
Running tests with:
$ .kunit/linux kunit.enable=1 mem=1G console=tty kunit_shutdown=halt
[14:17:44] ================== guc_buf (11 subtests) ===================
[14:17:44] [PASSED] test_smallest
[14:17:44] [PASSED] test_largest
[14:17:44] [PASSED] test_granular
[14:17:44] [PASSED] test_unique
[14:17:44] [PASSED] test_overlap
[14:17:44] [PASSED] test_reusable
[14:17:44] [PASSED] test_too_big
[14:17:44] [PASSED] test_flush
[14:17:44] [PASSED] test_lookup
[14:17:44] [PASSED] test_data
[14:17:44] [PASSED] test_class
[14:17:44] ===================== [PASSED] guc_buf =====================
[14:17:44] =================== guc_dbm (7 subtests) ===================
[14:17:44] [PASSED] test_empty
[14:17:44] [PASSED] test_default
[14:17:44] ======================== test_size  ========================
[14:17:44] [PASSED] 4
[14:17:44] [PASSED] 8
[14:17:44] [PASSED] 32
[14:17:44] [PASSED] 256
[14:17:44] ==================== [PASSED] test_size ====================
[14:17:44] ======================= test_reuse  ========================
[14:17:44] [PASSED] 4
[14:17:44] [PASSED] 8
[14:17:44] [PASSED] 32
[14:17:44] [PASSED] 256
[14:17:44] =================== [PASSED] test_reuse ====================
[14:17:44] =================== test_range_overlap  ====================
[14:17:44] [PASSED] 4
[14:17:44] [PASSED] 8
[14:17:44] [PASSED] 32
[14:17:44] [PASSED] 256
[14:17:44] =============== [PASSED] test_range_overlap ================
[14:17:44] =================== test_range_compact  ====================
[14:17:44] [PASSED] 4
[14:17:44] [PASSED] 8
[14:17:44] [PASSED] 32
[14:17:44] [PASSED] 256
[14:17:44] =============== [PASSED] test_range_compact ================
[14:17:44] ==================== test_range_spare  =====================
[14:17:44] [PASSED] 4
[14:17:44] [PASSED] 8
[14:17:44] [PASSED] 32
[14:17:44] [PASSED] 256
[14:17:44] ================ [PASSED] test_range_spare =================
[14:17:44] ===================== [PASSED] guc_dbm =====================
[14:17:44] =================== guc_idm (6 subtests) ===================
[14:17:44] [PASSED] bad_init
[14:17:44] [PASSED] no_init
[14:17:44] [PASSED] init_fini
[14:17:44] [PASSED] check_used
[14:17:44] [PASSED] check_quota
[14:17:44] [PASSED] check_all
[14:17:44] ===================== [PASSED] guc_idm =====================
[14:17:44] ================== no_relay (3 subtests) ===================
[14:17:44] [PASSED] xe_drops_guc2pf_if_not_ready
[14:17:44] [PASSED] xe_drops_guc2vf_if_not_ready
[14:17:44] [PASSED] xe_rejects_send_if_not_ready
[14:17:44] ==================== [PASSED] no_relay =====================
[14:17:44] ================== pf_relay (14 subtests) ==================
[14:17:44] [PASSED] pf_rejects_guc2pf_too_short
[14:17:44] [PASSED] pf_rejects_guc2pf_too_long
[14:17:44] [PASSED] pf_rejects_guc2pf_no_payload
[14:17:44] [PASSED] pf_fails_no_payload
[14:17:44] [PASSED] pf_fails_bad_origin
[14:17:44] [PASSED] pf_fails_bad_type
[14:17:44] [PASSED] pf_txn_reports_error
[14:17:44] [PASSED] pf_txn_sends_pf2guc
[14:17:44] [PASSED] pf_sends_pf2guc
[14:17:44] [SKIPPED] pf_loopback_nop
[14:17:44] [SKIPPED] pf_loopback_echo
[14:17:44] [SKIPPED] pf_loopback_fail
[14:17:44] [SKIPPED] pf_loopback_busy
[14:17:44] [SKIPPED] pf_loopback_retry
[14:17:44] ==================== [PASSED] pf_relay =====================
[14:17:44] ================== vf_relay (3 subtests) ===================
[14:17:44] [PASSED] vf_rejects_guc2vf_too_short
[14:17:44] [PASSED] vf_rejects_guc2vf_too_long
[14:17:44] [PASSED] vf_rejects_guc2vf_no_payload
[14:17:44] ==================== [PASSED] vf_relay =====================
[14:17:44] ================= pf_service (11 subtests) =================
[14:17:44] [PASSED] pf_negotiate_any
[14:17:44] [PASSED] pf_negotiate_base_match
[14:17:44] [PASSED] pf_negotiate_base_newer
[14:17:44] [PASSED] pf_negotiate_base_next
[14:17:44] [SKIPPED] pf_negotiate_base_older
[14:17:44] [PASSED] pf_negotiate_base_prev
[14:17:44] [PASSED] pf_negotiate_latest_match
[14:17:44] [PASSED] pf_negotiate_latest_newer
[14:17:44] [PASSED] pf_negotiate_latest_next
[14:17:44] [SKIPPED] pf_negotiate_latest_older
[14:17:44] [SKIPPED] pf_negotiate_latest_prev
[14:17:44] =================== [PASSED] pf_service ====================
[14:17:44] ===================== lmtt (1 subtest) =====================
[14:17:44] ======================== test_ops  =========================
[14:17:44] [PASSED] 2-level
[14:17:44] [PASSED] multi-level
[14:17:44] ==================== [PASSED] test_ops =====================
[14:17:44] ====================== [PASSED] lmtt =======================
[14:17:44] =================== xe_mocs (2 subtests) ===================
[14:17:44] ================ xe_live_mocs_kernel_kunit  ================
[14:17:44] =========== [SKIPPED] xe_live_mocs_kernel_kunit ============
[14:17:44] ================ xe_live_mocs_reset_kunit  =================
[14:17:44] ============ [SKIPPED] xe_live_mocs_reset_kunit ============
[14:17:44] ==================== [SKIPPED] xe_mocs =====================
[14:17:44] ================= xe_migrate (2 subtests) ==================
[14:17:44] ================= xe_migrate_sanity_kunit  =================
[14:17:44] ============ [SKIPPED] xe_migrate_sanity_kunit =============
[14:17:44] ================== xe_validate_ccs_kunit  ==================
[14:17:44] ============= [SKIPPED] xe_validate_ccs_kunit ==============
[14:17:44] =================== [SKIPPED] xe_migrate ===================
[14:17:44] ================== xe_dma_buf (1 subtest) ==================
[14:17:44] ==================== xe_dma_buf_kunit  =====================
[14:17:44] ================ [SKIPPED] xe_dma_buf_kunit ================
[14:17:44] =================== [SKIPPED] xe_dma_buf ===================
[14:17:44] ================= xe_bo_shrink (1 subtest) =================
[14:17:44] =================== xe_bo_shrink_kunit  ====================
[14:17:44] =============== [SKIPPED] xe_bo_shrink_kunit ===============
[14:17:44] ================== [SKIPPED] xe_bo_shrink ==================
[14:17:44] ==================== xe_bo (2 subtests) ====================
[14:17:44] ================== xe_ccs_migrate_kunit  ===================
[14:17:44] ============== [SKIPPED] xe_ccs_migrate_kunit ==============
[14:17:44] ==================== xe_bo_evict_kunit  ====================
[14:17:44] =============== [SKIPPED] xe_bo_evict_kunit ================
[14:17:44] ===================== [SKIPPED] xe_bo ======================
[14:17:44] ==================== args (11 subtests) ====================
[14:17:44] [PASSED] count_args_test
[14:17:44] [PASSED] call_args_example
[14:17:44] [PASSED] call_args_test
[14:17:44] [PASSED] drop_first_arg_example
[14:17:44] [PASSED] drop_first_arg_test
[14:17:44] [PASSED] first_arg_example
[14:17:44] [PASSED] first_arg_test
[14:17:44] [PASSED] last_arg_example
[14:17:44] [PASSED] last_arg_test
[14:17:44] [PASSED] pick_arg_example
[14:17:44] [PASSED] sep_comma_example
[14:17:44] ====================== [PASSED] args =======================
[14:17:44] =================== xe_pci (2 subtests) ====================
[14:17:44] [PASSED] xe_gmdid_graphics_ip
[14:17:44] [PASSED] xe_gmdid_media_ip
[14:17:44] ===================== [PASSED] xe_pci ======================
[14:17:44] =================== xe_rtp (2 subtests) ====================
[14:17:44] =============== xe_rtp_process_to_sr_tests  ================
[14:17:44] [PASSED] coalesce-same-reg
[14:17:44] [PASSED] no-match-no-add
[14:17:44] [PASSED] match-or
[14:17:44] [PASSED] match-or-xfail
[14:17:44] [PASSED] no-match-no-add-multiple-rules
[14:17:44] [PASSED] two-regs-two-entries
[14:17:44] [PASSED] clr-one-set-other
[14:17:44] [PASSED] set-field
[14:17:44] [PASSED] conflict-duplicate
[14:17:44] [PASSED] conflict-not-disjoint
stty: 'standard input': Inappropriate ioctl for device
[14:17:44] [PASSED] conflict-reg-type
[14:17:44] =========== [PASSED] xe_rtp_process_to_sr_tests ============
[14:17:44] ================== xe_rtp_process_tests  ===================
[14:17:44] [PASSED] active1
[14:17:44] [PASSED] active2
[14:17:44] [PASSED] active-inactive
[14:17:44] [PASSED] inactive-active
[14:17:44] [PASSED] inactive-1st_or_active-inactive
[14:17:44] [PASSED] inactive-2nd_or_active-inactive
[14:17:44] [PASSED] inactive-last_or_active-inactive
[14:17:44] [PASSED] inactive-no_or_active-inactive
[14:17:44] ============== [PASSED] xe_rtp_process_tests ===============
[14:17:44] ===================== [PASSED] xe_rtp ======================
[14:17:44] ==================== xe_wa (1 subtest) =====================
[14:17:44] ======================== xe_wa_gt  =========================
[14:17:44] [PASSED] TIGERLAKE (B0)
[14:17:44] [PASSED] DG1 (A0)
[14:17:44] [PASSED] DG1 (B0)
[14:17:44] [PASSED] ALDERLAKE_S (A0)
[14:17:44] [PASSED] ALDERLAKE_S (B0)
[14:17:44] [PASSED] ALDERLAKE_S (C0)
[14:17:44] [PASSED] ALDERLAKE_S (D0)
[14:17:44] [PASSED] ALDERLAKE_P (A0)
[14:17:44] [PASSED] ALDERLAKE_P (B0)
[14:17:44] [PASSED] ALDERLAKE_P (C0)
[14:17:44] [PASSED] ALDERLAKE_S_RPLS (D0)
[14:17:44] [PASSED] ALDERLAKE_P_RPLU (E0)
[14:17:44] [PASSED] DG2_G10 (C0)
[14:17:44] [PASSED] DG2_G11 (B1)
[14:17:44] [PASSED] DG2_G12 (A1)
[14:17:44] [PASSED] METEORLAKE (g:A0, m:A0)
[14:17:44] [PASSED] METEORLAKE (g:A0, m:A0)
[14:17:44] [PASSED] METEORLAKE (g:A0, m:A0)
[14:17:44] [PASSED] LUNARLAKE (g:A0, m:A0)
[14:17:44] [PASSED] LUNARLAKE (g:B0, m:A0)
[14:17:44] [PASSED] BATTLEMAGE (g:A0, m:A1)
[14:17:44] ==================== [PASSED] xe_wa_gt =====================
[14:17:44] ====================== [PASSED] xe_wa ======================
[14:17:44] ============================================================
[14:17:44] Testing complete. Ran 133 tests: passed: 117, skipped: 16
[14:17:44] Elapsed time: 31.042s total, 4.187s configuring, 26.537s building, 0.291s running

+ /kernel/tools/testing/kunit/kunit.py run --kunitconfig /kernel/drivers/gpu/drm/tests/.kunitconfig
[14:17:44] Configuring KUnit Kernel ...
Regenerating .config ...
Populating config with:
$ make ARCH=um O=.kunit olddefconfig
[14:17:46] Building KUnit Kernel ...
Populating config with:
$ make ARCH=um O=.kunit olddefconfig
Building with:
$ make all compile_commands.json scripts_gdb ARCH=um O=.kunit --jobs=48
[14:18:07] Starting KUnit Kernel (1/1)...
[14:18:07] ============================================================
Running tests with:
$ .kunit/linux kunit.enable=1 mem=1G console=tty kunit_shutdown=halt
[14:18:07] == drm_test_atomic_get_connector_for_encoder (1 subtest) ===
[14:18:07] [PASSED] drm_test_drm_atomic_get_connector_for_encoder
[14:18:07] ==== [PASSED] drm_test_atomic_get_connector_for_encoder ====
[14:18:07] =========== drm_validate_clone_mode (2 subtests) ===========
[14:18:07] ============== drm_test_check_in_clone_mode  ===============
[14:18:07] [PASSED] in_clone_mode
[14:18:07] [PASSED] not_in_clone_mode
[14:18:07] ========== [PASSED] drm_test_check_in_clone_mode ===========
[14:18:07] =============== drm_test_check_valid_clones  ===============
[14:18:07] [PASSED] not_in_clone_mode
[14:18:07] [PASSED] valid_clone
[14:18:07] [PASSED] invalid_clone
[14:18:07] =========== [PASSED] drm_test_check_valid_clones ===========
[14:18:07] ============= [PASSED] drm_validate_clone_mode =============
[14:18:07] ============= drm_validate_modeset (1 subtest) =============
[14:18:07] [PASSED] drm_test_check_connector_changed_modeset
[14:18:07] ============== [PASSED] drm_validate_modeset ===============
[14:18:07] ====== drm_test_bridge_get_current_state (2 subtests) ======
[14:18:07] [PASSED] drm_test_drm_bridge_get_current_state_atomic
[14:18:07] [PASSED] drm_test_drm_bridge_get_current_state_legacy
[14:18:07] ======== [PASSED] drm_test_bridge_get_current_state ========
[14:18:07] ====== drm_test_bridge_helper_reset_crtc (3 subtests) ======
[14:18:07] [PASSED] drm_test_drm_bridge_helper_reset_crtc_atomic
[14:18:07] [PASSED] drm_test_drm_bridge_helper_reset_crtc_atomic_disabled
[14:18:07] [PASSED] drm_test_drm_bridge_helper_reset_crtc_legacy
[14:18:07] ======== [PASSED] drm_test_bridge_helper_reset_crtc ========
[14:18:07] ============== drm_bridge_alloc (2 subtests) ===============
[14:18:07] [PASSED] drm_test_drm_bridge_alloc_basic
[14:18:07] [PASSED] drm_test_drm_bridge_alloc_get_put
[14:18:07] ================ [PASSED] drm_bridge_alloc =================
[14:18:07] ================== drm_buddy (7 subtests) ==================
[14:18:07] [PASSED] drm_test_buddy_alloc_limit
[14:18:07] [PASSED] drm_test_buddy_alloc_optimistic
[14:18:07] [PASSED] drm_test_buddy_alloc_pessimistic
[14:18:07] [PASSED] drm_test_buddy_alloc_pathological
[14:18:07] [PASSED] drm_test_buddy_alloc_contiguous
[14:18:07] [PASSED] drm_test_buddy_alloc_clear
[14:18:07] [PASSED] drm_test_buddy_alloc_range_bias
[14:18:07] ==================== [PASSED] drm_buddy ====================
[14:18:07] ============= drm_cmdline_parser (40 subtests) =============
[14:18:07] [PASSED] drm_test_cmdline_force_d_only
[14:18:07] [PASSED] drm_test_cmdline_force_D_only_dvi
[14:18:07] [PASSED] drm_test_cmdline_force_D_only_hdmi
[14:18:07] [PASSED] drm_test_cmdline_force_D_only_not_digital
[14:18:07] [PASSED] drm_test_cmdline_force_e_only
[14:18:07] [PASSED] drm_test_cmdline_res
[14:18:07] [PASSED] drm_test_cmdline_res_vesa
[14:18:07] [PASSED] drm_test_cmdline_res_vesa_rblank
[14:18:07] [PASSED] drm_test_cmdline_res_rblank
[14:18:07] [PASSED] drm_test_cmdline_res_bpp
[14:18:07] [PASSED] drm_test_cmdline_res_refresh
[14:18:07] [PASSED] drm_test_cmdline_res_bpp_refresh
[14:18:07] [PASSED] drm_test_cmdline_res_bpp_refresh_interlaced
[14:18:07] [PASSED] drm_test_cmdline_res_bpp_refresh_margins
[14:18:07] [PASSED] drm_test_cmdline_res_bpp_refresh_force_off
[14:18:07] [PASSED] drm_test_cmdline_res_bpp_refresh_force_on
[14:18:07] [PASSED] drm_test_cmdline_res_bpp_refresh_force_on_analog
[14:18:07] [PASSED] drm_test_cmdline_res_bpp_refresh_force_on_digital
[14:18:07] [PASSED] drm_test_cmdline_res_bpp_refresh_interlaced_margins_force_on
[14:18:07] [PASSED] drm_test_cmdline_res_margins_force_on
[14:18:07] [PASSED] drm_test_cmdline_res_vesa_margins
[14:18:07] [PASSED] drm_test_cmdline_name
[14:18:07] [PASSED] drm_test_cmdline_name_bpp
[14:18:07] [PASSED] drm_test_cmdline_name_option
[14:18:07] [PASSED] drm_test_cmdline_name_bpp_option
[14:18:07] [PASSED] drm_test_cmdline_rotate_0
[14:18:07] [PASSED] drm_test_cmdline_rotate_90
[14:18:07] [PASSED] drm_test_cmdline_rotate_180
[14:18:07] [PASSED] drm_test_cmdline_rotate_270
[14:18:07] [PASSED] drm_test_cmdline_hmirror
[14:18:07] [PASSED] drm_test_cmdline_vmirror
[14:18:07] [PASSED] drm_test_cmdline_margin_options
[14:18:07] [PASSED] drm_test_cmdline_multiple_options
[14:18:07] [PASSED] drm_test_cmdline_bpp_extra_and_option
[14:18:07] [PASSED] drm_test_cmdline_extra_and_option
[14:18:07] [PASSED] drm_test_cmdline_freestanding_options
[14:18:07] [PASSED] drm_test_cmdline_freestanding_force_e_and_options
[14:18:07] [PASSED] drm_test_cmdline_panel_orientation
[14:18:07] ================ drm_test_cmdline_invalid  =================
[14:18:07] [PASSED] margin_only
[14:18:07] [PASSED] interlace_only
[14:18:07] [PASSED] res_missing_x
[14:18:07] [PASSED] res_missing_y
[14:18:07] [PASSED] res_bad_y
[14:18:07] [PASSED] res_missing_y_bpp
[14:18:07] [PASSED] res_bad_bpp
[14:18:07] [PASSED] res_bad_refresh
[14:18:07] [PASSED] res_bpp_refresh_force_on_off
[14:18:07] [PASSED] res_invalid_mode
[14:18:07] [PASSED] res_bpp_wrong_place_mode
[14:18:07] [PASSED] name_bpp_refresh
[14:18:07] [PASSED] name_refresh
[14:18:07] [PASSED] name_refresh_wrong_mode
[14:18:07] [PASSED] name_refresh_invalid_mode
[14:18:07] [PASSED] rotate_multiple
[14:18:07] [PASSED] rotate_invalid_val
[14:18:07] [PASSED] rotate_truncated
[14:18:07] [PASSED] invalid_option
[14:18:07] [PASSED] invalid_tv_option
[14:18:07] [PASSED] truncated_tv_option
[14:18:07] ============ [PASSED] drm_test_cmdline_invalid =============
[14:18:07] =============== drm_test_cmdline_tv_options  ===============
[14:18:07] [PASSED] NTSC
[14:18:07] [PASSED] NTSC_443
[14:18:07] [PASSED] NTSC_J
[14:18:07] [PASSED] PAL
[14:18:07] [PASSED] PAL_M
[14:18:07] [PASSED] PAL_N
[14:18:07] [PASSED] SECAM
[14:18:07] [PASSED] MONO_525
[14:18:07] [PASSED] MONO_625
[14:18:07] =========== [PASSED] drm_test_cmdline_tv_options ===========
[14:18:07] =============== [PASSED] drm_cmdline_parser ================
[14:18:07] ========== drmm_connector_hdmi_init (20 subtests) ==========
[14:18:07] [PASSED] drm_test_connector_hdmi_init_valid
[14:18:07] [PASSED] drm_test_connector_hdmi_init_bpc_8
[14:18:07] [PASSED] drm_test_connector_hdmi_init_bpc_10
[14:18:07] [PASSED] drm_test_connector_hdmi_init_bpc_12
[14:18:07] [PASSED] drm_test_connector_hdmi_init_bpc_invalid
[14:18:07] [PASSED] drm_test_connector_hdmi_init_bpc_null
[14:18:07] [PASSED] drm_test_connector_hdmi_init_formats_empty
[14:18:07] [PASSED] drm_test_connector_hdmi_init_formats_no_rgb
[14:18:07] === drm_test_connector_hdmi_init_formats_yuv420_allowed  ===
[14:18:07] [PASSED] supported_formats=0x9 yuv420_allowed=1
[14:18:07] [PASSED] supported_formats=0x9 yuv420_allowed=0
[14:18:07] [PASSED] supported_formats=0x3 yuv420_allowed=1
[14:18:07] [PASSED] supported_formats=0x3 yuv420_allowed=0
[14:18:07] === [PASSED] drm_test_connector_hdmi_init_formats_yuv420_allowed ===
[14:18:07] [PASSED] drm_test_connector_hdmi_init_null_ddc
[14:18:07] [PASSED] drm_test_connector_hdmi_init_null_product
[14:18:07] [PASSED] drm_test_connector_hdmi_init_null_vendor
[14:18:07] [PASSED] drm_test_connector_hdmi_init_product_length_exact
[14:18:07] [PASSED] drm_test_connector_hdmi_init_product_length_too_long
[14:18:07] [PASSED] drm_test_connector_hdmi_init_product_valid
[14:18:07] [PASSED] drm_test_connector_hdmi_init_vendor_length_exact
[14:18:07] [PASSED] drm_test_connector_hdmi_init_vendor_length_too_long
[14:18:07] [PASSED] drm_test_connector_hdmi_init_vendor_valid
[14:18:07] ========= drm_test_connector_hdmi_init_type_valid  =========
[14:18:07] [PASSED] HDMI-A
[14:18:07] [PASSED] HDMI-B
[14:18:07] ===== [PASSED] drm_test_connector_hdmi_init_type_valid =====
[14:18:07] ======== drm_test_connector_hdmi_init_type_invalid  ========
[14:18:07] [PASSED] Unknown
[14:18:07] [PASSED] VGA
[14:18:07] [PASSED] DVI-I
[14:18:07] [PASSED] DVI-D
[14:18:07] [PASSED] DVI-A
[14:18:07] [PASSED] Composite
[14:18:07] [PASSED] SVIDEO
[14:18:07] [PASSED] LVDS
[14:18:07] [PASSED] Component
[14:18:07] [PASSED] DIN
[14:18:07] [PASSED] DP
[14:18:07] [PASSED] TV
[14:18:07] [PASSED] eDP
[14:18:07] [PASSED] Virtual
[14:18:07] [PASSED] DSI
[14:18:07] [PASSED] DPI
[14:18:07] [PASSED] Writeback
[14:18:07] [PASSED] SPI
[14:18:07] [PASSED] USB
[14:18:07] ==== [PASSED] drm_test_connector_hdmi_init_type_invalid ====
[14:18:07] ============ [PASSED] drmm_connector_hdmi_init =============
[14:18:07] ============= drmm_connector_init (3 subtests) =============
[14:18:07] [PASSED] drm_test_drmm_connector_init
[14:18:07] [PASSED] drm_test_drmm_connector_init_null_ddc
[14:18:07] ========= drm_test_drmm_connector_init_type_valid  =========
[14:18:07] [PASSED] Unknown
[14:18:07] [PASSED] VGA
[14:18:07] [PASSED] DVI-I
[14:18:07] [PASSED] DVI-D
[14:18:07] [PASSED] DVI-A
[14:18:07] [PASSED] Composite
[14:18:07] [PASSED] SVIDEO
[14:18:07] [PASSED] LVDS
[14:18:07] [PASSED] Component
[14:18:07] [PASSED] DIN
[14:18:07] [PASSED] DP
[14:18:07] [PASSED] HDMI-A
[14:18:07] [PASSED] HDMI-B
[14:18:07] [PASSED] TV
[14:18:07] [PASSED] eDP
[14:18:07] [PASSED] Virtual
[14:18:07] [PASSED] DSI
[14:18:07] [PASSED] DPI
[14:18:07] [PASSED] Writeback
[14:18:07] [PASSED] SPI
[14:18:07] [PASSED] USB
[14:18:07] ===== [PASSED] drm_test_drmm_connector_init_type_valid =====
[14:18:07] =============== [PASSED] drmm_connector_init ===============
[14:18:07] ========= drm_connector_dynamic_init (6 subtests) ==========
[14:18:07] [PASSED] drm_test_drm_connector_dynamic_init
[14:18:07] [PASSED] drm_test_drm_connector_dynamic_init_null_ddc
[14:18:07] [PASSED] drm_test_drm_connector_dynamic_init_not_added
[14:18:07] [PASSED] drm_test_drm_connector_dynamic_init_properties
[14:18:07] ===== drm_test_drm_connector_dynamic_init_type_valid  ======
[14:18:07] [PASSED] Unknown
[14:18:07] [PASSED] VGA
[14:18:07] [PASSED] DVI-I
[14:18:07] [PASSED] DVI-D
[14:18:07] [PASSED] DVI-A
[14:18:07] [PASSED] Composite
[14:18:07] [PASSED] SVIDEO
[14:18:07] [PASSED] LVDS
[14:18:07] [PASSED] Component
[14:18:07] [PASSED] DIN
[14:18:07] [PASSED] DP
[14:18:07] [PASSED] HDMI-A
[14:18:07] [PASSED] HDMI-B
[14:18:07] [PASSED] TV
[14:18:07] [PASSED] eDP
[14:18:07] [PASSED] Virtual
[14:18:07] [PASSED] DSI
[14:18:07] [PASSED] DPI
[14:18:07] [PASSED] Writeback
[14:18:07] [PASSED] SPI
[14:18:07] [PASSED] USB
[14:18:07] = [PASSED] drm_test_drm_connector_dynamic_init_type_valid ==
[14:18:07] ======== drm_test_drm_connector_dynamic_init_name  =========
[14:18:07] [PASSED] Unknown
[14:18:07] [PASSED] VGA
[14:18:07] [PASSED] DVI-I
[14:18:07] [PASSED] DVI-D
[14:18:07] [PASSED] DVI-A
[14:18:07] [PASSED] Composite
[14:18:07] [PASSED] SVIDEO
[14:18:07] [PASSED] LVDS
[14:18:07] [PASSED] Component
[14:18:07] [PASSED] DIN
[14:18:07] [PASSED] DP
[14:18:07] [PASSED] HDMI-A
[14:18:07] [PASSED] HDMI-B
[14:18:07] [PASSED] TV
[14:18:07] [PASSED] eDP
[14:18:07] [PASSED] Virtual
[14:18:07] [PASSED] DSI
[14:18:07] [PASSED] DPI
[14:18:07] [PASSED] Writeback
[14:18:07] [PASSED] SPI
[14:18:07] [PASSED] USB
[14:18:07] ==== [PASSED] drm_test_drm_connector_dynamic_init_name =====
[14:18:07] =========== [PASSED] drm_connector_dynamic_init ============
[14:18:07] ==== drm_connector_dynamic_register_early (4 subtests) =====
[14:18:07] [PASSED] drm_test_drm_connector_dynamic_register_early_on_list
[14:18:07] [PASSED] drm_test_drm_connector_dynamic_register_early_defer
[14:18:07] [PASSED] drm_test_drm_connector_dynamic_register_early_no_init
[14:18:07] [PASSED] drm_test_drm_connector_dynamic_register_early_no_mode_object
[14:18:07] ====== [PASSED] drm_connector_dynamic_register_early =======
[14:18:07] ======= drm_connector_dynamic_register (7 subtests) ========
[14:18:07] [PASSED] drm_test_drm_connector_dynamic_register_on_list
[14:18:07] [PASSED] drm_test_drm_connector_dynamic_register_no_defer
[14:18:07] [PASSED] drm_test_drm_connector_dynamic_register_no_init
[14:18:07] [PASSED] drm_test_drm_connector_dynamic_register_mode_object
[14:18:07] [PASSED] drm_test_drm_connector_dynamic_register_sysfs
[14:18:07] [PASSED] drm_test_drm_connector_dynamic_register_sysfs_name
[14:18:07] [PASSED] drm_test_drm_connector_dynamic_register_debugfs
[14:18:07] ========= [PASSED] drm_connector_dynamic_register ==========
[14:18:07] = drm_connector_attach_broadcast_rgb_property (2 subtests) =
[14:18:07] [PASSED] drm_test_drm_connector_attach_broadcast_rgb_property
[14:18:07] [PASSED] drm_test_drm_connector_attach_broadcast_rgb_property_hdmi_connector
[14:18:07] === [PASSED] drm_connector_attach_broadcast_rgb_property ===
[14:18:07] ========== drm_get_tv_mode_from_name (2 subtests) ==========
[14:18:07] ========== drm_test_get_tv_mode_from_name_valid  ===========
[14:18:07] [PASSED] NTSC
[14:18:07] [PASSED] NTSC-443
[14:18:07] [PASSED] NTSC-J
[14:18:07] [PASSED] PAL
[14:18:07] [PASSED] PAL-M
[14:18:07] [PASSED] PAL-N
[14:18:07] [PASSED] SECAM
[14:18:07] [PASSED] Mono
[14:18:07] ====== [PASSED] drm_test_get_tv_mode_from_name_valid =======
[14:18:07] [PASSED] drm_test_get_tv_mode_from_name_truncated
[14:18:07] ============ [PASSED] drm_get_tv_mode_from_name ============
[14:18:07] = drm_test_connector_hdmi_compute_mode_clock (12 subtests) =
[14:18:07] [PASSED] drm_test_drm_hdmi_compute_mode_clock_rgb
[14:18:07] [PASSED] drm_test_drm_hdmi_compute_mode_clock_rgb_10bpc
[14:18:07] [PASSED] drm_test_drm_hdmi_compute_mode_clock_rgb_10bpc_vic_1
[14:18:07] [PASSED] drm_test_drm_hdmi_compute_mode_clock_rgb_12bpc
[14:18:07] [PASSED] drm_test_drm_hdmi_compute_mode_clock_rgb_12bpc_vic_1
[14:18:07] [PASSED] drm_test_drm_hdmi_compute_mode_clock_rgb_double
[14:18:07] = drm_test_connector_hdmi_compute_mode_clock_yuv420_valid  =
[14:18:07] [PASSED] VIC 96
[14:18:07] [PASSED] VIC 97
[14:18:07] [PASSED] VIC 101
[14:18:07] [PASSED] VIC 102
[14:18:07] [PASSED] VIC 106
[14:18:07] [PASSED] VIC 107
[14:18:07] === [PASSED] drm_test_connector_hdmi_compute_mode_clock_yuv420_valid ===
[14:18:07] [PASSED] drm_test_connector_hdmi_compute_mode_clock_yuv420_10_bpc
[14:18:07] [PASSED] drm_test_connector_hdmi_compute_mode_clock_yuv420_12_bpc
[14:18:07] [PASSED] drm_test_connector_hdmi_compute_mode_clock_yuv422_8_bpc
[14:18:07] [PASSED] drm_test_connector_hdmi_compute_mode_clock_yuv422_10_bpc
[14:18:07] [PASSED] drm_test_connector_hdmi_compute_mode_clock_yuv422_12_bpc
[14:18:07] === [PASSED] drm_test_connector_hdmi_compute_mode_clock ====
[14:18:07] == drm_hdmi_connector_get_broadcast_rgb_name (2 subtests) ==
[14:18:07] === drm_test_drm_hdmi_connector_get_broadcast_rgb_name  ====
[14:18:07] [PASSED] Automatic
[14:18:07] [PASSED] Full
[14:18:07] [PASSED] Limited 16:235
[14:18:07] === [PASSED] drm_test_drm_hdmi_connector_get_broadcast_rgb_name ===
[14:18:07] [PASSED] drm_test_drm_hdmi_connector_get_broadcast_rgb_name_invalid
[14:18:07] ==== [PASSED] drm_hdmi_connector_get_broadcast_rgb_name ====
[14:18:07] == drm_hdmi_connector_get_output_format_name (2 subtests) ==
[14:18:07] === drm_test_drm_hdmi_connector_get_output_format_name  ====
[14:18:07] [PASSED] RGB
[14:18:07] [PASSED] YUV 4:2:0
[14:18:07] [PASSED] YUV 4:2:2
[14:18:07] [PASSED] YUV 4:4:4
[14:18:07] === [PASSED] drm_test_drm_hdmi_connector_get_output_format_name ===
[14:18:07] [PASSED] drm_test_drm_hdmi_connector_get_output_format_name_invalid
[14:18:07] ==== [PASSED] drm_hdmi_connector_get_output_format_name ====
[14:18:07] ============= drm_damage_helper (21 subtests) ==============
[14:18:07] [PASSED] drm_test_damage_iter_no_damage
[14:18:07] [PASSED] drm_test_damage_iter_no_damage_fractional_src
[14:18:07] [PASSED] drm_test_damage_iter_no_damage_src_moved
[14:18:07] [PASSED] drm_test_damage_iter_no_damage_fractional_src_moved
[14:18:07] [PASSED] drm_test_damage_iter_no_damage_not_visible
[14:18:07] [PASSED] drm_test_damage_iter_no_damage_no_crtc
[14:18:07] [PASSED] drm_test_damage_iter_no_damage_no_fb
[14:18:07] [PASSED] drm_test_damage_iter_simple_damage
[14:18:07] [PASSED] drm_test_damage_iter_single_damage
[14:18:07] [PASSED] drm_test_damage_iter_single_damage_intersect_src
[14:18:07] [PASSED] drm_test_damage_iter_single_damage_outside_src
[14:18:07] [PASSED] drm_test_damage_iter_single_damage_fractional_src
[14:18:07] [PASSED] drm_test_damage_iter_single_damage_intersect_fractional_src
[14:18:07] [PASSED] drm_test_damage_iter_single_damage_outside_fractional_src
[14:18:07] [PASSED] drm_test_damage_iter_single_damage_src_moved
[14:18:07] [PASSED] drm_test_damage_iter_single_damage_fractional_src_moved
[14:18:07] [PASSED] drm_test_damage_iter_damage
[14:18:07] [PASSED] drm_test_damage_iter_damage_one_intersect
[14:18:07] [PASSED] drm_test_damage_iter_damage_one_outside
[14:18:07] [PASSED] drm_test_damage_iter_damage_src_moved
[14:18:07] [PASSED] drm_test_damage_iter_damage_not_visible
[14:18:07] ================ [PASSED] drm_damage_helper ================
[14:18:07] ============== drm_dp_mst_helper (3 subtests) ==============
[14:18:07] ============== drm_test_dp_mst_calc_pbn_mode  ==============
[14:18:07] [PASSED] Clock 154000 BPP 30 DSC disabled
[14:18:07] [PASSED] Clock 234000 BPP 30 DSC disabled
[14:18:07] [PASSED] Clock 297000 BPP 24 DSC disabled
[14:18:07] [PASSED] Clock 332880 BPP 24 DSC enabled
[14:18:07] [PASSED] Clock 324540 BPP 24 DSC enabled
[14:18:07] ========== [PASSED] drm_test_dp_mst_calc_pbn_mode ==========
[14:18:07] ============== drm_test_dp_mst_calc_pbn_div  ===============
[14:18:07] [PASSED] Link rate 2000000 lane count 4
[14:18:07] [PASSED] Link rate 2000000 lane count 2
[14:18:07] [PASSED] Link rate 2000000 lane count 1
[14:18:07] [PASSED] Link rate 1350000 lane count 4
[14:18:07] [PASSED] Link rate 1350000 lane count 2
[14:18:07] [PASSED] Link rate 1350000 lane count 1
[14:18:07] [PASSED] Link rate 1000000 lane count 4
[14:18:07] [PASSED] Link rate 1000000 lane count 2
[14:18:07] [PASSED] Link rate 1000000 lane count 1
[14:18:07] [PASSED] Link rate 810000 lane count 4
[14:18:07] [PASSED] Link rate 810000 lane count 2
[14:18:07] [PASSED] Link rate 810000 lane count 1
[14:18:07] [PASSED] Link rate 540000 lane count 4
[14:18:07] [PASSED] Link rate 540000 lane count 2
[14:18:07] [PASSED] Link rate 540000 lane count 1
[14:18:07] [PASSED] Link rate 270000 lane count 4
[14:18:07] [PASSED] Link rate 270000 lane count 2
[14:18:07] [PASSED] Link rate 270000 lane count 1
[14:18:07] [PASSED] Link rate 162000 lane count 4
[14:18:07] [PASSED] Link rate 162000 lane count 2
[14:18:07] [PASSED] Link rate 162000 lane count 1
[14:18:07] ========== [PASSED] drm_test_dp_mst_calc_pbn_div ===========
[14:18:07] ========= drm_test_dp_mst_sideband_msg_req_decode  =========
[14:18:07] [PASSED] DP_ENUM_PATH_RESOURCES with port number
[14:18:07] [PASSED] DP_POWER_UP_PHY with port number
[14:18:07] [PASSED] DP_POWER_DOWN_PHY with port number
[14:18:07] [PASSED] DP_ALLOCATE_PAYLOAD with SDP stream sinks
[14:18:07] [PASSED] DP_ALLOCATE_PAYLOAD with port number
[14:18:07] [PASSED] DP_ALLOCATE_PAYLOAD with VCPI
[14:18:07] [PASSED] DP_ALLOCATE_PAYLOAD with PBN
[14:18:07] [PASSED] DP_QUERY_PAYLOAD with port number
[14:18:07] [PASSED] DP_QUERY_PAYLOAD with VCPI
[14:18:07] [PASSED] DP_REMOTE_DPCD_READ with port number
[14:18:07] [PASSED] DP_REMOTE_DPCD_READ with DPCD address
[14:18:07] [PASSED] DP_REMOTE_DPCD_READ with max number of bytes
[14:18:07] [PASSED] DP_REMOTE_DPCD_WRITE with port number
[14:18:07] [PASSED] DP_REMOTE_DPCD_WRITE with DPCD address
[14:18:07] [PASSED] DP_REMOTE_DPCD_WRITE with data array
[14:18:07] [PASSED] DP_REMOTE_I2C_READ with port number
[14:18:07] [PASSED] DP_REMOTE_I2C_READ with I2C device ID
[14:18:07] [PASSED] DP_REMOTE_I2C_READ with transactions array
[14:18:07] [PASSED] DP_REMOTE_I2C_WRITE with port number
[14:18:07] [PASSED] DP_REMOTE_I2C_WRITE with I2C device ID
[14:18:07] [PASSED] DP_REMOTE_I2C_WRITE with data array
[14:18:07] [PASSED] DP_QUERY_STREAM_ENC_STATUS with stream ID
[14:18:07] [PASSED] DP_QUERY_STREAM_ENC_STATUS with client ID
[14:18:07] [PASSED] DP_QUERY_STREAM_ENC_STATUS with stream event
[14:18:07] [PASSED] DP_QUERY_STREAM_ENC_STATUS with valid stream event
[14:18:07] [PASSED] DP_QUERY_STREAM_ENC_STATUS with stream behavior
[14:18:07] [PASSED] DP_QUERY_STREAM_ENC_STATUS with a valid stream behavior
[14:18:07] ===== [PASSED] drm_test_dp_mst_sideband_msg_req_decode =====
[14:18:07] ================ [PASSED] drm_dp_mst_helper ================
[14:18:07] ================== drm_exec (7 subtests) ===================
[14:18:07] [PASSED] sanitycheck
[14:18:07] [PASSED] test_lock
[14:18:07] [PASSED] test_lock_unlock
[14:18:07] [PASSED] test_duplicates
[14:18:07] [PASSED] test_prepare
[14:18:07] [PASSED] test_prepare_array
[14:18:07] [PASSED] test_multiple_loops
[14:18:07] ==================== [PASSED] drm_exec =====================
[14:18:07] =========== drm_format_helper_test (18 subtests) ===========
[14:18:07] ============== drm_test_fb_xrgb8888_to_gray8  ==============
[14:18:07] [PASSED] single_pixel_source_buffer
[14:18:07] [PASSED] single_pixel_clip_rectangle
[14:18:07] [PASSED] well_known_colors
[14:18:07] [PASSED] destination_pitch
[14:18:07] ========== [PASSED] drm_test_fb_xrgb8888_to_gray8 ==========
[14:18:07] ============= drm_test_fb_xrgb8888_to_rgb332  ==============
[14:18:07] [PASSED] single_pixel_source_buffer
[14:18:07] [PASSED] single_pixel_clip_rectangle
[14:18:07] [PASSED] well_known_colors
[14:18:07] [PASSED] destination_pitch
[14:18:07] ========= [PASSED] drm_test_fb_xrgb8888_to_rgb332 ==========
[14:18:07] ============= drm_test_fb_xrgb8888_to_rgb565  ==============
[14:18:07] [PASSED] single_pixel_source_buffer
[14:18:07] [PASSED] single_pixel_clip_rectangle
[14:18:07] [PASSED] well_known_colors
[14:18:07] [PASSED] destination_pitch
[14:18:07] ========= [PASSED] drm_test_fb_xrgb8888_to_rgb565 ==========
[14:18:07] ============ drm_test_fb_xrgb8888_to_xrgb1555  =============
[14:18:07] [PASSED] single_pixel_source_buffer
[14:18:07] [PASSED] single_pixel_clip_rectangle
[14:18:07] [PASSED] well_known_colors
[14:18:07] [PASSED] destination_pitch
[14:18:07] ======== [PASSED] drm_test_fb_xrgb8888_to_xrgb1555 =========
[14:18:07] ============ drm_test_fb_xrgb8888_to_argb1555  =============
[14:18:07] [PASSED] single_pixel_source_buffer
[14:18:07] [PASSED] single_pixel_clip_rectangle
[14:18:07] [PASSED] well_known_colors
[14:18:07] [PASSED] destination_pitch
[14:18:07] ======== [PASSED] drm_test_fb_xrgb8888_to_argb1555 =========
[14:18:07] ============ drm_test_fb_xrgb8888_to_rgba5551  =============
[14:18:07] [PASSED] single_pixel_source_buffer
[14:18:07] [PASSED] single_pixel_clip_rectangle
[14:18:07] [PASSED] well_known_colors
[14:18:07] [PASSED] destination_pitch
[14:18:07] ======== [PASSED] drm_test_fb_xrgb8888_to_rgba5551 =========
[14:18:07] ============= drm_test_fb_xrgb8888_to_rgb888  ==============
[14:18:07] [PASSED] single_pixel_source_buffer
[14:18:07] [PASSED] single_pixel_clip_rectangle
[14:18:07] [PASSED] well_known_colors
[14:18:07] [PASSED] destination_pitch
[14:18:07] ========= [PASSED] drm_test_fb_xrgb8888_to_rgb888 ==========
[14:18:07] ============= drm_test_fb_xrgb8888_to_bgr888  ==============
[14:18:07] [PASSED] single_pixel_source_buffer
[14:18:07] [PASSED] single_pixel_clip_rectangle
[14:18:07] [PASSED] well_known_colors
[14:18:07] [PASSED] destination_pitch
[14:18:07] ========= [PASSED] drm_test_fb_xrgb8888_to_bgr888 ==========
[14:18:07] ============ drm_test_fb_xrgb8888_to_argb8888  =============
[14:18:07] [PASSED] single_pixel_source_buffer
[14:18:07] [PASSED] single_pixel_clip_rectangle
[14:18:07] [PASSED] well_known_colors
[14:18:07] [PASSED] destination_pitch
[14:18:07] ======== [PASSED] drm_test_fb_xrgb8888_to_argb8888 =========
[14:18:07] =========== drm_test_fb_xrgb8888_to_xrgb2101010  ===========
[14:18:07] [PASSED] single_pixel_source_buffer
[14:18:07] [PASSED] single_pixel_clip_rectangle
[14:18:07] [PASSED] well_known_colors
[14:18:07] [PASSED] destination_pitch
[14:18:07] ======= [PASSED] drm_test_fb_xrgb8888_to_xrgb2101010 =======
[14:18:07] =========== drm_test_fb_xrgb8888_to_argb2101010  ===========
[14:18:07] [PASSED] single_pixel_source_buffer
[14:18:07] [PASSED] single_pixel_clip_rectangle
[14:18:07] [PASSED] well_known_colors
[14:18:07] [PASSED] destination_pitch
[14:18:07] ======= [PASSED] drm_test_fb_xrgb8888_to_argb2101010 =======
[14:18:07] ============== drm_test_fb_xrgb8888_to_mono  ===============
[14:18:07] [PASSED] single_pixel_source_buffer
[14:18:07] [PASSED] single_pixel_clip_rectangle
[14:18:07] [PASSED] well_known_colors
[14:18:07] [PASSED] destination_pitch
[14:18:07] ========== [PASSED] drm_test_fb_xrgb8888_to_mono ===========
[14:18:07] ==================== drm_test_fb_swab  =====================
[14:18:07] [PASSED] single_pixel_source_buffer
[14:18:07] [PASSED] single_pixel_clip_rectangle
[14:18:07] [PASSED] well_known_colors
[14:18:07] [PASSED] destination_pitch
[14:18:07] ================ [PASSED] drm_test_fb_swab =================
[14:18:07] ============ drm_test_fb_xrgb8888_to_xbgr8888  =============
[14:18:07] [PASSED] single_pixel_source_buffer
[14:18:07] [PASSED] single_pixel_clip_rectangle
[14:18:07] [PASSED] well_known_colors
[14:18:07] [PASSED] destination_pitch
[14:18:07] ======== [PASSED] drm_test_fb_xrgb8888_to_xbgr8888 =========
[14:18:07] ============ drm_test_fb_xrgb8888_to_abgr8888  =============
[14:18:07] [PASSED] single_pixel_source_buffer
[14:18:07] [PASSED] single_pixel_clip_rectangle
[14:18:07] [PASSED] well_known_colors
[14:18:07] [PASSED] destination_pitch
[14:18:07] ======== [PASSED] drm_test_fb_xrgb8888_to_abgr8888 =========
[14:18:07] ================= drm_test_fb_clip_offset  =================
[14:18:07] [PASSED] pass through
[14:18:07] [PASSED] horizontal offset
[14:18:07] [PASSED] vertical offset
[14:18:07] [PASSED] horizontal and vertical offset
[14:18:07] [PASSED] horizontal offset (custom pitch)
[14:18:07] [PASSED] vertical offset (custom pitch)
[14:18:07] [PASSED] horizontal and vertical offset (custom pitch)
[14:18:07] ============= [PASSED] drm_test_fb_clip_offset =============
[14:18:07] ============== drm_test_fb_build_fourcc_list  ==============
[14:18:07] [PASSED] no native formats
[14:18:07] [PASSED] XRGB8888 as native format
[14:18:07] [PASSED] remove duplicates
[14:18:07] [PASSED] convert alpha formats
[14:18:07] [PASSED] random formats
[14:18:07] ========== [PASSED] drm_test_fb_build_fourcc_list ==========
[14:18:07] =================== drm_test_fb_memcpy  ====================
[14:18:07] [PASSED] single_pixel_source_buffer: XR24 little-endian (0x34325258)
[14:18:07] [PASSED] single_pixel_source_buffer: XRA8 little-endian (0x38415258)
[14:18:07] [PASSED] single_pixel_source_buffer: YU24 little-endian (0x34325559)
[14:18:07] [PASSED] single_pixel_clip_rectangle: XB24 little-endian (0x34324258)
[14:18:07] [PASSED] single_pixel_clip_rectangle: XRA8 little-endian (0x38415258)
[14:18:07] [PASSED] single_pixel_clip_rectangle: YU24 little-endian (0x34325559)
[14:18:07] [PASSED] well_known_colors: XB24 little-endian (0x34324258)
[14:18:07] [PASSED] well_known_colors: XRA8 little-endian (0x38415258)
[14:18:07] [PASSED] well_known_colors: YU24 little-endian (0x34325559)
[14:18:07] [PASSED] destination_pitch: XB24 little-endian (0x34324258)
[14:18:07] [PASSED] destination_pitch: XRA8 little-endian (0x38415258)
[14:18:07] [PASSED] destination_pitch: YU24 little-endian (0x34325559)
[14:18:07] =============== [PASSED] drm_test_fb_memcpy ================
[14:18:07] ============= [PASSED] drm_format_helper_test ==============
[14:18:07] ================= drm_format (18 subtests) =================
[14:18:07] [PASSED] drm_test_format_block_width_invalid
[14:18:07] [PASSED] drm_test_format_block_width_one_plane
[14:18:07] [PASSED] drm_test_format_block_width_two_plane
[14:18:07] [PASSED] drm_test_format_block_width_three_plane
[14:18:07] [PASSED] drm_test_format_block_width_tiled
[14:18:07] [PASSED] drm_test_format_block_height_invalid
[14:18:07] [PASSED] drm_test_format_block_height_one_plane
[14:18:07] [PASSED] drm_test_format_block_height_two_plane
[14:18:07] [PASSED] drm_test_format_block_height_three_plane
[14:18:07] [PASSED] drm_test_format_block_height_tiled
[14:18:07] [PASSED] drm_test_format_min_pitch_invalid
[14:18:07] [PASSED] drm_test_format_min_pitch_one_plane_8bpp
[14:18:07] [PASSED] drm_test_format_min_pitch_one_plane_16bpp
[14:18:07] [PASSED] drm_test_format_min_pitch_one_plane_24bpp
[14:18:07] [PASSED] drm_test_format_min_pitch_one_plane_32bpp
[14:18:07] [PASSED] drm_test_format_min_pitch_two_plane
[14:18:07] [PASSED] drm_test_format_min_pitch_three_plane_8bpp
[14:18:07] [PASSED] drm_test_format_min_pitch_tiled
[14:18:07] =================== [PASSED] drm_format ====================
[14:18:07] ============== drm_framebuffer (10 subtests) ===============
[14:18:07] ========== drm_test_framebuffer_check_src_coords  ==========
[14:18:07] [PASSED] Success: source fits into fb
[14:18:07] [PASSED] Fail: overflowing fb with x-axis coordinate
[14:18:07] [PASSED] Fail: overflowing fb with y-axis coordinate
[14:18:07] [PASSED] Fail: overflowing fb with source width
[14:18:07] [PASSED] Fail: overflowing fb with source height
[14:18:07] ====== [PASSED] drm_test_framebuffer_check_src_coords ======
[14:18:07] [PASSED] drm_test_framebuffer_cleanup
[14:18:07] =============== drm_test_framebuffer_create  ===============
[14:18:07] [PASSED] ABGR8888 normal sizes
[14:18:07] [PASSED] ABGR8888 max sizes
[14:18:07] [PASSED] ABGR8888 pitch greater than min required
[14:18:07] [PASSED] ABGR8888 pitch less than min required
[14:18:07] [PASSED] ABGR8888 Invalid width
[14:18:07] [PASSED] ABGR8888 Invalid buffer handle
[14:18:07] [PASSED] No pixel format
[14:18:07] [PASSED] ABGR8888 Width 0
[14:18:07] [PASSED] ABGR8888 Height 0
[14:18:07] [PASSED] ABGR8888 Out of bound height * pitch combination
[14:18:07] [PASSED] ABGR8888 Large buffer offset
[14:18:07] [PASSED] ABGR8888 Buffer offset for inexistent plane
[14:18:07] [PASSED] ABGR8888 Invalid flag
[14:18:07] [PASSED] ABGR8888 Set DRM_MODE_FB_MODIFIERS without modifiers
[14:18:07] [PASSED] ABGR8888 Valid buffer modifier
[14:18:07] [PASSED] ABGR8888 Invalid buffer modifier(DRM_FORMAT_MOD_SAMSUNG_64_32_TILE)
[14:18:07] [PASSED] ABGR8888 Extra pitches without DRM_MODE_FB_MODIFIERS
[14:18:07] [PASSED] ABGR8888 Extra pitches with DRM_MODE_FB_MODIFIERS
[14:18:07] [PASSED] NV12 Normal sizes
[14:18:07] [PASSED] NV12 Max sizes
[14:18:07] [PASSED] NV12 Invalid pitch
[14:18:07] [PASSED] NV12 Invalid modifier/missing DRM_MODE_FB_MODIFIERS flag
[14:18:07] [PASSED] NV12 different  modifier per-plane
[14:18:07] [PASSED] NV12 with DRM_FORMAT_MOD_SAMSUNG_64_32_TILE
[14:18:07] [PASSED] NV12 Valid modifiers without DRM_MODE_FB_MODIFIERS
[14:18:07] [PASSED] NV12 Modifier for inexistent plane
[14:18:07] [PASSED] NV12 Handle for inexistent plane
[14:18:07] [PASSED] NV12 Handle for inexistent plane without DRM_MODE_FB_MODIFIERS
[14:18:07] [PASSED] YVU420 DRM_MODE_FB_MODIFIERS set without modifier
[14:18:07] [PASSED] YVU420 Normal sizes
[14:18:07] [PASSED] YVU420 Max sizes
[14:18:07] [PASSED] YVU420 Invalid pitch
[14:18:07] [PASSED] YVU420 Different pitches
[14:18:07] [PASSED] YVU420 Different buffer offsets/pitches
[14:18:07] [PASSED] YVU420 Modifier set just for plane 0, without DRM_MODE_FB_MODIFIERS
[14:18:07] [PASSED] YVU420 Modifier set just for planes 0, 1, without DRM_MODE_FB_MODIFIERS
[14:18:07] [PASSED] YVU420 Modifier set just for plane 0, 1, with DRM_MODE_FB_MODIFIERS
[14:18:07] [PASSED] YVU420 Valid modifier
[14:18:07] [PASSED] YVU420 Different modifiers per plane
[14:18:07] [PASSED] YVU420 Modifier for inexistent plane
[14:18:07] [PASSED] YUV420_10BIT Invalid modifier(DRM_FORMAT_MOD_LINEAR)
[14:18:07] [PASSED] X0L2 Normal sizes
[14:18:07] [PASSED] X0L2 Max sizes
[14:18:07] [PASSED] X0L2 Invalid pitch
[14:18:07] [PASSED] X0L2 Pitch greater than minimum required
[14:18:07] [PASSED] X0L2 Handle for inexistent plane
[14:18:07] [PASSED] X0L2 Offset for inexistent plane, without DRM_MODE_FB_MODIFIERS set
[14:18:07] [PASSED] X0L2 Modifier without DRM_MODE_FB_MODIFIERS set
[14:18:07] [PASSED] X0L2 Valid modifier
[14:18:07] [PASSED] X0L2 Modifier for inexistent plane
[14:18:07] =========== [PASSED] drm_test_framebuffer_create ===========
[14:18:07] [PASSED] drm_test_framebuffer_free
[14:18:07] [PASSED] drm_test_framebuffer_init
[14:18:07] [PASSED] drm_test_framebuffer_init_bad_format
[14:18:07] [PASSED] drm_test_framebuffer_init_dev_mismatch
[14:18:07] [PASSED] drm_test_framebuffer_lookup
[14:18:07] [PASSED] drm_test_framebuffer_lookup_inexistent
[14:18:07] [PASSED] drm_test_framebuffer_modifiers_not_supported
[14:18:07] ================= [PASSED] drm_framebuffer =================
[14:18:07] ================ drm_gem_shmem (8 subtests) ================
[14:18:07] [PASSED] drm_gem_shmem_test_obj_create
[14:18:07] [PASSED] drm_gem_shmem_test_obj_create_private
[14:18:07] [PASSED] drm_gem_shmem_test_pin_pages
[14:18:07] [PASSED] drm_gem_shmem_test_vmap
[14:18:07] [PASSED] drm_gem_shmem_test_get_pages_sgt
[14:18:07] [PASSED] drm_gem_shmem_test_get_sg_table
[14:18:07] [PASSED] drm_gem_shmem_test_madvise
[14:18:07] [PASSED] drm_gem_shmem_test_purge
[14:18:07] ================== [PASSED] drm_gem_shmem ==================
[14:18:07] === drm_atomic_helper_connector_hdmi_check (27 subtests) ===
[14:18:07] [PASSED] drm_test_check_broadcast_rgb_auto_cea_mode
[14:18:07] [PASSED] drm_test_check_broadcast_rgb_auto_cea_mode_vic_1
[14:18:07] [PASSED] drm_test_check_broadcast_rgb_full_cea_mode
[14:18:07] [PASSED] drm_test_check_broadcast_rgb_full_cea_mode_vic_1
[14:18:07] [PASSED] drm_test_check_broadcast_rgb_limited_cea_mode
[14:18:07] [PASSED] drm_test_check_broadcast_rgb_limited_cea_mode_vic_1
[14:18:07] ====== drm_test_check_broadcast_rgb_cea_mode_yuv420  =======
[14:18:07] [PASSED] Automatic
[14:18:07] [PASSED] Full
[14:18:07] [PASSED] Limited 16:235
[14:18:07] == [PASSED] drm_test_check_broadcast_rgb_cea_mode_yuv420 ===
[14:18:07] [PASSED] drm_test_check_broadcast_rgb_crtc_mode_changed
[14:18:07] [PASSED] drm_test_check_broadcast_rgb_crtc_mode_not_changed
[14:18:07] [PASSED] drm_test_check_disable_connector
[14:18:07] [PASSED] drm_test_check_hdmi_funcs_reject_rate
[14:18:07] [PASSED] drm_test_check_max_tmds_rate_bpc_fallback_rgb
[14:18:07] [PASSED] drm_test_check_max_tmds_rate_bpc_fallback_yuv420
[14:18:07] [PASSED] drm_test_check_max_tmds_rate_bpc_fallback_ignore_yuv422
[14:18:07] [PASSED] drm_test_check_max_tmds_rate_bpc_fallback_ignore_yuv420
[14:18:07] [PASSED] drm_test_check_driver_unsupported_fallback_yuv420
[14:18:07] [PASSED] drm_test_check_output_bpc_crtc_mode_changed
[14:18:07] [PASSED] drm_test_check_output_bpc_crtc_mode_not_changed
[14:18:07] [PASSED] drm_test_check_output_bpc_dvi
[14:18:07] [PASSED] drm_test_check_output_bpc_format_vic_1
[14:18:07] [PASSED] drm_test_check_output_bpc_format_display_8bpc_only
[14:18:07] [PASSED] drm_test_check_output_bpc_format_display_rgb_only
[14:18:07] [PASSED] drm_test_check_output_bpc_format_driver_8bpc_only
[14:18:07] [PASSED] drm_test_check_output_bpc_format_driver_rgb_only
[14:18:07] [PASSED] drm_test_check_tmds_char_rate_rgb_8bpc
[14:18:07] [PASSED] drm_test_check_tmds_char_rate_rgb_10bpc
[14:18:07] [PASSED] drm_test_check_tmds_char_rate_rgb_12bpc
[14:18:07] ===== [PASSED] drm_atomic_helper_connector_hdmi_check ======
[14:18:07] === drm_atomic_helper_connector_hdmi_reset (6 subtests) ====
[14:18:07] [PASSED] drm_test_check_broadcast_rgb_value
[14:18:07] [PASSED] drm_test_check_bpc_8_value
[14:18:07] [PASSED] drm_test_check_bpc_10_value
[14:18:07] [PASSED] drm_test_check_bpc_12_value
[14:18:07] [PASSED] drm_test_check_format_value
[14:18:07] [PASSED] drm_test_check_tmds_char_value
[14:18:07] ===== [PASSED] drm_atomic_helper_connector_hdmi_reset ======
[14:18:07] = drm_atomic_helper_connector_hdmi_mode_valid (4 subtests) =
[14:18:07] [PASSED] drm_test_check_mode_valid
[14:18:07] [PASSED] drm_test_check_mode_valid_reject
[14:18:07] [PASSED] drm_test_check_mode_valid_reject_rate
[14:18:07] [PASSED] drm_test_check_mode_valid_reject_max_clock
[14:18:07] === [PASSED] drm_atomic_helper_connector_hdmi_mode_valid ===
[14:18:07] ================= drm_managed (2 subtests) =================
[14:18:07] [PASSED] drm_test_managed_release_action
[14:18:07] [PASSED] drm_test_managed_run_action
[14:18:07] =================== [PASSED] drm_managed ===================
[14:18:07] =================== drm_mm (6 subtests) ====================
[14:18:07] [PASSED] drm_test_mm_init
[14:18:07] [PASSED] drm_test_mm_debug
[14:18:07] [PASSED] drm_test_mm_align32
[14:18:07] [PASSED] drm_test_mm_align64
[14:18:07] [PASSED] drm_test_mm_lowest
[14:18:07] [PASSED] drm_test_mm_highest
[14:18:07] ===================== [PASSED] drm_mm ======================
[14:18:07] ============= drm_modes_analog_tv (5 subtests) =============
[14:18:07] [PASSED] drm_test_modes_analog_tv_mono_576i
[14:18:07] [PASSED] drm_test_modes_analog_tv_ntsc_480i
[14:18:07] [PASSED] drm_test_modes_analog_tv_ntsc_480i_inlined
[14:18:07] [PASSED] drm_test_modes_analog_tv_pal_576i
[14:18:07] [PASSED] drm_test_modes_analog_tv_pal_576i_inlined
[14:18:07] =============== [PASSED] drm_modes_analog_tv ===============
[14:18:07] ============== drm_plane_helper (2 subtests) ===============
[14:18:07] =============== drm_test_check_plane_state  ================
[14:18:07] [PASSED] clipping_simple
[14:18:07] [PASSED] clipping_rotate_reflect
[14:18:07] [PASSED] positioning_simple
[14:18:07] [PASSED] upscaling
[14:18:07] [PASSED] downscaling
[14:18:07] [PASSED] rounding1
[14:18:07] [PASSED] rounding2
[14:18:07] [PASSED] rounding3
[14:18:07] [PASSED] rounding4
[14:18:07] =========== [PASSED] drm_test_check_plane_state ============
[14:18:07] =========== drm_test_check_invalid_plane_state  ============
[14:18:07] [PASSED] positioning_invalid
[14:18:07] [PASSED] upscaling_invalid
[14:18:07] [PASSED] downscaling_invalid
[14:18:07] ======= [PASSED] drm_test_check_invalid_plane_state ========
[14:18:07] ================ [PASSED] drm_plane_helper =================
[14:18:07] ====== drm_connector_helper_tv_get_modes (1 subtest) =======
[14:18:07] ====== drm_test_connector_helper_tv_get_modes_check  =======
[14:18:07] [PASSED] None
[14:18:07] [PASSED] PAL
[14:18:07] [PASSED] NTSC
[14:18:07] [PASSED] Both, NTSC Default
[14:18:07] [PASSED] Both, PAL Default
[14:18:07] [PASSED] Both, NTSC Default, with PAL on command-line
[14:18:07] [PASSED] Both, PAL Default, with NTSC on command-line
[14:18:07] == [PASSED] drm_test_connector_helper_tv_get_modes_check ===
[14:18:07] ======== [PASSED] drm_connector_helper_tv_get_modes ========
[14:18:07] ================== drm_rect (9 subtests) ===================
[14:18:07] [PASSED] drm_test_rect_clip_scaled_div_by_zero
[14:18:07] [PASSED] drm_test_rect_clip_scaled_not_clipped
[14:18:07] [PASSED] drm_test_rect_clip_scaled_clipped
[14:18:07] [PASSED] drm_test_rect_clip_scaled_signed_vs_unsigned
[14:18:07] ================= drm_test_rect_intersect  =================
[14:18:07] [PASSED] top-left x bottom-right: 2x2+1+1 x 2x2+0+0
[14:18:07] [PASSED] top-right x bottom-left: 2x2+0+0 x 2x2+1-1
[14:18:07] [PASSED] bottom-left x top-right: 2x2+1-1 x 2x2+0+0
[14:18:07] [PASSED] bottom-right x top-left: 2x2+0+0 x 2x2+1+1
[14:18:07] [PASSED] right x left: 2x1+0+0 x 3x1+1+0
[14:18:07] [PASSED] left x right: 3x1+1+0 x 2x1+0+0
[14:18:07] [PASSED] up x bottom: 1x2+0+0 x 1x3+0-1
[14:18:07] [PASSED] bottom x up: 1x3+0-1 x 1x2+0+0
[14:18:07] [PASSED] touching corner: 1x1+0+0 x 2x2+1+1
[14:18:07] [PASSED] touching side: 1x1+0+0 x 1x1+1+0
[14:18:07] [PASSED] equal rects: 2x2+0+0 x 2x2+0+0
[14:18:07] [PASSED] inside another: 2x2+0+0 x 1x1+1+1
[14:18:07] [PASSED] far away: 1x1+0+0 x 1x1+3+6
[14:18:07] [PASSED] points intersecting: 0x0+5+10 x 0x0+5+10
[14:18:07] [PASSED] points not intersecting: 0x0+0+0 x 0x0+5+10
[14:18:07] ============= [PASSED] drm_test_rect_intersect =============
[14:18:07] ================ drm_test_rect_calc_hscale  ================
[14:18:07] [PASSED] normal use
[14:18:07] [PASSED] out of max range
[14:18:07] [PASSED] out of min range
[14:18:07] [PASSED] zero dst
[14:18:07] [PASSED] negative src
[14:18:07] [PASSED] negative dst
[14:18:07] ============ [PASSED] drm_test_rect_calc_hscale ============
[14:18:07] ================ drm_test_rect_calc_vscale  ================
[14:18:07] [PASSED] normal use
[14:18:07] [PASSED] out of max range
[14:18:07] [PASSED] out of min range
[14:18:07] [PASSED] zero dst
[14:18:07] [PASSED] negative src
[14:18:07] [PASSED] negative dst
stty: 'standard input': Inappropriate ioctl for device
[14:18:07] ============ [PASSED] drm_test_rect_calc_vscale ============
[14:18:07] ================== drm_test_rect_rotate  ===================
[14:18:07] [PASSED] reflect-x
[14:18:07] [PASSED] reflect-y
[14:18:07] [PASSED] rotate-0
[14:18:07] [PASSED] rotate-90
[14:18:07] [PASSED] rotate-180
[14:18:07] [PASSED] rotate-270
[14:18:07] ============== [PASSED] drm_test_rect_rotate ===============
[14:18:07] ================ drm_test_rect_rotate_inv  =================
[14:18:07] [PASSED] reflect-x
[14:18:07] [PASSED] reflect-y
[14:18:07] [PASSED] rotate-0
[14:18:07] [PASSED] rotate-90
[14:18:07] [PASSED] rotate-180
[14:18:07] [PASSED] rotate-270
[14:18:07] ============ [PASSED] drm_test_rect_rotate_inv =============
[14:18:07] ==================== [PASSED] drm_rect =====================
[14:18:07] ============================================================
[14:18:07] Testing complete. Ran 616 tests: passed: 616
[14:18:07] Elapsed time: 23.032s total, 1.715s configuring, 21.097s building, 0.190s running

+ /kernel/tools/testing/kunit/kunit.py run --kunitconfig /kernel/drivers/gpu/drm/ttm/tests/.kunitconfig
[14:18:07] Configuring KUnit Kernel ...
Regenerating .config ...
Populating config with:
$ make ARCH=um O=.kunit olddefconfig
[14:18:09] Building KUnit Kernel ...
Populating config with:
$ make ARCH=um O=.kunit olddefconfig
Building with:
$ make all compile_commands.json scripts_gdb ARCH=um O=.kunit --jobs=48
[14:18:16] Starting KUnit Kernel (1/1)...
[14:18:16] ============================================================
Running tests with:
$ .kunit/linux kunit.enable=1 mem=1G console=tty kunit_shutdown=halt
[14:18:17] ================= ttm_device (5 subtests) ==================
[14:18:17] [PASSED] ttm_device_init_basic
[14:18:17] [PASSED] ttm_device_init_multiple
[14:18:17] [PASSED] ttm_device_fini_basic
[14:18:17] [PASSED] ttm_device_init_no_vma_man
[14:18:17] ================== ttm_device_init_pools  ==================
[14:18:17] [PASSED] No DMA allocations, no DMA32 required
[14:18:17] [PASSED] DMA allocations, DMA32 required
[14:18:17] [PASSED] No DMA allocations, DMA32 required
[14:18:17] [PASSED] DMA allocations, no DMA32 required
[14:18:17] ============== [PASSED] ttm_device_init_pools ==============
[14:18:17] =================== [PASSED] ttm_device ====================
[14:18:17] ================== ttm_pool (8 subtests) ===================
[14:18:17] ================== ttm_pool_alloc_basic  ===================
[14:18:17] [PASSED] One page
[14:18:17] [PASSED] More than one page
[14:18:17] [PASSED] Above the allocation limit
[14:18:17] [PASSED] One page, with coherent DMA mappings enabled
[14:18:17] [PASSED] Above the allocation limit, with coherent DMA mappings enabled
[14:18:17] ============== [PASSED] ttm_pool_alloc_basic ===============
[14:18:17] ============== ttm_pool_alloc_basic_dma_addr  ==============
[14:18:17] [PASSED] One page
[14:18:17] [PASSED] More than one page
[14:18:17] [PASSED] Above the allocation limit
[14:18:17] [PASSED] One page, with coherent DMA mappings enabled
[14:18:17] [PASSED] Above the allocation limit, with coherent DMA mappings enabled
[14:18:17] ========== [PASSED] ttm_pool_alloc_basic_dma_addr ==========
[14:18:17] [PASSED] ttm_pool_alloc_order_caching_match
[14:18:17] [PASSED] ttm_pool_alloc_caching_mismatch
[14:18:17] [PASSED] ttm_pool_alloc_order_mismatch
[14:18:17] [PASSED] ttm_pool_free_dma_alloc
[14:18:17] [PASSED] ttm_pool_free_no_dma_alloc
[14:18:17] [PASSED] ttm_pool_fini_basic
[14:18:17] ==================== [PASSED] ttm_pool =====================
[14:18:17] ================ ttm_resource (8 subtests) =================
[14:18:17] ================= ttm_resource_init_basic  =================
[14:18:17] [PASSED] Init resource in TTM_PL_SYSTEM
[14:18:17] [PASSED] Init resource in TTM_PL_VRAM
[14:18:17] [PASSED] Init resource in a private placement
[14:18:17] [PASSED] Init resource in TTM_PL_SYSTEM, set placement flags
[14:18:17] ============= [PASSED] ttm_resource_init_basic =============
[14:18:17] [PASSED] ttm_resource_init_pinned
[14:18:17] [PASSED] ttm_resource_fini_basic
[14:18:17] [PASSED] ttm_resource_manager_init_basic
[14:18:17] [PASSED] ttm_resource_manager_usage_basic
[14:18:17] [PASSED] ttm_resource_manager_set_used_basic
[14:18:17] [PASSED] ttm_sys_man_alloc_basic
[14:18:17] [PASSED] ttm_sys_man_free_basic
[14:18:17] ================== [PASSED] ttm_resource ===================
[14:18:17] =================== ttm_tt (15 subtests) ===================
[14:18:17] ==================== ttm_tt_init_basic  ====================
[14:18:17] [PASSED] Page-aligned size
[14:18:17] [PASSED] Extra pages requested
[14:18:17] ================ [PASSED] ttm_tt_init_basic ================
[14:18:17] [PASSED] ttm_tt_init_misaligned
[14:18:17] [PASSED] ttm_tt_fini_basic
[14:18:17] [PASSED] ttm_tt_fini_sg
[14:18:17] [PASSED] ttm_tt_fini_shmem
[14:18:17] [PASSED] ttm_tt_create_basic
[14:18:17] [PASSED] ttm_tt_create_invalid_bo_type
[14:18:17] [PASSED] ttm_tt_create_ttm_exists
[14:18:17] [PASSED] ttm_tt_create_failed
[14:18:17] [PASSED] ttm_tt_destroy_basic
[14:18:17] [PASSED] ttm_tt_populate_null_ttm
[14:18:17] [PASSED] ttm_tt_populate_populated_ttm
[14:18:17] [PASSED] ttm_tt_unpopulate_basic
[14:18:17] [PASSED] ttm_tt_unpopulate_empty_ttm
[14:18:17] [PASSED] ttm_tt_swapin_basic
[14:18:17] ===================== [PASSED] ttm_tt ======================
[14:18:17] =================== ttm_bo (14 subtests) ===================
[14:18:17] =========== ttm_bo_reserve_optimistic_no_ticket  ===========
[14:18:17] [PASSED] Cannot be interrupted and sleeps
[14:18:17] [PASSED] Cannot be interrupted, locks straight away
[14:18:17] [PASSED] Can be interrupted, sleeps
[14:18:17] ======= [PASSED] ttm_bo_reserve_optimistic_no_ticket =======
[14:18:17] [PASSED] ttm_bo_reserve_locked_no_sleep
[14:18:17] [PASSED] ttm_bo_reserve_no_wait_ticket
[14:18:17] [PASSED] ttm_bo_reserve_double_resv
[14:18:17] [PASSED] ttm_bo_reserve_interrupted
[14:18:17] [PASSED] ttm_bo_reserve_deadlock
[14:18:17] [PASSED] ttm_bo_unreserve_basic
[14:18:17] [PASSED] ttm_bo_unreserve_pinned
[14:18:17] [PASSED] ttm_bo_unreserve_bulk
[14:18:17] [PASSED] ttm_bo_put_basic
[14:18:17] [PASSED] ttm_bo_put_shared_resv
[14:18:17] [PASSED] ttm_bo_pin_basic
[14:18:17] [PASSED] ttm_bo_pin_unpin_resource
[14:18:17] [PASSED] ttm_bo_multiple_pin_one_unpin
[14:18:17] ===================== [PASSED] ttm_bo ======================
[14:18:17] ============== ttm_bo_validate (22 subtests) ===============
[14:18:17] ============== ttm_bo_init_reserved_sys_man  ===============
[14:18:17] [PASSED] Buffer object for userspace
[14:18:17] [PASSED] Kernel buffer object
[14:18:17] [PASSED] Shared buffer object
[14:18:17] ========== [PASSED] ttm_bo_init_reserved_sys_man ===========
[14:18:17] ============== ttm_bo_init_reserved_mock_man  ==============
[14:18:17] [PASSED] Buffer object for userspace
[14:18:17] [PASSED] Kernel buffer object
[14:18:17] [PASSED] Shared buffer object
[14:18:17] ========== [PASSED] ttm_bo_init_reserved_mock_man ==========
[14:18:17] [PASSED] ttm_bo_init_reserved_resv
[14:18:17] ================== ttm_bo_validate_basic  ==================
[14:18:17] [PASSED] Buffer object for userspace
[14:18:17] [PASSED] Kernel buffer object
[14:18:17] [PASSED] Shared buffer object
[14:18:17] ============== [PASSED] ttm_bo_validate_basic ==============
[14:18:17] [PASSED] ttm_bo_validate_invalid_placement
[14:18:17] ============= ttm_bo_validate_same_placement  ==============
[14:18:17] [PASSED] System manager
[14:18:17] [PASSED] VRAM manager
[14:18:17] ========= [PASSED] ttm_bo_validate_same_placement ==========
[14:18:17] [PASSED] ttm_bo_validate_failed_alloc
[14:18:17] [PASSED] ttm_bo_validate_pinned
[14:18:17] [PASSED] ttm_bo_validate_busy_placement
[14:18:17] ================ ttm_bo_validate_multihop  =================
[14:18:17] [PASSED] Buffer object for userspace
[14:18:17] [PASSED] Kernel buffer object
[14:18:17] [PASSED] Shared buffer object
[14:18:17] ============ [PASSED] ttm_bo_validate_multihop =============
[14:18:17] ========== ttm_bo_validate_no_placement_signaled  ==========
[14:18:17] [PASSED] Buffer object in system domain, no page vector
[14:18:17] [PASSED] Buffer object in system domain with an existing page vector
[14:18:17] ====== [PASSED] ttm_bo_validate_no_placement_signaled ======
[14:18:17] ======== ttm_bo_validate_no_placement_not_signaled  ========
[14:18:17] [PASSED] Buffer object for userspace
[14:18:17] [PASSED] Kernel buffer object
[14:18:17] [PASSED] Shared buffer object
[14:18:17] ==== [PASSED] ttm_bo_validate_no_placement_not_signaled ====
[14:18:17] [PASSED] ttm_bo_validate_move_fence_signaled
[14:18:17] ========= ttm_bo_validate_move_fence_not_signaled  =========
[14:18:17] [PASSED] Waits for GPU
[14:18:17] [PASSED] Tries to lock straight away
[14:18:17] ===== [PASSED] ttm_bo_validate_move_fence_not_signaled =====
[14:18:17] [PASSED] ttm_bo_validate_swapout
[14:18:17] [PASSED] ttm_bo_validate_happy_evict
[14:18:17] [PASSED] ttm_bo_validate_all_pinned_evict
[14:18:17] [PASSED] ttm_bo_validate_allowed_only_evict
[14:18:17] [PASSED] ttm_bo_validate_deleted_evict
[14:18:17] [PASSED] ttm_bo_validate_busy_domain_evict
[14:18:17] [PASSED] ttm_bo_validate_evict_gutting
[14:18:17] [PASSED] ttm_bo_validate_recrusive_evict
stty: 'standard input': Inappropriate ioctl for device
[14:18:17] ================= [PASSED] ttm_bo_validate =================
[14:18:17] ============================================================
[14:18:17] Testing complete. Ran 102 tests: passed: 102
[14:18:17] Elapsed time: 10.023s total, 1.659s configuring, 7.747s building, 0.512s running

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



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

* ✓ CI.Build: success for CCS save restore for IGPU (rev6)
  2025-06-06 12:45 [PATCH v6 0/3] CCS save restore for IGPU Satyanarayana K V P
                   ` (5 preceding siblings ...)
  2025-06-06 14:18 ` ✓ CI.KUnit: success " Patchwork
@ 2025-06-06 14:29 ` Patchwork
  2025-06-06 14:31 ` ✗ CI.Hooks: failure " Patchwork
                   ` (3 subsequent siblings)
  10 siblings, 0 replies; 23+ messages in thread
From: Patchwork @ 2025-06-06 14:29 UTC (permalink / raw)
  To: Satyanarayana K V P; +Cc: intel-xe

== Series Details ==

Series: CCS save restore for IGPU (rev6)
URL   : https://patchwork.freedesktop.org/series/149108/
State : success

== Summary ==

STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/rtc/rtc-rx6110.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/rtc/rtc-rx8010.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/rtc/rtc-rx8025.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/rtc/rtc-rx8111.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/rtc/rtc-rx8581.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/rtc/rtc-s35390a.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/rtc/rtc-rx8025.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/rtc/rtc-rx8111.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/rtc/rtc-rx8581.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/rtc/rtc-sd3078.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/rtc/rtc-stk17ta8.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/rtc/rtc-s35390a.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/rtc/rtc-tps6586x.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/rtc/rtc-tps6594.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/rtc/rtc-sd3078.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/rtc/rtc-stk17ta8.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/rtc/rtc-tps6586x.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/rtc/rtc-tps65910.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/rtc/rtc-tps6594.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/rtc/rtc-wilco-ec.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/rtc/rtc-wm831x.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/rtc/rtc-wm8350.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/rtc/rtc-tps65910.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/rtc/rtc-wilco-ec.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/rtc/rtc-wm831x.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/rtc/rtc-wm8350.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/rtc/rtc-x1205.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/i2c/algos/i2c-algo-bit.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/i2c/algos/i2c-algo-pca.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/i2c/busses/i2c-scmi.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/i2c/busses/i2c-ccgx-ucsi.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/rtc/rtc-x1205.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/i2c/algos/i2c-algo-bit.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/i2c/algos/i2c-algo-pca.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/i2c/busses/i2c-scmi.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/i2c/busses/i2c-ccgx-ucsi.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/i2c/busses/i2c-ali1535.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/i2c/busses/i2c-ali1563.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/i2c/busses/i2c-ali15x3.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/i2c/busses/i2c-amd756.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/i2c/busses/i2c-ali1535.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/i2c/busses/i2c-ali1563.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/i2c/busses/i2c-ali15x3.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/i2c/busses/i2c-amd756.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/i2c/busses/i2c-amd8111.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/i2c/busses/i2c-cht-wc.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/i2c/busses/i2c-i801.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/i2c/busses/i2c-isch.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/i2c/busses/i2c-amd8111.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/i2c/busses/i2c-cht-wc.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/i2c/busses/i2c-ismt.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/i2c/busses/i2c-i801.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/i2c/busses/i2c-isch.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/i2c/busses/i2c-nforce2.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/i2c/busses/i2c-nvidia-gpu.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/i2c/busses/i2c-piix4.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/i2c/busses/i2c-ismt.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/i2c/busses/i2c-sis5595.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/i2c/busses/i2c-nforce2.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/i2c/busses/i2c-nvidia-gpu.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/i2c/busses/i2c-piix4.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/i2c/busses/i2c-sis630.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/i2c/busses/i2c-sis5595.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/i2c/busses/i2c-sis96x.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/i2c/busses/i2c-via.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/i2c/busses/i2c-viapro.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/i2c/busses/i2c-sis630.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/i2c/busses/i2c-sis96x.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/i2c/busses/i2c-via.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/i2c/busses/i2c-viai2c-zhaoxin.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/i2c/busses/i2c-viapro.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/i2c/busses/i2c-viai2c-common.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/i2c/busses/i2c-amd-mp2-pci.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/i2c/busses/i2c-amd-mp2-plat.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/i2c/busses/i2c-viai2c-zhaoxin.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/i2c/busses/i2c-viai2c-common.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/i2c/busses/i2c-amd-mp2-pci.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/i2c/busses/i2c-cbus-gpio.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/i2c/busses/i2c-amd-mp2-plat.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/i2c/busses/i2c-designware-pci.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/i2c/busses/i2c-gpio.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/i2c/busses/i2c-kempld.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/i2c/busses/i2c-cbus-gpio.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/i2c/busses/i2c-designware-pci.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/i2c/busses/i2c-gpio.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/i2c/busses/i2c-ocores.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/i2c/busses/i2c-kempld.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/i2c/busses/i2c-pca-platform.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/i2c/busses/i2c-simtec.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/i2c/busses/i2c-xiic.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/i2c/busses/i2c-ocores.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/i2c/busses/i2c-pca-platform.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/i2c/busses/i2c-simtec.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/i2c/busses/i2c-diolan-u2c.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/i2c/busses/i2c-xiic.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/i2c/busses/i2c-dln2.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/i2c/busses/i2c-ljca.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/i2c/busses/i2c-cp2615.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/i2c/busses/i2c-diolan-u2c.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/i2c/busses/i2c-dln2.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/i2c/busses/i2c-parport.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/i2c/busses/i2c-ljca.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/i2c/busses/i2c-cp2615.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/i2c/busses/i2c-mchp-pci1xxxx.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/i2c/busses/i2c-robotfuzz-osif.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/i2c/busses/i2c-taos-evm.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/i2c/busses/i2c-parport.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/i2c/busses/i2c-tiny-usb.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/i2c/busses/i2c-mchp-pci1xxxx.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/i2c/busses/i2c-robotfuzz-osif.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/i2c/busses/i2c-taos-evm.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/i2c/busses/i2c-viperboard.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/i2c/busses/i2c-tiny-usb.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/i2c/busses/i2c-cros-ec-tunnel.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/i2c/busses/i2c-mlxcpld.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/i2c/busses/i2c-viperboard.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/i2c/busses/i2c-cros-ec-tunnel.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/i2c/busses/i2c-virtio.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/i2c/busses/i2c-mlxcpld.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/i2c/muxes/i2c-mux-gpio.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/i2c/muxes/i2c-mux-ltc4306.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/i2c/muxes/i2c-mux-mlxcpld.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/i2c/muxes/i2c-mux-pca9541.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/i2c/busses/i2c-virtio.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/i2c/muxes/i2c-mux-gpio.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/i2c/muxes/i2c-mux-ltc4306.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/i2c/muxes/i2c-mux-pca954x.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/i2c/muxes/i2c-mux-mlxcpld.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/i2c/muxes/i2c-mux-reg.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/i2c/muxes/i2c-mux-pca9541.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/i2c/i2c-smbus.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/i2c/muxes/i2c-mux-pca954x.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/i2c/i2c-mux.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/i2c/muxes/i2c-mux-reg.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/i2c/i2c-smbus.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/i2c/i2c-stub.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/i2c/i2c-mux.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/i3c/i3c.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/i3c/master/i3c-master-cdns.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/i2c/i2c-stub.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/i3c/master/dw-i3c-master.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/i3c/i3c.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/i3c/master/i3c-master-cdns.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/i3c/master/svc-i3c-master.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/i3c/master/mipi-i3c-hci/mipi-i3c-hci.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-adstech-dvb-t-pci.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/i3c/master/dw-i3c-master.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-alink-dtu-m.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/i3c/master/svc-i3c-master.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-anysee.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/i3c/master/mipi-i3c-hci/mipi-i3c-hci.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-adstech-dvb-t-pci.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-apac-viewcomp.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-alink-dtu-m.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-anysee.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-astrometa-t2hybrid.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-asus-pc39.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-apac-viewcomp.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-asus-ps3-100.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-astrometa-t2hybrid.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-asus-pc39.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-ati-tv-wonder-hd-600.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-asus-ps3-100.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-ati-x10.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-avermedia-a16d.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-avermedia-cardbus.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-ati-tv-wonder-hd-600.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-avermedia-dvbt.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-ati-x10.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-avermedia-a16d.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-avermedia-cardbus.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-avermedia-m135a.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-avermedia-m733a-rm-k6.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-avermedia-dvbt.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-avermedia.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-avermedia-rm-ks.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-avermedia-m135a.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-avermedia-m733a-rm-k6.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-avertv-303.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-avermedia.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-avermedia-rm-ks.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-azurewave-ad-tu700.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-beelink-gs1.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-beelink-mxiii.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-avertv-303.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-behold-columbus.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-azurewave-ad-tu700.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-beelink-gs1.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-beelink-mxiii.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-behold.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-budget-ci-old.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-behold-columbus.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-cinergy-1400.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-cinergy.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-behold.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-budget-ci-old.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-cinergy-1400.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-cinergy.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-ct-90405.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-d680-dmb.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-delock-61959.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-dib0700-nec.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-ct-90405.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-d680-dmb.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-delock-61959.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-dib0700-nec.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-dib0700-rc5.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-digitalnow-tinytwin.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-digittrade.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-dm1105-nec.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-dib0700-rc5.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-digitalnow-tinytwin.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-digittrade.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-dntv-live-dvb-t.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-dm1105-nec.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-dntv-live-dvbt-pro.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-dreambox.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-dtt200u.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-dntv-live-dvb-t.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-dntv-live-dvbt-pro.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-dreambox.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-dtt200u.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-dvbsky.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-dvico-mce.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-dvico-portable.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-em-terratec.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-dvbsky.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-dvico-mce.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-dvico-portable.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-em-terratec.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-encore-enltv2.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-encore-enltv-fm53.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-encore-enltv.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-evga-indtube.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-encore-enltv2.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-encore-enltv-fm53.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-encore-enltv.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-evga-indtube.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-eztv.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-flydvb.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-flyvideo.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-fusionhdtv-mce.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-eztv.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-flydvb.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-flyvideo.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-fusionhdtv-mce.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-gadmei-rm008z.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-geekbox.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-genius-tvgo-a11mce.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-gotview7135.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-hauppauge.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-gadmei-rm008z.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-geekbox.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-genius-tvgo-a11mce.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-gotview7135.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-hauppauge.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-hisi-poplar.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-hisi-tv-demo.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-imon-mce.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-imon-pad.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-hisi-poplar.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-hisi-tv-demo.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-imon-mce.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-imon-pad.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-imon-rsc.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-iodata-bctv7e.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-it913x-v1.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-it913x-v2.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-imon-rsc.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-iodata-bctv7e.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-it913x-v1.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-it913x-v2.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-kaiomy.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-khadas.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-khamsin.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-kworld-315u.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-kaiomy.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-khadas.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-khamsin.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-kworld-315u.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-kworld-pc150u.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-kworld-plus-tv-analog.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-leadtek-y04g0051.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-lme2510.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-manli.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-kworld-pc150u.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-kworld-plus-tv-analog.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-leadtek-y04g0051.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-lme2510.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-manli.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-mecool-kiii-pro.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-mecool-kii-pro.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-medion-x10-digitainer.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-mecool-kiii-pro.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-mecool-kii-pro.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-medion-x10-digitainer.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-medion-x10.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-medion-x10-or2x.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-minix-neo.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-msi-digivox-iii.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-msi-digivox-ii.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-medion-x10.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-medion-x10-or2x.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-minix-neo.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-msi-digivox-iii.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-msi-tvanywhere.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-msi-digivox-ii.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-msi-tvanywhere-plus.ko
  HOSTCC  debian/linux-headers-6.15.0-lgci-xe-g2829e9090ebe/usr/src/linux-headers-6.15.0-lgci-xe-g2829e9090ebe/scripts/kallsyms
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-mygica-utv3.ko
  HOSTCC  debian/linux-headers-6.15.0-lgci-xe-g2829e9090ebe/usr/src/linux-headers-6.15.0-lgci-xe-g2829e9090ebe/scripts/sorttable
  HOSTCC  debian/linux-headers-6.15.0-lgci-xe-g2829e9090ebe/usr/src/linux-headers-6.15.0-lgci-xe-g2829e9090ebe/scripts/asn1_compiler
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-msi-tvanywhere.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-msi-tvanywhere-plus.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-mygica-utv3.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-nebula.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-nec-terratec-cinergy-xs.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-norwood.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-npgtech.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-odroid.ko
  HOSTCC  debian/linux-headers-6.15.0-lgci-xe-g2829e9090ebe/usr/src/linux-headers-6.15.0-lgci-xe-g2829e9090ebe/scripts/basic/fixdep
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-nebula.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-nec-terratec-cinergy-xs.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-norwood.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-npgtech.ko
  HOSTCC  debian/linux-headers-6.15.0-lgci-xe-g2829e9090ebe/usr/src/linux-headers-6.15.0-lgci-xe-g2829e9090ebe/scripts/genksyms/genksyms.o
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-odroid.ko
  YACC    debian/linux-headers-6.15.0-lgci-xe-g2829e9090ebe/usr/src/linux-headers-6.15.0-lgci-xe-g2829e9090ebe/scripts/genksyms/parse.tab.[ch]
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-pctv-sedna.ko
  LEX     debian/linux-headers-6.15.0-lgci-xe-g2829e9090ebe/usr/src/linux-headers-6.15.0-lgci-xe-g2829e9090ebe/scripts/genksyms/lex.lex.c
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-pine64.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-pinnacle-color.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-pctv-sedna.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-pine64.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-pinnacle-color.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-pinnacle-grey.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-pinnacle-pctv-hd.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-pixelview-002t.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-pixelview-mk12.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-pixelview-new.ko
  HOSTCC  debian/linux-headers-6.15.0-lgci-xe-g2829e9090ebe/usr/src/linux-headers-6.15.0-lgci-xe-g2829e9090ebe/scripts/selinux/mdp/mdp
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-pinnacle-grey.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-pinnacle-pctv-hd.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-pixelview-002t.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-pixelview-mk12.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-pixelview-new.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-pixelview.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-powercolor-real-angel.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-proteus-2309.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-purpletv.ko
  HOSTCC  debian/linux-headers-6.15.0-lgci-xe-g2829e9090ebe/usr/src/linux-headers-6.15.0-lgci-xe-g2829e9090ebe/scripts/sign-file
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-pixelview.ko
  HOSTCC  debian/linux-headers-6.15.0-lgci-xe-g2829e9090ebe/usr/src/linux-headers-6.15.0-lgci-xe-g2829e9090ebe/scripts/insert-sys-cert
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-powercolor-real-angel.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-proteus-2309.ko
  HOSTCC  debian/linux-headers-6.15.0-lgci-xe-g2829e9090ebe/usr/src/linux-headers-6.15.0-lgci-xe-g2829e9090ebe/scripts/mod/modpost.o
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-purpletv.ko
  HOSTCC  debian/linux-headers-6.15.0-lgci-xe-g2829e9090ebe/usr/src/linux-headers-6.15.0-lgci-xe-g2829e9090ebe/scripts/mod/file2alias.o
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-pv951.ko
  HOSTCC  debian/linux-headers-6.15.0-lgci-xe-g2829e9090ebe/usr/src/linux-headers-6.15.0-lgci-xe-g2829e9090ebe/scripts/mod/sumversion.o
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-rc6-mce.ko
  HOSTCC  debian/linux-headers-6.15.0-lgci-xe-g2829e9090ebe/usr/src/linux-headers-6.15.0-lgci-xe-g2829e9090ebe/scripts/mod/symsearch.o
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-real-audio-220-32-keys.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-pv951.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-reddo.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-rc6-mce.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-real-audio-220-32-keys.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-siemens-gigaset-rc20.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-snapstream-firefly.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-streamzap.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-reddo.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-su3000.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-siemens-gigaset-rc20.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-snapstream-firefly.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-streamzap.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-tanix-tx3mini.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-su3000.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-tanix-tx5max.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-tbs-nec.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-technisat-ts35.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-tanix-tx3mini.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-tanix-tx5max.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-tbs-nec.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-technisat-ts35.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-technisat-usb2.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-terratec-cinergy-c-pci.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-terratec-cinergy-s2-hd.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-terratec-cinergy-xs.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-technisat-usb2.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-terratec-cinergy-c-pci.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-terratec-cinergy-s2-hd.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-terratec-cinergy-xs.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-terratec-slim-2.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-terratec-slim.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-tevii-nec.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-tivo.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-terratec-slim-2.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-terratec-slim.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-tevii-nec.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-tivo.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-total-media-in-hand-02.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-total-media-in-hand.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-trekstor.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-tt-1500.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-total-media-in-hand-02.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-total-media-in-hand.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-trekstor.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-tt-1500.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-twinhan1027.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-twinhan-dtv-cab-ci.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-vega-s9x.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-videomate-m1f.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-twinhan1027.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-twinhan-dtv-cab-ci.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-vega-s9x.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-videomate-m1f.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-videomate-s350.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-videomate-tv-pvr.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-videostrong-kii-pro.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-wetek-hub.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-videomate-s350.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-videomate-tv-pvr.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-videostrong-kii-pro.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-wetek-hub.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-wetek-play2.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-winfast.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-winfast-usbii-deluxe.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-x96max.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-wetek-play2.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-winfast.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-winfast-usbii-deluxe.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-xbox-360.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-x96max.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-xbox-dvd.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-zx-irdec.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/rc-core.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-xbox-360.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-xbox-dvd.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/keymaps/rc-zx-irdec.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/ir-imon-decoder.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/rc-core.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/ir-jvc-decoder.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/ir-mce_kbd-decoder.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/ir-nec-decoder.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/ir-imon-decoder.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/ir-jvc-decoder.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/ir-rc5-decoder.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/ir-mce_kbd-decoder.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/ir-nec-decoder.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/ir-rc6-decoder.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/ir-rcmm-decoder.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/ir-sanyo-decoder.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/ir-rc5-decoder.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/ir-rc6-decoder.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/ir-rcmm-decoder.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/ir-sanyo-decoder.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/ir-sharp-decoder.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/ir-sony-decoder.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/ir-xmp-decoder.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/ir-sharp-decoder.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/ir-xmp-decoder.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/ir-sony-decoder.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/ene_ir.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/fintek-cir.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/igorplugusb.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/iguanair.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/imon.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/ene_ir.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/fintek-cir.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/igorplugusb.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/imon_raw.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/iguanair.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/imon.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/ite-cir.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/mceusb.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/nuvoton-cir.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/imon_raw.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/ite-cir.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/mceusb.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/nuvoton-cir.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/redrat3.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/serial_ir.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/streamzap.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/ir_toy.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/redrat3.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/serial_ir.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/streamzap.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/ttusbir.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/ir_toy.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/winbond-cir.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/ati_remote.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/rc-loopback.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/ttusbir.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/winbond-cir.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/ati_remote.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/rc-loopback.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/xbox_remote.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/cec/core/cec.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/cec/i2c/ch7322.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/cec/i2c/tda9950.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/rc/xbox_remote.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/cec/core/cec.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/cec/platform/cros-ec/cros-ec-cec.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/cec/i2c/ch7322.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/cec/i2c/tda9950.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/cec/platform/cec-gpio/cec-gpio.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/cec/platform/seco/seco-cec.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/cec/usb/pulse8/pulse8-cec.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/cec/platform/cros-ec/cros-ec-cec.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/cec/usb/rainshadow/rainshadow-cec.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/cec/platform/cec-gpio/cec-gpio.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/cec/platform/seco/seco-cec.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/cec/usb/pulse8/pulse8-cec.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/pps/clients/pps-ldisc.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/media/cec/usb/rainshadow/rainshadow-cec.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/pps/clients/pps_parport.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/pps/clients/pps-gpio.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/ptp/ptp_ines.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/pps/clients/pps-ldisc.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/pps/clients/pps_parport.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/pps/clients/pps-gpio.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/ptp/ptp_ines.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/ptp/ptp_kvm.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/ptp/ptp_vmclock.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/ptp/ptp_clockmatrix.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/ptp/ptp_fc3.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/ptp/ptp_kvm.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/ptp/ptp_vmclock.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/ptp/ptp_idt82p33.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/ptp/ptp_clockmatrix.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/ptp/ptp_fc3.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/ptp/ptp_mock.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/ptp/ptp_vmw.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/ptp/ptp_idt82p33.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/ptp/ptp_ocp.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/ptp/ptp_mock.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/ptp/ptp_vmw.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/reset/atc260x-poweroff.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/supply/ip5xxx_power.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/ptp/ptp_ocp.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/supply/max8925_power.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/reset/atc260x-poweroff.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/supply/ip5xxx_power.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/supply/wm831x_backup.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/supply/wm831x_power.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/supply/max8925_power.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/supply/wm8350_power.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/supply/wm831x_backup.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/supply/wm831x_power.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/supply/test_power.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/supply/wm8350_power.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/supply/88pm860x_battery.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/supply/adp5061.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/supply/test_power.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/supply/cw2015_battery.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/supply/88pm860x_battery.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/supply/adp5061.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/supply/ds2760_battery.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/supply/ds2780_battery.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/supply/cw2015_battery.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/supply/ds2781_battery.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/supply/ds2760_battery.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/supply/ds2780_battery.ko
  HOSTCC  debian/linux-headers-6.15.0-lgci-xe-g2829e9090ebe/usr/src/linux-headers-6.15.0-lgci-xe-g2829e9090ebe/scripts/genksyms/parse.tab.o
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/supply/ds2782_battery.ko
  HOSTCC  debian/linux-headers-6.15.0-lgci-xe-g2829e9090ebe/usr/src/linux-headers-6.15.0-lgci-xe-g2829e9090ebe/scripts/genksyms/lex.lex.o
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/supply/ltc2941-battery-gauge.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/supply/ds2781_battery.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/supply/goldfish_battery.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/supply/ds2782_battery.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/supply/ltc2941-battery-gauge.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/supply/sbs-battery.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/supply/sbs-charger.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/supply/goldfish_battery.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/supply/sbs-manager.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/supply/bq27xxx_battery.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/supply/sbs-battery.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/supply/sbs-charger.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/supply/bq27xxx_battery_i2c.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/supply/sbs-manager.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/supply/bq27xxx_battery.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/supply/bq27xxx_battery_hdq.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/supply/da9030_battery.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/supply/bq27xxx_battery_i2c.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/supply/da9052-battery.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/supply/bq27xxx_battery_hdq.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/supply/da9030_battery.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/supply/da9150-fg.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/supply/da9052-battery.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/supply/max17042_battery.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/supply/max1720x_battery.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/supply/da9150-fg.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/supply/max1721x_battery.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/supply/max17042_battery.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/supply/rt5033_battery.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/supply/max1720x_battery.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/supply/rt5033_charger.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/supply/max1721x_battery.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/supply/rt5033_battery.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/supply/rt9455_charger.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/supply/rt5033_charger.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/supply/rt9467-charger.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/supply/rt9471.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/supply/rt9455_charger.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/supply/88pm860x_charger.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/supply/rt9467-charger.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/supply/rt9471.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/supply/isp1704_charger.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/supply/max8903_charger.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/supply/lp8727_charger.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/supply/88pm860x_charger.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/supply/isp1704_charger.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/supply/max8903_charger.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/supply/gpio-charger.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/supply/lp8727_charger.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/supply/lt3651-charger.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/supply/ltc4162-l-charger.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/supply/max14577_charger.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/supply/gpio-charger.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/supply/lt3651-charger.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/supply/ltc4162-l-charger.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/supply/max14577_charger.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/supply/max77693_charger.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/supply/max77976_charger.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/supply/max8997_charger.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/supply/max77693_charger.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/supply/max77976_charger.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/supply/max8998_charger.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/supply/max8997_charger.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/supply/mt6360_charger.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/supply/bq2415x_charger.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/supply/max8998_charger.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/supply/bq24190_charger.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/supply/mt6360_charger.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/supply/bq2415x_charger.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/supply/bq24257_charger.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/supply/bq24735-charger.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/supply/bq24190_charger.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/supply/bq2515x_charger.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/supply/bq24257_charger.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/supply/bq24735-charger.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/supply/bq25890_charger.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/supply/bq25980_charger.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/supply/bq2515x_charger.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/supply/bq256xx_charger.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/supply/bq25890_charger.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/supply/bq25980_charger.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/supply/smb347-charger.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/supply/bq256xx_charger.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/supply/tps65090-charger.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/supply/axp288_charger.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/supply/smb347-charger.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/supply/cros_charge-control.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/supply/tps65090-charger.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/supply/cros_usbpd-charger.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/supply/axp288_charger.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/supply/cros_peripheral_charger.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/supply/bd99954-charger.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/supply/cros_charge-control.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/supply/wilco-charger.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/supply/cros_usbpd-charger.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/supply/cros_peripheral_charger.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/supply/bd99954-charger.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/supply/surface_battery.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/supply/wilco-charger.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/supply/surface_charger.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/supply/ug3105_battery.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/supply/surface_battery.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/supply/surface_charger.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/supply/ug3105_battery.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/supply/mm8013.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/sequencing/pwrseq-core.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/hwmon-vid.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/acpi_power_meter.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/supply/mm8013.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/power/sequencing/pwrseq-core.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/hwmon-vid.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/asus_atk0110.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/asus-ec-sensors.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/acpi_power_meter.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/asus_wmi_sensors.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/asus_atk0110.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/asus-ec-sensors.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/hp-wmi-sensors.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/asus_wmi_sensors.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/asb100.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/w83627hf.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/w83773g.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/hp-wmi-sensors.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/asb100.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/w83627hf.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/w83792d.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/w83773g.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/w83793.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/w83795.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/w83781d.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/w83792d.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/w83793.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/w83795.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/w83781d.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/w83791d.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/abituguru.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/abituguru3.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/ad7314.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/ad7414.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/w83791d.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/abituguru.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/abituguru3.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/ad7314.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/ad7414.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/ad7418.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/adc128d818.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/adcxx.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/ad7418.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/adc128d818.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/adcxx.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/adm1025.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/adm1026.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/adm1029.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/adm1031.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/adm1177.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/adm1025.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/adm1026.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/adm1029.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/adm1031.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/adm1177.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/adm9240.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/ads7828.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/ads7871.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/adt7x10.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/adm9240.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/ads7828.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/ads7871.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/adt7x10.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/adt7310.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/adt7410.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/adt7411.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/adt7462.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/adt7310.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/adt7410.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/adt7411.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/adt7462.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/adt7470.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/adt7475.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/aht10.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/adt7470.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/adt7475.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/aht10.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/applesmc.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/aquacomputer_d5next.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/as370-hwmon.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/asc7621.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/applesmc.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/aquacomputer_d5next.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/as370-hwmon.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/asus_rog_ryujin.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/asc7621.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/atxp1.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/axi-fan-control.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/asus_rog_ryujin.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/chipcap2.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/atxp1.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/axi-fan-control.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/coretemp.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/corsair-cpro.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/chipcap2.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/corsair-psu.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/cros_ec_hwmon.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/coretemp.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/corsair-cpro.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/corsair-psu.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/cros_ec_hwmon.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/da9052-hwmon.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/da9055-hwmon.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/dell-smm-hwmon.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/da9052-hwmon.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/da9055-hwmon.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/dme1737.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/drivetemp.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/dell-smm-hwmon.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/ds620.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/ds1621.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/dme1737.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/drivetemp.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/emc1403.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/ds620.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/ds1621.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/emc2103.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/emc2305.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/emc1403.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/emc6w201.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/emc2103.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/emc2305.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/f71805f.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/emc6w201.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/f71882fg.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/f75375s.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/f71805f.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/fam15h_power.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/f71882fg.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/f75375s.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/fschmd.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/ftsteutates.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/fam15h_power.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/g760a.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/fschmd.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/ftsteutates.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/g762.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/g760a.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/gigabyte_waterforce.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/gl518sm.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/gl520sm.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/g762.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/gigabyte_waterforce.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/gl518sm.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/gl520sm.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/hih6130.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/hs3001.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/i5500_temp.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/hih6130.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/hs3001.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/i5500_temp.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/i5k_amb.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/ibmaem.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/ibmpex.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/ina209.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/i5k_amb.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/ibmaem.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/ibmpex.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/ina2xx.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/ina209.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/ina238.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/ina3221.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/ina2xx.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/ina238.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/ina3221.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/intel-m10-bmc-hwmon.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/it87.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/jc42.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/k8temp.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/intel-m10-bmc-hwmon.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/it87.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/jc42.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/k10temp.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/k8temp.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/lenovo-ec-sensors.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/lineage-pem.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/k10temp.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/lenovo-ec-sensors.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/lineage-pem.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/lm63.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/lm70.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/lm73.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/lm63.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/lm70.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/lm73.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/lm75.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/lm77.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/lm78.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/lm80.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/lm75.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/lm77.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/lm78.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/lm83.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/lm80.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/lm85.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/lm87.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/lm83.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/lm85.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/lm87.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/lm90.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/lm92.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/lm93.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/lm95234.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/lm90.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/lm92.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/lm93.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/lm95241.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/lm95234.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/lm95245.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/ltc2945.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/lm95241.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/lm95245.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/ltc2945.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/ltc2947-core.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/ltc2947-i2c.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/ltc2947-spi.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/ltc2947-core.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/ltc2947-i2c.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/ltc2990.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/ltc2947-spi.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/ltc2991.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/ltc2992.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/ltc2990.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/ltc4151.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/ltc2991.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/ltc2992.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/ltc4215.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/ltc4222.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/ltc4151.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/ltc4245.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/ltc4215.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/ltc4222.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/ltc4260.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/ltc4261.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/ltc4245.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/ltc4282.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/max1111.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/ltc4260.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/ltc4261.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/max127.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/max16065.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/ltc4282.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/max1111.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/max1619.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/max127.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/max16065.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/max1668.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/max197.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/max1619.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/max31722.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/max1668.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/max31730.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/max197.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/max31760.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/max31722.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/max6620.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/max31730.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/max6621.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/max31760.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/max6639.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/max6620.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/max6650.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/max6621.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/max6639.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/max6697.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/max31790.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/max6650.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/max31827.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/mc13783-adc.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/max6697.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/max31790.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/mc34vr500.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/mcp3021.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/max31827.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/mc13783-adc.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/tc654.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/tps23861.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/mlxreg-fan.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/mc34vr500.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/mcp3021.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/tc654.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/tps23861.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/mlxreg-fan.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/menf21bmc_hwmon.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/mr75203.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/nct6683.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/nct6775-core.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/menf21bmc_hwmon.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/mr75203.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/nct6683.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/nct6775.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/nct6775-i2c.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/nct6775-core.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/nct7802.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/nct7904.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/npcm750-pwm-fan.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/nct6775.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/nct6775-i2c.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/nct7802.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/nct7904.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/npcm750-pwm-fan.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/nzxt-kraken2.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/nzxt-kraken3.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/nzxt-smart2.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/oxp-sensors.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/nzxt-kraken2.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/nzxt-kraken3.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/nzxt-smart2.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/oxp-sensors.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/pc87360.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/pc87427.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/pcf8591.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/powerz.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/powr1220.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/pc87360.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/pc87427.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/pcf8591.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/powerz.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/powr1220.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/pt5161l.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/pwm-fan.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/sbtsi_temp.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/sbrmi.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/sch56xx-common.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/pt5161l.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/pwm-fan.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/sbtsi_temp.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/sbrmi.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/sch56xx-common.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/sch5627.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/sch5636.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/sht15.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/sht21.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/sch5627.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/sch5636.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/sht15.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/sht21.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/sht3x.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/sht4x.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/shtc1.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/sis5595.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/smpro-hwmon.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/sht3x.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/sht4x.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/shtc1.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/sis5595.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/smsc47b397.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/smpro-hwmon.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/smsc47m1.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/smsc47m192.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/stts751.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/smsc47b397.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/smsc47m1.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/smsc47m192.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/stts751.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/surface_fan.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/sy7636a-hwmon.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/amc6821.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/tc74.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/surface_fan.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/sy7636a-hwmon.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/amc6821.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/thmc50.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/tc74.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/tmp102.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/tmp103.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/tmp108.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/thmc50.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/tmp102.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/tmp401.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/tmp103.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/tmp108.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/tmp421.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/tmp464.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/tmp513.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/tmp401.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/via-cputemp.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/tmp421.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/tmp464.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/tmp513.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/via686a.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/via-cputemp.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/vt1211.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/vt8231.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/via686a.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/w83627ehf.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/vt1211.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/vt8231.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/w83l785ts.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/w83l786ng.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/wm831x-hwmon.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/w83627ehf.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/wm8350-hwmon.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/w83l785ts.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/xgene-hwmon.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/w83l786ng.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/wm831x-hwmon.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/occ/occ-hwmon-common.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/wm8350-hwmon.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/occ/occ-p8-hwmon.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/xgene-hwmon.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/peci/peci-cputemp.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/occ/occ-hwmon-common.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/peci/peci-dimmtemp.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/occ/occ-p8-hwmon.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/pmbus/pmbus_core.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/peci/peci-cputemp.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/pmbus/pmbus.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/peci/peci-dimmtemp.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/pmbus/acbel-fsg032.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/pmbus/adm1266.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/pmbus/pmbus_core.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/pmbus/pmbus.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/pmbus/adm1275.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/pmbus/acbel-fsg032.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/pmbus/adp1050.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/pmbus/adm1266.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/pmbus/bel-pfe.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/pmbus/bpa-rs600.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/pmbus/adm1275.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/pmbus/adp1050.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/pmbus/delta-ahe50dc-fan.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/pmbus/bel-pfe.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/pmbus/bpa-rs600.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/pmbus/fsp-3y.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/pmbus/ibm-cffps.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/pmbus/dps920ab.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/pmbus/delta-ahe50dc-fan.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/pmbus/fsp-3y.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/pmbus/ibm-cffps.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/pmbus/dps920ab.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/pmbus/inspur-ipsps.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/pmbus/ir35221.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/pmbus/ir36021.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/pmbus/ir38064.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/pmbus/inspur-ipsps.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/pmbus/ir35221.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/pmbus/ir36021.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/pmbus/irps5401.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/pmbus/ir38064.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/pmbus/isl68137.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/pmbus/lm25066.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/pmbus/lt7182s.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/pmbus/irps5401.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/pmbus/isl68137.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/pmbus/lm25066.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/pmbus/lt7182s.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/pmbus/ltc2978.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/pmbus/ltc3815.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/pmbus/max15301.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/pmbus/max16064.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/pmbus/ltc2978.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/pmbus/ltc3815.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/pmbus/max15301.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/pmbus/max16601.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/pmbus/max16064.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/pmbus/max20730.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/pmbus/max20751.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/pmbus/max31785.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/pmbus/max16601.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/pmbus/max34440.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/pmbus/max20730.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/pmbus/max20751.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/pmbus/max31785.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/pmbus/max8688.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/pmbus/mp2856.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/pmbus/max34440.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/pmbus/mp2888.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/pmbus/mp2891.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/pmbus/max8688.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/pmbus/mp2856.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/pmbus/mp2888.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/pmbus/mp2975.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/pmbus/mp2891.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/pmbus/mp2993.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/pmbus/mp5023.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/pmbus/mp5920.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/pmbus/mp2975.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/pmbus/mp2993.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/pmbus/mp5023.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/pmbus/mp5990.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/pmbus/mp5920.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/pmbus/mp9941.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/pmbus/mpq7932.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/pmbus/mpq8785.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/pmbus/mp5990.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/pmbus/mp9941.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/pmbus/mpq7932.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/pmbus/mpq8785.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/pmbus/pli1209bc.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/pmbus/pm6764tr.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/pmbus/pxe1610.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/pmbus/q54sj108a2.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/pmbus/stpddc60.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/pmbus/pli1209bc.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/pmbus/pm6764tr.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/pmbus/pxe1610.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/pmbus/q54sj108a2.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/pmbus/tda38640.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/pmbus/stpddc60.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/pmbus/tps40422.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/pmbus/tps53679.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/pmbus/tps546d24.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/pmbus/tda38640.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/pmbus/tps40422.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/pmbus/tps53679.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/pmbus/tps546d24.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/pmbus/ucd9000.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/pmbus/ucd9200.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/pmbus/xdp710.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/pmbus/xdpe12284.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/pmbus/ucd9000.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/pmbus/ucd9200.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/pmbus/xdp710.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/pmbus/xdpe152c4.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/pmbus/xdpe12284.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/pmbus/zl6100.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/pmbus/pim4328.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/thermal/intel/intel_powerclamp.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/pmbus/xdpe152c4.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/pmbus/zl6100.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hwmon/pmbus/pim4328.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/thermal/intel/x86_pkg_temp_thermal.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/thermal/intel/intel_powerclamp.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/thermal/intel/intel_soc_dts_iosf.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/thermal/intel/intel_soc_dts_thermal.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/thermal/intel/int340x_thermal/int3400_thermal.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/thermal/intel/x86_pkg_temp_thermal.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/thermal/intel/intel_soc_dts_iosf.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/thermal/intel/int340x_thermal/int340x_thermal_zone.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/thermal/intel/intel_soc_dts_thermal.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/thermal/intel/int340x_thermal/int3400_thermal.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/thermal/intel/int340x_thermal/int3402_thermal.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/thermal/intel/int340x_thermal/int3403_thermal.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/thermal/intel/int340x_thermal/int340x_thermal_zone.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/thermal/intel/int340x_thermal/processor_thermal_device.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/thermal/intel/int340x_thermal/int3402_thermal.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/thermal/intel/int340x_thermal/int3403_thermal.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/thermal/intel/int340x_thermal/int3401_thermal.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/thermal/intel/int340x_thermal/processor_thermal_device_pci_legacy.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/thermal/intel/int340x_thermal/processor_thermal_device.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/thermal/intel/int340x_thermal/processor_thermal_device_pci.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/thermal/intel/int340x_thermal/int3401_thermal.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/thermal/intel/int340x_thermal/processor_thermal_device_pci_legacy.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/thermal/intel/int340x_thermal/processor_thermal_rapl.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/thermal/intel/int340x_thermal/processor_thermal_device_pci.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/thermal/intel/int340x_thermal/processor_thermal_rfim.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/thermal/intel/int340x_thermal/processor_thermal_mbox.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/thermal/intel/int340x_thermal/processor_thermal_rapl.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/thermal/intel/int340x_thermal/processor_thermal_wt_req.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/thermal/intel/int340x_thermal/processor_thermal_wt_hint.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/thermal/intel/int340x_thermal/processor_thermal_rfim.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/thermal/intel/int340x_thermal/processor_thermal_mbox.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/thermal/intel/int340x_thermal/processor_thermal_power_floor.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/thermal/intel/int340x_thermal/processor_thermal_wt_req.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/thermal/intel/int340x_thermal/processor_thermal_wt_hint.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/thermal/intel/int340x_thermal/int3406_thermal.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/thermal/intel/int340x_thermal/acpi_thermal_rel.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/thermal/intel/intel_bxt_pmic_thermal.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/thermal/intel/int340x_thermal/processor_thermal_power_floor.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/thermal/intel/intel_pch_thermal.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/thermal/intel/int340x_thermal/int3406_thermal.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/thermal/intel/int340x_thermal/acpi_thermal_rel.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/thermal/intel/intel_bxt_pmic_thermal.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/thermal/intel/intel_tcc_cooling.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/thermal/intel/intel_pch_thermal.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/watchdog/pretimeout_panic.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/watchdog/pcwd_pci.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/watchdog/wdt_pci.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/thermal/intel/intel_tcc_cooling.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/watchdog/pretimeout_panic.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/watchdog/pcwd_pci.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/watchdog/wdt_pci.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/watchdog/pcwd_usb.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/watchdog/cadence_wdt.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/watchdog/twl4030_wdt.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/watchdog/dw_wdt.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/watchdog/retu_wdt.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/watchdog/pcwd_usb.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/watchdog/cadence_wdt.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/watchdog/twl4030_wdt.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/watchdog/dw_wdt.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/watchdog/acquirewdt.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/watchdog/retu_wdt.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/watchdog/advantechwdt.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/watchdog/advantech_ec_wdt.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/watchdog/alim1535_wdt.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/watchdog/acquirewdt.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/watchdog/advantechwdt.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/watchdog/advantech_ec_wdt.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/watchdog/alim1535_wdt.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/watchdog/alim7101_wdt.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/watchdog/ebc-c384_wdt.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/watchdog/exar_wdt.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/watchdog/f71808e_wdt.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/watchdog/alim7101_wdt.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/watchdog/ebc-c384_wdt.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/watchdog/exar_wdt.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/watchdog/f71808e_wdt.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/watchdog/sp5100_tco.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/watchdog/sbc_fitpc2_wdt.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/watchdog/eurotechwdt.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/watchdog/ib700wdt.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/watchdog/ibmasr.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/watchdog/sp5100_tco.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/watchdog/sbc_fitpc2_wdt.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/watchdog/eurotechwdt.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/watchdog/ib700wdt.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/watchdog/ibmasr.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/watchdog/wafer5823wdt.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/watchdog/i6300esb.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/watchdog/ie6xx_wdt.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/watchdog/iTCO_wdt.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/watchdog/wafer5823wdt.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/watchdog/i6300esb.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/watchdog/ie6xx_wdt.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/watchdog/iTCO_wdt.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/watchdog/lenovo_se10_wdt.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/watchdog/iTCO_vendor_support.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/watchdog/it8712f_wdt.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/watchdog/it87_wdt.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/watchdog/lenovo_se10_wdt.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/watchdog/iTCO_vendor_support.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/watchdog/it8712f_wdt.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/watchdog/it87_wdt.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/watchdog/hpwdt.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/watchdog/kempld_wdt.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/watchdog/sc1200wdt.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/watchdog/pc87413_wdt.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/watchdog/hpwdt.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/watchdog/kempld_wdt.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/watchdog/sc1200wdt.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/watchdog/nv_tco.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/watchdog/pc87413_wdt.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/watchdog/sbc60xxwdt.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/watchdog/sch311x_wdt.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/watchdog/smsc37b787_wdt.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/watchdog/nv_tco.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/watchdog/sbc60xxwdt.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/watchdog/sch311x_wdt.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/watchdog/tqmx86_wdt.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/watchdog/smsc37b787_wdt.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/watchdog/via_wdt.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/watchdog/w83627hf_wdt.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/watchdog/w83877f_wdt.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/watchdog/tqmx86_wdt.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/watchdog/w83977f_wdt.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/watchdog/via_wdt.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/watchdog/w83627hf_wdt.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/watchdog/w83877f_wdt.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/watchdog/machzwd.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/watchdog/sbc_epx_c3.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/watchdog/w83977f_wdt.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/watchdog/mei_wdt.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/watchdog/ni903x_wdt.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/watchdog/machzwd.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/watchdog/sbc_epx_c3.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/watchdog/mei_wdt.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/watchdog/nic7018_wdt.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/watchdog/ni903x_wdt.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/watchdog/mlx_wdt.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/watchdog/simatic-ipc-wdt.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/watchdog/nic7018_wdt.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/watchdog/of_xilinx_wdt.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/watchdog/mlx_wdt.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/watchdog/simatic-ipc-wdt.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/watchdog/mena21_wdt.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/watchdog/xen_wdt.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/watchdog/cros_ec_wdt.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/watchdog/of_xilinx_wdt.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/watchdog/da9052_wdt.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/watchdog/mena21_wdt.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/watchdog/xen_wdt.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/watchdog/cros_ec_wdt.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/watchdog/da9055_wdt.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/watchdog/da9052_wdt.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/watchdog/da9062_wdt.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/watchdog/da9063_wdt.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/watchdog/da9055_wdt.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/watchdog/wdat_wdt.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/watchdog/da9062_wdt.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/watchdog/da9063_wdt.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/watchdog/wm831x_wdt.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/watchdog/wm8350_wdt.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/watchdog/wdat_wdt.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/watchdog/max63xx_wdt.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/watchdog/ziirave_wdt.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/watchdog/wm831x_wdt.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/watchdog/wm8350_wdt.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/watchdog/menf21bmc_wdt.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/watchdog/max63xx_wdt.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/watchdog/ziirave_wdt.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/watchdog/menz69_wdt.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/watchdog/rave-sp-wdt.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/watchdog/menf21bmc_wdt.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/md/raid0.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/md/raid1.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/watchdog/menz69_wdt.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/watchdog/rave-sp-wdt.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/md/raid10.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/md/raid0.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/md/raid456.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/md/raid1.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/md/bcache/bcache.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/md/raid10.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/md/dm-unstripe.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/md/dm-bufio.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/md/dm-bio-prison.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/md/raid456.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/md/dm-crypt.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/md/dm-unstripe.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/md/bcache/bcache.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/md/dm-bufio.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/md/dm-bio-prison.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/md/dm-delay.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/md/dm-crypt.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/md/dm-flakey.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/md/dm-multipath.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/md/dm-round-robin.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/md/dm-delay.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/md/dm-flakey.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/md/dm-multipath.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/md/dm-queue-length.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/md/dm-round-robin.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/md/dm-service-time.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/md/dm-historical-service-time.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/md/dm-io-affinity.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/md/dm-queue-length.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/md/dm-service-time.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/md/dm-historical-service-time.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/md/dm-switch.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/md/dm-io-affinity.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/md/dm-snapshot.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/md/persistent-data/dm-persistent-data.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/md/dm-mirror.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/md/dm-switch.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/md/dm-snapshot.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/md/dm-log.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/md/persistent-data/dm-persistent-data.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/md/dm-mirror.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/md/dm-region-hash.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/md/dm-log-userspace.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/md/dm-zero.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/md/dm-log.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/md/dm-raid.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/md/dm-region-hash.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/md/dm-log-userspace.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/md/dm-zero.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/md/dm-thin-pool.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/md/dm-verity.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/md/dm-raid.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/md/dm-vdo/dm-vdo.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/md/dm-cache.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/md/dm-thin-pool.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/md/dm-verity.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/md/dm-cache-smq.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/md/dm-ebs.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/md/dm-era.ko
  HOSTLD  debian/linux-headers-6.15.0-lgci-xe-g2829e9090ebe/usr/src/linux-headers-6.15.0-lgci-xe-g2829e9090ebe/scripts/genksyms/genksyms
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/md/dm-cache.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/md/dm-clone.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/md/dm-log-writes.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/md/dm-vdo/dm-vdo.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/md/dm-cache-smq.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/md/dm-ebs.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/md/dm-era.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/md/dm-integrity.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/md/dm-clone.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/md/dm-log-writes.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/md/dm-zoned.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/md/dm-writecache.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/edac/edac_mce_amd.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/md/dm-integrity.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/edac/i5100_edac.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/md/dm-zoned.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/md/dm-writecache.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/edac/edac_mce_amd.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/edac/i5400_edac.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/edac/i7300_edac.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/edac/i5100_edac.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/edac/i7core_edac.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/edac/sb_edac.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/edac/i5400_edac.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/edac/i7300_edac.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/edac/i7core_edac.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/edac/sb_edac.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/edac/pnd2_edac.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/edac/igen6_edac.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/edac/e752x_edac.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/edac/i82975x_edac.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/edac/pnd2_edac.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/edac/igen6_edac.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/edac/i3000_edac.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/edac/e752x_edac.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/edac/i82975x_edac.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/edac/i3200_edac.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/edac/ie31200_edac.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/edac/x38_edac.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/edac/i3000_edac.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/edac/amd64_edac.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/edac/i3200_edac.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/edac/ie31200_edac.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/edac/x38_edac.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/edac/skx_edac.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/edac/amd64_edac.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/edac/skx_edac_common.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/edac/i10nm_edac.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/edac/skx_edac.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/cpufreq/speedstep-lib.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/edac/skx_edac_common.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/cpufreq/p4-clockmod.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/edac/i10nm_edac.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/cpufreq/amd_freq_sensitivity.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/cpuidle/cpuidle-haltpoll.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/cpufreq/speedstep-lib.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/cpufreq/p4-clockmod.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/mmc/core/mmc_block.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/cpufreq/amd_freq_sensitivity.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/cpuidle/cpuidle-haltpoll.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/mmc/core/sdio_uart.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/mmc/host/sdhci_f_sdh30.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/mmc/core/mmc_block.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/mmc/host/wbsd.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/mmc/core/sdio_uart.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/mmc/host/sdhci_f_sdh30.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/mmc/host/alcor.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/mmc/host/mtk-sd.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/mmc/host/wbsd.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/mmc/host/tifm_sd.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/mmc/host/mmc_spi.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/mmc/host/of_mmc_spi.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/mmc/host/alcor.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/mmc/host/mtk-sd.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/mmc/host/tifm_sd.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/mmc/host/mmc_spi.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/mmc/host/cb710-mmc.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/mmc/host/of_mmc_spi.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/mmc/host/via-sdmmc.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/mmc/host/vub300.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/mmc/host/ushc.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/mmc/host/cb710-mmc.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/mmc/host/via-sdmmc.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/mmc/host/vub300.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/mmc/host/ushc.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/mmc/host/usdhi6rol0.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/mmc/host/toshsd.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/mmc/host/rtsx_pci_sdmmc.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/mmc/host/rtsx_usb_sdmmc.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/mmc/host/mmc_hsq.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/mmc/host/usdhi6rol0.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/mmc/host/toshsd.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/mmc/host/rtsx_pci_sdmmc.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/mmc/host/rtsx_usb_sdmmc.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/mmc/host/sdhci-xenon-driver.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/mmc/host/mmc_hsq.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/ufs/core/ufshcd-core.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/ufs/host/tc-dwc-g210-pci.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/ufs/host/ufshcd-dwc.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/mmc/host/sdhci-xenon-driver.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/ufs/host/tc-dwc-g210.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/ufs/host/tc-dwc-g210-pci.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/ufs/core/ufshcd-core.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/ufs/host/ufshcd-dwc.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/ufs/host/cdns-pltfrm.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/ufs/host/ufshcd-pci.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/ufs/host/tc-dwc-g210.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/ufs/host/ufshcd-pltfrm.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/firmware/cirrus/cs_dsp.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/firmware/efi/efi-pstore.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/ufs/host/cdns-pltfrm.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/ufs/host/ufshcd-pci.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/ufs/host/ufshcd-pltfrm.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/firmware/cirrus/cs_dsp.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/firmware/efi/efibc.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/firmware/efi/efi-pstore.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/firmware/efi/test/efi_test.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/firmware/efi/capsule-loader.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/firmware/iscsi_ibft.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/firmware/efi/efibc.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/firmware/efi/test/efi_test.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/firmware/efi/capsule-loader.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/firmware/iscsi_ibft.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/firmware/qemu_fw_cfg.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/crypto/ccp/ccp.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/crypto/ccp/ccp-crypto.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/crypto/inside-secure/crypto_safexcel.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/crypto/intel/qat/qat_common/intel_qat.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/firmware/qemu_fw_cfg.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/crypto/ccp/ccp-crypto.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/crypto/ccp/ccp.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/crypto/intel/qat/qat_dh895xcc/qat_dh895xcc.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/crypto/inside-secure/crypto_safexcel.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/crypto/intel/qat/qat_c3xxx/qat_c3xxx.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/crypto/intel/qat/qat_c62x/qat_c62x.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/crypto/intel/qat/qat_4xxx/qat_4xxx.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/crypto/intel/qat/qat_420xx/qat_420xx.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/crypto/intel/qat/qat_common/intel_qat.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/crypto/intel/qat/qat_dh895xcc/qat_dh895xcc.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/crypto/intel/qat/qat_c3xxx/qat_c3xxx.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/crypto/intel/qat/qat_c62x/qat_c62x.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/crypto/intel/qat/qat_4xxx/qat_4xxx.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/crypto/intel/qat/qat_420xx/qat_420xx.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/crypto/intel/qat/qat_dh895xccvf/qat_dh895xccvf.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/crypto/intel/qat/qat_c3xxxvf/qat_c3xxxvf.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/crypto/intel/qat/qat_c62xvf/qat_c62xvf.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/crypto/intel/iaa/iaa_crypto.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/crypto/intel/qat/qat_dh895xccvf/qat_dh895xccvf.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/crypto/intel/qat/qat_c3xxxvf/qat_c3xxxvf.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/crypto/intel/qat/qat_c62xvf/qat_c62xvf.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/crypto/atmel-i2c.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/crypto/atmel-ecc.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/crypto/intel/iaa/iaa_crypto.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/crypto/atmel-sha204a.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/crypto/cavium/nitrox/n5pf.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/crypto/atmel-i2c.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/crypto/atmel-ecc.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/crypto/atmel-sha204a.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/crypto/padlock-aes.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/crypto/cavium/nitrox/n5pf.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/crypto/padlock-sha.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/crypto/virtio/virtio_crypto.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/crypto/amlogic/amlogic-gxl-crypto.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/crypto/padlock-aes.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/crypto/padlock-sha.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/crypto/virtio/virtio_crypto.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/crypto/amlogic/amlogic-gxl-crypto.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/uhid.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-generic.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-a4tech.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-accutouch.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/uhid.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-generic.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-a4tech.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-accutouch.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-alps.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-apple.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-asus.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-belkin.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-cherry.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-alps.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-apple.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-asus.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-belkin.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-cherry.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-chicony.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-corsair.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-corsair-void.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-cougar.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-chicony.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-corsair.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-corsair-void.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-cougar.ko
dpkg-deb: building package 'linux-libc-dev' in '../linux-libc-dev_6.15.0-g2829e9090ebe-2_amd64.deb'.
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-cp2112.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-cypress.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-elan.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-elecom.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-elo.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-cp2112.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-cypress.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-elan.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-elecom.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-elo.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-ft260.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-glorious.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-vivaldi-common.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-google-hammer.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-ft260.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-glorious.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-vivaldi-common.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-google-hammer.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-vivaldi.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-holtek-kbd.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-holtek-mouse.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-holtekff.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-ite.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-vivaldi.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-holtek-kbd.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-holtek-mouse.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-holtekff.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-ite.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-jabra.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-kensington.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-keytouch.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-lenovo.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-jabra.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-kensington.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-keytouch.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-logitech.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-lenovo.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-lg-g15.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-logitech-dj.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-logitech-hidpp.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-logitech.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-lg-g15.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-magicmouse.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-logitech-dj.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-logitech-hidpp.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-mcp2200.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-mcp2221.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-microsoft.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-magicmouse.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-monterey.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-mcp2200.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-mcp2221.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-microsoft.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-multitouch.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-monterey.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-ntrig.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-penmount.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-multitouch.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-plantronics.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-ntrig.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-primax.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-penmount.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-razer.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-redragon.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-plantronics.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-roccat.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-primax.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-razer.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-redragon.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-roccat-common.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-roccat.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-roccat-arvo.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-roccat-isku.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-roccat-common.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-roccat-kone.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-roccat-arvo.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-roccat-koneplus.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-roccat-isku.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-roccat-konepure.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-roccat-kovaplus.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-roccat-kone.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-roccat-lua.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-roccat-koneplus.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-roccat-pyra.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-roccat-konepure.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-roccat-kovaplus.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-roccat-ryos.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-roccat-lua.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-roccat-savu.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-roccat-pyra.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-rmi.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-roccat-ryos.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-saitek.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-roccat-savu.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-samsung.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-rmi.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-semitek.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-saitek.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-sigmamicro.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-samsung.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-steam.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-semitek.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-topre.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-sigmamicro.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-xiaomi.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-steam.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-topre.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-sensor-hub.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-sensor-custom.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-xiaomi.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/usbhid/usbhid.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/usbhid/usbkbd.ko
  HOSTLD  debian/linux-headers-6.15.0-lgci-xe-g2829e9090ebe/usr/src/linux-headers-6.15.0-lgci-xe-g2829e9090ebe/scripts/mod/modpost
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-sensor-hub.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/hid-sensor-custom.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/usbhid/usbmouse.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/i2c-hid/i2c-hid.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/usbhid/usbhid.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/usbhid/usbkbd.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/i2c-hid/i2c-hid-acpi.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/i2c-hid/i2c-hid-of.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/usbhid/usbmouse.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/i2c-hid/i2c-hid.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/intel-ish-hid/intel-ishtp.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/intel-ish-hid/intel-ish-ipc.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/i2c-hid/i2c-hid-acpi.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/i2c-hid/i2c-hid-of.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/intel-ish-hid/intel-ishtp-hid.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/intel-ish-hid/intel-ishtp-loader.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/intel-ish-hid/intel-ishtp.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/intel-ish-hid/intel-ish-ipc.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/amd-sfh-hid/amd_sfh.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/surface-hid/surface_hid_core.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/intel-ish-hid/intel-ishtp-hid.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/intel-ish-hid/intel-ishtp-loader.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/surface-hid/surface_kbd.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/staging/vme_user/vme_user.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/amd-sfh-hid/amd_sfh.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/surface-hid/surface_hid_core.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/staging/vme_user/vme_tsi148.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/hid/surface-hid/surface_kbd.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/staging/vme_user/vme_user.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/staging/vme_user/vme_fake.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/staging/fbtft/fbtft.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/staging/vme_user/vme_tsi148.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/staging/fbtft/fb_agm1264k-fl.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/staging/vme_user/vme_fake.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/staging/fbtft/fb_bd663474.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/staging/fbtft/fbtft.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/staging/fbtft/fb_hx8340bn.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/staging/fbtft/fb_agm1264k-fl.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/staging/fbtft/fb_hx8347d.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/staging/fbtft/fb_bd663474.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/staging/fbtft/fb_hx8353d.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/staging/fbtft/fb_hx8340bn.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/staging/fbtft/fb_hx8347d.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/staging/fbtft/fb_hx8357d.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/staging/fbtft/fb_hx8353d.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/staging/fbtft/fb_ili9163.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/staging/fbtft/fb_ili9320.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/staging/fbtft/fb_ili9325.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/staging/fbtft/fb_hx8357d.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/staging/fbtft/fb_ili9340.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/staging/fbtft/fb_ili9163.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/staging/fbtft/fb_ili9320.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/staging/fbtft/fb_ili9325.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/staging/fbtft/fb_ili9341.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/staging/fbtft/fb_ili9481.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/staging/fbtft/fb_ili9486.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/staging/fbtft/fb_ili9340.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/staging/fbtft/fb_pcd8544.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/staging/fbtft/fb_ili9341.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/staging/fbtft/fb_ili9481.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/staging/fbtft/fb_ili9486.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/staging/fbtft/fb_ra8875.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/staging/fbtft/fb_pcd8544.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/staging/fbtft/fb_s6d02a1.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/staging/fbtft/fb_s6d1121.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/staging/fbtft/fb_seps525.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/staging/fbtft/fb_ra8875.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/staging/fbtft/fb_s6d02a1.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/staging/fbtft/fb_sh1106.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/staging/fbtft/fb_s6d1121.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/staging/fbtft/fb_seps525.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/staging/fbtft/fb_ssd1289.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/staging/fbtft/fb_ssd1305.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/staging/fbtft/fb_ssd1306.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/staging/fbtft/fb_sh1106.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/staging/fbtft/fb_ssd1289.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/staging/fbtft/fb_ssd1325.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/staging/fbtft/fb_ssd1305.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/staging/fbtft/fb_ssd1306.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/staging/fbtft/fb_ssd1331.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/staging/fbtft/fb_ssd1351.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/staging/fbtft/fb_ssd1325.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/staging/fbtft/fb_st7735r.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/staging/fbtft/fb_st7789v.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/staging/fbtft/fb_ssd1331.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/staging/fbtft/fb_ssd1351.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/staging/fbtft/fb_tinylcd.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/staging/fbtft/fb_st7735r.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/staging/fbtft/fb_st7789v.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/staging/fbtft/fb_tls8204.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/staging/fbtft/fb_uc1611.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/staging/fbtft/fb_uc1701.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/staging/fbtft/fb_tinylcd.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/staging/fbtft/fb_tls8204.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/staging/fbtft/fb_uc1611.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/staging/fbtft/fb_uc1701.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/staging/fbtft/fb_upd161704.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/staging/most/net/most_net.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/staging/most/i2c/most_i2c.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/amd/pmc/amd-pmc.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/staging/fbtft/fb_upd161704.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/staging/most/net/most_net.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/staging/most/i2c/most_i2c.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/amd/pmf/amd-pmf.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/dell/alienware-wmi.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/amd/pmc/amd-pmc.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/dell/dcdbas.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/dell/dell-laptop.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/dell/dell_rbu.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/amd/pmf/amd-pmf.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/dell/alienware-wmi.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/dell/dcdbas.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/dell/dell-laptop.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/dell/dell-pc.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/dell/dell_rbu.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/dell/dell-smbios.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/dell/dell-smo8800.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/dell/dell-pc.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/dell/dell-lis3lv02d.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/dell/dell-smbios.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/dell/dell-smo8800.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/dell/dell-wmi.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/dell/dell-wmi-aio.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/dell/dell-wmi-descriptor.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/dell/dell-lis3lv02d.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/dell/dell-wmi-ddv.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/dell/dell-wmi.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/dell/dell-wmi-aio.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/dell/dell-wmi-descriptor.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/dell/dell-wmi-led.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/dell/dell-wmi-sysman/dell-wmi-sysman.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/dell/dell-wmi-ddv.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/hp/hp_accel.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/hp/hp-wmi.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/dell/dell-wmi-led.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/dell/dell-wmi-sysman/dell-wmi-sysman.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/hp/hp_accel.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/hp/hp-bioscfg/hp-bioscfg.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/hp/hp-wmi.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/intel/atomisp2/intel_atomisp2_led.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/intel/atomisp2/intel_atomisp2_pm.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/intel/wmi/intel-wmi-sbl-fw-update.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/intel/wmi/intel-wmi-thunderbolt.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/hp/hp-bioscfg/hp-bioscfg.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/intel/atomisp2/intel_atomisp2_led.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/intel/atomisp2/intel_atomisp2_pm.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/intel/wmi/intel-wmi-sbl-fw-update.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/intel/wmi/intel-wmi-thunderbolt.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/intel/ifs/intel_ifs.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/intel/int1092/intel_sar.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/intel/int3472/intel_skl_int3472_discrete.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/intel/int3472/intel_skl_int3472_tps68470.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/intel/ifs/intel_ifs.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/intel/int1092/intel_sar.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/intel/int3472/intel_skl_int3472_discrete.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/intel/int3472/intel_skl_int3472_tps68470.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/intel/int3472/intel_skl_int3472_common.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/intel/pmc/intel_pmc_core.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/intel/pmc/intel_pmc_core_pltdrv.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/intel/pmt/pmt_class.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/intel/pmt/pmt_telemetry.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/intel/int3472/intel_skl_int3472_common.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/intel/pmc/intel_pmc_core.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/intel/pmc/intel_pmc_core_pltdrv.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/intel/pmt/pmt_class.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/intel/pmt/pmt_telemetry.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/intel/pmt/pmt_crashlog.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/intel/speed_select_if/isst_if_common.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/intel/speed_select_if/isst_if_mmio.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/intel/speed_select_if/isst_if_mbox_pci.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/intel/speed_select_if/isst_if_mbox_msr.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/intel/pmt/pmt_crashlog.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/intel/speed_select_if/isst_if_common.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/intel/speed_select_if/isst_if_mmio.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/intel/speed_select_if/isst_if_mbox_pci.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/intel/speed_select_if/isst_if_mbox_msr.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/intel/speed_select_if/isst_tpmi_core.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/intel/speed_select_if/isst_tpmi.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/intel/telemetry/intel_telemetry_core.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/intel/telemetry/intel_telemetry_pltdrv.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/intel/speed_select_if/isst_tpmi_core.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/intel/speed_select_if/isst_tpmi.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/intel/telemetry/intel_telemetry_core.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/intel/telemetry/intel_telemetry_pltdrv.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/intel/telemetry/intel_telemetry_debugfs.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/intel/uncore-frequency/intel-uncore-frequency.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/intel/uncore-frequency/intel-uncore-frequency-common.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/intel/uncore-frequency/intel-uncore-frequency-tpmi.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/intel/telemetry/intel_telemetry_debugfs.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/intel/uncore-frequency/intel-uncore-frequency.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/intel/uncore-frequency/intel-uncore-frequency-common.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/intel/uncore-frequency/intel-uncore-frequency-tpmi.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/intel/intel-hid.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/intel/intel-vbtn.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/intel/intel-int0002_vgpio.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/intel/intel-ishtp_eclite.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/intel/intel-sdsi.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/intel/intel-hid.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/intel/intel-vbtn.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/intel/intel-int0002_vgpio.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/intel/intel-ishtp_eclite.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/intel/intel-sdsi.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/intel/intel-vsec.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/intel/intel-bytcrc_pwrsrc.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/intel/intel-bxtwc_tmu.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/intel/intel-chtdc_ti_pwrbtn.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/intel/intel-vsec.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/intel/intel-bytcrc_pwrsrc.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/intel/intel-bxtwc_tmu.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/intel/intel-chtdc_ti_pwrbtn.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/intel/intel-chtwc_int33fe.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/intel/intel-crystal_cove_charger.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/intel/intel-mrfld_pwrbtn.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/intel/intel-punit_ipc.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/intel/intel-chtwc_int33fe.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/intel/intel-crystal_cove_charger.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/intel/intel-mrfld_pwrbtn.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/intel/intel-plr_tpmi.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/intel/intel-punit_ipc.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/intel/intel-tpmi_power_domains.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/intel/intel-vsec_tpmi.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/intel/intel-smartconnect.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/wmi.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/intel/intel-plr_tpmi.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/intel/intel-tpmi_power_domains.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/intel/intel-vsec_tpmi.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/intel/intel-smartconnect.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/wmi-bmof.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/wmi.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/huawei-wmi.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/mxm-wmi.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/nvidia-wmi-ec-backlight.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/wmi-bmof.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/huawei-wmi.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/mxm-wmi.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/nvidia-wmi-ec-backlight.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/xiaomi-wmi.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/gigabyte-wmi.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/acerhdf.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/acer-wireless.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/xiaomi-wmi.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/gigabyte-wmi.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/acerhdf.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/acer-wireless.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/acer-wmi.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/adv_swbutton.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/apple-gmux.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/asus-laptop.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/asus-wireless.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/acer-wmi.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/adv_swbutton.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/apple-gmux.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/asus-wmi.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/asus-laptop.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/asus-wireless.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/asus-nb-wmi.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/asus-tf103c-dock.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/eeepc-laptop.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/asus-wmi.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/asus-nb-wmi.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/asus-tf103c-dock.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/eeepc-laptop.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/eeepc-wmi.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/meraki-mx100.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/fujitsu-laptop.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/fujitsu-tablet.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/gpd-pocket-fan.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/eeepc-wmi.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/meraki-mx100.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/fujitsu-laptop.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/fujitsu-tablet.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/gpd-pocket-fan.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/uv_sysfs.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/ibm_rtl.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/hdaps.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/thinkpad_acpi.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/uv_sysfs.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/ibm_rtl.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/hdaps.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/think-lmi.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/thinkpad_acpi.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/lenovo-yogabook.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/lenovo-yoga-tab2-pro-1380-fastcharger.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/lenovo-wmi-camera.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/quickstart.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/think-lmi.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/lenovo-yogabook.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/lenovo-yoga-tab2-pro-1380-fastcharger.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/lenovo-wmi-camera.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/meegopad_anx7428.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/quickstart.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/msi-ec.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/msi-wmi.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/meegopad_anx7428.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/msi-ec.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/msi-wmi.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/msi-wmi-platform.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/pcengines-apuv2.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/barco-p50-gpio.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/samsung-laptop.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/samsung-q10.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/msi-wmi-platform.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/pcengines-apuv2.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/barco-p50-gpio.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/samsung-laptop.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/toshiba_bluetooth.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/samsung-q10.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/toshiba_haps.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/inspur_platform_profile.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/classmate-laptop.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/toshiba_bluetooth.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/toshiba_haps.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/inspur_platform_profile.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/lg-laptop.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/classmate-laptop.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/panasonic-laptop.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/system76_acpi.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/lg-laptop.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/panasonic-laptop.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/topstar-laptop.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/system76_acpi.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/firmware_attributes_class.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/serial-multi-instantiate.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/wireless-hotkey.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/x86-android-tablets/vexia_atla10_ec.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/topstar-laptop.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/firmware_attributes_class.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/serial-multi-instantiate.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/wireless-hotkey.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/x86-android-tablets/x86-android-tablets.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/x86-android-tablets/vexia_atla10_ec.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/intel_ips.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/intel_scu_pltdrv.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/intel_scu_ipcutil.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/x86-android-tablets/x86-android-tablets.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/intel_ips.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/intel_scu_pltdrv.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/siemens/simatic-ipc.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/intel_scu_ipcutil.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/siemens/simatic-ipc-batt.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/siemens/simatic-ipc-batt-apollolake.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/siemens/simatic-ipc-batt-elkhartlake.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/siemens/simatic-ipc-batt-f7188x.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/siemens/simatic-ipc.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/siemens/simatic-ipc-batt.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/siemens/simatic-ipc-batt-apollolake.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/siemens/simatic-ipc-batt-elkhartlake.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/siemens/simatic-ipc-batt-f7188x.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/silicom-platform.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/winmate-fm07-keys.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/sel3350-platform.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/mellanox/mlx-platform.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/silicom-platform.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/winmate-fm07-keys.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/x86/sel3350-platform.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/mellanox/mlx-platform.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/mellanox/mlxreg-hotplug.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/mellanox/mlxreg-io.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/mellanox/mlxreg-lc.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/mellanox/nvsw-sn2201.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/chrome/chromeos_acpi.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/mellanox/mlxreg-hotplug.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/mellanox/mlxreg-io.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/mellanox/mlxreg-lc.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/mellanox/nvsw-sn2201.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/chrome/chromeos_acpi.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/chrome/chromeos_laptop.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/chrome/chromeos_privacy_screen.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/chrome/chromeos_pstore.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/chrome/chromeos_tbmc.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/chrome/chromeos_laptop.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/chrome/chromeos_privacy_screen.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/chrome/chromeos_pstore.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/chrome/chromeos_tbmc.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/chrome/cros_ec.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/chrome/cros_ec_i2c.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/chrome/cros_ec_ishtp.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/chrome/cros_typec_switch.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/chrome/cros_ec.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/chrome/cros_ec_i2c.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/chrome/cros_ec_ishtp.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/chrome/cros_typec_switch.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/chrome/cros_ec_spi.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/chrome/cros_ec_uart.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/chrome/cros-ec-typec.ko
  INSTALL debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/chrome/cros_ec_lpcs.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/chrome/cros_ec_spi.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/chrome/cros_ec_uart.ko
  STRIP   debian/linux-image-6.15.0-lgci-xe-g2829e9090ebe/lib/modules/6.15.0-lgci-xe-g2829e9090ebe/kernel/drivers/platform/



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

* ✗ CI.Hooks: failure for CCS save restore for IGPU (rev6)
  2025-06-06 12:45 [PATCH v6 0/3] CCS save restore for IGPU Satyanarayana K V P
                   ` (6 preceding siblings ...)
  2025-06-06 14:29 ` ✓ CI.Build: " Patchwork
@ 2025-06-06 14:31 ` Patchwork
  2025-06-06 14:33 ` ✓ CI.checksparse: success " Patchwork
                   ` (2 subsequent siblings)
  10 siblings, 0 replies; 23+ messages in thread
From: Patchwork @ 2025-06-06 14:31 UTC (permalink / raw)
  To: Satyanarayana K V P; +Cc: intel-xe

== Series Details ==

Series: CCS save restore for IGPU (rev6)
URL   : https://patchwork.freedesktop.org/series/149108/
State : failure

== Summary ==

run-parts: executing /workspace/ci/hooks/00-showenv
+ export
+ grep -Ei '(^|\W)CI_'
declare -x CI_KERNEL_BUILD_DIR="/workspace/kernel/build64-debug"
declare -x CI_KERNEL_SRC_DIR="/workspace/kernel"
declare -x CI_TOOLS_SRC_DIR="/workspace/ci"
declare -x CI_WORKSPACE_DIR="/workspace"
run-parts: executing /workspace/ci/hooks/10-build-W1
+ SRC_DIR=/workspace/kernel
+ RESTORE_DISPLAY_CONFIG=0
+ '[' -n /workspace/kernel/build64-debug ']'
+ BUILD_DIR=/workspace/kernel/build64-debug
+ cd /workspace/kernel
++ nproc
+ make -j48 O=/workspace/kernel/build64-debug modules_prepare
make[1]: Entering directory '/workspace/kernel/build64-debug'
  GEN     Makefile
  DESCEND objtool
  INSTALL libsubcmd_headers
  CC      /workspace/kernel/build64-debug/tools/objtool/libsubcmd/exec-cmd.o
  CC      /workspace/kernel/build64-debug/tools/objtool/libsubcmd/help.o
  CC      /workspace/kernel/build64-debug/tools/objtool/libsubcmd/pager.o
  CC      /workspace/kernel/build64-debug/tools/objtool/libsubcmd/parse-options.o
  CC      /workspace/kernel/build64-debug/tools/objtool/libsubcmd/run-command.o
  CC      /workspace/kernel/build64-debug/tools/objtool/libsubcmd/subcmd-config.o
  CC      /workspace/kernel/build64-debug/tools/objtool/libsubcmd/sigchain.o
  LD      /workspace/kernel/build64-debug/tools/objtool/libsubcmd/libsubcmd-in.o
  AR      /workspace/kernel/build64-debug/tools/objtool/libsubcmd/libsubcmd.a
  CC      /workspace/kernel/build64-debug/tools/objtool/weak.o
  CC      /workspace/kernel/build64-debug/tools/objtool/check.o
  CC      /workspace/kernel/build64-debug/tools/objtool/special.o
  CC      /workspace/kernel/build64-debug/tools/objtool/builtin-check.o
  CC      /workspace/kernel/build64-debug/tools/objtool/arch/x86/special.o
  CC      /workspace/kernel/build64-debug/tools/objtool/elf.o
  CC      /workspace/kernel/build64-debug/tools/objtool/arch/x86/decode.o
  CC      /workspace/kernel/build64-debug/tools/objtool/objtool.o
  CC      /workspace/kernel/build64-debug/tools/objtool/orc_gen.o
  CC      /workspace/kernel/build64-debug/tools/objtool/arch/x86/orc.o
  CC      /workspace/kernel/build64-debug/tools/objtool/orc_dump.o
  CC      /workspace/kernel/build64-debug/tools/objtool/libstring.o
  CC      /workspace/kernel/build64-debug/tools/objtool/libctype.o
  CC      /workspace/kernel/build64-debug/tools/objtool/str_error_r.o
  CC      /workspace/kernel/build64-debug/tools/objtool/librbtree.o
  LD      /workspace/kernel/build64-debug/tools/objtool/arch/x86/objtool-in.o
  LD      /workspace/kernel/build64-debug/tools/objtool/objtool-in.o
  LINK    /workspace/kernel/build64-debug/tools/objtool/objtool
  CALL    ../scripts/checksyscalls.sh
make[1]: Leaving directory '/workspace/kernel/build64-debug'
++ nproc
+ make -j48 O=/workspace/kernel/build64-debug W=1 drivers/gpu/drm/xe
make[1]: Entering directory '/workspace/kernel/build64-debug'
make[2]: Nothing to be done for 'drivers/gpu/drm/xe'.
make[1]: Leaving directory '/workspace/kernel/build64-debug'
run-parts: executing /workspace/ci/hooks/11-build-32b
+++ realpath /workspace/ci/hooks/11-build-32b
++ dirname /workspace/ci/hooks/11-build-32b
+ THIS_SCRIPT_DIR=/workspace/ci/hooks
+ SRC_DIR=/workspace/kernel
+ TOOLS_SRC_DIR=/workspace/ci
+ '[' -n /workspace/kernel/build64-debug ']'
+ BUILD_DIR=/workspace/kernel/build64-debug
+ BUILD_DIR=/workspace/kernel/build64-debug/build32
+ cd /workspace/kernel
+ mkdir -p /workspace/kernel/build64-debug/build32
++ nproc
+ make -j48 ARCH=i386 O=/workspace/kernel/build64-debug/build32 defconfig
make[1]: Entering directory '/workspace/kernel/build64-debug/build32'
  GEN     Makefile
  HOSTCC  scripts/basic/fixdep
  HOSTCC  scripts/kconfig/conf.o
  HOSTCC  scripts/kconfig/confdata.o
  HOSTCC  scripts/kconfig/expr.o
  YACC    scripts/kconfig/parser.tab.[ch]
  LEX     scripts/kconfig/lexer.lex.c
  HOSTCC  scripts/kconfig/menu.o
  HOSTCC  scripts/kconfig/preprocess.o
  HOSTCC  scripts/kconfig/symbol.o
  HOSTCC  scripts/kconfig/util.o
  HOSTCC  scripts/kconfig/parser.tab.o
  HOSTCC  scripts/kconfig/lexer.lex.o
  HOSTLD  scripts/kconfig/conf
*** Default configuration is based on 'i386_defconfig'
#
# configuration written to .config
#
make[1]: Leaving directory '/workspace/kernel/build64-debug/build32'
+ cd /workspace/kernel/build64-debug/build32
+ /workspace/kernel/scripts/kconfig/merge_config.sh .config /workspace/ci/kernel/fragments/10-xe.fragment
Using .config as base
Merging /workspace/ci/kernel/fragments/10-xe.fragment
Value of CONFIG_DRM_XE is redefined by fragment /workspace/ci/kernel/fragments/10-xe.fragment:
Previous value: # CONFIG_DRM_XE is not set
New value: CONFIG_DRM_XE=m

  GEN     Makefile
#
# configuration written to .config
#
Value requested for CONFIG_HAVE_UID16 not in final .config
Requested value:  CONFIG_HAVE_UID16=y
Actual value:     

Value requested for CONFIG_UID16 not in final .config
Requested value:  CONFIG_UID16=y
Actual value:     

Value requested for CONFIG_X86_32 not in final .config
Requested value:  CONFIG_X86_32=y
Actual value:     

Value requested for CONFIG_OUTPUT_FORMAT not in final .config
Requested value:  CONFIG_OUTPUT_FORMAT="elf32-i386"
Actual value:     CONFIG_OUTPUT_FORMAT="elf64-x86-64"

Value requested for CONFIG_ARCH_MMAP_RND_BITS_MIN not in final .config
Requested value:  CONFIG_ARCH_MMAP_RND_BITS_MIN=8
Actual value:     CONFIG_ARCH_MMAP_RND_BITS_MIN=28

Value requested for CONFIG_ARCH_MMAP_RND_BITS_MAX not in final .config
Requested value:  CONFIG_ARCH_MMAP_RND_BITS_MAX=16
Actual value:     CONFIG_ARCH_MMAP_RND_BITS_MAX=32

Value requested for CONFIG_PGTABLE_LEVELS not in final .config
Requested value:  CONFIG_PGTABLE_LEVELS=2
Actual value:     CONFIG_PGTABLE_LEVELS=5

Value requested for CONFIG_X86_INTEL_QUARK not in final .config
Requested value:  # CONFIG_X86_INTEL_QUARK is not set
Actual value:     

Value requested for CONFIG_X86_RDC321X not in final .config
Requested value:  # CONFIG_X86_RDC321X is not set
Actual value:     

Value requested for CONFIG_X86_32_IRIS not in final .config
Requested value:  # CONFIG_X86_32_IRIS is not set
Actual value:     

Value requested for CONFIG_M486SX not in final .config
Requested value:  # CONFIG_M486SX is not set
Actual value:     

Value requested for CONFIG_M486 not in final .config
Requested value:  # CONFIG_M486 is not set
Actual value:     

Value requested for CONFIG_M586 not in final .config
Requested value:  # CONFIG_M586 is not set
Actual value:     

Value requested for CONFIG_M586TSC not in final .config
Requested value:  # CONFIG_M586TSC is not set
Actual value:     

Value requested for CONFIG_M586MMX not in final .config
Requested value:  # CONFIG_M586MMX is not set
Actual value:     

Value requested for CONFIG_M686 not in final .config
Requested value:  CONFIG_M686=y
Actual value:     

Value requested for CONFIG_MPENTIUMII not in final .config
Requested value:  # CONFIG_MPENTIUMII is not set
Actual value:     

Value requested for CONFIG_MPENTIUMIII not in final .config
Requested value:  # CONFIG_MPENTIUMIII is not set
Actual value:     

Value requested for CONFIG_MPENTIUMM not in final .config
Requested value:  # CONFIG_MPENTIUMM is not set
Actual value:     

Value requested for CONFIG_MPENTIUM4 not in final .config
Requested value:  # CONFIG_MPENTIUM4 is not set
Actual value:     

Value requested for CONFIG_MK6 not in final .config
Requested value:  # CONFIG_MK6 is not set
Actual value:     

Value requested for CONFIG_MK7 not in final .config
Requested value:  # CONFIG_MK7 is not set
Actual value:     

Value requested for CONFIG_MCRUSOE not in final .config
Requested value:  # CONFIG_MCRUSOE is not set
Actual value:     

Value requested for CONFIG_MEFFICEON not in final .config
Requested value:  # CONFIG_MEFFICEON is not set
Actual value:     

Value requested for CONFIG_MWINCHIPC6 not in final .config
Requested value:  # CONFIG_MWINCHIPC6 is not set
Actual value:     

Value requested for CONFIG_MWINCHIP3D not in final .config
Requested value:  # CONFIG_MWINCHIP3D is not set
Actual value:     

Value requested for CONFIG_MELAN not in final .config
Requested value:  # CONFIG_MELAN is not set
Actual value:     

Value requested for CONFIG_MGEODEGX1 not in final .config
Requested value:  # CONFIG_MGEODEGX1 is not set
Actual value:     

Value requested for CONFIG_MGEODE_LX not in final .config
Requested value:  # CONFIG_MGEODE_LX is not set
Actual value:     

Value requested for CONFIG_MCYRIXIII not in final .config
Requested value:  # CONFIG_MCYRIXIII is not set
Actual value:     

Value requested for CONFIG_MVIAC3_2 not in final .config
Requested value:  # CONFIG_MVIAC3_2 is not set
Actual value:     

Value requested for CONFIG_MVIAC7 not in final .config
Requested value:  # CONFIG_MVIAC7 is not set
Actual value:     

Value requested for CONFIG_MATOM not in final .config
Requested value:  # CONFIG_MATOM is not set
Actual value:     

Value requested for CONFIG_X86_GENERIC not in final .config
Requested value:  # CONFIG_X86_GENERIC is not set
Actual value:     

Value requested for CONFIG_X86_INTERNODE_CACHE_SHIFT not in final .config
Requested value:  CONFIG_X86_INTERNODE_CACHE_SHIFT=5
Actual value:     CONFIG_X86_INTERNODE_CACHE_SHIFT=6

Value requested for CONFIG_X86_L1_CACHE_SHIFT not in final .config
Requested value:  CONFIG_X86_L1_CACHE_SHIFT=5
Actual value:     CONFIG_X86_L1_CACHE_SHIFT=6

Value requested for CONFIG_X86_USE_PPRO_CHECKSUM not in final .config
Requested value:  CONFIG_X86_USE_PPRO_CHECKSUM=y
Actual value:     

Value requested for CONFIG_X86_MINIMUM_CPU_FAMILY not in final .config
Requested value:  CONFIG_X86_MINIMUM_CPU_FAMILY=6
Actual value:     CONFIG_X86_MINIMUM_CPU_FAMILY=64

Value requested for CONFIG_CPU_SUP_TRANSMETA_32 not in final .config
Requested value:  CONFIG_CPU_SUP_TRANSMETA_32=y
Actual value:     

Value requested for CONFIG_CPU_SUP_VORTEX_32 not in final .config
Requested value:  CONFIG_CPU_SUP_VORTEX_32=y
Actual value:     

Value requested for CONFIG_HPET_TIMER not in final .config
Requested value:  # CONFIG_HPET_TIMER is not set
Actual value:     CONFIG_HPET_TIMER=y

Value requested for CONFIG_NR_CPUS_RANGE_END not in final .config
Requested value:  CONFIG_NR_CPUS_RANGE_END=8
Actual value:     CONFIG_NR_CPUS_RANGE_END=512

Value requested for CONFIG_NR_CPUS_DEFAULT not in final .config
Requested value:  CONFIG_NR_CPUS_DEFAULT=8
Actual value:     CONFIG_NR_CPUS_DEFAULT=64

Value requested for CONFIG_X86_ANCIENT_MCE not in final .config
Requested value:  # CONFIG_X86_ANCIENT_MCE is not set
Actual value:     

Value requested for CONFIG_X86_LEGACY_VM86 not in final .config
Requested value:  # CONFIG_X86_LEGACY_VM86 is not set
Actual value:     

Value requested for CONFIG_X86_ESPFIX32 not in final .config
Requested value:  CONFIG_X86_ESPFIX32=y
Actual value:     

Value requested for CONFIG_TOSHIBA not in final .config
Requested value:  # CONFIG_TOSHIBA is not set
Actual value:     

Value requested for CONFIG_X86_REBOOTFIXUPS not in final .config
Requested value:  # CONFIG_X86_REBOOTFIXUPS is not set
Actual value:     

Value requested for CONFIG_MICROCODE_INITRD32 not in final .config
Requested value:  CONFIG_MICROCODE_INITRD32=y
Actual value:     

Value requested for CONFIG_HIGHMEM4G not in final .config
Requested value:  # CONFIG_HIGHMEM4G is not set
Actual value:     

Value requested for CONFIG_VMSPLIT_3G not in final .config
Requested value:  CONFIG_VMSPLIT_3G=y
Actual value:     

Value requested for CONFIG_VMSPLIT_3G_OPT not in final .config
Requested value:  # CONFIG_VMSPLIT_3G_OPT is not set
Actual value:     

Value requested for CONFIG_VMSPLIT_2G not in final .config
Requested value:  # CONFIG_VMSPLIT_2G is not set
Actual value:     

Value requested for CONFIG_VMSPLIT_2G_OPT not in final .config
Requested value:  # CONFIG_VMSPLIT_2G_OPT is not set
Actual value:     

Value requested for CONFIG_VMSPLIT_1G not in final .config
Requested value:  # CONFIG_VMSPLIT_1G is not set
Actual value:     

Value requested for CONFIG_PAGE_OFFSET not in final .config
Requested value:  CONFIG_PAGE_OFFSET=0xC0000000
Actual value:     

Value requested for CONFIG_X86_PAE not in final .config
Requested value:  # CONFIG_X86_PAE is not set
Actual value:     

Value requested for CONFIG_ARCH_FLATMEM_ENABLE not in final .config
Requested value:  CONFIG_ARCH_FLATMEM_ENABLE=y
Actual value:     

Value requested for CONFIG_ARCH_SELECT_MEMORY_MODEL not in final .config
Requested value:  CONFIG_ARCH_SELECT_MEMORY_MODEL=y
Actual value:     

Value requested for CONFIG_ILLEGAL_POINTER_VALUE not in final .config
Requested value:  CONFIG_ILLEGAL_POINTER_VALUE=0
Actual value:     CONFIG_ILLEGAL_POINTER_VALUE=0xdead000000000000

Value requested for CONFIG_COMPAT_VDSO not in final .config
Requested value:  # CONFIG_COMPAT_VDSO is not set
Actual value:     

Value requested for CONFIG_FUNCTION_PADDING_CFI not in final .config
Requested value:  CONFIG_FUNCTION_PADDING_CFI=0
Actual value:     CONFIG_FUNCTION_PADDING_CFI=11

Value requested for CONFIG_FUNCTION_PADDING_BYTES not in final .config
Requested value:  CONFIG_FUNCTION_PADDING_BYTES=4
Actual value:     CONFIG_FUNCTION_PADDING_BYTES=16

Value requested for CONFIG_APM not in final .config
Requested value:  # CONFIG_APM is not set
Actual value:     

Value requested for CONFIG_X86_POWERNOW_K6 not in final .config
Requested value:  # CONFIG_X86_POWERNOW_K6 is not set
Actual value:     

Value requested for CONFIG_X86_POWERNOW_K7 not in final .config
Requested value:  # CONFIG_X86_POWERNOW_K7 is not set
Actual value:     

Value requested for CONFIG_X86_GX_SUSPMOD not in final .config
Requested value:  # CONFIG_X86_GX_SUSPMOD is not set
Actual value:     

Value requested for CONFIG_X86_SPEEDSTEP_ICH not in final .config
Requested value:  # CONFIG_X86_SPEEDSTEP_ICH is not set
Actual value:     

Value requested for CONFIG_X86_SPEEDSTEP_SMI not in final .config
Requested value:  # CONFIG_X86_SPEEDSTEP_SMI is not set
Actual value:     

Value requested for CONFIG_X86_CPUFREQ_NFORCE2 not in final .config
Requested value:  # CONFIG_X86_CPUFREQ_NFORCE2 is not set
Actual value:     

Value requested for CONFIG_X86_LONGRUN not in final .config
Requested value:  # CONFIG_X86_LONGRUN is not set
Actual value:     

Value requested for CONFIG_X86_LONGHAUL not in final .config
Requested value:  # CONFIG_X86_LONGHAUL is not set
Actual value:     

Value requested for CONFIG_X86_E_POWERSAVER not in final .config
Requested value:  # CONFIG_X86_E_POWERSAVER is not set
Actual value:     

Value requested for CONFIG_PCI_GOBIOS not in final .config
Requested value:  # CONFIG_PCI_GOBIOS is not set
Actual value:     

Value requested for CONFIG_PCI_GOMMCONFIG not in final .config
Requested value:  # CONFIG_PCI_GOMMCONFIG is not set
Actual value:     

Value requested for CONFIG_PCI_GODIRECT not in final .config
Requested value:  # CONFIG_PCI_GODIRECT is not set
Actual value:     

Value requested for CONFIG_PCI_GOANY not in final .config
Requested value:  CONFIG_PCI_GOANY=y
Actual value:     

Value requested for CONFIG_PCI_BIOS not in final .config
Requested value:  CONFIG_PCI_BIOS=y
Actual value:     

Value requested for CONFIG_ISA not in final .config
Requested value:  # CONFIG_ISA is not set
Actual value:     

Value requested for CONFIG_SCx200 not in final .config
Requested value:  # CONFIG_SCx200 is not set
Actual value:     

Value requested for CONFIG_OLPC not in final .config
Requested value:  # CONFIG_OLPC is not set
Actual value:     

Value requested for CONFIG_ALIX not in final .config
Requested value:  # CONFIG_ALIX is not set
Actual value:     

Value requested for CONFIG_NET5501 not in final .config
Requested value:  # CONFIG_NET5501 is not set
Actual value:     

Value requested for CONFIG_GEOS not in final .config
Requested value:  # CONFIG_GEOS is not set
Actual value:     

Value requested for CONFIG_COMPAT_32 not in final .config
Requested value:  CONFIG_COMPAT_32=y
Actual value:     

Value requested for CONFIG_HAVE_ATOMIC_IOMAP not in final .config
Requested value:  CONFIG_HAVE_ATOMIC_IOMAP=y
Actual value:     

Value requested for CONFIG_X86_DISABLED_FEATURE_PCID not in final .config
Requested value:  CONFIG_X86_DISABLED_FEATURE_PCID=y
Actual value:     

Value requested for CONFIG_X86_DISABLED_FEATURE_PKU not in final .config
Requested value:  CONFIG_X86_DISABLED_FEATURE_PKU=y
Actual value:     

Value requested for CONFIG_X86_DISABLED_FEATURE_OSPKE not in final .config
Requested value:  CONFIG_X86_DISABLED_FEATURE_OSPKE=y
Actual value:     

Value requested for CONFIG_X86_DISABLED_FEATURE_LA57 not in final .config
Requested value:  CONFIG_X86_DISABLED_FEATURE_LA57=y
Actual value:     

Value requested for CONFIG_X86_DISABLED_FEATURE_PTI not in final .config
Requested value:  CONFIG_X86_DISABLED_FEATURE_PTI=y
Actual value:     

Value requested for CONFIG_X86_DISABLED_FEATURE_IBT not in final .config
Requested value:  CONFIG_X86_DISABLED_FEATURE_IBT=y
Actual value:     

Value requested for CONFIG_X86_DISABLED_FEATURE_INVLPGB not in final .config
Requested value:  CONFIG_X86_DISABLED_FEATURE_INVLPGB=y
Actual value:     

Value requested for CONFIG_ARCH_32BIT_OFF_T not in final .config
Requested value:  CONFIG_ARCH_32BIT_OFF_T=y
Actual value:     

Value requested for CONFIG_ARCH_WANT_IPC_PARSE_VERSION not in final .config
Requested value:  CONFIG_ARCH_WANT_IPC_PARSE_VERSION=y
Actual value:     

Value requested for CONFIG_MODULES_USE_ELF_REL not in final .config
Requested value:  CONFIG_MODULES_USE_ELF_REL=y
Actual value:     

Value requested for CONFIG_ARCH_MMAP_RND_BITS not in final .config
Requested value:  CONFIG_ARCH_MMAP_RND_BITS=8
Actual value:     CONFIG_ARCH_MMAP_RND_BITS=28

Value requested for CONFIG_CLONE_BACKWARDS not in final .config
Requested value:  CONFIG_CLONE_BACKWARDS=y
Actual value:     

Value requested for CONFIG_OLD_SIGSUSPEND3 not in final .config
Requested value:  CONFIG_OLD_SIGSUSPEND3=y
Actual value:     

Value requested for CONFIG_OLD_SIGACTION not in final .config
Requested value:  CONFIG_OLD_SIGACTION=y
Actual value:     

Value requested for CONFIG_ARCH_SPLIT_ARG64 not in final .config
Requested value:  CONFIG_ARCH_SPLIT_ARG64=y
Actual value:     

Value requested for CONFIG_FUNCTION_ALIGNMENT not in final .config
Requested value:  CONFIG_FUNCTION_ALIGNMENT=4
Actual value:     CONFIG_FUNCTION_ALIGNMENT=16

Value requested for CONFIG_SELECT_MEMORY_MODEL not in final .config
Requested value:  CONFIG_SELECT_MEMORY_MODEL=y
Actual value:     

Value requested for CONFIG_FLATMEM_MANUAL not in final .config
Requested value:  CONFIG_FLATMEM_MANUAL=y
Actual value:     

Value requested for CONFIG_SPARSEMEM_MANUAL not in final .config
Requested value:  # CONFIG_SPARSEMEM_MANUAL is not set
Actual value:     

Value requested for CONFIG_FLATMEM not in final .config
Requested value:  CONFIG_FLATMEM=y
Actual value:     

Value requested for CONFIG_SPARSEMEM_STATIC not in final .config
Requested value:  CONFIG_SPARSEMEM_STATIC=y
Actual value:     

Value requested for CONFIG_KMAP_LOCAL not in final .config
Requested value:  CONFIG_KMAP_LOCAL=y
Actual value:     

Value requested for CONFIG_HAVE_EISA not in final .config
Requested value:  CONFIG_HAVE_EISA=y
Actual value:     

Value requested for CONFIG_EISA not in final .config
Requested value:  # CONFIG_EISA is not set
Actual value:     

Value requested for CONFIG_HOTPLUG_PCI_COMPAQ not in final .config
Requested value:  # CONFIG_HOTPLUG_PCI_COMPAQ is not set
Actual value:     

Value requested for CONFIG_HOTPLUG_PCI_IBM not in final .config
Requested value:  # CONFIG_HOTPLUG_PCI_IBM is not set
Actual value:     

Value requested for CONFIG_EFI_CAPSULE_QUIRK_QUARK_CSH not in final .config
Requested value:  CONFIG_EFI_CAPSULE_QUIRK_QUARK_CSH=y
Actual value:     

Value requested for CONFIG_PCH_PHUB not in final .config
Requested value:  # CONFIG_PCH_PHUB is not set
Actual value:     

Value requested for CONFIG_SCSI_NSP32 not in final .config
Requested value:  # CONFIG_SCSI_NSP32 is not set
Actual value:     

Value requested for CONFIG_PATA_CS5520 not in final .config
Requested value:  # CONFIG_PATA_CS5520 is not set
Actual value:     

Value requested for CONFIG_PATA_CS5530 not in final .config
Requested value:  # CONFIG_PATA_CS5530 is not set
Actual value:     

Value requested for CONFIG_PATA_CS5535 not in final .config
Requested value:  # CONFIG_PATA_CS5535 is not set
Actual value:     

Value requested for CONFIG_PATA_CS5536 not in final .config
Requested value:  # CONFIG_PATA_CS5536 is not set
Actual value:     

Value requested for CONFIG_PATA_SC1200 not in final .config
Requested value:  # CONFIG_PATA_SC1200 is not set
Actual value:     

Value requested for CONFIG_PCH_GBE not in final .config
Requested value:  # CONFIG_PCH_GBE is not set
Actual value:     

Value requested for CONFIG_INPUT_WISTRON_BTNS not in final .config
Requested value:  # CONFIG_INPUT_WISTRON_BTNS is not set
Actual value:     

Value requested for CONFIG_SERIAL_TIMBERDALE not in final .config
Requested value:  # CONFIG_SERIAL_TIMBERDALE is not set
Actual value:     

Value requested for CONFIG_SERIAL_PCH_UART not in final .config
Requested value:  # CONFIG_SERIAL_PCH_UART is not set
Actual value:     

Value requested for CONFIG_HW_RANDOM_GEODE not in final .config
Requested value:  CONFIG_HW_RANDOM_GEODE=y
Actual value:     

Value requested for CONFIG_SONYPI not in final .config
Requested value:  # CONFIG_SONYPI is not set
Actual value:     

Value requested for CONFIG_PC8736x_GPIO not in final .config
Requested value:  # CONFIG_PC8736x_GPIO is not set
Actual value:     

Value requested for CONFIG_NSC_GPIO not in final .config
Requested value:  # CONFIG_NSC_GPIO is not set
Actual value:     

Value requested for CONFIG_I2C_EG20T not in final .config
Requested value:  # CONFIG_I2C_EG20T is not set
Actual value:     

Value requested for CONFIG_SCx200_ACB not in final .config
Requested value:  # CONFIG_SCx200_ACB is not set
Actual value:     

Value requested for CONFIG_PTP_1588_CLOCK_PCH not in final .config
Requested value:  # CONFIG_PTP_1588_CLOCK_PCH is not set
Actual value:     

Value requested for CONFIG_SBC8360_WDT not in final .config
Requested value:  # CONFIG_SBC8360_WDT is not set
Actual value:     

Value requested for CONFIG_SBC7240_WDT not in final .config
Requested value:  # CONFIG_SBC7240_WDT is not set
Actual value:     

Value requested for CONFIG_MFD_CS5535 not in final .config
Requested value:  # CONFIG_MFD_CS5535 is not set
Actual value:     

Value requested for CONFIG_AGP_ALI not in final .config
Requested value:  # CONFIG_AGP_ALI is not set
Actual value:     

Value requested for CONFIG_AGP_ATI not in final .config
Requested value:  # CONFIG_AGP_ATI is not set
Actual value:     

Value requested for CONFIG_AGP_AMD not in final .config
Requested value:  # CONFIG_AGP_AMD is not set
Actual value:     

Value requested for CONFIG_AGP_NVIDIA not in final .config
Requested value:  # CONFIG_AGP_NVIDIA is not set
Actual value:     

Value requested for CONFIG_AGP_SWORKS not in final .config
Requested value:  # CONFIG_AGP_SWORKS is not set
Actual value:     

Value requested for CONFIG_AGP_EFFICEON not in final .config
Requested value:  # CONFIG_AGP_EFFICEON is not set
Actual value:     

Value requested for CONFIG_SND_CS5530 not in final .config
Requested value:  # CONFIG_SND_CS5530 is not set
Actual value:     

Value requested for CONFIG_SND_CS5535AUDIO not in final .config
Requested value:  # CONFIG_SND_CS5535AUDIO is not set
Actual value:     

Value requested for CONFIG_SND_SIS7019 not in final .config
Requested value:  # CONFIG_SND_SIS7019 is not set
Actual value:     

Value requested for CONFIG_LEDS_OT200 not in final .config
Requested value:  # CONFIG_LEDS_OT200 is not set
Actual value:     

Value requested for CONFIG_PCH_DMA not in final .config
Requested value:  # CONFIG_PCH_DMA is not set
Actual value:     

Value requested for CONFIG_CLKSRC_I8253 not in final .config
Requested value:  CONFIG_CLKSRC_I8253=y
Actual value:     

Value requested for CONFIG_MAILBOX not in final .config
Requested value:  # CONFIG_MAILBOX is not set
Actual value:     CONFIG_MAILBOX=y

Value requested for CONFIG_CRYPTO_SERPENT_SSE2_586 not in final .config
Requested value:  # CONFIG_CRYPTO_SERPENT_SSE2_586 is not set
Actual value:     

Value requested for CONFIG_CRYPTO_TWOFISH_586 not in final .config
Requested value:  # CONFIG_CRYPTO_TWOFISH_586 is not set
Actual value:     

Value requested for CONFIG_CRYPTO_DEV_GEODE not in final .config
Requested value:  # CONFIG_CRYPTO_DEV_GEODE is not set
Actual value:     

Value requested for CONFIG_CRYPTO_DEV_HIFN_795X not in final .config
Requested value:  # CONFIG_CRYPTO_DEV_HIFN_795X is not set
Actual value:     

Value requested for CONFIG_CRYPTO_LIB_POLY1305_RSIZE not in final .config
Requested value:  CONFIG_CRYPTO_LIB_POLY1305_RSIZE=1
Actual value:     CONFIG_CRYPTO_LIB_POLY1305_RSIZE=11

Value requested for CONFIG_AUDIT_GENERIC not in final .config
Requested value:  CONFIG_AUDIT_GENERIC=y
Actual value:     

Value requested for CONFIG_GENERIC_VDSO_32 not in final .config
Requested value:  CONFIG_GENERIC_VDSO_32=y
Actual value:     

Value requested for CONFIG_DEBUG_KMAP_LOCAL not in final .config
Requested value:  # CONFIG_DEBUG_KMAP_LOCAL is not set
Actual value:     

Value requested for CONFIG_HAVE_DEBUG_STACKOVERFLOW not in final .config
Requested value:  CONFIG_HAVE_DEBUG_STACKOVERFLOW=y
Actual value:     

Value requested for CONFIG_DEBUG_STACKOVERFLOW not in final .config
Requested value:  # CONFIG_DEBUG_STACKOVERFLOW is not set
Actual value:     

Value requested for CONFIG_HAVE_FUNCTION_GRAPH_TRACER not in final .config
Requested value:  CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y
Actual value:     

Value requested for CONFIG_HAVE_FUNCTION_GRAPH_FREGS not in final .config
Requested value:  CONFIG_HAVE_FUNCTION_GRAPH_FREGS=y
Actual value:     

Value requested for CONFIG_HAVE_FTRACE_GRAPH_FUNC not in final .config
Requested value:  CONFIG_HAVE_FTRACE_GRAPH_FUNC=y
Actual value:     

Value requested for CONFIG_DRM_KUNIT_TEST not in final .config
Requested value:  CONFIG_DRM_KUNIT_TEST=m
Actual value:     

Value requested for CONFIG_DRM_XE_WERROR not in final .config
Requested value:  CONFIG_DRM_XE_WERROR=y
Actual value:     

Value requested for CONFIG_DRM_XE_DEBUG not in final .config
Requested value:  CONFIG_DRM_XE_DEBUG=y
Actual value:     

Value requested for CONFIG_DRM_XE_DEBUG_MEM not in final .config
Requested value:  CONFIG_DRM_XE_DEBUG_MEM=y
Actual value:     

Value requested for CONFIG_DRM_XE_KUNIT_TEST not in final .config
Requested value:  CONFIG_DRM_XE_KUNIT_TEST=m
Actual value:     

++ nproc
+ make -j48 ARCH=i386 olddefconfig
  GEN     Makefile
#
# configuration written to .config
#
++ nproc
+ make -j48 ARCH=i386
  SYNC    include/config/auto.conf.cmd
  GEN     Makefile
  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
  WRAP    arch/x86/include/generated/uapi/asm/ioctls.h
  SYSHDR  arch/x86/include/generated/uapi/asm/unistd_64.h
  WRAP    arch/x86/include/generated/uapi/asm/ipcbuf.h
  SYSHDR  arch/x86/include/generated/uapi/asm/unistd_x32.h
  WRAP    arch/x86/include/generated/uapi/asm/param.h
  SYSTBL  arch/x86/include/generated/asm/syscalls_32.h
  WRAP    arch/x86/include/generated/uapi/asm/poll.h
  WRAP    arch/x86/include/generated/uapi/asm/resource.h
  UPD     include/generated/uapi/linux/version.h
  WRAP    arch/x86/include/generated/uapi/asm/socket.h
  UPD     arch/x86/include/generated/asm/cpufeaturemasks.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
  UPD     include/generated/compile.h
  WRAP    arch/x86/include/generated/asm/early_ioremap.h
  HOSTCC  arch/x86/tools/relocs_64.o
  WRAP    arch/x86/include/generated/asm/fprobe.h
  WRAP    arch/x86/include/generated/asm/mcs_spinlock.h
  HOSTCC  arch/x86/tools/relocs_common.o
  WRAP    arch/x86/include/generated/asm/mmzone.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/rwonce.h
  HOSTCC  scripts/kallsyms
  HOSTCC  scripts/sorttable
  HOSTCC  scripts/asn1_compiler
  HOSTCC  scripts/selinux/mdp/mdp
  HOSTLD  arch/x86/tools/relocs
  UPD     include/config/kernel.release
  UPD     include/generated/utsrelease.h
  CC      scripts/mod/empty.o
  HOSTCC  scripts/mod/mk_elfconfig
  CC      scripts/mod/devicetable-offsets.s
  UPD     scripts/mod/devicetable-offsets.h
  MKELF   scripts/mod/elfconfig.h
  HOSTCC  scripts/mod/modpost.o
  HOSTCC  scripts/mod/file2alias.o
  HOSTCC  scripts/mod/sumversion.o
  HOSTCC  scripts/mod/symsearch.o
  HOSTLD  scripts/mod/modpost
  CC      kernel/bounds.s
  CHKSHA1 /workspace/kernel/include/linux/atomic/atomic-arch-fallback.h
  CHKSHA1 /workspace/kernel/include/linux/atomic/atomic-instrumented.h
  CHKSHA1 /workspace/kernel/include/linux/atomic/atomic-long.h
  UPD     include/generated/timeconst.h
  UPD     include/generated/bounds.h
  CC      arch/x86/kernel/asm-offsets.s
  UPD     include/generated/asm-offsets.h
  CALL    /workspace/kernel/scripts/checksyscalls.sh
  LDS     scripts/module.lds
  CC      init/main.o
  CC      init/do_mounts.o
  HOSTCC  usr/gen_init_cpio
  CC      init/do_mounts_initrd.o
  CC      init/initramfs.o
  CC      certs/system_keyring.o
  UPD     init/utsversion-tmp.h
  CC      ipc/util.o
  CC      init/calibrate.o
  CC      mm/filemap.o
  CC      ipc/msgutil.o
  CC      io_uring/io_uring.o
  CC      block/bdev.o
  CC      init/init_task.o
  CC      security/commoncap.o
  CC      ipc/msg.o
  CC      mm/mempool.o
  CC      io_uring/opdef.o
  CC      block/fops.o
  AS      arch/x86/lib/atomic64_cx8_32.o
  CC      ipc/sem.o
  CC      mm/oom_kill.o
  CC      security/lsm_syscalls.o
  AR      arch/x86/crypto/built-in.a
  CC      arch/x86/realmode/init.o
  CC      arch/x86/power/cpu.o
  CC      arch/x86/pci/i386.o
  CC      arch/x86/video/video-common.o
  AR      arch/x86/net/built-in.a
  CC      block/partitions/core.o
  CC      security/keys/gc.o
  CC      security/integrity/iint.o
  HOSTCC  security/selinux/genheaders
  AR      arch/x86/entry/vsyscall/built-in.a
  AR      virt/lib/built-in.a
  CC      arch/x86/mm/init.o
  CC      arch/x86/events/amd/core.o
  CC      arch/x86/events/intel/core.o
  AR      arch/x86/platform/atom/built-in.a
  AR      drivers/cache/built-in.a
  CC      arch/x86/kernel/fpu/init.o
  CC      arch/x86/mm/pat/set_memory.o
  CC      fs/notify/dnotify/dnotify.o
  CC      block/bio.o
  CC      net/core/sock.o
  AR      virt/built-in.a
  CC      arch/x86/virt/svm/cmdline.o
  CC      sound/core/seq/seq.o
  AR      lib/math/tests/built-in.a
  AS      arch/x86/lib/checksum_32.o
  AR      arch/x86/platform/ce4100/built-in.a
  CC      arch/x86/entry/vdso/vma.o
  AR      drivers/irqchip/built-in.a
  CC      lib/math/div64.o
  CC      arch/x86/kernel/cpu/mce/core.o
  CC      block/elevator.o
  CC      arch/x86/platform/efi/memmap.o
  AR      drivers/bus/mhi/built-in.a
  CC      kernel/sched/core.o
  CC      arch/x86/lib/cmdline.o
  AR      drivers/bus/built-in.a
  CC      crypto/asymmetric_keys/asymmetric_type.o
  AR      drivers/pwm/built-in.a
  AR      drivers/leds/trigger/built-in.a
  AR      drivers/leds/blink/built-in.a
  AR      arch/x86/virt/svm/built-in.a
  AR      drivers/leds/simatic/built-in.a
  CC      drivers/leds/led-core.o
  AR      arch/x86/virt/vmx/built-in.a
  AR      arch/x86/virt/built-in.a
  AS      arch/x86/lib/cmpxchg8b_emu.o
  CC      drivers/pci/msi/pcidev_msi.o
  GEN     security/selinux/flask.h security/selinux/av_permissions.h
  CC      security/selinux/avc.o
  CC      arch/x86/lib/cpu.o
  CC      lib/math/gcd.o
  CC      lib/math/lcm.o
  CC      arch/x86/events/zhaoxin/core.o
  CC      lib/math/int_log.o
  GEN     usr/initramfs_data.cpio
  COPY    usr/initramfs_inc_data
  AS      usr/initramfs_data.o
  CC      arch/x86/kernel/fpu/bugs.o
  AR      usr/built-in.a
  HOSTCC  certs/extract-cert
  CC      io_uring/kbuf.o
  CC      lib/math/int_pow.o
  CC      arch/x86/kernel/fpu/core.o
  CC      lib/math/int_sqrt.o
  CC      lib/math/reciprocal_div.o
  CC      sound/core/seq/seq_lock.o
  CC      arch/x86/lib/delay.o
  AS      arch/x86/realmode/rm/header.o
  AS      arch/x86/realmode/rm/trampoline_32.o
  AR      arch/x86/video/built-in.a
  CC      block/partitions/msdos.o
  CC      lib/math/rational.o
  AS      arch/x86/realmode/rm/stack.o
  CERT    certs/x509_certificate_list
  AS      arch/x86/realmode/rm/reboot.o
  CERT    certs/signing_key.x509
  AS      certs/system_certificates.o
  AS      arch/x86/realmode/rm/wakeup_asm.o
  AR      certs/built-in.a
  CC      arch/x86/events/amd/lbr.o
  CC      security/integrity/integrity_audit.o
  CC      arch/x86/kernel/cpu/mtrr/mtrr.o
  CC      arch/x86/realmode/rm/wakemain.o
  CC      arch/x86/kernel/cpu/microcode/core.o
  CC      arch/x86/power/hibernate_32.o
  CC      ipc/shm.o
  CC      drivers/leds/led-class.o
  CC      ipc/syscall.o
  CC      arch/x86/pci/init.o
  CC      crypto/asymmetric_keys/restrict.o
  CC      arch/x86/entry/vdso/extable.o
  AR      fs/notify/dnotify/built-in.a
  CC      arch/x86/realmode/rm/video-mode.o
  CC      drivers/pci/msi/api.o
  CC      security/keys/key.o
  CC      fs/notify/inotify/inotify_fsnotify.o
  CC      arch/x86/platform/efi/quirks.o
  CC      ipc/ipc_sysctl.o
  CC      security/keys/keyring.o
  AS      arch/x86/lib/getuser.o
  CC      crypto/api.o
  GEN     arch/x86/lib/inat-tables.c
  AS      arch/x86/realmode/rm/copy.o
  CC      arch/x86/lib/insn-eval.o
  AS      arch/x86/realmode/rm/bioscall.o
  CC      ipc/mqueue.o
  CC      sound/core/seq/seq_clientmgr.o
  CC      arch/x86/realmode/rm/regs.o
  CC      arch/x86/kernel/fpu/regset.o
  CC      arch/x86/realmode/rm/video-vga.o
  AR      lib/math/built-in.a
  CC      lib/crypto/mpi/generic_mpih-lshift.o
  AR      lib/tests/built-in.a
  CC      fs/notify/inotify/inotify_user.o
  CC      arch/x86/events/intel/bts.o
  CC      arch/x86/realmode/rm/video-vesa.o
  CC      arch/x86/kernel/cpu/mtrr/if.o
  CC      security/min_addr.o
  CC      arch/x86/realmode/rm/video-bios.o
  AR      arch/x86/events/zhaoxin/built-in.a
  CC      io_uring/rsrc.o
  CC      crypto/asymmetric_keys/signature.o
  CC      drivers/video/console/dummycon.o
  CC      arch/x86/platform/efi/efi.o
  PASYMS  arch/x86/realmode/rm/pasyms.h
  CC      sound/core/seq/seq_memory.o
  CC      drivers/video/backlight/backlight.o
  LDS     arch/x86/realmode/rm/realmode.lds
  CC      drivers/leds/led-triggers.o
  LDS     arch/x86/entry/vdso/vdso32/vdso32.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
  CC      drivers/pci/msi/msi.o
  CC      arch/x86/events/core.o
  AR      arch/x86/realmode/built-in.a
  CC      io_uring/notif.o
  CC      arch/x86/mm/pat/memtype.o
  CC      arch/x86/kernel/cpu/microcode/intel.o
  CC      arch/x86/pci/pcbios.o
  AR      security/integrity/built-in.a
  CC      block/partitions/efi.o
  CC      arch/x86/kernel/cpu/microcode/amd.o
  AS      arch/x86/power/hibernate_asm_32.o
  CC      crypto/cipher.o
  CC      init/version.o
  CC      arch/x86/mm/pat/memtype_interval.o
  CC      arch/x86/power/hibernate.o
  CC      net/ethernet/eth.o
  AR      drivers/idle/built-in.a
  CC      net/core/request_sock.o
  AS      arch/x86/entry/vdso/vdso32/note.o
  CC      arch/x86/events/amd/ibs.o
  CC      kernel/locking/mutex.o
  AS      arch/x86/entry/vdso/vdso32/system_call.o
  CC      lib/crypto/mpi/generic_mpih-mul1.o
  AS      arch/x86/entry/vdso/vdso32/sigreturn.o
  CC      fs/nfs_common/nfsacl.o
  CC      arch/x86/entry/vdso/vdso32/vclock_gettime.o
  AR      drivers/video/fbdev/core/built-in.a
  AR      drivers/video/fbdev/omap/built-in.a
  AR      init/built-in.a
  CC      kernel/sched/fair.o
  CC      lib/vdso/datastore.o
  CC      arch/x86/kernel/cpu/mtrr/generic.o
  AR      drivers/video/fbdev/omap2/omapfb/dss/built-in.a
  CC      crypto/asymmetric_keys/public_key.o
  AR      drivers/video/fbdev/omap2/omapfb/displays/built-in.a
  AR      drivers/video/fbdev/omap2/omapfb/built-in.a
  CC      arch/x86/kernel/fpu/signal.o
  AR      drivers/video/fbdev/omap2/built-in.a
  AR      drivers/video/fbdev/built-in.a
  AR      drivers/char/ipmi/built-in.a
  CC      lib/crypto/memneq.o
  CC      fs/nfs_common/grace.o
  CC      drivers/acpi/acpica/dsargs.o
  CC      arch/x86/lib/insn.o
  CC      security/selinux/hooks.o
  CC      arch/x86/platform/efi/efi_32.o
  CC      drivers/video/console/vgacon.o
  CC      kernel/locking/semaphore.o
  CC      arch/x86/kernel/cpu/mce/severity.o
  CC      crypto/algapi.o
  CC      sound/core/sound.o
  AR      fs/notify/inotify/built-in.a
  AR      drivers/leds/built-in.a
  AR      fs/notify/fanotify/built-in.a
  CC      drivers/acpi/acpica/dscontrol.o
  CC      block/blk-core.o
  CC      fs/notify/fsnotify.o
  AR      drivers/video/backlight/built-in.a
  CC      security/keys/keyctl.o
  CC      block/blk-sysfs.o
  CC      arch/x86/pci/mmconfig_32.o
  CC      arch/x86/lib/kaslr.o
  CC      drivers/pnp/pnpacpi/core.o
  CC      security/selinux/selinuxfs.o
  AR      arch/x86/power/built-in.a
  CC      drivers/pci/msi/irqdomain.o
  AR      drivers/acpi/pmic/built-in.a
  CC      drivers/acpi/dptf/int340x_thermal.o
  CC      lib/crypto/mpi/generic_mpih-mul2.o
  CC      mm/fadvise.o
  CC      security/security.o
  CC      arch/x86/events/probe.o
  CC      sound/core/seq/seq_queue.o
  AR      arch/x86/mm/pat/built-in.a
  CC      arch/x86/mm/init_32.o
  AR      lib/vdso/built-in.a
  CC      sound/core/seq/seq_fifo.o
  CC      arch/x86/entry/vdso/vdso32/vgetcpu.o
  AR      block/partitions/built-in.a
  CC      security/lsm_audit.o
  CC      arch/x86/lib/memcpy_32.o
  CC      security/keys/permission.o
  CC      arch/x86/kernel/cpu/cacheinfo.o
  HOSTCC  arch/x86/entry/vdso/vdso2c
  ASN.1   crypto/asymmetric_keys/x509.asn1.[ch]
  ASN.1   crypto/asymmetric_keys/x509_akid.asn1.[ch]
  CC      crypto/asymmetric_keys/x509_loader.o
  AS      arch/x86/lib/memmove_32.o
  CC      arch/x86/lib/misc.o
  CC      arch/x86/lib/pc-conf-reg.o
  AS      arch/x86/platform/efi/efi_stub_32.o
  AR      arch/x86/kernel/cpu/microcode/built-in.a
  CC      block/blk-flush.o
  CC      drivers/acpi/acpica/dsdebug.o
  CC      ipc/namespace.o
  CC      fs/nfs_common/common.o
  CC      drivers/pnp/pnpacpi/rsparser.o
  CC      sound/core/init.o
  CC      arch/x86/platform/efi/runtime-map.o
  CC      drivers/pnp/core.o
  AR      sound/i2c/other/built-in.a
  CC      arch/x86/kernel/fpu/xstate.o
  AR      sound/i2c/built-in.a
  CC      sound/core/seq/seq_prioq.o
  CC      crypto/asymmetric_keys/x509_public_key.o
  AR      drivers/acpi/dptf/built-in.a
  AS      arch/x86/lib/putuser.o
  CC      fs/iomap/trace.o
  CC      lib/crypto/mpi/generic_mpih-mul3.o
  AS      arch/x86/lib/retpoline.o
  CC      arch/x86/kernel/cpu/mce/genpool.o
  CC      arch/x86/lib/string_32.o
  CC      arch/x86/kernel/cpu/mtrr/cleanup.o
  CC      arch/x86/lib/strstr_32.o
  CC      arch/x86/kernel/acpi/boot.o
  CC      arch/x86/entry/vdso/vdso32-setup.o
  CC      arch/x86/pci/direct.o
  CC      arch/x86/kernel/apic/apic.o
  CC      arch/x86/kernel/apic/apic_common.o
  CC      arch/x86/lib/usercopy.o
  CC      drivers/acpi/acpica/dsfield.o
  AR      net/ethernet/built-in.a
  CC      arch/x86/events/amd/uncore.o
  CC      arch/x86/kernel/kprobes/core.o
  AR      drivers/video/console/built-in.a
  CC      drivers/video/aperture.o
  CC      kernel/locking/rwsem.o
  LDS     arch/x86/kernel/vmlinux.lds
  AR      drivers/pci/msi/built-in.a
  CC      drivers/pci/pcie/portdrv.o
  CC      kernel/power/qos.o
  CC      fs/notify/notification.o
  CC      drivers/pci/pcie/rcec.o
  CC      mm/maccess.o
  CC      net/core/skbuff.o
  CC      ipc/mq_sysctl.o
  CC      lib/crypto/mpi/generic_mpih-rshift.o
  VDSO    arch/x86/entry/vdso/vdso32.so.dbg
  OBJCOPY arch/x86/entry/vdso/vdso32.so
  CC      net/core/datagram.o
  VDSO2C  arch/x86/entry/vdso/vdso-image-32.c
  CC      arch/x86/entry/vdso/vdso-image-32.o
  CC      arch/x86/lib/usercopy_32.o
  AR      arch/x86/platform/geode/built-in.a
  CC      sound/core/seq/seq_timer.o
  CC      arch/x86/mm/fault.o
  ASN.1   crypto/asymmetric_keys/pkcs7.asn1.[ch]
  CC      crypto/asymmetric_keys/pkcs7_trust.o
  AR      fs/nfs_common/built-in.a
  CC      drivers/acpi/x86/apple.o
  AS      arch/x86/kernel/head_32.o
  CC      drivers/acpi/tables.o
  AS      arch/x86/entry/entry.o
  AS      arch/x86/entry/entry_32.o
  CC      sound/core/memory.o
  CC      security/keys/process_keys.o
  CC      sound/core/control.o
  CC      arch/x86/events/intel/ds.o
  AR      arch/x86/platform/efi/built-in.a
  CC      arch/x86/kernel/acpi/sleep.o
  CC      lib/zlib_inflate/inffast.o
  CC      lib/zlib_inflate/inflate.o
  CC      arch/x86/kernel/cpu/mce/intel.o
  CC      drivers/acpi/acpica/dsinit.o
  AR      arch/x86/platform/iris/built-in.a
  CC      kernel/sched/build_policy.o
  CC      arch/x86/platform/intel/iosf_mbi.o
  AR      arch/x86/entry/vdso/built-in.a
  CC      lib/zlib_inflate/infutil.o
  CC      arch/x86/entry/syscall_32.o
  AR      drivers/pnp/pnpacpi/built-in.a
  CC      arch/x86/lib/msr-smp.o
  CC      drivers/pnp/card.o
  CC      arch/x86/kernel/cpu/mtrr/amd.o
  AR      ipc/built-in.a
  CC      security/selinux/netlink.o
  CC      kernel/power/main.o
  CC      arch/x86/pci/mmconfig-shared.o
  CC      security/selinux/nlmsgtab.o
  CC      crypto/asymmetric_keys/pkcs7_verify.o
  CC      arch/x86/kernel/cpu/mtrr/cyrix.o
  CC      fs/notify/group.o
  CC      lib/crypto/mpi/generic_mpih-sub1.o
  CC      drivers/video/cmdline.o
  CC      drivers/video/nomodeset.o
  CC      io_uring/tctx.o
  CC      drivers/acpi/acpica/dsmethod.o
  CC      arch/x86/lib/cache-smp.o
  CC      arch/x86/kernel/kprobes/opt.o
  AR      arch/x86/kernel/fpu/built-in.a
  CC      drivers/pci/pcie/bwctrl.o
  CC      kernel/locking/percpu-rwsem.o
  CC      mm/page-writeback.o
  CC      kernel/locking/spinlock.o
  CC      drivers/acpi/x86/cmos_rtc.o
  CC      fs/iomap/iter.o
  CC      arch/x86/mm/ioremap.o
  CC      arch/x86/lib/crc32-glue.o
  CC      sound/core/seq/seq_system.o
  AR      sound/drivers/opl3/built-in.a
  AR      sound/drivers/opl4/built-in.a
  CC      arch/x86/kernel/head32.o
  CC      fs/notify/mark.o
  AR      sound/drivers/mpu401/built-in.a
  CC      arch/x86/kernel/cpu/mce/amd.o
  CC      lib/zlib_inflate/inftrees.o
  AR      sound/drivers/vx/built-in.a
  AR      sound/drivers/pcsp/built-in.a
  AR      sound/drivers/built-in.a
  CC      drivers/video/hdmi.o
  AS      arch/x86/kernel/acpi/wakeup_32.o
  CC      lib/crypto/utils.o
  AR      arch/x86/events/amd/built-in.a
  CC      crypto/asymmetric_keys/x509.asn1.o
  CC      arch/x86/pci/fixup.o
  CC      arch/x86/kernel/acpi/cstate.o
  CC      crypto/asymmetric_keys/x509_akid.asn1.o
  CC      security/selinux/netif.o
  AR      net/802/built-in.a
  CC      crypto/asymmetric_keys/x509_cert_parser.o
  CC      drivers/pci/pcie/aspm.o
  AR      arch/x86/platform/intel/built-in.a
  AR      arch/x86/platform/intel-mid/built-in.a
  AR      arch/x86/platform/intel-quark/built-in.a
  AR      arch/x86/platform/olpc/built-in.a
  CC      lib/zlib_inflate/inflate_syms.o
  AS      arch/x86/entry/thunk.o
  AR      arch/x86/platform/scx200/built-in.a
  AR      arch/x86/platform/ts5500/built-in.a
  CC      kernel/locking/osq_lock.o
  CC      drivers/acpi/acpica/dsmthdat.o
  CC      drivers/pnp/driver.o
  CC      security/keys/request_key.o
  AR      arch/x86/platform/uv/built-in.a
  AR      arch/x86/platform/built-in.a
  CC      arch/x86/kernel/cpu/mtrr/centaur.o
  CC      arch/x86/pci/acpi.o
  CC      block/blk-settings.o
  CC      lib/crypto/mpi/generic_mpih-add1.o
  CC      mm/folio-compat.o
  CC      fs/iomap/buffered-io.o
  AS      arch/x86/lib/crc32-pclmul.o
  CC      fs/iomap/direct-io.o
  CC      arch/x86/lib/msr.o
  CC      net/sched/sch_generic.o
  CC      drivers/acpi/x86/lpss.o
  CC      drivers/acpi/x86/s2idle.o
  CC      kernel/locking/qspinlock.o
  AR      sound/isa/ad1816a/built-in.a
  CC      io_uring/filetable.o
  AR      sound/isa/ad1848/built-in.a
  CC      arch/x86/pci/legacy.o
  CC      security/device_cgroup.o
  AR      sound/isa/cs423x/built-in.a
  CC      arch/x86/kernel/apic/apic_noop.o
  AR      sound/isa/es1688/built-in.a
  AR      lib/zlib_inflate/built-in.a
  CC      security/selinux/netnode.o
  AR      sound/isa/galaxy/built-in.a
  CC      sound/core/seq/seq_ports.o
  AR      sound/isa/gus/built-in.a
  CC      arch/x86/kernel/ebda.o
  AR      sound/isa/msnd/built-in.a
  AR      sound/isa/opti9xx/built-in.a
  AR      sound/isa/sb/built-in.a
  AR      arch/x86/entry/built-in.a
  CC      fs/notify/fdinfo.o
  AR      sound/isa/wavefront/built-in.a
  CC      kernel/power/console.o
  AR      sound/isa/wss/built-in.a
  AR      sound/isa/built-in.a
  CC      drivers/acpi/osi.o
  AR      arch/x86/kernel/acpi/built-in.a
  CC      drivers/acpi/acpica/dsobject.o
  AR      arch/x86/kernel/kprobes/built-in.a
  CC      arch/x86/kernel/cpu/scattered.o
  CC      kernel/power/process.o
  AR      drivers/pci/pwrctrl/built-in.a
  CC      arch/x86/kernel/cpu/mce/threshold.o
  CC      lib/zlib_deflate/deflate.o
  CC      lib/lzo/lzo1x_compress.o
  CC      crypto/asymmetric_keys/pkcs7.asn1.o
  CC      crypto/asymmetric_keys/pkcs7_parser.o
  CC      arch/x86/mm/extable.o
  CC      arch/x86/kernel/cpu/mtrr/legacy.o
  CC      drivers/pnp/resource.o
  CC      arch/x86/mm/mmap.o
  CC      drivers/acpi/acpica/dsopcode.o
  AR      drivers/video/built-in.a
  CC      mm/readahead.o
  CC      lib/crypto/mpi/mpicoder.o
  AR      sound/pci/ac97/built-in.a
  CC      kernel/locking/rtmutex_api.o
  CC      arch/x86/kernel/apic/ipi.o
  AR      sound/pci/ali5451/built-in.a
  AR      sound/pci/asihpi/built-in.a
  CC      drivers/acpi/x86/utils.o
  AR      sound/pci/au88x0/built-in.a
  AR      sound/pci/aw2/built-in.a
  AR      sound/pci/ctxfi/built-in.a
  AS      arch/x86/lib/msr-reg.o
  AR      sound/pci/ca0106/built-in.a
  AR      sound/pci/cs46xx/built-in.a
  CC      lib/lzo/lzo1x_compress_safe.o
  AR      sound/pci/cs5535audio/built-in.a
  AR      sound/pci/lola/built-in.a
  CC      arch/x86/lib/msr-reg-export.o
  AR      sound/pci/lx6464es/built-in.a
  CC      kernel/printk/printk.o
  CC      kernel/irq/irqdesc.o
  AR      sound/pci/echoaudio/built-in.a
  CC      kernel/rcu/update.o
  AR      sound/pci/emu10k1/built-in.a
  CC      security/keys/request_key_auth.o
  AR      kernel/livepatch/built-in.a
  CC      sound/pci/hda/hda_bind.o
  CC      sound/pci/hda/hda_codec.o
  CC      arch/x86/pci/irq.o
  AR      arch/x86/kernel/cpu/mtrr/built-in.a
  CC      arch/x86/kernel/apic/vector.o
  CC      block/blk-ioc.o
  CC      kernel/dma/mapping.o
  CC      kernel/entry/common.o
  CC      block/blk-map.o
  CC      arch/x86/kernel/apic/init.o
  AR      fs/notify/built-in.a
  CC      arch/x86/kernel/apic/hw_nmi.o
  CC      drivers/acpi/x86/blacklist.o
  AR      crypto/asymmetric_keys/built-in.a
  CC      crypto/scatterwalk.o
  AS      arch/x86/lib/hweight.o
  CC      drivers/acpi/acpica/dspkginit.o
  CC      arch/x86/lib/iomem.o
  CC      io_uring/rw.o
  CC      sound/core/seq/seq_info.o
  CC      arch/x86/events/intel/knc.o
  CC      lib/zlib_deflate/deftree.o
  CC      lib/lzo/lzo1x_decompress_safe.o
  CC      net/core/stream.o
  CC      sound/core/misc.o
  CC      fs/quota/dquot.o
  CC      drivers/pci/pcie/pme.o
  CC      fs/quota/quota_v2.o
  CC      block/blk-merge.o
  CC      lib/crypto/chacha.o
  CC      arch/x86/kernel/platform-quirks.o
  CC      lib/crypto/mpi/mpi-add.o
  CC      security/selinux/netport.o
  CC      arch/x86/mm/pgtable.o
  CC      arch/x86/kernel/process_32.o
  CC      net/netlink/af_netlink.o
  CC      kernel/power/suspend.o
  CC      lib/lz4/lz4_decompress.o
  CC      net/sched/sch_mq.o
  AR      arch/x86/kernel/cpu/mce/built-in.a
  AR      drivers/acpi/x86/built-in.a
  AR      net/bpf/built-in.a
  CC      arch/x86/kernel/cpu/topology_common.o
  CC      lib/zstd/zstd_decompress_module.o
  CC      lib/zstd/decompress/huf_decompress.o
  CC      crypto/proc.o
  CC      drivers/acpi/acpica/dsutils.o
  CC      arch/x86/lib/atomic64_32.o
  CC      security/keys/user_defined.o
  CC      kernel/irq/handle.o
  CC      arch/x86/lib/inat.o
  CC      drivers/pnp/manager.o
  AR      lib/lzo/built-in.a
  AR      drivers/amba/built-in.a
  CC      kernel/printk/printk_safe.o
  CC      sound/core/seq/seq_dummy.o
  CC      mm/swap.o
  CC      mm/truncate.o
  CC      lib/zstd/decompress/zstd_ddict.o
  AR      arch/x86/lib/built-in.a
  CC      lib/zlib_deflate/deflate_syms.o
  AR      arch/x86/lib/lib.a
  CC      kernel/locking/qrwlock.o
  CC      fs/iomap/ioend.o
  CC      drivers/acpi/acpica/dswexec.o
  CC      arch/x86/mm/physaddr.o
  CC      kernel/entry/syscall_user_dispatch.o
  CC      sound/core/device.o
  CC      fs/proc/task_mmu.o
  CC      arch/x86/pci/common.o
  CC      arch/x86/kernel/apic/io_apic.o
  CC      arch/x86/events/intel/lbr.o
  CC      drivers/pnp/support.o
  CC      kernel/sched/build_utility.o
  CC      arch/x86/kernel/cpu/topology_ext.o
  AR      drivers/pci/pcie/built-in.a
  AR      sound/ppc/built-in.a
  CC      arch/x86/pci/early.o
  CC      lib/crypto/mpi/mpi-bit.o
  CC      drivers/pci/hotplug/pci_hotplug_core.o
  AR      lib/zlib_deflate/built-in.a
  CC      sound/pci/hda/hda_jack.o
  CC      mm/vmscan.o
  CC      crypto/aead.o
  CC      drivers/acpi/osl.o
  CC      kernel/irq/manage.o
  CC      security/keys/proc.o
  CC      lib/zstd/decompress/zstd_decompress.o
  CC      fs/quota/quota_tree.o
  AR      kernel/locking/built-in.a
  CC      lib/zstd/decompress/zstd_decompress_block.o
  CC      drivers/acpi/acpica/dswload.o
  AR      sound/core/seq/built-in.a
  CC      lib/xz/xz_dec_syms.o
  CC      lib/xz/xz_dec_stream.o
  CC      lib/zstd/zstd_common_module.o
  CC      arch/x86/kernel/cpu/topology_amd.o
  CC      sound/core/info.o
  CC      crypto/geniv.o
  CC      kernel/printk/nbcon.o
  CC      arch/x86/mm/tlb.o
  CC      drivers/pci/hotplug/acpi_pcihp.o
  CC      fs/iomap/fiemap.o
  AR      drivers/pci/controller/dwc/built-in.a
  CC      io_uring/net.o
  AR      drivers/pci/controller/mobiveil/built-in.a
  AR      kernel/entry/built-in.a
  AR      drivers/pci/controller/plda/built-in.a
  AR      drivers/pci/controller/built-in.a
  CC      drivers/pnp/interface.o
  AR      drivers/clk/actions/built-in.a
  CC      net/ethtool/ioctl.o
  CC      net/sched/sch_frag.o
  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
  CC      security/selinux/status.o
  CC      kernel/power/hibernate.o
  AR      drivers/clk/ingenic/built-in.a
  AR      drivers/clk/mediatek/built-in.a
  AR      drivers/clk/microchip/built-in.a
  CC      lib/dim/dim.o
  AR      drivers/clk/mstar/built-in.a
  AR      drivers/clk/mvebu/built-in.a
  AR      drivers/clk/ralink/built-in.a
  AR      drivers/clk/renesas/built-in.a
  CC      block/blk-timeout.o
  CC      drivers/acpi/acpica/dswload2.o
  CC      fs/kernfs/mount.o
  AR      drivers/clk/socfpga/built-in.a
  AR      drivers/clk/sophgo/built-in.a
  CC      lib/crypto/mpi/mpi-cmp.o
  AR      drivers/clk/sprd/built-in.a
  AR      drivers/clk/starfive/built-in.a
  AR      drivers/clk/sunxi-ng/built-in.a
  CC      arch/x86/pci/bus_numa.o
  AR      drivers/clk/ti/built-in.a
  CC      arch/x86/kernel/cpu/common.o
  AR      drivers/clk/versatile/built-in.a
  CC      net/core/scm.o
  AR      drivers/clk/xilinx/built-in.a
  AR      drivers/clk/built-in.a
  CC      lib/xz/xz_dec_lzma2.o
  CC      sound/pci/hda/hda_auto_parser.o
  AR      lib/lz4/built-in.a
  CC      sound/core/isadma.o
  AR      sound/arm/built-in.a
  CC      drivers/acpi/utils.o
  CC      drivers/acpi/reboot.o
  CC      security/keys/sysctl.o
  CC      lib/dim/net_dim.o
  CC      lib/crypto/aes.o
  CC      kernel/dma/direct.o
  CC      arch/x86/kernel/cpu/rdrand.o
  CC      fs/kernfs/inode.o
  CC      fs/iomap/seek.o
  CC      lib/crypto/mpi/mpi-sub-ui.o
  CC      drivers/acpi/acpica/dswscope.o
  CC      net/netfilter/core.o
  CC      drivers/pnp/quirks.o
  AR      drivers/pci/hotplug/built-in.a
  CC      kernel/module/main.o
  CC      drivers/pnp/system.o
  CC      kernel/printk/printk_ringbuffer.o
  AR      drivers/pci/switch/built-in.a
  CC      drivers/pci/access.o
  CC      drivers/acpi/acpica/dswstate.o
  CC      arch/x86/mm/cpu_entry_area.o
  CC      arch/x86/events/intel/p4.o
  CC      sound/core/vmaster.o
  CC      crypto/lskcipher.o
  CC      fs/quota/quota.o
  CC      kernel/dma/ops_helpers.o
  CC      block/blk-lib.o
  CC      io_uring/poll.o
  CC      kernel/rcu/sync.o
  CC      security/keys/keyctl_pkey.o
  CC      arch/x86/pci/amd_bus.o
  CC      arch/x86/events/utils.o
  CC      arch/x86/events/rapl.o
  CC      kernel/time/time.o
  CC      arch/x86/events/msr.o
  CC      kernel/irq/spurious.o
  CC      lib/xz/xz_dec_bcj.o
  CC      kernel/irq/resend.o
  CC      arch/x86/kernel/signal.o
  CC      kernel/rcu/srcutree.o
  CC      arch/x86/mm/maccess.o
  CC      drivers/acpi/acpica/evevent.o
  CC      security/selinux/ss/ebitmap.o
  CC      arch/x86/kernel/apic/msi.o
  CC      fs/proc/inode.o
  CC      net/sched/sch_api.o
  CC      lib/crypto/mpi/mpi-div.o
  CC      fs/iomap/swapfile.o
  CC      sound/core/ctljack.o
  CC      sound/pci/hda/hda_sysfs.o
  CC      kernel/power/snapshot.o
  CC      net/netlink/genetlink.o
  CC      kernel/printk/sysctl.o
  CC      fs/kernfs/dir.o
  AR      drivers/pnp/built-in.a
  CC      arch/x86/mm/pgprot.o
  CC      net/netlink/policy.o
  CC      sound/core/jack.o
  CC      drivers/acpi/acpica/evgpe.o
  CC      arch/x86/kernel/signal_32.o
  CC      sound/core/hwdep.o
  CC      kernel/dma/remap.o
  CC      net/core/gen_stats.o
  CC      lib/dim/rdma_dim.o
  CC      net/ipv4/netfilter/nf_defrag_ipv4.o
  CC      kernel/irq/chip.o
  AR      security/keys/built-in.a
  CC      drivers/pci/bus.o
  AR      lib/xz/built-in.a
  CC      net/ipv4/route.o
  CC      sound/pci/hda/hda_controller.o
  CC      kernel/irq/dummychip.o
  CC      fs/sysfs/file.o
  CC      block/blk-mq.o
  AR      arch/x86/pci/built-in.a
  CC      lib/fonts/fonts.o
  AR      kernel/printk/built-in.a
  CC      lib/argv_split.o
  CC      arch/x86/kernel/cpu/match.o
  CC      fs/proc/root.o
  CC      lib/crypto/mpi/mpi-mod.o
  CC      arch/x86/events/intel/p6.o
  CC      crypto/skcipher.o
  CC      net/ethtool/common.o
  CC      net/xfrm/xfrm_policy.o
  CC      arch/x86/mm/pgtable_32.o
  AR      lib/dim/built-in.a
  CC      arch/x86/kernel/apic/probe_32.o
  CC      fs/quota/kqid.o
  CC      drivers/acpi/acpica/evgpeblk.o
  CC      kernel/irq/devres.o
  CC      block/blk-mq-tag.o
  CC      kernel/time/timer.o
  CC      arch/x86/kernel/cpu/bugs.o
  CC      kernel/futex/core.o
  CC      drivers/pci/probe.o
  CC      arch/x86/kernel/cpu/aperfmperf.o
  AR      fs/iomap/built-in.a
  CC      kernel/time/hrtimer.o
  AR      kernel/dma/built-in.a
  CC      lib/crypto/mpi/mpi-mul.o
  CC      net/sched/sch_blackhole.o
  CC      net/netfilter/nf_log.o
  CC      drivers/acpi/acpica/evgpeinit.o
  CC      lib/fonts/font_8x16.o
  AR      sound/pci/ice1712/built-in.a
  CC      lib/crypto/arc4.o
  CC      sound/core/timer.o
  CC      security/selinux/ss/hashtab.o
  CC      kernel/rcu/tree.o
  CC      kernel/rcu/rcu_segcblist.o
  CC      arch/x86/mm/iomap_32.o
  CC      arch/x86/events/intel/pt.o
  AR      arch/x86/kernel/apic/built-in.a
  CC      kernel/time/sleep_timeout.o
  CC      block/blk-stat.o
  CC      fs/sysfs/dir.o
  CC      lib/bug.o
  CC      kernel/cgroup/cgroup.o
  CC      fs/kernfs/file.o
  CC      io_uring/eventfd.o
  CC      fs/quota/netlink.o
  AR      lib/fonts/built-in.a
  CC      arch/x86/kernel/cpu/cpuid-deps.o
  CC      drivers/acpi/acpica/evgpeutil.o
  CC      kernel/irq/kexec.o
  CC      fs/proc/base.o
  CC      net/core/gen_estimator.o
  CC      mm/shrinker.o
  CC      block/blk-mq-sysfs.o
  CC      net/ethtool/netlink.o
  CC      security/selinux/ss/symtab.o
  CC      fs/sysfs/symlink.o
  CC      drivers/dma/dw/core.o
  CC      net/ipv4/netfilter/nf_reject_ipv4.o
  CC      drivers/dma/hsu/hsu.o
  CC      lib/crypto/mpi/mpih-cmp.o
  AR      drivers/dma/idxd/built-in.a
  AR      drivers/dma/amd/built-in.a
  CC      net/xfrm/xfrm_state.o
  CC      security/selinux/ss/sidtab.o
  CC      kernel/module/strict_rwx.o
  CC      kernel/futex/syscalls.o
  CC      kernel/power/swap.o
  CC      lib/zstd/common/debug.o
  CC      io_uring/uring_cmd.o
  CC      lib/buildid.o
  CC      drivers/acpi/acpica/evglock.o
  CC      mm/shmem.o
  CC      net/xfrm/xfrm_hash.o
  CC      arch/x86/mm/hugetlbpage.o
  CC      kernel/irq/autoprobe.o
  CC      sound/pci/hda/hda_proc.o
  CC      crypto/seqiv.o
  CC      security/selinux/ss/avtab.o
  CC      kernel/module/kmod.o
  CC      lib/crypto/mpi/mpih-div.o
  AR      net/netlink/built-in.a
  CC      net/ipv4/inetpeer.o
  CC      lib/crypto/gf128mul.o
  CC      arch/x86/events/intel/uncore.o
  CC      kernel/power/user.o
  CC      net/netfilter/nf_queue.o
  CC      drivers/acpi/acpica/evhandler.o
  CC      fs/devpts/inode.o
  CC      fs/sysfs/mount.o
  CC      lib/zstd/common/entropy_common.o
  CC      net/sched/cls_api.o
  AR      fs/quota/built-in.a
  CC      net/xfrm/xfrm_input.o
  CC      fs/proc/generic.o
  CC      fs/kernfs/symlink.o
  CC      lib/crypto/blake2s.o
  CC      kernel/irq/irqdomain.o
  CC      crypto/echainiv.o
  CC      lib/crypto/mpi/mpih-mul.o
  CC      net/ipv4/netfilter/ip_tables.o
  AR      drivers/dma/hsu/built-in.a
  CC      lib/clz_tab.o
  CC      net/core/net_namespace.o
  CC      arch/x86/kernel/cpu/umwait.o
  CC      drivers/acpi/nvs.o
  AR      arch/x86/mm/built-in.a
  CC      fs/sysfs/group.o
  CC      lib/zstd/common/error_private.o
  CC      sound/core/hrtimer.o
  MKCAP   arch/x86/kernel/cpu/capflags.c
  CC      lib/zstd/common/fse_decompress.o
  CC      lib/zstd/common/zstd_common.o
  CC      net/ipv4/protocol.o
  AR      sound/pci/korg1212/built-in.a
  CC      io_uring/openclose.o
  CC      drivers/acpi/acpica/evmisc.o
  CC      drivers/pci/host-bridge.o
  CC      drivers/dma/dw/dw.o
  CC      kernel/time/timekeeping.o
  CC      kernel/futex/pi.o
  CC      drivers/pci/remove.o
  CC      sound/core/pcm.o
  CC      net/ethtool/bitset.o
  CC      kernel/module/tree_lookup.o
  CC      net/ipv4/netfilter/iptable_filter.o
  CC      block/blk-mq-cpumap.o
  CC      arch/x86/events/intel/uncore_nhmex.o
  CC      sound/pci/hda/hda_hwdep.o
  CC      drivers/acpi/wakeup.o
  CC      drivers/acpi/acpica/evregion.o
  CC      crypto/ahash.o
  CC      kernel/irq/proc.o
  CC      drivers/acpi/acpica/evrgnini.o
  CC      drivers/acpi/acpica/evsci.o
  AR      fs/devpts/built-in.a
  AR      fs/kernfs/built-in.a
  CC      drivers/acpi/acpica/evxface.o
  CC      drivers/acpi/acpica/evxfevnt.o
  CC      drivers/acpi/acpica/evxfgpe.o
  CC      security/selinux/ss/policydb.o
  CC      kernel/power/poweroff.o
  AR      lib/zstd/built-in.a
  CC      crypto/shash.o
  CC      net/xfrm/xfrm_output.o
  AR      fs/sysfs/built-in.a
  CC      mm/util.o
  CC      net/ipv4/netfilter/iptable_mangle.o
  CC      kernel/time/ntp.o
  CC      lib/crypto/mpi/mpi-pow.o
  CC      net/ipv4/ip_input.o
  CC      drivers/dma/dw/idma32.o
  CC      mm/mmzone.o
  CC      kernel/module/kallsyms.o
  AR      kernel/power/built-in.a
  CC      drivers/pci/pci.o
  CC      mm/vmstat.o
  CC      net/sched/act_api.o
  CC      fs/proc/array.o
  CC      kernel/futex/requeue.o
  CC      drivers/acpi/sleep.o
  CC      kernel/time/clocksource.o
  CC      net/netfilter/nf_sockopt.o
  CC      io_uring/sqpoll.o
  CC      crypto/akcipher.o
  CC      arch/x86/kernel/traps.o
  CC      net/ipv4/ip_fragment.o
  CC      sound/core/pcm_native.o
  CC      drivers/dma/dw/acpi.o
  CC      kernel/trace/trace_clock.o
  CC      drivers/acpi/acpica/evxfregn.o
  CC      lib/crypto/mpi/mpiutil.o
  CC      lib/cmdline.o
  CC      sound/pci/hda/hda_intel.o
  CC      kernel/irq/migration.o
  AR      kernel/sched/built-in.a
  CC      lib/cpumask.o
  CC      drivers/pci/pci-driver.o
  AR      drivers/dma/mediatek/built-in.a
  CC      security/selinux/ss/services.o
  CC      block/blk-mq-sched.o
  AR      sound/sh/built-in.a
  CC      net/core/secure_seq.o
  CC      drivers/acpi/device_sysfs.o
  CC      net/ipv4/ip_forward.o
  CC      net/ipv4/ip_options.o
  CC      drivers/acpi/acpica/exconcat.o
  CC      kernel/trace/ring_buffer.o
  CC      net/xfrm/xfrm_sysctl.o
  CC      kernel/futex/waitwake.o
  CC      net/ethtool/strset.o
  CC      io_uring/xattr.o
  CC      arch/x86/kernel/cpu/powerflags.o
  CC      kernel/module/procfs.o
  CC      mm/backing-dev.o
  CC      drivers/pci/search.o
  CC      arch/x86/events/intel/uncore_snb.o
  CC      net/core/flow_dissector.o
  CC      kernel/irq/cpuhotplug.o
  CC      sound/core/pcm_lib.o
  CC      net/xfrm/xfrm_replay.o
  AR      drivers/dma/dw/built-in.a
  AR      drivers/dma/qcom/built-in.a
  CC      kernel/module/sysfs.o
  AR      drivers/dma/stm32/built-in.a
  AR      lib/crypto/mpi/built-in.a
  AR      drivers/dma/ti/built-in.a
  CC      lib/crypto/blake2s-generic.o
  AR      drivers/dma/xilinx/built-in.a
  CC      drivers/dma/dmaengine.o
  CC      net/ipv4/netfilter/ipt_REJECT.o
  CC [M]  net/ipv4/netfilter/iptable_nat.o
  CC      crypto/sig.o
  CC      kernel/time/jiffies.o
  CC      kernel/irq/pm.o
  CC      drivers/acpi/acpica/exconfig.o
  CC      net/netfilter/utils.o
  CC      fs/proc/fd.o
  CC      lib/crypto/sha1.o
  CC      net/sched/sch_fifo.o
  CC      kernel/trace/trace.o
  CC      drivers/acpi/acpica/exconvrt.o
  CC      drivers/acpi/acpica/excreate.o
  CC      net/xfrm/xfrm_device.o
  CC      drivers/pci/rom.o
  AR      kernel/futex/built-in.a
  CC      block/ioctl.o
  CC      kernel/time/timer_list.o
  CC      net/unix/af_unix.o
  AR      sound/synth/emux/built-in.a
  CC      kernel/time/timeconv.o
  AR      sound/synth/built-in.a
  CC      net/ethtool/linkinfo.o
  CC      drivers/pci/setup-res.o
  CC      kernel/bpf/core.o
  CC      net/xfrm/xfrm_nat_keepalive.o
  AR      kernel/rcu/built-in.a
  AR      sound/pci/mixart/built-in.a
  CC      net/netfilter/nfnetlink.o
  CC      security/selinux/ss/conditional.o
  CC      drivers/dma/virt-dma.o
  AR      sound/usb/misc/built-in.a
  AR      sound/usb/usx2y/built-in.a
  AR      sound/usb/caiaq/built-in.a
  AR      sound/usb/6fire/built-in.a
  AR      kernel/module/built-in.a
  AR      sound/usb/hiface/built-in.a
  CC      security/selinux/ss/mls.o
  CC      lib/crypto/sha256.o
  AR      sound/usb/bcd2000/built-in.a
  AR      sound/usb/built-in.a
  CC      lib/ctype.o
  CC      net/xfrm/xfrm_algo.o
  CC      io_uring/nop.o
  CC      net/unix/garbage.o
  CC      net/ipv4/ip_output.o
  CC      kernel/irq/msi.o
  CC      sound/core/pcm_misc.o
  CC      drivers/acpi/acpica/exdebug.o
  CC      crypto/kpp.o
  AR      sound/pci/hda/built-in.a
  CC      fs/netfs/buffered_read.o
  CC      arch/x86/events/intel/uncore_snbep.o
  CC      kernel/irq/affinity.o
  AR      sound/pci/nm256/built-in.a
  AR      sound/pci/oxygen/built-in.a
  ASN.1   crypto/rsapubkey.asn1.[ch]
  CC      sound/core/pcm_memory.o
  AR      sound/pci/pcxhr/built-in.a
  CC      mm/mm_init.o
  AR      sound/pci/riptide/built-in.a
  CC      mm/percpu.o
  AR      sound/pci/rme9652/built-in.a
  AR      sound/pci/trident/built-in.a
  AR      sound/pci/ymfpci/built-in.a
  AR      sound/pci/vx222/built-in.a
  AR      drivers/soc/apple/built-in.a
  AR      sound/pci/built-in.a
  AR      drivers/soc/aspeed/built-in.a
  CC      fs/proc/proc_tty.o
  CC      drivers/virtio/virtio.o
  AR      drivers/soc/bcm/built-in.a
  AR      drivers/soc/fsl/built-in.a
  AR      drivers/soc/fujitsu/built-in.a
  CC      drivers/tty/vt/vt_ioctl.o
  AR      drivers/soc/hisilicon/built-in.a
  AR      drivers/soc/imx/built-in.a
  AR      drivers/soc/ixp4xx/built-in.a
  CC      drivers/char/hw_random/core.o
  AR      drivers/soc/loongson/built-in.a
  AR      drivers/soc/mediatek/built-in.a
  AR      drivers/soc/microchip/built-in.a
  AR      drivers/iommu/amd/built-in.a
  AR      drivers/soc/nuvoton/built-in.a
  AR      drivers/iommu/intel/built-in.a
  AR      drivers/soc/pxa/built-in.a
  AR      drivers/soc/amlogic/built-in.a
  AR      drivers/iommu/arm/arm-smmu/built-in.a
  AR      drivers/soc/qcom/built-in.a
  AR      net/ipv4/netfilter/built-in.a
  AR      drivers/iommu/arm/arm-smmu-v3/built-in.a
  CC      sound/core/memalloc.o
  AR      drivers/soc/renesas/built-in.a
  AR      drivers/iommu/arm/built-in.a
  CC      kernel/time/timecounter.o
  AR      drivers/soc/rockchip/built-in.a
  AR      drivers/iommu/iommufd/built-in.a
  AR      drivers/iommu/riscv/built-in.a
  AR      drivers/soc/sunxi/built-in.a
  CC      drivers/iommu/iommu.o
  AR      drivers/gpu/host1x/built-in.a
  CC      kernel/cgroup/rstat.o
  AR      drivers/soc/ti/built-in.a
  CC      drivers/acpi/acpica/exdump.o
  AR      drivers/soc/versatile/built-in.a
  CC      kernel/time/alarmtimer.o
  AR      drivers/soc/xilinx/built-in.a
  AR      drivers/soc/built-in.a
  CC      drivers/connector/cn_queue.o
  CC      net/unix/sysctl_net_unix.o
  CC      drivers/char/agp/backend.o
  AR      lib/crypto/built-in.a
  CC      lib/dec_and_lock.o
  CC      drivers/dma/acpi-dma.o
  CC      net/sched/cls_cgroup.o
  CC      mm/slab_common.o
  AR      drivers/gpu/drm/tests/built-in.a
  AR      drivers/gpu/drm/arm/built-in.a
  CC      lib/decompress.o
  ASN.1   crypto/rsaprivkey.asn1.[ch]
  CC      fs/proc/cmdline.o
  AR      drivers/gpu/drm/clients/built-in.a
  CC      drivers/gpu/drm/display/drm_display_helper_mod.o
  CC      block/genhd.o
  CC      fs/proc/consoles.o
  CC      sound/core/pcm_timer.o
  CC      fs/proc/cpuinfo.o
  CC      io_uring/fs.o
  CC      net/sched/ematch.o
  CC      net/ethtool/linkmodes.o
  CC      lib/decompress_bunzip2.o
  CC      drivers/acpi/acpica/exfield.o
  CC      kernel/time/posix-timers.o
  CC      block/ioprio.o
  CC      block/badblocks.o
  CC      crypto/rsa.o
  CC      net/xfrm/xfrm_user.o
  CC      drivers/virtio/virtio_ring.o
  CC      net/netfilter/nfnetlink_log.o
  CC      drivers/gpu/drm/display/drm_dp_dual_mode_helper.o
  CC      drivers/char/hw_random/intel-rng.o
  CC      drivers/pci/irq.o
  CC      net/ipv4/ip_sockglue.o
  CC      arch/x86/events/intel/uncore_discovery.o
  CC      net/ipv6/netfilter/ip6_tables.o
  CC      drivers/base/power/sysfs.o
  CC      kernel/irq/matrix.o
  CC      drivers/base/power/generic_ops.o
  CC      fs/netfs/buffered_write.o
  CC      net/core/sysctl_net_core.o
  CC      drivers/acpi/acpica/exfldio.o
  CC      drivers/acpi/acpica/exmisc.o
  CC      fs/proc/devices.o
  CC      drivers/char/agp/generic.o
  AR      drivers/dma/built-in.a
  CC      drivers/tty/vt/vc_screen.o
  CC      security/selinux/ss/context.o
  CC      fs/netfs/direct_read.o
  CC      fs/netfs/direct_write.o
  CC      sound/core/seq_device.o
  CC      fs/netfs/iterator.o
  CC      kernel/cgroup/namespace.o
  CC      drivers/connector/connector.o
  CC      arch/x86/kernel/idt.o
  CC      lib/decompress_inflate.o
  CC      crypto/rsa_helper.o
  CC      io_uring/splice.o
  CC      net/ipv6/netfilter/ip6table_filter.o
  CC      fs/netfs/locking.o
  CC      arch/x86/kernel/cpu/topology.o
  CC      drivers/iommu/iommu-traces.o
  CC      drivers/iommu/iommu-sysfs.o
  CC      fs/netfs/main.o
  CC      drivers/base/power/common.o
  CC      drivers/acpi/acpica/exmutex.o
  CC      drivers/block/loop.o
  CC      drivers/char/hw_random/amd-rng.o
  CC      net/ethtool/rss.o
  CC      drivers/pci/vpd.o
  AR      net/sched/built-in.a
  CC      drivers/misc/eeprom/eeprom_93cx6.o
  CC      drivers/gpu/drm/display/drm_dp_helper.o
  CC      block/blk-rq-qos.o
  CC      fs/proc/interrupts.o
  CC      crypto/rsa-pkcs1pad.o
  AR      sound/core/built-in.a
  AR      sound/firewire/built-in.a
  AR      sound/sparc/built-in.a
  AR      sound/spi/built-in.a
  AR      sound/parisc/built-in.a
  AR      sound/pcmcia/vx/built-in.a
  AR      sound/pcmcia/pdaudiocf/built-in.a
  AR      sound/pcmcia/built-in.a
  AR      sound/mips/built-in.a
  CC      lib/decompress_unlz4.o
  AR      sound/soc/built-in.a
  AR      sound/atmel/built-in.a
  AR      net/unix/built-in.a
  CC      sound/hda/hda_bus_type.o
  AR      drivers/misc/cb710/built-in.a
  CC      drivers/connector/cn_proc.o
  CC      net/netfilter/nf_conntrack_core.o
  CC      block/disk-events.o
  CC      drivers/acpi/acpica/exnames.o
  CC      drivers/char/mem.o
  CC      block/blk-ia-ranges.o
  CC      drivers/tty/vt/selection.o
  CC      kernel/cgroup/cgroup-v1.o
  CC      kernel/time/posix-cpu-timers.o
  CC      arch/x86/events/intel/cstate.o
  CC      security/selinux/netlabel.o
  AR      drivers/mfd/built-in.a
  CC      kernel/trace/trace_output.o
  CC      drivers/base/power/qos.o
  AR      drivers/misc/eeprom/built-in.a
  AR      drivers/misc/lis3lv02d/built-in.a
  CC      drivers/char/hw_random/geode-rng.o
  CC      drivers/acpi/acpica/exoparg1.o
  AR      drivers/misc/cardreader/built-in.a
  CC      drivers/virtio/virtio_anchor.o
  AR      drivers/misc/keba/built-in.a
  CC      kernel/events/core.o
  AR      drivers/misc/built-in.a
  CC      drivers/char/agp/isoch.o
  CC      kernel/events/ring_buffer.o
  CC      fs/ext4/balloc.o
  CC      io_uring/sync.o
  CC      fs/proc/loadavg.o
  CC      fs/jbd2/transaction.o
  AR      kernel/irq/built-in.a
  CC      sound/hda/hdac_bus.o
  CC      io_uring/msg_ring.o
  CC      arch/x86/kernel/cpu/proc.o
  CC      io_uring/advise.o
  CC      drivers/block/virtio_blk.o
  CC      net/core/dev.o
  AR      kernel/bpf/built-in.a
  CC      net/ipv4/inet_hashtables.o
  CC      drivers/acpi/acpica/exoparg2.o
  CC      mm/compaction.o
  CC      lib/decompress_unlzma.o
  CC      crypto/rsassa-pkcs1.o
  CC      drivers/char/random.o
  CC      drivers/iommu/dma-iommu.o
  CC      drivers/pci/setup-bus.o
  CC      net/ipv6/af_inet6.o
  CC      arch/x86/kernel/irq.o
  CC      kernel/cgroup/freezer.o
  CC      drivers/gpu/drm/display/drm_dp_mst_topology.o
  CC      net/ethtool/linkstate.o
  CC      arch/x86/kernel/cpu/feat_ctl.o
  CC      net/ipv6/netfilter/ip6table_mangle.o
  CC      fs/ext4/bitmap.o
  CC      block/early-lookup.o
  CC      drivers/virtio/virtio_pci_modern_dev.o
  CC      drivers/char/hw_random/via-rng.o
  CC      fs/proc/meminfo.o
  CC      drivers/tty/vt/keyboard.o
  CC      drivers/acpi/acpica/exoparg3.o
  AR      drivers/gpu/vga/built-in.a
  CC      fs/ext4/block_validity.o
  CC      net/ipv6/anycast.o
  AR      arch/x86/events/intel/built-in.a
  AR      arch/x86/events/built-in.a
  CC      kernel/time/posix-clock.o
  CC      drivers/char/agp/amd64-agp.o
  CC      drivers/base/firmware_loader/builtin/main.o
  CC      sound/hda/hdac_device.o
  CC      net/netfilter/nf_conntrack_standalone.o
  AR      drivers/connector/built-in.a
  CC      drivers/gpu/drm/display/drm_dsc_helper.o
  CC      drivers/acpi/device_pm.o
  CC      mm/show_mem.o
  CC      fs/netfs/misc.o
  CC      crypto/acompress.o
  CC      arch/x86/kernel/cpu/intel.o
  CC      io_uring/statx.o
  CC      net/ipv6/netfilter/nf_defrag_ipv6_hooks.o
  AR      drivers/char/hw_random/built-in.a
  CC      drivers/tty/hvc/hvc_console.o
  CC      drivers/acpi/acpica/exoparg6.o
  CC      lib/decompress_unlzo.o
  CC      drivers/base/power/runtime.o
  AR      drivers/base/firmware_loader/builtin/built-in.a
  CC      drivers/base/firmware_loader/main.o
  CC      block/bsg.o
  CC      drivers/iommu/iova.o
  AR      net/xfrm/built-in.a
  CC      fs/jbd2/commit.o
  CC      drivers/char/misc.o
  AR      security/selinux/built-in.a
  AR      security/built-in.a
  CC      fs/proc/stat.o
  CC      mm/interval_tree.o
  CC      drivers/tty/serial/8250/8250_core.o
  AR      drivers/block/built-in.a
  CC      kernel/trace/trace_seq.o
  CC      arch/x86/kernel/cpu/tsx.o
  CC      kernel/cgroup/legacy_freezer.o
  CC      drivers/virtio/virtio_pci_legacy_dev.o
  CC      kernel/events/callchain.o
  CC      drivers/acpi/acpica/exprep.o
  CC      fs/netfs/objects.o
  CC      net/ethtool/debug.o
  CC      kernel/time/itimer.o
  CC      drivers/char/agp/intel-agp.o
  CC      drivers/tty/serial/serial_core.o
  CC      arch/x86/kernel/irq_32.o
  CC      block/blk-cgroup.o
  CC      lib/decompress_unxz.o
  CC      io_uring/timeout.o
  CC      fs/ext4/dir.o
  CC      net/ipv6/ip6_output.o
  CC      drivers/acpi/proc.o
  CC      net/packet/af_packet.o
  CC      drivers/virtio/virtio_pci_modern.o
  CC      io_uring/fdinfo.o
  CC      arch/x86/kernel/cpu/intel_epb.o
  CC      drivers/acpi/acpica/exregion.o
  CC      io_uring/cancel.o
  CC      fs/proc/uptime.o
  CC      sound/hda/hdac_sysfs.o
  AR      drivers/tty/hvc/built-in.a
  CC      kernel/trace/trace_stat.o
  CC      drivers/virtio/virtio_pci_common.o
  CC      kernel/time/clockevents.o
  CC      drivers/gpu/drm/ttm/ttm_tt.o
  CC      drivers/tty/vt/vt.o
  CC      crypto/scompress.o
  AR      sound/x86/built-in.a
  CC      drivers/gpu/drm/i915/i915_config.o
  CC      arch/x86/kernel/dumpstack_32.o
  CC      net/netfilter/nf_conntrack_expect.o
  CC      fs/proc/util.o
  CC      drivers/char/virtio_console.o
  AR      drivers/iommu/built-in.a
  CC      drivers/pci/vc.o
  CC      drivers/pci/mmap.o
  CC      net/core/dev_api.o
  CC      kernel/cgroup/pids.o
  CC      fs/ramfs/inode.o
  AR      drivers/base/firmware_loader/built-in.a
  CC      net/ipv4/inet_timewait_sock.o
  CC      arch/x86/kernel/time.o
  CC      drivers/gpu/drm/ttm/ttm_bo.o
  CC      drivers/base/power/wakeirq.o
  CC      lib/decompress_unzstd.o
  CC      drivers/tty/serial/8250/8250_platform.o
  AR      drivers/gpu/drm/renesas/rcar-du/built-in.a
  AR      drivers/gpu/drm/renesas/rz-du/built-in.a
  CC      drivers/acpi/acpica/exresnte.o
  AR      drivers/gpu/drm/renesas/built-in.a
  CC      drivers/char/hpet.o
  CC      io_uring/waitid.o
  CC      drivers/gpu/drm/i915/i915_driver.o
  CC      arch/x86/kernel/cpu/amd.o
  CC      net/ipv6/netfilter/nf_conntrack_reasm.o
  CC      drivers/char/agp/intel-gtt.o
  CC      fs/jbd2/recovery.o
  COPY    drivers/tty/vt/defkeymap.c
  CC      kernel/time/tick-common.o
  CC      fs/netfs/read_collect.o
  CC      net/ethtool/wol.o
  CC      fs/ext4/ext4_jbd2.o
  CC      net/ipv4/inet_connection_sock.o
  AR      net/dsa/built-in.a
  CC      kernel/trace/trace_printk.o
  CC      fs/proc/version.o
  CC      kernel/time/tick-broadcast.o
  CC      drivers/acpi/acpica/exresolv.o
  CC      drivers/acpi/acpica/exresop.o
  CC      drivers/base/power/main.o
  CC      drivers/base/power/wakeup.o
  CC      drivers/base/power/wakeup_stats.o
  CC      drivers/gpu/drm/i915/i915_drm_client.o
  CC      kernel/cgroup/rdma.o
  CC      fs/jbd2/checkpoint.o
  AR      drivers/gpu/drm/omapdrm/built-in.a
  CC      lib/dump_stack.o
  CC      lib/earlycpio.o
  CC      mm/list_lru.o
  CC      net/ethtool/features.o
  CC      sound/hda/hdac_regmap.o
  CC      net/ipv4/tcp.o
  CC      drivers/virtio/virtio_pci_legacy.o
  CC      drivers/pci/devres.o
  AR      drivers/tty/ipwireless/built-in.a
  CC      kernel/events/hw_breakpoint.o
  CC      fs/ext4/extents.o
  CC      fs/ramfs/file-mmu.o
  CC      crypto/algboss.o
  CC      drivers/tty/serial/8250/8250_pnp.o
  AR      sound/xen/built-in.a
  CC      arch/x86/kernel/cpu/hygon.o
  AR      sound/virtio/built-in.a
  CC      net/ethtool/privflags.o
  CC      fs/proc/softirqs.o
  CC      drivers/acpi/acpica/exserial.o
  CC      drivers/gpu/drm/ttm/ttm_bo_util.o
  CC      io_uring/register.o
  CC      fs/proc/namespaces.o
  CC      fs/proc/self.o
  CC      net/ipv6/netfilter/nf_reject_ipv6.o
  CC      block/blk-ioprio.o
  CC      drivers/gpu/drm/ttm/ttm_bo_vm.o
  CC      block/blk-iolatency.o
  CC      kernel/cgroup/cpuset.o
  AR      drivers/char/agp/built-in.a
  CC      kernel/cgroup/misc.o
  CC      lib/extable.o
  CC      drivers/char/nvram.o
  CC      drivers/tty/vt/consolemap.o
  CC      kernel/trace/pid_list.o
  CC      drivers/gpu/drm/display/drm_hdcp_helper.o
  CC      kernel/time/tick-broadcast-hrtimer.o
  CC      net/netfilter/nf_conntrack_helper.o
  CC      drivers/virtio/virtio_pci_admin_legacy_io.o
  CC      io_uring/truncate.o
  CC      drivers/acpi/acpica/exstore.o
  CC      mm/workingset.o
  CC      arch/x86/kernel/cpu/centaur.o
  CC      sound/hda/hdac_controller.o
  AR      fs/ramfs/built-in.a
  CC      mm/debug.o
  CC      drivers/pci/proc.o
  CC      fs/netfs/read_pgpriv2.o
  CC      fs/jbd2/revoke.o
  AR      drivers/gpu/drm/tilcdc/built-in.a
  CC      drivers/acpi/acpica/exstoren.o
  CC      drivers/tty/serial/8250/8250_rsa.o
  CC      fs/netfs/read_retry.o
  CC      net/ipv4/tcp_input.o
  CC      drivers/tty/tty_io.o
  CC      kernel/trace/trace_sched_switch.o
  CC      lib/flex_proportions.o
  CC      crypto/testmgr.o
  CC      drivers/gpu/drm/i915/i915_getparam.o
  CC      block/blk-iocost.o
  CC      kernel/time/tick-oneshot.o
  CC      arch/x86/kernel/ioport.o
  AR      drivers/nfc/built-in.a
  CC      fs/ext4/extents_status.o
  CC      fs/ext4/file.o
  CC      fs/proc/thread_self.o
  AR      drivers/dax/hmem/built-in.a
  AR      drivers/dax/built-in.a
  CC      net/sunrpc/auth_gss/auth_gss.o
  CC      arch/x86/kernel/cpu/transmeta.o
  CC      fs/ext4/fsmap.o
  CC      net/ethtool/rings.o
  CC      drivers/tty/n_tty.o
  CC      kernel/time/tick-sched.o
  CC      drivers/acpi/acpica/exstorob.o
  CC      drivers/virtio/virtio_input.o
  CC      drivers/gpu/drm/ttm/ttm_module.o
  CC      lib/idr.o
  AR      drivers/char/built-in.a
  CC      kernel/time/timer_migration.o
  CC      drivers/gpu/drm/display/drm_hdmi_helper.o
  CC      drivers/base/power/trace.o
  CC      drivers/tty/serial/8250/8250_port.o
  CC      sound/sound_core.o
  CC      fs/jbd2/journal.o
  CC      drivers/tty/tty_ioctl.o
  CC      fs/hugetlbfs/inode.o
  HOSTCC  drivers/tty/vt/conmakehash
  CC      kernel/time/vsyscall.o
  CC      net/ethtool/channels.o
  CC      crypto/cmac.o
  CC      mm/gup.o
  CC      sound/hda/hdac_stream.o
  CC      drivers/acpi/acpica/exsystem.o
  CC      arch/x86/kernel/cpu/zhaoxin.o
  CC      fs/proc/proc_sysctl.o
  CC      drivers/gpu/drm/virtio/virtgpu_drv.o
  CC      drivers/pci/pci-sysfs.o
  CC      net/netfilter/nf_conntrack_proto.o
  CC      io_uring/memmap.o
  CC      drivers/tty/vt/defkeymap.o
  CC      net/ipv6/netfilter/ip6t_ipv6header.o
  CC      fs/fat/cache.o
  CC      fs/netfs/read_single.o
  CC      drivers/gpu/drm/ttm/ttm_execbuf_util.o
  CONMK   drivers/tty/vt/consolemap_deftbl.c
  CC      drivers/tty/serial/serial_base_bus.o
  CC      net/ipv6/netfilter/ip6t_REJECT.o
  CC      lib/iomem_copy.o
  CC      drivers/gpu/drm/i915/i915_ioctl.o
  CC      drivers/gpu/drm/i915/i915_irq.o
  CC      drivers/tty/vt/consolemap_deftbl.o
  CC      kernel/fork.o
  CC      sound/hda/array.o
  AR      drivers/tty/vt/built-in.a
  CC      fs/proc/proc_net.o
  CC      drivers/acpi/acpica/extrace.o
  CC      drivers/gpu/drm/display/drm_scdc_helper.o
  CC      lib/irq_regs.o
  CC      crypto/hmac.o
  CC      arch/x86/kernel/cpu/vortex.o
  AR      net/packet/built-in.a
  CC      lib/is_single_threaded.o
  CC      drivers/virtio/virtio_dma_buf.o
  CC      kernel/trace/trace_nop.o
  AR      drivers/base/power/built-in.a
  CC      drivers/acpi/bus.o
  CC      drivers/base/regmap/regmap.o
  CC      drivers/gpu/drm/virtio/virtgpu_kms.o
  CC      arch/x86/kernel/dumpstack.o
  CC      fs/fat/dir.o
  AR      net/wireless/tests/built-in.a
  CC      net/wireless/core.o
  CC      drivers/acpi/acpica/exutils.o
  CC      drivers/gpu/drm/ttm/ttm_range_manager.o
  CC      arch/x86/kernel/cpu/perfctr-watchdog.o
  CC      lib/klist.o
  CC      kernel/cgroup/debug.o
  CC      io_uring/alloc_cache.o
  CC      arch/x86/kernel/cpu/vmware.o
  CC      arch/x86/kernel/cpu/hypervisor.o
  CC      net/ethtool/coalesce.o
  CC      sound/last.o
  CC      sound/hda/hdmi_chmap.o
  CC      crypto/crypto_null.o
  CC      kernel/events/uprobes.o
  CC      lib/kobject.o
  CC      fs/netfs/rolling_buffer.o
  AR      drivers/virtio/built-in.a
  CC      fs/netfs/write_collect.o
  CC      lib/kobject_uevent.o
  CC      fs/netfs/write_issue.o
  CC      net/sunrpc/auth_gss/gss_mech_switch.o
  CC      drivers/acpi/acpica/hwacpi.o
  CC      kernel/exec_domain.o
  CC      net/core/dev_addr_lists.o
  CC      drivers/acpi/acpica/hwesleep.o
  AR      drivers/gpu/drm/display/built-in.a
  CC      net/netfilter/nf_conntrack_proto_generic.o
  CC      kernel/trace/blktrace.o
  CC      drivers/pci/slot.o
  CC      sound/hda/trace.o
  CC      kernel/time/timekeeping_debug.o
  CC      drivers/tty/tty_ldisc.o
  CC      sound/hda/hdac_component.o
  CC      net/sunrpc/clnt.o
  CC      crypto/md5.o
  CC      drivers/gpu/drm/virtio/virtgpu_gem.o
  AR      net/ipv6/netfilter/built-in.a
  CC      net/ipv6/ip6_input.o
  AR      fs/hugetlbfs/built-in.a
  CC      drivers/gpu/drm/ttm/ttm_resource.o
  CC      drivers/tty/serial/serial_ctrl.o
  CC      sound/hda/hdac_i915.o
  CC      io_uring/io-wq.o
  CC      lib/logic_pio.o
  CC      fs/proc/kcore.o
  CC      fs/proc/kmsg.o
  CC      drivers/acpi/acpica/hwgpe.o
  CC      drivers/acpi/acpica/hwregs.o
  CC      drivers/gpu/drm/i915/i915_mitigations.o
  CC      arch/x86/kernel/cpu/mshyperv.o
  CC      arch/x86/kernel/nmi.o
  AR      kernel/cgroup/built-in.a
  CC      drivers/base/regmap/regcache.o
  CC      fs/netfs/write_retry.o
  CC      drivers/tty/serial/8250/8250_dma.o
  CC      drivers/gpu/drm/ttm/ttm_pool.o
  CC      net/core/dst.o
  CC      block/mq-deadline.o
  CC      mm/mmap_lock.o
  AR      drivers/gpu/drm/imx/built-in.a
  CC      crypto/sha256_generic.o
  CC      net/ipv4/tcp_output.o
  CC      drivers/pci/pci-acpi.o
  CC      block/kyber-iosched.o
  CC      net/netfilter/nf_conntrack_proto_tcp.o
  CC      kernel/time/namespace.o
  CC      fs/fat/fatent.o
  CC      drivers/acpi/acpica/hwsleep.o
  CC      net/wireless/sysfs.o
  CC      crypto/sha512_generic.o
  CC      net/ethtool/pause.o
  CC      mm/highmem.o
  CC      kernel/panic.o
  CC      drivers/gpu/drm/virtio/virtgpu_vram.o
  CC      kernel/cpu.o
  CC      drivers/gpu/drm/virtio/virtgpu_display.o
  CC      net/netfilter/nf_conntrack_proto_udp.o
  CC      lib/maple_tree.o
  CC      fs/ext4/fsync.o
  AR      fs/jbd2/built-in.a
  CC      kernel/exit.o
  CC      drivers/base/regmap/regcache-rbtree.o
  CC      drivers/acpi/acpica/hwvalid.o
  CC      sound/hda/intel-dsp-config.o
  CC      fs/ext4/hash.o
  CC      mm/memory.o
  CC      drivers/acpi/glue.o
  CC      net/sunrpc/auth_gss/svcauth_gss.o
  CC      io_uring/futex.o
  CC      drivers/tty/serial/8250/8250_dwlib.o
  CC      drivers/gpu/drm/i915/i915_module.o
  CC      fs/proc/page.o
  CC      arch/x86/kernel/cpu/debugfs.o
  CC      net/ipv6/addrconf.o
  CC      lib/memcat_p.o
  AR      fs/netfs/built-in.a
  CC      drivers/pci/iomap.o
  AR      net/mac80211/tests/built-in.a
  CC      net/mac80211/main.o
  CC      net/wireless/radiotap.o
  CC      drivers/acpi/acpica/hwxface.o
  AR      kernel/time/built-in.a
  CC      net/sunrpc/auth_gss/gss_rpc_upcall.o
  CC      block/blk-mq-debugfs.o
  CC      drivers/pci/quirks.o
  CC      kernel/trace/trace_events.o
  CC      crypto/sha3_generic.o
  CC      drivers/gpu/drm/i915/i915_params.o
  CC      lib/nmi_backtrace.o
  AR      kernel/events/built-in.a
  CC      fs/isofs/namei.o
  CC      io_uring/epoll.o
  CC      drivers/gpu/drm/virtio/virtgpu_vq.o
  CC      fs/nfs/client.o
  CC      drivers/tty/serial/serial_port.o
  CC      fs/isofs/inode.o
  CC      sound/hda/intel-nhlt.o
  CC      net/mac80211/status.o
  CC      net/ethtool/eee.o
  CC      drivers/gpu/drm/ttm/ttm_device.o
  CC      drivers/acpi/acpica/hwxfsleep.o
  CC      arch/x86/kernel/cpu/bus_lock.o
  AR      drivers/gpu/drm/panel/built-in.a
  CC      net/core/netevent.o
  CC      net/ipv4/tcp_timer.o
  CC      drivers/tty/serial/earlycon.o
  CC      net/sunrpc/xprt.o
  CC      kernel/trace/trace_export.o
  CC      drivers/base/regmap/regcache-flat.o
  CC      drivers/tty/serial/8250/8250_pcilib.o
  CC      drivers/acpi/acpica/hwpci.o
  AR      fs/proc/built-in.a
  CC      drivers/gpu/drm/virtio/virtgpu_fence.o
  CC      fs/fat/file.o
  CC      arch/x86/kernel/ldt.o
  CC      crypto/ecb.o
  CC      net/netfilter/nf_conntrack_proto_icmp.o
  CC      net/ipv6/addrlabel.o
  CC      lib/objpool.o
  CC      net/sunrpc/auth_gss/gss_rpc_xdr.o
  CC      fs/ext4/ialloc.o
  CC      net/ethtool/tsinfo.o
  CC      lib/plist.o
  CC      sound/hda/intel-sdw-acpi.o
  AR      drivers/gpu/drm/bridge/analogix/built-in.a
  AR      drivers/gpu/drm/bridge/cadence/built-in.a
  CC      drivers/base/regmap/regcache-maple.o
  AR      drivers/gpu/drm/bridge/imx/built-in.a
  CC      drivers/acpi/acpica/nsaccess.o
  AR      drivers/gpu/drm/bridge/synopsys/built-in.a
  AR      drivers/gpu/drm/bridge/built-in.a
  CC      net/sunrpc/socklib.o
  CC      drivers/base/regmap/regmap-debugfs.o
  CC      drivers/gpu/drm/ttm/ttm_sys_manager.o
  CC      io_uring/napi.o
  CC      block/blk-pm.o
  CC      fs/ext4/indirect.o
  CC      arch/x86/kernel/cpu/capflags.o
  AR      drivers/gpu/drm/hisilicon/built-in.a
  CC      drivers/acpi/acpica/nsalloc.o
  CC      net/sunrpc/xprtsock.o
  CC      drivers/gpu/drm/virtio/virtgpu_object.o
  CC      drivers/gpu/drm/virtio/virtgpu_debugfs.o
  CC      crypto/cbc.o
  CC      drivers/gpu/drm/i915/i915_pci.o
  CC      drivers/acpi/acpica/nsarguments.o
  CC      drivers/tty/serial/8250/8250_early.o
  CC      block/holder.o
  CC      fs/isofs/dir.o
  CC      drivers/dma-buf/dma-buf.o
  AR      arch/x86/kernel/cpu/built-in.a
  CC      net/core/neighbour.o
  CC      net/wireless/util.o
  AR      drivers/cxl/core/built-in.a
  AR      drivers/cxl/built-in.a
  CC      net/core/rtnetlink.o
  CC      net/sunrpc/sched.o
  CC      net/core/utils.o
  CC      drivers/dma-buf/dma-fence.o
  AR      sound/hda/built-in.a
  AR      drivers/base/test/built-in.a
  AR      sound/built-in.a
  AR      drivers/gpu/drm/mxsfb/built-in.a
  CC      drivers/gpu/drm/i915/i915_scatterlist.o
  CC      drivers/gpu/drm/i915/i915_switcheroo.o
  CC      drivers/gpu/drm/ttm/ttm_backup.o
  CC      kernel/trace/trace_event_perf.o
  CC      net/ipv6/route.o
  CC      fs/ext4/inline.o
  CC      arch/x86/kernel/setup.o
  CC      drivers/acpi/acpica/nsconvert.o
  CC      drivers/tty/serial/8250/8250_exar.o
  CC      fs/fat/inode.o
  CC      crypto/ctr.o
  CC      net/ethtool/cabletest.o
  CC      lib/radix-tree.o
  CC      fs/nfs/dir.o
  CC      drivers/dma-buf/dma-fence-array.o
  AR      drivers/base/regmap/built-in.a
  CC      drivers/base/component.o
  CC      net/netlabel/netlabel_user.o
  CC      net/netlabel/netlabel_kapi.o
  CC      net/netfilter/nf_conntrack_extend.o
  AR      block/built-in.a
  CC      drivers/gpu/drm/virtio/virtgpu_plane.o
  CC      net/netfilter/nf_conntrack_acct.o
  CC      drivers/tty/serial/8250/8250_lpss.o
  CC      net/sunrpc/auth_gss/trace.o
  CC      drivers/gpu/drm/i915/i915_sysfs.o
  CC      drivers/acpi/acpica/nsdump.o
  CC      fs/isofs/util.o
  CC      net/wireless/reg.o
  CC      drivers/tty/tty_buffer.o
  CC      crypto/gcm.o
  CC      drivers/dma-buf/dma-fence-chain.o
  CC      fs/fat/misc.o
  CC      drivers/gpu/drm/ttm/ttm_agp_backend.o
  CC      drivers/pci/pci-label.o
  CC      drivers/acpi/acpica/nseval.o
  CC      kernel/softirq.o
  CC      drivers/acpi/scan.o
  CC      lib/ratelimit.o
  CC      net/mac80211/driver-ops.o
  AR      io_uring/built-in.a
  CC      mm/mincore.o
  CC      net/ipv4/tcp_ipv4.o
  CC      kernel/trace/trace_events_filter.o
  CC      net/ipv4/tcp_minisocks.o
  CC      drivers/base/core.o
  CC      kernel/resource.o
  CC      crypto/ccm.o
  CC      fs/isofs/rock.o
  CC      net/wireless/scan.o
  CC      net/ethtool/tunnels.o
  CC      drivers/gpu/drm/virtio/virtgpu_ioctl.o
  CC      arch/x86/kernel/x86_init.o
  CC      crypto/aes_generic.o
  CC      drivers/tty/serial/8250/8250_mid.o
  CC      drivers/acpi/acpica/nsinit.o
  CC      drivers/tty/tty_port.o
  CC      drivers/dma-buf/dma-fence-unwrap.o
  CC      drivers/dma-buf/dma-resv.o
  AR      drivers/gpu/drm/sysfb/built-in.a
  CC      net/netlabel/netlabel_domainhash.o
  CC      drivers/acpi/mipi-disco-img.o
  CC      arch/x86/kernel/i8259.o
  AR      drivers/gpu/drm/ttm/built-in.a
  CC      net/mac80211/sta_info.o
  CC      drivers/gpu/drm/i915/i915_utils.o
  CC      drivers/pci/vgaarb.o
  CC      crypto/authenc.o
  CC      mm/mlock.o
  CC      net/netfilter/nf_conntrack_seqadj.o
  CC      net/wireless/nl80211.o
  CC      drivers/dma-buf/sync_file.o
  CC      fs/ext4/inode.o
  CC      fs/fat/nfs.o
  CC      drivers/acpi/acpica/nsload.o
  CC      drivers/base/bus.o
  CC      kernel/sysctl.o
  CC      fs/isofs/export.o
  CC      lib/rbtree.o
  CC      net/ethtool/fec.o
  CC      net/wireless/mlme.o
  CC      arch/x86/kernel/irqinit.o
  CC      net/ipv4/tcp_cong.o
  CC      net/sunrpc/auth_gss/gss_krb5_mech.o
  CC      drivers/tty/serial/8250/8250_pci.o
  CC      net/sunrpc/auth.o
  CC      drivers/acpi/acpica/nsnames.o
  CC      drivers/gpu/drm/virtio/virtgpu_prime.o
  CC      net/core/link_watch.o
  CC      net/mac80211/wep.o
  CC      drivers/gpu/drm/i915/intel_clock_gating.o
  CC      net/rfkill/core.o
  AR      drivers/dma-buf/built-in.a
  CC      crypto/authencesn.o
  CC      net/mac80211/aead_api.o
  CC      kernel/trace/trace_events_trigger.o
  CC      fs/nfs/file.o
  AR      drivers/gpu/drm/tiny/built-in.a
  CC      drivers/macintosh/mac_hid.o
  CC      drivers/acpi/acpica/nsobject.o
  CC      net/sunrpc/auth_gss/gss_krb5_seal.o
  CC      net/rfkill/input.o
  CC      net/mac80211/wpa.o
  CC      fs/isofs/joliet.o
  CC      fs/nfs/getroot.o
  CC      drivers/tty/tty_mutex.o
  CC      fs/fat/namei_vfat.o
  AR      drivers/pci/built-in.a
  CC      lib/seq_buf.o
  CC      net/wireless/ibss.o
  CC      net/netfilter/nf_conntrack_proto_icmpv6.o
  CC      net/wireless/sme.o
  CC      net/netlabel/netlabel_addrlist.o
  CC      crypto/lzo.o
  CC      mm/mmap.o
  CC      drivers/acpi/acpica/nsparse.o
  CC      arch/x86/kernel/jump_label.o
  CC      net/sunrpc/auth_null.o
  CC      drivers/gpu/drm/virtio/virtgpu_trace_points.o
  CC      fs/nfs/inode.o
  CC      net/ethtool/eeprom.o
  AR      drivers/macintosh/built-in.a
  CC      net/wireless/chan.o
  CC      net/ipv4/tcp_metrics.o
  CC      net/9p/mod.o
  AR      net/rfkill/built-in.a
  CC      fs/exportfs/expfs.o
  AR      drivers/scsi/pcmcia/built-in.a
  CC      fs/isofs/compress.o
  CC      drivers/scsi/scsi.o
  CC      drivers/acpi/acpica/nspredef.o
  CC      net/netfilter/nf_conntrack_netlink.o
  CC      kernel/capability.o
  CC      mm/mmu_gather.o
  CC      net/sunrpc/auth_gss/gss_krb5_unseal.o
  CC      drivers/base/dd.o
  CC      crypto/lzo-rle.o
  CC      crypto/rng.o
  CC      net/sunrpc/auth_gss/gss_krb5_wrap.o
  CC      drivers/gpu/drm/i915/intel_cpu_info.o
  CC      drivers/tty/serial/8250/8250_pericom.o
  CC      net/sunrpc/auth_gss/gss_krb5_crypto.o
  CC      drivers/gpu/drm/i915/intel_device_info.o
  CC      arch/x86/kernel/irq_work.o
  CC      lib/siphash.o
  CC      arch/x86/kernel/probe_roms.o
  CC      arch/x86/kernel/sys_ia32.o
  CC      kernel/trace/trace_eprobe.o
  CC      drivers/acpi/acpica/nsprepkg.o
  CC      arch/x86/kernel/ksysfs.o
  CC      arch/x86/kernel/bootflag.o
  CC      net/9p/client.o
  CC      drivers/gpu/drm/virtio/virtgpu_submit.o
  CC      fs/fat/namei_msdos.o
  AR      fs/exportfs/built-in.a
  CC      arch/x86/kernel/e820.o
  CC      net/netfilter/nf_conntrack_ftp.o
  CC      net/core/filter.o
  CC      net/ethtool/stats.o
  CC      kernel/ptrace.o
  CC      net/netlabel/netlabel_mgmt.o
  CC      net/mac80211/scan.o
  CC      lib/string.o
  CC      fs/nfs/super.o
  CC      drivers/acpi/acpica/nsrepair.o
  AR      fs/isofs/built-in.a
  CC      net/dns_resolver/dns_key.o
  CC      net/dns_resolver/dns_query.o
  CC      net/handshake/alert.o
  CC      kernel/user.o
  CC      drivers/tty/tty_ldsem.o
  CC      drivers/gpu/drm/i915/intel_memory_region.o
  AR      drivers/tty/serial/8250/built-in.a
  AR      drivers/tty/serial/built-in.a
  CC      crypto/drbg.o
  CC      net/netfilter/nf_conntrack_irc.o
  CC      net/ipv6/ip6_fib.o
  CC      net/sunrpc/auth_gss/gss_krb5_keys.o
  CC      lib/timerqueue.o
  CC      drivers/base/syscore.o
  CC      net/9p/error.o
  CC      net/netlabel/netlabel_unlabeled.o
  AR      drivers/gpu/drm/xlnx/built-in.a
  CC      fs/ext4/ioctl.o
  CC      net/netlabel/netlabel_cipso_v4.o
  CC      fs/nfs/io.o
  CC      mm/mprotect.o
  CC      lib/union_find.o
  CC      drivers/acpi/acpica/nsrepair2.o
  CC      fs/lockd/clntlock.o
  CC      lib/vsprintf.o
  CC      fs/nls/nls_base.o
  AR      fs/unicode/built-in.a
  AR      drivers/gpu/drm/gud/built-in.a
  CC      drivers/scsi/hosts.o
  CC      drivers/acpi/acpica/nssearch.o
  CC      net/wireless/ethtool.o
  CC      net/devres.o
  CC      net/ipv4/tcp_fastopen.o
  AR      drivers/gpu/drm/virtio/built-in.a
  CC      net/ipv6/ipv6_sockglue.o
  CC      fs/lockd/clntproc.o
  CC      drivers/acpi/resource.o
  CC      drivers/tty/tty_baudrate.o
  CC      net/mac80211/offchannel.o
  AR      net/dns_resolver/built-in.a
  CC      drivers/base/driver.o
  CC      drivers/gpu/drm/i915/intel_pcode.o
  AR      fs/fat/built-in.a
  CC      drivers/scsi/scsi_ioctl.o
  CC      mm/mremap.o
  CC      kernel/trace/trace_kprobe.o
  CC      net/handshake/genl.o
  CC      fs/lockd/clntxdr.o
  CC      drivers/acpi/acpica/nsutils.o
  CC      fs/nls/nls_cp437.o
  CC      arch/x86/kernel/pci-dma.o
  CC      crypto/jitterentropy.o
  CC      kernel/signal.o
  CC      net/ethtool/phc_vclocks.o
  CC      crypto/jitterentropy-kcapi.o
  CC      net/ipv6/ndisc.o
  CC      net/netfilter/nf_conntrack_sip.o
  CC      drivers/base/class.o
  CC      net/wireless/mesh.o
  CC      net/ipv4/tcp_rate.o
  CC      drivers/tty/tty_jobctrl.o
  CC      fs/nls/nls_ascii.o
  CC      net/wireless/ap.o
  CC      net/netfilter/nf_nat_core.o
  CC      net/mac80211/ht.o
  CC      drivers/base/platform.o
  CC      net/core/sock_diag.o
  CC      drivers/base/cpu.o
  AR      net/sunrpc/auth_gss/built-in.a
  CC      net/netlabel/netlabel_calipso.o
  CC      net/ethtool/mm.o
  CC      kernel/trace/error_report-traces.o
  CC      drivers/acpi/acpica/nswalk.o
  CC      net/9p/protocol.o
  CC      arch/x86/kernel/quirks.o
  CC      fs/nfs/direct.o
  CC      lib/win_minmax.o
  CC      drivers/gpu/drm/i915/intel_region_ttm.o
  CC      crypto/ghash-generic.o
  CC      drivers/base/firmware.o
  CC      net/mac80211/agg-tx.o
  CC      net/core/dev_ioctl.o
  CC      net/handshake/netlink.o
  CC      fs/nls/nls_iso8859-1.o
  CC      drivers/acpi/acpi_processor.o
  CC      drivers/scsi/scsicam.o
  CC      fs/ext4/mballoc.o
  CC      fs/autofs/init.o
  CC      drivers/acpi/acpica/nsxfeval.o
  CC      net/9p/trans_common.o
  CC      drivers/tty/n_null.o
  CC      fs/9p/vfs_super.o
  CC      mm/msync.o
  CC      crypto/hash_info.o
  CC      net/core/tso.o
  CC      kernel/trace/power-traces.o
  CC      crypto/rsapubkey.asn1.o
  CC      kernel/trace/rpm-traces.o
  CC      crypto/rsaprivkey.asn1.o
  CC      fs/lockd/host.o
  CC      net/core/sock_reuseport.o
  CC      fs/nls/nls_utf8.o
  AR      crypto/built-in.a
  CC      kernel/trace/trace_dynevent.o
  CC      fs/autofs/inode.o
  CC      net/ethtool/module.o
  CC      net/mac80211/agg-rx.o
  AR      drivers/gpu/drm/sitronix/built-in.a
  AR      fs/hostfs/built-in.a
  CC      drivers/gpu/drm/i915/intel_runtime_pm.o
  CC      net/sunrpc/auth_tls.o
  CC      fs/debugfs/inode.o
  CC      arch/x86/kernel/kdebugfs.o
  CC      drivers/acpi/acpica/nsxfname.o
  CC      drivers/scsi/scsi_error.o
  CC      drivers/base/init.o
  CC      net/9p/trans_fd.o
  CC      drivers/gpu/drm/i915/intel_step.o
  AR      fs/nls/built-in.a
  CC      fs/tracefs/inode.o
  CC      net/core/fib_notifier.o
  CC      net/ipv6/udp.o
  CC      fs/tracefs/event_inode.o
  AR      net/netlabel/built-in.a
  CC      fs/lockd/svc.o
  CC      drivers/tty/pty.o
  CC      net/handshake/request.o
  AR      drivers/gpu/drm/solomon/built-in.a
  CC      drivers/acpi/acpica/nsxfobj.o
  CC      kernel/trace/trace_probe.o
  CC      net/ipv4/tcp_recovery.o
  CC      drivers/base/map.o
  CC      fs/9p/vfs_inode.o
  CC      mm/page_vma_mapped.o
  AR      drivers/nvme/common/built-in.a
  AR      drivers/nvme/host/built-in.a
  CC      net/ipv4/tcp_ulp.o
  CC      drivers/base/devres.o
  AR      drivers/nvme/target/built-in.a
  AR      drivers/nvme/built-in.a
  CC      fs/lockd/svclock.o
  CC      arch/x86/kernel/alternative.o
  CC      fs/autofs/root.o
  CC      drivers/acpi/acpica/psargs.o
  CC      fs/9p/vfs_inode_dotl.o
  CC      fs/debugfs/file.o
  CC      net/wireless/trace.o
  CC      net/ipv6/udplite.o
  CC      net/ethtool/cmis_fw_update.o
  CC      drivers/acpi/acpica/psloop.o
  CC      fs/autofs/symlink.o
  CC      mm/pagewalk.o
  CC      net/netfilter/nf_nat_proto.o
  CC      drivers/tty/tty_audit.o
  CC      net/handshake/tlshd.o
  CC      drivers/gpu/drm/i915/intel_uncore.o
  CC      arch/x86/kernel/i8253.o
  CC      kernel/sys.o
  CC      net/sunrpc/auth_unix.o
  CC      fs/lockd/svcshare.o
  CC      lib/xarray.o
  CC      drivers/acpi/processor_core.o
  CC      fs/open.o
  CC [M]  fs/efivarfs/inode.o
  CC      net/socket.o
  CC      kernel/umh.o
  CC      drivers/acpi/processor_pdc.o
  CC      fs/9p/vfs_addr.o
  CC      fs/ext4/migrate.o
  AR      fs/tracefs/built-in.a
  CC      net/ipv6/raw.o
  CC      fs/nfs/pagelist.o
  CC      drivers/acpi/acpica/psobject.o
  CC [M]  fs/efivarfs/file.o
  CC      net/netfilter/nf_nat_helper.o
  CC      drivers/base/attribute_container.o
  CC      net/9p/trans_virtio.o
  CC      net/ethtool/cmis_cdb.o
  CC [M]  fs/efivarfs/super.o
  CC      mm/pgtable-generic.o
  CC      drivers/acpi/acpica/psopcode.o
  CC      drivers/base/transport_class.o
  CC      fs/read_write.o
  CC      drivers/scsi/scsi_lib.o
  CC      fs/autofs/waitq.o
  CC      kernel/workqueue.o
  CC      lib/lockref.o
  CC      net/core/xdp.o
  CC      drivers/tty/sysrq.o
  CC      drivers/ata/libata-core.o
  CC      lib/bcd.o
  CC [M]  drivers/gpu/drm/scheduler/sched_main.o
  CC      net/wireless/ocb.o
  CC      mm/rmap.o
  CC      net/ipv4/tcp_offload.o
  CC      fs/autofs/expire.o
  CC      drivers/gpu/drm/i915/intel_uncore_trace.o
  CC      fs/9p/vfs_file.o
  CC      kernel/trace/trace_uprobe.o
  CC      arch/x86/kernel/hw_breakpoint.o
  CC      drivers/acpi/acpica/psopinfo.o
  AR      fs/debugfs/built-in.a
  CC      net/core/flow_offload.o
  CC      net/sysctl_net.o
  CC      drivers/scsi/constants.o
  CC      net/mac80211/vht.o
  CC [M]  fs/efivarfs/vars.o
  CC      net/sunrpc/svc.o
  CC      mm/vmalloc.o
  CC      drivers/base/topology.o
  CC      net/ipv6/icmp.o
  CC      net/handshake/trace.o
  CC [M]  drivers/gpu/drm/scheduler/sched_fence.o
  CC      fs/lockd/svcproc.o
  HOSTCC  drivers/gpu/drm/xe/xe_gen_wa_oob
  CC      net/wireless/pmsr.o
  CC      drivers/acpi/acpica/psparse.o
  GEN     xe_wa_oob.c xe_wa_oob.h
  CC [M]  drivers/gpu/drm/xe/xe_bb.o
  CC      lib/sort.o
  CC      net/ipv6/mcast.o
  CC      drivers/ata/libata-scsi.o
  CC      net/ethtool/pse-pd.o
  CC      fs/9p/vfs_dir.o
  CC      net/mac80211/he.o
  CC      mm/vma.o
  CC      kernel/pid.o
  CC      drivers/scsi/scsi_lib_dma.o
  CC      net/netfilter/nf_nat_masquerade.o
  CC      drivers/scsi/scsi_scan.o
  CC      drivers/base/container.o
  CC      fs/autofs/dev-ioctl.o
  LD [M]  fs/efivarfs/efivarfs.o
  CC      fs/lockd/svcsubs.o
  CC      lib/parser.o
  AR      drivers/tty/built-in.a
  AR      drivers/net/phy/mediatek/built-in.a
  AR      drivers/net/pse-pd/built-in.a
  CC      net/ipv4/tcp_plb.o
  AR      drivers/net/phy/qcom/built-in.a
  CC      drivers/acpi/acpica/psscope.o
  CC      drivers/net/phy/realtek/realtek_main.o
  AR      net/9p/built-in.a
  CC      arch/x86/kernel/tsc.o
  CC      drivers/net/phy/mdio-boardinfo.o
  CC      drivers/acpi/ec.o
  CC      kernel/trace/rethook.o
  CC      drivers/base/property.o
  CC      lib/debug_locks.o
  CC      drivers/acpi/acpica/pstree.o
  CC      fs/ext4/mmp.o
  CC      drivers/gpu/drm/drm_atomic.o
  CC      fs/file_table.o
  CC [M]  drivers/gpu/drm/xe/xe_bo.o
  CC [M]  drivers/gpu/drm/scheduler/sched_entity.o
  CC      fs/nfs/read.o
  CC      net/sunrpc/svcsock.o
  CC      fs/9p/vfs_dentry.o
  CC      net/ethtool/plca.o
  CC      lib/random32.o
  CC      drivers/acpi/acpica/psutils.o
  CC      drivers/gpu/drm/i915/intel_wakeref.o
  CC      drivers/acpi/acpica/pswalk.o
  CC      drivers/ata/libata-eh.o
  CC      drivers/ata/libata-transport.o
  AR      fs/autofs/built-in.a
  CC      drivers/net/mdio/acpi_mdio.o
  CC      drivers/net/phy/stubs.o
  AR      net/handshake/built-in.a
  CC      drivers/acpi/dock.o
  CC      net/sunrpc/svcauth.o
  GEN     net/wireless/shipped-certs.c
  CC [M]  drivers/gpu/drm/xe/xe_bo_evict.o
  CC      drivers/firewire/init_ohci1394_dma.o
  CC      lib/bust_spinlocks.o
  CC      arch/x86/kernel/tsc_msr.o
  AR      drivers/net/pcs/built-in.a
  CC      net/ipv4/datagram.o
  CC      net/ipv4/raw.o
  CC      drivers/net/mdio/fwnode_mdio.o
  CC      drivers/acpi/acpica/psxface.o
  AR      kernel/trace/built-in.a
  CC      drivers/base/cacheinfo.o
  CC      net/sunrpc/svcauth_unix.o
  CC      fs/lockd/mon.o
  GEN     drivers/scsi/scsi_devinfo_tbl.c
  CC      drivers/scsi/scsi_devinfo.o
  CC      drivers/gpu/drm/drm_atomic_uapi.o
  CC      net/netfilter/nf_nat_ftp.o
  CC [M]  drivers/gpu/drm/xe/xe_devcoredump.o
  CC      fs/9p/v9fs.o
  AR      drivers/net/phy/realtek/built-in.a
  CC      fs/ext4/move_extent.o
  CC      drivers/acpi/pci_root.o
  CC      net/sunrpc/addr.o
  LD [M]  drivers/gpu/drm/scheduler/gpu-sched.o
  CC      drivers/gpu/drm/i915/vlv_iosf_sb.o
  CC      drivers/acpi/pci_link.o
  CC      arch/x86/kernel/io_delay.o
  CC      drivers/acpi/acpica/rsaddr.o
  CC      net/ipv6/reassembly.o
  CC      fs/nfs/symlink.o
  CC      drivers/net/phy/mdio_devres.o
  CC      lib/kasprintf.o
  CC      net/netfilter/nf_nat_irc.o
  AR      drivers/firewire/built-in.a
  CC      net/ethtool/phy.o
  CC      mm/process_vm_access.o
  CC [M]  drivers/gpu/drm/xe/xe_device.o
  CC      drivers/base/swnode.o
  CC      drivers/ata/libata-trace.o
  CC      net/ipv4/udp.o
  CC      fs/ext4/namei.o
  CC      fs/9p/fid.o
  CC      net/wireless/shipped-certs.o
  CC      arch/x86/kernel/rtc.o
  CC      drivers/acpi/acpica/rscalc.o
  CC      net/ipv6/tcp_ipv6.o
  CC      drivers/base/faux.o
  CC      net/ipv6/ping.o
  CC      fs/lockd/trace.o
  CC      net/mac80211/s1g.o
  CC      lib/bitmap.o
  AR      drivers/net/mdio/built-in.a
  CC [M]  drivers/gpu/drm/xe/xe_device_sysfs.o
  CC      net/core/gro.o
  CC      drivers/scsi/scsi_sysctl.o
  CC      fs/9p/xattr.o
  CC      kernel/task_work.o
  CC      drivers/net/phy/phy.o
  CC      drivers/acpi/acpica/rscreate.o
  CC      net/sunrpc/rpcb_clnt.o
  CC      net/sunrpc/timer.o
  CC [M]  drivers/gpu/drm/xe/xe_dma_buf.o
  CC      drivers/gpu/drm/i915/vlv_suspend.o
  CC      net/ipv4/udplite.o
  CC      drivers/gpu/drm/i915/soc/intel_dram.o
  CC      fs/ext4/page-io.o
  AR      drivers/net/ethernet/3com/built-in.a
  CC      kernel/extable.o
  CC      drivers/net/ethernet/8390/ne2k-pci.o
  AR      drivers/net/wireless/admtek/built-in.a
  AR      drivers/net/wireless/ath/built-in.a
  AR      drivers/net/wireless/atmel/built-in.a
  CC      drivers/gpu/drm/i915/soc/intel_gmch.o
  AR      drivers/net/wireless/broadcom/built-in.a
  AR      drivers/net/wireless/intel/built-in.a
  CC      arch/x86/kernel/resource.o
  AR      drivers/net/wireless/intersil/built-in.a
  CC      drivers/ata/libata-sata.o
  AR      drivers/net/wireless/marvell/built-in.a
  AR      drivers/net/wireless/mediatek/built-in.a
  CC      drivers/gpu/drm/i915/soc/intel_rom.o
  CC      mm/page_alloc.o
  AR      drivers/net/wireless/microchip/built-in.a
  AR      drivers/net/wireless/purelifi/built-in.a
  AR      drivers/net/wireless/quantenna/built-in.a
  AR      drivers/net/wireless/ralink/built-in.a
  CC      fs/nfs/unlink.o
  AR      drivers/net/wireless/realtek/built-in.a
  AR      drivers/net/wireless/rsi/built-in.a
  AR      drivers/net/wireless/silabs/built-in.a
  CC      drivers/net/phy/phy-c45.o
  CC      net/mac80211/ibss.o
  AR      drivers/net/wireless/st/built-in.a
  AR      drivers/net/wireless/ti/built-in.a
  AR      drivers/net/wireless/zydas/built-in.a
  CC      drivers/base/auxiliary.o
  AR      drivers/net/wireless/virtual/built-in.a
  AR      drivers/net/wireless/built-in.a
  CC      net/mac80211/iface.o
  AS      arch/x86/kernel/irqflags.o
  CC      drivers/scsi/scsi_proc.o
  CC      fs/ext4/readpage.o
  CC      fs/ext4/resize.o
  CC      fs/ext4/super.o
  CC      arch/x86/kernel/static_call.o
  CC      net/netfilter/nf_nat_sip.o
  CC      lib/scatterlist.o
  CC      drivers/acpi/acpica/rsdumpinfo.o
  CC      drivers/gpu/drm/drm_auth.o
  CC      net/ethtool/tsconfig.o
  AR      fs/9p/built-in.a
  CC      drivers/acpi/pci_irq.o
  CC      drivers/gpu/drm/drm_blend.o
  CC      drivers/net/phy/phy-core.o
  CC      mm/page_frag_cache.o
  CC      net/netfilter/x_tables.o
  CC      drivers/gpu/drm/i915/i915_memcpy.o
  CC      fs/lockd/xdr.o
  CC      drivers/base/devtmpfs.o
  CC      drivers/acpi/acpica/rsinfo.o
  AR      drivers/net/ethernet/adaptec/built-in.a
  CC      drivers/gpu/drm/drm_bridge.o
  CC      arch/x86/kernel/process.o
  CC      kernel/params.o
  CC [M]  drivers/gpu/drm/xe/xe_drm_client.o
  CC      fs/nfs/write.o
  CC      lib/list_sort.o
  CC      drivers/scsi/scsi_debugfs.o
  AR      drivers/net/usb/built-in.a
  CC      drivers/ata/libata-sff.o
  CC      drivers/gpu/drm/drm_cache.o
  AR      drivers/net/ethernet/agere/built-in.a
  CC      lib/uuid.o
  CC      mm/init-mm.o
  CC      drivers/acpi/acpica/rsio.o
  CC      drivers/acpi/acpi_apd.o
  CC      drivers/acpi/acpi_platform.o
  CC      drivers/gpu/drm/i915/i915_mm.o
  CC      drivers/base/module.o
  CC      fs/ext4/symlink.o
  CC      net/ipv4/udp_offload.o
  CC      drivers/net/ethernet/8390/8390.o
  CC      fs/lockd/netlink.o
  CC      drivers/net/mii.o
  CC      net/mac80211/link.o
  CC      net/core/netdev-genl.o
  CC      drivers/base/auxiliary_sysfs.o
  CC      net/netfilter/xt_tcpudp.o
  CC [M]  drivers/gpu/drm/xe/xe_eu_stall.o
  CC      fs/nfs/namespace.o
  CC      drivers/acpi/acpica/rsirq.o
  CC      net/ipv4/arp.o
  CC      fs/nfs/mount_clnt.o
  CC      net/sunrpc/xdr.o
  AR      net/ethtool/built-in.a
  CC      drivers/acpi/acpi_pnp.o
  CC      lib/iov_iter.o
  CC      net/netfilter/xt_CONNSECMARK.o
  CC      arch/x86/kernel/ptrace.o
  CC      drivers/scsi/scsi_trace.o
  CC      net/ipv6/exthdrs.o
  CC      drivers/gpu/drm/i915/i915_sw_fence.o
  CC      drivers/acpi/acpica/rslist.o
  CC      drivers/base/devcoredump.o
  CC      drivers/base/platform-msi.o
  CC      drivers/net/phy/phy_device.o
  CC      fs/ext4/sysfs.o
  CC      fs/super.o
  CC      net/sunrpc/sunrpc_syms.o
  CC      kernel/kthread.o
  CC      net/core/netdev-genl-gen.o
  CC      fs/ext4/xattr.o
  CC      net/mac80211/rate.o
  CC      net/ipv6/datagram.o
  CC      drivers/acpi/acpica/rsmemory.o
  CC      drivers/cdrom/cdrom.o
  CC      fs/lockd/clnt4xdr.o
  CC      lib/clz_ctz.o
  CC      net/ipv6/ip6_flowlabel.o
  CC      mm/memblock.o
  AR      drivers/auxdisplay/built-in.a
  CC      lib/bsearch.o
  CC      drivers/gpu/drm/i915/i915_sw_fence_work.o
  CC      drivers/acpi/acpica/rsmisc.o
  CC      drivers/pcmcia/cs.o
  CC      net/mac80211/michael.o
  CC      drivers/ata/libata-pmp.o
  CC      net/sunrpc/cache.o
  AR      drivers/net/ethernet/8390/built-in.a
  AR      drivers/net/ethernet/alacritech/built-in.a
  CC      drivers/scsi/scsi_logging.o
  CC      fs/lockd/xdr4.o
  AR      drivers/net/ethernet/alteon/built-in.a
  AR      drivers/net/ethernet/amazon/built-in.a
  CC      drivers/base/physical_location.o
  AR      drivers/net/ethernet/amd/built-in.a
  AR      drivers/net/ethernet/aquantia/built-in.a
  AR      drivers/net/ethernet/arc/built-in.a
  AR      drivers/net/ethernet/asix/built-in.a
  AR      drivers/net/ethernet/atheros/built-in.a
  CC      fs/lockd/svc4proc.o
  AR      drivers/net/ethernet/cadence/built-in.a
  CC      drivers/net/ethernet/broadcom/bnx2.o
  CC      drivers/net/ethernet/broadcom/tg3.o
  CC      drivers/base/trace.o
  CC      drivers/gpu/drm/i915/i915_syncmap.o
  CC      drivers/net/phy/linkmode.o
  AR      drivers/net/ethernet/brocade/built-in.a
  CC      net/sunrpc/rpc_pipe.o
  CC      drivers/acpi/power.o
  CC      arch/x86/kernel/tls.o
  CC      drivers/gpu/drm/drm_color_mgmt.o
  CC      drivers/acpi/acpica/rsserial.o
  CC      fs/char_dev.o
  CC      net/netfilter/xt_NFLOG.o
  CC      drivers/net/phy/phy_link_topology.o
  CC [M]  drivers/gpu/drm/xe/xe_exec.o
  CC      net/sunrpc/sysfs.o
  AR      drivers/net/ethernet/cavium/common/built-in.a
  AR      drivers/net/ethernet/cavium/thunder/built-in.a
  AR      drivers/net/ethernet/cavium/liquidio/built-in.a
  AR      drivers/net/ethernet/cavium/octeon/built-in.a
  CC      net/core/gso.o
  AR      drivers/net/ethernet/cavium/built-in.a
  AR      drivers/net/ethernet/chelsio/built-in.a
  CC      fs/stat.o
  CC      drivers/gpu/drm/drm_connector.o
  CC      drivers/net/loopback.o
  CC      net/netfilter/xt_SECMARK.o
  CC      drivers/gpu/drm/i915/i915_user_extensions.o
  CC      drivers/acpi/acpica/rsutils.o
  CC      drivers/pcmcia/socket_sysfs.o
  CC      net/mac80211/tkip.o
  CC      net/ipv4/icmp.o
  CC      arch/x86/kernel/step.o
  CC      drivers/scsi/scsi_pm.o
  CC      drivers/usb/common/common.o
  CC      kernel/sys_ni.o
  CC      drivers/input/serio/serio.o
  AR      drivers/base/built-in.a
  CC      fs/nfs/nfstrace.o
  CC      net/core/net-sysfs.o
  CC      net/sunrpc/svc_xprt.o
  CC      drivers/input/serio/i8042.o
  CC      drivers/ata/libata-acpi.o
  CC      mm/slub.o
  CC      drivers/gpu/drm/i915/i915_debugfs.o
  CC      lib/find_bit.o
  CC      drivers/input/keyboard/atkbd.o
  CC      net/ipv6/inet6_connection_sock.o
  CC      drivers/input/mouse/psmouse-base.o
  CC      drivers/acpi/acpica/rsxface.o
  CC      kernel/nsproxy.o
  CC      drivers/net/phy/phy_package.o
  AR      drivers/input/joystick/built-in.a
  AR      drivers/input/tablet/built-in.a
  CC      net/netfilter/xt_TCPMSS.o
  CC      net/sunrpc/xprtmultipath.o
  CC      drivers/ata/libata-pata-timings.o
  CC      net/netfilter/xt_conntrack.o
  CC      drivers/gpu/drm/drm_crtc.o
  CC      drivers/pcmcia/cardbus.o
  CC      fs/lockd/procfs.o
  CC      drivers/input/mouse/synaptics.o
  CC      drivers/input/serio/serport.o
  AR      drivers/input/touchscreen/built-in.a
  CC      drivers/usb/core/usb.o
  CC [M]  drivers/gpu/drm/xe/xe_exec_queue.o
  CC      net/ipv6/udp_offload.o
  CC      drivers/rtc/lib.o
  CC      arch/x86/kernel/i8237.o
  CC      lib/llist.o
  AR      drivers/cdrom/built-in.a
  CC      drivers/gpu/drm/i915/i915_debugfs_params.o
  CC      drivers/scsi/scsi_bsg.o
  CC      drivers/acpi/acpica/tbdata.o
  CC      lib/lwq.o
  CC      drivers/usb/common/debug.o
  CC      net/sunrpc/stats.o
  CC      fs/nfs/export.o
  CC      kernel/notifier.o
  CC      drivers/ata/ahci.o
  CC      drivers/acpi/event.o
  AR      drivers/usb/common/built-in.a
  AR      drivers/input/misc/built-in.a
  CC      drivers/usb/core/hub.o
  CC      fs/exec.o
  CC      net/ipv4/devinet.o
  CC      lib/memweight.o
  CC      drivers/input/mouse/focaltech.o
  CC      arch/x86/kernel/stacktrace.o
  CC      net/ipv6/seg6.o
  CC      net/netfilter/xt_policy.o
  CC      drivers/pcmcia/ds.o
  CC      lib/kfifo.o
  CC      drivers/scsi/scsi_common.o
  AR      fs/lockd/built-in.a
  AR      drivers/net/ethernet/cisco/built-in.a
  CC      net/core/hotdata.o
  CC      drivers/acpi/evged.o
  CC      drivers/acpi/acpica/tbfadt.o
  CC      drivers/rtc/class.o
  CC      drivers/net/phy/phy_caps.o
  CC      net/core/netdev_rx_queue.o
  AR      drivers/input/keyboard/built-in.a
  CC      drivers/acpi/sysfs.o
  CC      net/core/net-procfs.o
  CC      net/mac80211/aes_cmac.o
  CC      drivers/acpi/property.o
  CC      drivers/input/input.o
  CC      drivers/input/serio/libps2.o
  CC      drivers/input/input-compat.o
  CC      net/sunrpc/sysctl.o
  CC      drivers/gpu/drm/drm_displayid.o
  CC      drivers/scsi/scsi_transport_spi.o
  CC      arch/x86/kernel/reboot.o
  CC      drivers/pcmcia/pcmcia_resource.o
  CC      drivers/gpu/drm/i915/i915_pmu.o
  CC      net/mac80211/aes_gmac.o
  CC      fs/ext4/xattr_hurd.o
  CC      drivers/acpi/acpica/tbfind.o
  CC      lib/percpu-refcount.o
  CC      net/core/netpoll.o
  CC      drivers/rtc/interface.o
  CC      drivers/acpi/debugfs.o
  CC      drivers/input/mouse/alps.o
  CC      fs/pipe.o
  CC      kernel/ksysfs.o
  CC      drivers/net/netconsole.o
  CC      drivers/gpu/drm/drm_drv.o
  AR      drivers/usb/phy/built-in.a
  CC      net/netfilter/xt_state.o
  CC      drivers/usb/mon/mon_main.o
  CC      drivers/pcmcia/cistpl.o
  CC [M]  drivers/gpu/drm/xe/xe_execlist.o
  CC      drivers/net/virtio_net.o
  CC      arch/x86/kernel/msr.o
  CC      drivers/net/net_failover.o
  CC      drivers/ata/libahci.o
  CC      drivers/acpi/acpica/tbinstal.o
  CC      arch/x86/kernel/cpuid.o
  CC      net/ipv6/fib6_notifier.o
  CC      drivers/net/phy/mdio_bus.o
  CC      drivers/usb/mon/mon_stat.o
  AR      drivers/input/serio/built-in.a
  CC      drivers/input/mouse/byd.o
  CC      drivers/acpi/acpi_lpat.o
  CC      drivers/input/input-mt.o
  CC      net/ipv6/rpl.o
  AR      drivers/net/ethernet/cortina/built-in.a
  CC      fs/nfs/sysfs.o
  CC      drivers/acpi/acpica/tbprint.o
  CC      lib/rhashtable.o
  AR      drivers/net/ethernet/dec/tulip/built-in.a
  AR      drivers/net/ethernet/dec/built-in.a
  CC      net/ipv4/af_inet.o
  CC      kernel/cred.o
  CC      drivers/input/input-poller.o
  CC      drivers/scsi/virtio_scsi.o
  CC      drivers/gpu/drm/drm_dumb_buffers.o
  CC      fs/ext4/xattr_trusted.o
  CC      kernel/reboot.o
  CC      drivers/usb/core/hcd.o
  AR      drivers/net/ethernet/dlink/built-in.a
  CC      fs/nfs/fs_context.o
  CC      drivers/ata/ata_piix.o
  AR      net/sunrpc/built-in.a
  CC [M]  drivers/gpu/drm/xe/xe_force_wake.o
  CC      net/mac80211/fils_aead.o
  CC      drivers/gpu/drm/i915/gt/gen2_engine_cs.o
  CC      arch/x86/kernel/early-quirks.o
  CC      drivers/usb/mon/mon_text.o
  CC      drivers/acpi/acpica/tbutils.o
  CC      drivers/acpi/acpica/tbxface.o
  CC      net/ipv6/ioam6.o
  CC      drivers/input/ff-core.o
  CC      drivers/scsi/sd.o
  CC      fs/ext4/xattr_user.o
  CC [M]  net/netfilter/nf_log_syslog.o
  CC      drivers/gpu/drm/i915/gt/gen6_engine_cs.o
  CC      kernel/async.o
  CC      drivers/gpu/drm/drm_edid.o
  CC      fs/nfs/nfsroot.o
  CC      drivers/rtc/nvmem.o
  AR      net/wireless/built-in.a
  CC      net/mac80211/cfg.o
  CC      drivers/usb/core/urb.o
  CC      mm/madvise.o
  CC [M]  net/netfilter/xt_mark.o
  CC      drivers/usb/host/pci-quirks.o
  CC      drivers/net/phy/mdio_device.o
  CC [M]  net/netfilter/xt_nat.o
  CC      drivers/scsi/sr.o
  CC      drivers/gpu/drm/i915/gt/gen6_ppgtt.o
  CC      drivers/acpi/acpica/tbxfload.o
  CC      net/core/fib_rules.o
  CC      mm/page_io.o
  CC      drivers/pcmcia/pcmcia_cis.o
  CC      drivers/input/mouse/logips2pp.o
  CC      lib/base64.o
  CC      drivers/pcmcia/rsrc_mgr.o
  CC      fs/namei.o
  CC      drivers/scsi/sr_ioctl.o
  CC      fs/nfs/sysctl.o
  CC      lib/once.o
  CC [M]  net/netfilter/xt_LOG.o
  CC      drivers/usb/class/usblp.o
  CC      drivers/input/touchscreen.o
  CC      kernel/range.o
  CC      drivers/usb/mon/mon_bin.o
  CC      arch/x86/kernel/smp.o
  CC [M]  drivers/gpu/drm/xe/xe_ggtt.o
  CC      drivers/rtc/dev.o
  CC      drivers/acpi/acpica/tbxfroot.o
  CC      net/mac80211/ethtool.o
  CC      drivers/net/phy/swphy.o
  CC      kernel/smpboot.o
  CC      kernel/ucount.o
  CC      drivers/acpi/acpica/utaddress.o
  CC      drivers/usb/storage/scsiglue.o
  AR      drivers/usb/misc/built-in.a
  CC      drivers/ata/pata_amd.o
  CC      drivers/gpu/drm/drm_eld.o
  CC      kernel/regset.o
  CC      drivers/gpu/drm/i915/gt/gen7_renderclear.o
  CC      lib/refcount.o
  AR      drivers/net/ethernet/emulex/built-in.a
  CC      drivers/scsi/sr_vendor.o
  CC      drivers/i2c/algos/i2c-algo-bit.o
  CC      net/ipv6/sysctl_net_ipv6.o
  CC      drivers/i2c/busses/i2c-i801.o
  CC      drivers/input/mouse/lifebook.o
  AR      drivers/i2c/muxes/built-in.a
  CC      fs/ext4/fast_commit.o
  CC      drivers/usb/core/message.o
  CC      arch/x86/kernel/smpboot.o
  CC      drivers/acpi/acpica/utalloc.o
  CC      fs/fcntl.o
  CC      net/ipv6/xfrm6_policy.o
  CC      drivers/usb/host/ehci-hcd.o
  CC      kernel/ksyms_common.o
  CC      lib/rcuref.o
  CC      drivers/input/mouse/trackpoint.o
  CC [M]  net/netfilter/xt_MASQUERADE.o
  CC      mm/swap_state.o
  CC      mm/swapfile.o
  CC      drivers/rtc/proc.o
  CC      drivers/ata/pata_oldpiix.o
  CC      net/mac80211/rx.o
  CC      lib/usercopy.o
  CC      drivers/pcmcia/rsrc_nonstatic.o
  CC      net/ipv4/igmp.o
  CC      net/ipv4/fib_frontend.o
  AR      drivers/usb/class/built-in.a
  CC      drivers/usb/early/ehci-dbgp.o
  CC      drivers/usb/core/driver.o
  CC [M]  drivers/gpu/drm/xe/xe_gpu_scheduler.o
  CC      drivers/usb/core/config.o
  CC      drivers/acpi/acpica/utascii.o
  CC      drivers/net/phy/fixed_phy.o
  CC      fs/nfs/nfs3super.o
  CC      kernel/groups.o
  CC      drivers/usb/storage/protocol.o
  CC      arch/x86/kernel/tsc_sync.o
  CC      arch/x86/kernel/setup_percpu.o
  CC      lib/errseq.o
  AR      drivers/usb/mon/built-in.a
  CC      arch/x86/kernel/mpparse.o
  CC      drivers/gpu/drm/i915/gt/gen8_engine_cs.o
  CC      drivers/i2c/i2c-boardinfo.o
  CC      drivers/pcmcia/yenta_socket.o
  CC      drivers/usb/storage/transport.o
  CC      net/ipv4/fib_semantics.o
  CC      lib/bucket_locks.o
  CC      drivers/rtc/sysfs.o
  CC      fs/ext4/orphan.o
  CC [M]  drivers/gpu/drm/xe/xe_gsc.o
  CC      net/mac80211/spectmgmt.o
  CC      drivers/acpi/acpica/utbuffer.o
  CC      drivers/input/mouse/cypress_ps2.o
  AR      drivers/i2c/algos/built-in.a
  CC      net/core/net-traces.o
  CC      net/core/selftests.o
  CC      fs/ext4/acl.o
  CC      drivers/ata/pata_sch.o
  CC      drivers/ata/pata_mpiix.o
  AR      drivers/i2c/busses/built-in.a
  CC      drivers/gpu/drm/drm_encoder.o
  CC      drivers/scsi/sg.o
  AR      drivers/net/ethernet/engleder/built-in.a
  CC      drivers/acpi/acpica/utcksum.o
  CC      drivers/usb/core/file.o
  CC [M]  net/netfilter/xt_addrtype.o
  CC      fs/nfs/nfs3client.o
  CC      net/ipv6/xfrm6_state.o
  AR      drivers/i3c/built-in.a
  CC      net/ipv6/xfrm6_input.o
  AR      drivers/usb/early/built-in.a
  CC [M]  drivers/gpu/drm/xe/xe_gsc_debugfs.o
  CC      lib/generic-radix-tree.o
  CC      lib/bitmap-str.o
  CC [M]  drivers/gpu/drm/xe/xe_gsc_proxy.o
  CC [M]  drivers/gpu/drm/xe/xe_gsc_submit.o
  AR      drivers/net/ethernet/ezchip/built-in.a
  CC      drivers/rtc/rtc-mc146818-lib.o
  CC      kernel/kcmp.o
  CC      drivers/i2c/i2c-core-base.o
  CC      drivers/gpu/drm/drm_file.o
  AR      drivers/net/phy/built-in.a
  CC      drivers/usb/storage/usb.o
  CC      drivers/input/ff-memless.o
  CC      net/ipv6/xfrm6_output.o
  CC      drivers/gpu/drm/i915/gt/gen8_ppgtt.o
  CC      drivers/acpi/acpica/utcopy.o
  CC      net/core/ptp_classifier.o
  CC      drivers/input/mouse/psmouse-smbus.o
  CC      arch/x86/kernel/trace_clock.o
  CC      net/mac80211/tx.o
  CC      net/core/netprio_cgroup.o
  CC      net/core/netclassid_cgroup.o
  CC      kernel/freezer.o
  CC      drivers/usb/host/ehci-pci.o
  CC      fs/ioctl.o
  CC      arch/x86/kernel/trace.o
  CC      drivers/ata/ata_generic.o
  CC      drivers/usb/core/buffer.o
  AR      drivers/media/i2c/built-in.a
  AR      drivers/media/tuners/built-in.a
  AR      drivers/media/rc/keymaps/built-in.a
  CC      lib/string_helpers.o
  AR      drivers/media/rc/built-in.a
  AR      drivers/pcmcia/built-in.a
  CC [M]  drivers/gpu/drm/xe/xe_gt.o
  AR      drivers/media/common/b2c2/built-in.a
  AR      drivers/media/common/saa7146/built-in.a
  CC      fs/readdir.o
  AR      drivers/media/common/siano/built-in.a
  AR      drivers/media/platform/allegro-dvt/built-in.a
  CC      kernel/profile.o
  AR      drivers/media/common/v4l2-tpg/built-in.a
  AR      drivers/media/platform/amlogic/meson-ge2d/built-in.a
  AR      drivers/media/common/videobuf2/built-in.a
  AR      drivers/media/platform/amlogic/built-in.a
  AR      drivers/media/common/built-in.a
  AR      drivers/media/platform/amphion/built-in.a
  CC      drivers/usb/storage/initializers.o
  AR      drivers/media/platform/aspeed/built-in.a
  CC      drivers/rtc/rtc-cmos.o
  AR      drivers/media/platform/atmel/built-in.a
  CC      net/ipv6/xfrm6_protocol.o
  AR      drivers/media/platform/broadcom/built-in.a
  CC      drivers/acpi/acpica/utexcep.o
  AR      drivers/media/platform/cadence/built-in.a
  AR      drivers/media/platform/chips-media/coda/built-in.a
  AR      drivers/media/platform/chips-media/wave5/built-in.a
  AR      drivers/media/platform/chips-media/built-in.a
  CC      drivers/usb/core/sysfs.o
  CC      fs/ext4/xattr_security.o
  AR      drivers/media/platform/imagination/built-in.a
  CC      drivers/usb/host/ohci-hcd.o
  AR      drivers/media/platform/intel/built-in.a
  AR      drivers/media/platform/marvell/built-in.a
  AR      drivers/media/platform/mediatek/jpeg/built-in.a
  AR      drivers/media/platform/mediatek/mdp/built-in.a
  AR      drivers/media/platform/microchip/built-in.a
  AR      drivers/media/platform/mediatek/vcodec/common/built-in.a
  AR      drivers/media/platform/mediatek/vcodec/encoder/built-in.a
  CC      net/ipv6/netfilter.o
  CC      drivers/gpu/drm/i915/gt/intel_breadcrumbs.o
  AR      drivers/media/platform/mediatek/vcodec/decoder/built-in.a
  CC      kernel/stacktrace.o
  AR      drivers/net/ethernet/fujitsu/built-in.a
  AR      drivers/media/platform/mediatek/vcodec/built-in.a
  CC      drivers/acpi/acpi_pcc.o
  AR      drivers/media/platform/mediatek/vpu/built-in.a
  AR      drivers/media/pci/ttpci/built-in.a
  AR      drivers/media/platform/mediatek/mdp3/built-in.a
  AR      drivers/media/platform/mediatek/built-in.a
  AR      drivers/media/pci/b2c2/built-in.a
  AR      drivers/media/usb/b2c2/built-in.a
  AR      drivers/media/mmc/siano/built-in.a
  AR      drivers/media/platform/nuvoton/built-in.a
  AR      drivers/media/pci/pluto2/built-in.a
  AR      drivers/media/usb/dvb-usb/built-in.a
  AR      drivers/media/mmc/built-in.a
  CC      mm/dmapool.o
  AR      drivers/media/pci/dm1105/built-in.a
  AR      drivers/media/usb/dvb-usb-v2/built-in.a
  CC      fs/nfs/nfs3proc.o
  AR      drivers/media/platform/nvidia/tegra-vde/built-in.a
  CC      drivers/input/sparse-keymap.o
  AR      drivers/media/platform/nvidia/built-in.a
  AR      drivers/media/pci/pt1/built-in.a
  AR      drivers/media/usb/s2255/built-in.a
  CC      arch/x86/kernel/rethook.o
  AR      drivers/media/pci/pt3/built-in.a
  AR      drivers/media/usb/siano/built-in.a
  AR      drivers/media/platform/nxp/dw100/built-in.a
  AR      drivers/media/usb/ttusb-budget/built-in.a
  AR      drivers/media/pci/mantis/built-in.a
  AR      drivers/media/platform/nxp/imx-jpeg/built-in.a
  AR      drivers/media/usb/ttusb-dec/built-in.a
  AR      drivers/media/pci/ngene/built-in.a
  AR      drivers/media/platform/nxp/imx8-isi/built-in.a
  AR      drivers/media/usb/built-in.a
  AR      drivers/media/platform/nxp/built-in.a
  AR      drivers/media/pci/ddbridge/built-in.a
  AR      drivers/input/mouse/built-in.a
  CC      kernel/dma.o
  AR      drivers/media/pci/saa7146/built-in.a
  AR      drivers/media/pci/smipcie/built-in.a
  AR      drivers/media/platform/qcom/camss/built-in.a
  CC      drivers/acpi/acpica/utdebug.o
  AR      drivers/media/platform/raspberrypi/pisp_be/built-in.a
  CC      drivers/gpu/drm/drm_fourcc.o
  AR      drivers/media/platform/qcom/iris/built-in.a
  AR      drivers/media/pci/netup_unidvb/built-in.a
  AR      drivers/media/platform/raspberrypi/rp1-cfe/built-in.a
  AR      drivers/media/platform/raspberrypi/built-in.a
  AR      drivers/media/platform/qcom/venus/built-in.a
  AR      drivers/media/pci/intel/ipu3/built-in.a
  AR      drivers/media/platform/qcom/built-in.a
  CC      drivers/usb/core/endpoint.o
  AR      drivers/media/pci/intel/ivsc/built-in.a
  AR      drivers/media/pci/intel/built-in.a
  CC      drivers/scsi/scsi_sysfs.o
  AR      drivers/media/platform/renesas/rcar-vin/built-in.a
  AR      net/netfilter/built-in.a
  CC      kernel/smp.o
  AR      drivers/media/pci/built-in.a
  AR      drivers/media/platform/renesas/rzg2l-cru/built-in.a
  CC      arch/x86/kernel/vmcore_info_32.o
  CC      drivers/usb/storage/sierra_ms.o
  AR      drivers/media/platform/renesas/vsp1/built-in.a
  AR      drivers/media/platform/renesas/built-in.a
  CC      drivers/input/vivaldi-fmap.o
  AR      drivers/media/platform/rockchip/rga/built-in.a
  AR      drivers/media/platform/samsung/exynos-gsc/built-in.a
  AR      drivers/media/platform/rockchip/rkisp1/built-in.a
  CC      arch/x86/kernel/machine_kexec_32.o
  AR      drivers/media/platform/rockchip/built-in.a
  AR      drivers/media/platform/samsung/exynos4-is/built-in.a
  CC      drivers/acpi/acpica/utdecode.o
  CC      lib/hexdump.o
  AR      drivers/media/platform/samsung/s3c-camif/built-in.a
  AR      drivers/ata/built-in.a
  AR      drivers/media/platform/samsung/s5p-g2d/built-in.a
  AR      drivers/net/ethernet/fungible/built-in.a
  CC      drivers/gpu/drm/i915/gt/intel_context.o
  AR      drivers/media/platform/samsung/s5p-jpeg/built-in.a
  AR      drivers/pps/clients/built-in.a
  AR      drivers/media/platform/samsung/s5p-mfc/built-in.a
  CC      drivers/pps/pps.o
  AR      drivers/media/platform/samsung/built-in.a
  CC [M]  drivers/gpu/drm/xe/xe_gt_ccs_mode.o
  CC      kernel/uid16.o
  CC      drivers/usb/host/ohci-pci.o
  AR      drivers/media/platform/st/sti/bdisp/built-in.a
  CC      drivers/usb/core/devio.o
  CC      drivers/pps/kapi.o
  AR      drivers/media/platform/st/sti/c8sectpfe/built-in.a
  AR      drivers/media/platform/st/sti/delta/built-in.a
  CC      drivers/pps/sysfs.o
  AR      drivers/media/platform/st/sti/hva/built-in.a
  AR      drivers/media/platform/st/stm32/built-in.a
  CC      drivers/input/input-leds.o
  AR      drivers/media/platform/st/built-in.a
  CC      drivers/input/evdev.o
  CC      drivers/i2c/i2c-core-smbus.o
  CC      drivers/usb/storage/option_ms.o
  AR      drivers/media/platform/sunxi/sun4i-csi/built-in.a
  AR      drivers/media/platform/sunxi/sun6i-csi/built-in.a
  CC      lib/kstrtox.o
  CC      net/ipv4/fib_trie.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/usb/core/notify.o
  AR      drivers/media/platform/sunxi/sun8i-di/built-in.a
  AR      drivers/media/platform/sunxi/sun8i-rotate/built-in.a
  CC      kernel/kallsyms.o
  AR      drivers/media/platform/sunxi/built-in.a
  CC      drivers/ptp/ptp_clock.o
  CC      drivers/power/supply/power_supply_core.o
  AR      fs/ext4/built-in.a
  CC      drivers/hwmon/hwmon.o
  CC      drivers/gpu/drm/i915/gt/intel_context_sseu.o
  AR      drivers/media/platform/synopsys/hdmirx/built-in.a
  CC      drivers/acpi/acpica/utdelete.o
  AR      drivers/media/platform/synopsys/built-in.a
  AR      drivers/media/platform/verisilicon/built-in.a
  AR      drivers/media/platform/ti/am437x/built-in.a
  CC      mm/hugetlb.o
  CC      kernel/acct.o
  AR      drivers/media/platform/ti/cal/built-in.a
  CC      lib/iomap.o
  CC      drivers/usb/host/uhci-hcd.o
  AR      drivers/media/platform/ti/vpe/built-in.a
  AR      drivers/media/platform/ti/davinci/built-in.a
  CC      net/core/dst_cache.o
  AR      drivers/media/platform/ti/j721e-csi2rx/built-in.a
  CC      drivers/acpi/acpica/uterror.o
  AR      drivers/media/platform/ti/omap/built-in.a
  AR      drivers/media/platform/ti/omap3isp/built-in.a
  AR      drivers/media/platform/ti/built-in.a
  AR      drivers/rtc/built-in.a
  CC      lib/iomap_copy.o
  AR      drivers/media/platform/via/built-in.a
  AR      drivers/media/platform/xilinx/built-in.a
  AR      drivers/media/platform/built-in.a
  AR      drivers/media/firewire/built-in.a
  CC      net/ipv4/fib_notifier.o
  CC      drivers/acpi/ac.o
  CC      lib/devres.o
  CC      drivers/power/supply/power_supply_sysfs.o
  CC      kernel/vmcore_info.o
  AR      drivers/media/spi/built-in.a
  AR      drivers/media/test-drivers/built-in.a
  AR      drivers/media/built-in.a
  CC      net/core/gro_cells.o
  AS      arch/x86/kernel/relocate_kernel_32.o
  CC      drivers/i2c/i2c-core-acpi.o
  AR      drivers/net/ethernet/google/built-in.a
  CC      net/ipv4/inet_fragment.o
  CC      drivers/gpu/drm/drm_framebuffer.o
  CC      fs/nfs/nfs3xdr.o
  CC      drivers/usb/storage/usual-tables.o
  CC      net/ipv4/ping.o
  AR      drivers/pps/built-in.a
  CC      fs/select.o
  CC      drivers/gpu/drm/drm_gem.o
  CC      mm/mmu_notifier.o
  CC      arch/x86/kernel/module.o
  CC      net/ipv6/proc.o
  CC      net/core/failover.o
  CC      drivers/acpi/acpica/uteval.o
  CC      net/ipv4/ip_tunnel_core.o
  CC      net/mac80211/key.o
  AR      drivers/net/ethernet/hisilicon/built-in.a
  CC      drivers/power/supply/power_supply_leds.o
  CC      drivers/i2c/i2c-smbus.o
  CC [M]  drivers/gpu/drm/xe/xe_gt_clock.o
  CC      drivers/usb/host/xhci.o
  CC      mm/migrate.o
  CC      arch/x86/kernel/doublefault_32.o
  AR      drivers/thermal/broadcom/built-in.a
  AR      drivers/watchdog/built-in.a
  CC      fs/nfs/nfs3acl.o
  AR      drivers/thermal/renesas/built-in.a
  AR      drivers/scsi/built-in.a
  CC      drivers/gpu/drm/drm_ioctl.o
  CC      lib/check_signature.o
  AR      drivers/thermal/samsung/built-in.a
  CC      drivers/gpu/drm/drm_lease.o
  CC      drivers/thermal/intel/intel_tcc.o
  AR      drivers/usb/storage/built-in.a
  CC      drivers/acpi/acpica/utglobal.o
  CC      arch/x86/kernel/early_printk.o
  CC      arch/x86/kernel/hpet.o
  AR      drivers/input/built-in.a
  CC      drivers/ptp/ptp_chardev.o
  CC [M]  drivers/gpu/drm/xe/xe_gt_freq.o
  CC      lib/interval_tree.o
  CC      fs/dcache.o
  CC [M]  drivers/gpu/drm/xe/xe_gt_idle.o
  AR      drivers/thermal/st/built-in.a
  CC      drivers/md/md.o
  CC      drivers/power/supply/power_supply_hwmon.o
  CC      drivers/gpu/drm/i915/gt/intel_engine_cs.o
  CC      drivers/thermal/intel/therm_throt.o
  CC      kernel/elfcorehdr.o
  CC      net/ipv4/gre_offload.o
  CC      drivers/md/md-bitmap.o
  CC      fs/nfs/nfs4proc.o
  CC      drivers/acpi/acpica/uthex.o
  CC      lib/assoc_array.o
  CC      net/ipv6/syncookies.o
  AR      drivers/thermal/qcom/built-in.a
  CC      drivers/ptp/ptp_sysfs.o
  CC      fs/nfs/nfs4xdr.o
  CC      arch/x86/kernel/amd_nb.o
  CC      net/ipv4/metrics.o
  AR      drivers/hwmon/built-in.a
  CC      drivers/gpu/drm/i915/gt/intel_engine_heartbeat.o
  AR      drivers/i2c/built-in.a
  CC      kernel/kexec_core.o
  AR      drivers/net/ethernet/huawei/built-in.a
  CC      kernel/kexec.o
  CC      drivers/ptp/ptp_vclock.o
  CC      drivers/md/md-autodetect.o
  AR      drivers/net/ethernet/broadcom/built-in.a
  CC      drivers/md/dm.o
  CC      mm/page_counter.o
  AR      drivers/power/supply/built-in.a
  CC      drivers/net/ethernet/intel/e1000/e1000_main.o
  AR      drivers/power/built-in.a
  CC      drivers/net/ethernet/intel/e1000e/82571.o
  CC      drivers/acpi/acpica/utids.o
  CC      mm/hugetlb_cgroup.o
  CC      drivers/usb/core/generic.o
  CC      drivers/net/ethernet/intel/e100.o
  AR      drivers/thermal/tegra/built-in.a
  CC      net/mac80211/util.o
  CC      drivers/ptp/ptp_kvm_x86.o
  CC      fs/nfs/nfs4state.o
  CC      drivers/acpi/acpica/utinit.o
  CC      drivers/net/ethernet/intel/e1000/e1000_hw.o
  AR      drivers/net/ethernet/i825xx/built-in.a
  CC      arch/x86/kernel/amd_node.o
  CC      drivers/cpufreq/cpufreq.o
  CC      drivers/usb/core/quirks.o
  CC      lib/bitrev.o
  CC      drivers/gpu/drm/i915/gt/intel_engine_pm.o
  CC      drivers/net/ethernet/intel/e1000/e1000_ethtool.o
  CC [M]  drivers/gpu/drm/xe/xe_gt_mcr.o
  CC      fs/nfs/nfs4renewd.o
  CC      drivers/acpi/acpica/utlock.o
  CC      drivers/net/ethernet/intel/e1000e/ich8lan.o
  CC      mm/early_ioremap.o
  CC      net/ipv6/calipso.o
  CC      drivers/ptp/ptp_kvm_common.o
  CC [M]  drivers/thermal/intel/x86_pkg_temp_thermal.o
  CC      drivers/gpu/drm/i915/gt/intel_engine_user.o
  CC      drivers/net/ethernet/intel/e1000/e1000_param.o
  CC      fs/inode.o
  CC      lib/crc-ccitt.o
  CC      mm/secretmem.o
  AR      net/core/built-in.a
  CC      drivers/md/dm-table.o
  CC      drivers/gpu/drm/drm_managed.o
  CC      drivers/cpuidle/governors/menu.o
  CC      drivers/cpuidle/cpuidle.o
  CC      drivers/gpu/drm/i915/gt/intel_execlists_submission.o
  CC      drivers/gpu/drm/i915/gt/intel_ggtt.o
  CC      drivers/acpi/acpica/utmath.o
  CC      drivers/cpuidle/governors/haltpoll.o
  CC      kernel/utsname.o
  CC      lib/crc16.o
  CC      arch/x86/kernel/kvm.o
  CC      net/mac80211/parse.o
  CC      net/ipv4/netlink.o
  CC      drivers/usb/core/devices.o
  AR      drivers/thermal/mediatek/built-in.a
  CC      mm/hmm.o
  AR      drivers/net/ethernet/microsoft/built-in.a
  AR      drivers/mmc/built-in.a
  CC      drivers/cpufreq/freq_table.o
  CC      drivers/acpi/button.o
  CC      drivers/acpi/acpica/utmisc.o
  AR      drivers/ptp/built-in.a
  CC      drivers/usb/core/phy.o
  AR      drivers/thermal/intel/built-in.a
  CC      fs/attr.o
  CC      drivers/thermal/thermal_core.o
  CC      net/mac80211/wme.o
  HOSTCC  lib/gen_crc32table
  CC      kernel/pid_namespace.o
  CC      arch/x86/kernel/kvmclock.o
  AR      drivers/ufs/built-in.a
  CC      fs/nfs/nfs4super.o
  CC [M]  drivers/gpu/drm/xe/xe_gt_pagefault.o
  CC      lib/xxhash.o
  CC      drivers/acpi/acpica/utmutex.o
  CC      drivers/usb/host/xhci-mem.o
  CC      drivers/acpi/fan_core.o
  CC      drivers/cpufreq/cpufreq_performance.o
  CC      drivers/cpuidle/driver.o
  CC      drivers/md/dm-target.o
  CC      fs/bad_inode.o
  CC      lib/genalloc.o
  CC      drivers/cpuidle/governor.o
  CC      kernel/stop_machine.o
  CC      net/mac80211/chan.o
  CC      arch/x86/kernel/paravirt.o
  CC      drivers/acpi/fan_attr.o
  CC      drivers/usb/core/port.o
  CC      drivers/acpi/acpica/utnonansi.o
  CC      net/ipv4/nexthop.o
  AR      drivers/cpuidle/governors/built-in.a
  CC      drivers/cpufreq/cpufreq_userspace.o
  AR      drivers/net/ethernet/litex/built-in.a
  CC      lib/percpu_counter.o
  CC      lib/audit.o
  CC      drivers/md/dm-linear.o
  CC      mm/memfd.o
  CC      drivers/gpu/drm/i915/gt/intel_ggtt_fencing.o
  CC      kernel/audit.o
  CC      drivers/gpu/drm/drm_mm.o
  CC      net/ipv6/ah6.o
  CC      drivers/net/ethernet/intel/e1000e/80003es2lan.o
  CC      fs/file.o
  CC      drivers/cpuidle/sysfs.o
  AR      drivers/firmware/arm_ffa/built-in.a
  CC      drivers/acpi/acpica/utobject.o
  AR      drivers/firmware/arm_scmi/built-in.a
  CC      drivers/net/ethernet/intel/e1000e/mac.o
  AR      drivers/firmware/broadcom/built-in.a
  CC      lib/syscall.o
  AR      drivers/firmware/cirrus/test/built-in.a
  AR      drivers/firmware/cirrus/built-in.a
  AR      drivers/net/ethernet/marvell/octeon_ep/built-in.a
  AR      drivers/firmware/meson/built-in.a
  AR      drivers/net/ethernet/marvell/octeon_ep_vf/built-in.a
  AR      drivers/net/ethernet/mellanox/built-in.a
  CC      drivers/gpu/drm/drm_mode_config.o
  AR      drivers/firmware/microchip/built-in.a
  AR      drivers/net/ethernet/meta/built-in.a
  AR      drivers/net/ethernet/marvell/octeontx2/built-in.a
  CC      drivers/usb/host/xhci-ext-caps.o
  CC      drivers/cpuidle/poll_state.o
  AR      drivers/net/ethernet/marvell/prestera/built-in.a
  CC      drivers/gpu/drm/i915/gt/intel_gt.o
  CC      drivers/net/ethernet/marvell/sky2.o
  CC      net/ipv6/esp6.o
  CC      drivers/thermal/thermal_sysfs.o
  CC      drivers/firmware/efi/libstub/efi-stub-helper.o
  CC      mm/execmem.o
  CC      drivers/thermal/thermal_trip.o
  CC      drivers/cpufreq/cpufreq_ondemand.o
  CC      drivers/net/ethernet/intel/e1000e/manage.o
  CC      drivers/usb/host/xhci-ring.o
  CC      drivers/cpuidle/cpuidle-haltpoll.o
  CC      fs/filesystems.o
  CC      arch/x86/kernel/pvclock.o
  CC      drivers/cpufreq/cpufreq_governor.o
  CC [M]  drivers/gpu/drm/xe/xe_gt_sysfs.o
  AR      drivers/net/ethernet/micrel/built-in.a
  CC      drivers/gpu/drm/drm_mode_object.o
  CC      net/mac80211/trace.o
  CC      drivers/acpi/acpica/utosi.o
  CC      drivers/firmware/efi/libstub/gop.o
  CC [M]  drivers/gpu/drm/xe/xe_gt_throttle.o
  CC      drivers/acpi/fan_hwmon.o
  AR      drivers/firmware/imx/built-in.a
  CC      drivers/md/dm-stripe.o
  CC      arch/x86/kernel/pcspeaker.o
  CC      lib/errname.o
  CC      net/ipv4/udp_tunnel_stub.o
  CC      lib/nlattr.o
  CC      fs/nfs/nfs4file.o
  CC      drivers/thermal/thermal_helpers.o
  CC      drivers/usb/core/hcd-pci.o
  CC      drivers/md/dm-ioctl.o
  AR      drivers/net/ethernet/microchip/built-in.a
  CC      drivers/net/ethernet/intel/e1000e/nvm.o
  CC      drivers/md/dm-io.o
  AR      drivers/cpuidle/built-in.a
  AR      drivers/crypto/stm32/built-in.a
  CC      arch/x86/kernel/check.o
  AR      drivers/crypto/inside-secure/eip93/built-in.a
  AR      drivers/crypto/inside-secure/built-in.a
  AR      drivers/crypto/xilinx/built-in.a
  AR      drivers/crypto/hisilicon/built-in.a
  AR      drivers/crypto/intel/keembay/built-in.a
  CC      arch/x86/kernel/uprobes.o
  AR      drivers/crypto/intel/ixp4xx/built-in.a
  AR      drivers/crypto/intel/built-in.a
  CC      drivers/acpi/acpica/utownerid.o
  AR      drivers/crypto/starfive/built-in.a
  AR      drivers/crypto/built-in.a
  CC      drivers/cpufreq/cpufreq_governor_attr_set.o
  AR      drivers/net/ethernet/intel/e1000/built-in.a
  CC      arch/x86/kernel/perf_regs.o
  AR      mm/built-in.a
  CC      arch/x86/kernel/tracepoint.o
  CC      drivers/md/dm-kcopyd.o
  CC      drivers/cpufreq/acpi-cpufreq.o
  CC      drivers/acpi/acpi_video.o
  CC      drivers/clocksource/acpi_pm.o
  CC      drivers/net/ethernet/intel/e1000e/phy.o
  CC      drivers/net/ethernet/intel/e1000e/param.o
  CC      drivers/acpi/video_detect.o
  CC      drivers/clocksource/i8253.o
  CC      net/ipv6/sit.o
  AR      drivers/firmware/psci/built-in.a
  CC      lib/cpu_rmap.o
  CC      drivers/gpu/drm/drm_modes.o
  CC      drivers/thermal/thermal_thresholds.o
  CC      drivers/md/dm-sysfs.o
  CC [M]  drivers/gpu/drm/xe/xe_gt_tlb_invalidation.o
  CC      drivers/firmware/efi/libstub/secureboot.o
  CC      lib/dynamic_queue_limits.o
  CC      drivers/usb/core/usb-acpi.o
  CC      drivers/acpi/acpica/utpredef.o
  CC      fs/nfs/delegation.o
  CC [M]  drivers/gpu/drm/xe/xe_gt_topology.o
  CC      drivers/hid/usbhid/hid-core.o
  CC      drivers/firmware/efi/libstub/tpm.o
  CC      net/ipv6/addrconf_core.o
  CC      drivers/firmware/efi/efi-bgrt.o
  CC      drivers/hid/usbhid/hiddev.o
  CC [M]  drivers/gpu/drm/xe/xe_guc.o
  CC      drivers/firmware/efi/libstub/file.o
  CC      kernel/auditfilter.o
  CC      drivers/hid/usbhid/hid-pidff.o
  CC      drivers/gpu/drm/i915/gt/intel_gt_buffer_pool.o
  CC      drivers/acpi/processor_driver.o
  CC [M]  drivers/gpu/drm/xe/xe_guc_ads.o
  CC      drivers/acpi/acpica/utresdecode.o
  CC      lib/glob.o
  CC      drivers/acpi/acpica/utresrc.o
  CC      drivers/md/dm-stats.o
  AR      drivers/clocksource/built-in.a
  CC      drivers/hid/hid-core.o
  CC      drivers/thermal/thermal_netlink.o
  AR      drivers/firmware/qcom/built-in.a
  CC [M]  drivers/gpu/drm/xe/xe_guc_buf.o
  CC      drivers/cpufreq/amd-pstate.o
  CC      arch/x86/kernel/itmt.o
  CC      drivers/firmware/efi/libstub/mem.o
  CC [M]  drivers/gpu/drm/xe/xe_guc_capture.o
  CC      drivers/firmware/efi/libstub/random.o
  CC      net/ipv4/ip_tunnel.o
  CC      kernel/auditsc.o
  CC      drivers/usb/host/xhci-hub.o
  CC      drivers/hid/hid-input.o
  CC      drivers/gpu/drm/i915/gt/intel_gt_ccs_mode.o
  AR      drivers/usb/core/built-in.a
  CC      drivers/acpi/processor_thermal.o
  CC      drivers/hid/hid-quirks.o
  CC      net/mac80211/mlme.o
  CC      fs/nfs/nfs4idmap.o
  CC      arch/x86/kernel/umip.o
  CC      net/ipv4/sysctl_net_ipv4.o
  CC      drivers/acpi/acpica/utstate.o
  CC      drivers/gpu/drm/i915/gt/intel_gt_clock_utils.o
  AR      drivers/net/ethernet/mscc/built-in.a
  CC      net/ipv6/exthdrs_core.o
  CC      drivers/md/dm-rq.o
  CC      drivers/gpu/drm/i915/gt/intel_gt_debugfs.o
  CC      lib/strncpy_from_user.o
  CC      drivers/net/ethernet/intel/e1000e/ethtool.o
  AR      drivers/firmware/samsung/built-in.a
  CC      drivers/firmware/efi/efi.o
  CC      drivers/hid/hid-debug.o
  CC      kernel/audit_watch.o
  CC      fs/nfs/callback.o
  CC      drivers/cpufreq/amd-pstate-trace.o
  CC      fs/nfs/callback_xdr.o
  CC      net/ipv6/ip6_checksum.o
  CC      fs/nfs/callback_proc.o
  CC      drivers/acpi/acpica/utstring.o
  CC      lib/strnlen_user.o
  AR      drivers/firmware/smccc/built-in.a
  CC      drivers/net/ethernet/intel/e1000e/netdev.o
  CC      drivers/firmware/efi/libstub/randomalloc.o
  CC      drivers/md/dm-io-rewind.o
  CC      kernel/audit_fsnotify.o
  CC      drivers/cpufreq/intel_pstate.o
  CC      fs/nfs/nfs4namespace.o
  CC      fs/nfs/nfs4getroot.o
  AR      drivers/hid/usbhid/built-in.a
  CC      fs/namespace.o
  CC      net/ipv6/ip6_icmp.o
  AR      drivers/net/ethernet/myricom/built-in.a
  CC      kernel/audit_tree.o
  CC      fs/seq_file.o
  CC      net/ipv6/output_core.o
  CC      fs/nfs/nfs4client.o
  CC      arch/x86/kernel/unwind_frame.o
  AR      drivers/firmware/tegra/built-in.a
  CC      drivers/acpi/acpica/utstrsuppt.o
  AR      drivers/firmware/xilinx/built-in.a
  CC      net/ipv6/protocol.o
  CC      drivers/thermal/thermal_hwmon.o
  AR      drivers/platform/x86/amd/built-in.a
  CC      drivers/acpi/processor_idle.o
  AR      drivers/platform/x86/intel/built-in.a
  CC      drivers/platform/x86/wmi.o
  CC [M]  drivers/gpu/drm/xe/xe_guc_ct.o
  CC      drivers/firmware/efi/libstub/pci.o
  CC      lib/net_utils.o
  CC      drivers/gpu/drm/i915/gt/intel_gt_engines_debugfs.o
  AR      drivers/net/ethernet/marvell/built-in.a
  CC      drivers/gpu/drm/i915/gt/intel_gt_irq.o
  CC      net/ipv6/ip6_offload.o
  CC      drivers/acpi/processor_throttling.o
  CC      net/mac80211/tdls.o
  CC      fs/nfs/nfs4session.o
  CC      drivers/hid/hidraw.o
  CC      drivers/net/ethernet/intel/e1000e/ptp.o
  CC      kernel/kprobes.o
  CC      drivers/acpi/acpica/utstrtoul64.o
  CC      drivers/platform/x86/wmi-bmof.o
  CC      lib/sg_pool.o
  CC      drivers/mailbox/mailbox.o
  AR      drivers/platform/surface/built-in.a
  CC      drivers/firmware/efi/vars.o
  CC      drivers/md/dm-builtin.o
  CC      drivers/thermal/gov_step_wise.o
  CC      drivers/gpu/drm/drm_modeset_lock.o
  CC      net/ipv4/proc.o
  CC      fs/nfs/dns_resolve.o
  CC      net/mac80211/ocb.o
  CC      drivers/platform/x86/eeepc-laptop.o
  AR      arch/x86/kernel/built-in.a
  AR      arch/x86/built-in.a
  AR      drivers/perf/built-in.a
  CC      drivers/gpu/drm/i915/gt/intel_gt_mcr.o
  CC      drivers/usb/host/xhci-dbg.o
  AR      drivers/net/ethernet/natsemi/built-in.a
  CC [M]  drivers/gpu/drm/xe/xe_guc_db_mgr.o
  CC      drivers/firmware/efi/libstub/skip_spaces.o
  CC      drivers/acpi/acpica/utxface.o
  CC      lib/stackdepot.o
  CC      drivers/firmware/efi/libstub/lib-cmdline.o
  CC      drivers/firmware/efi/reboot.o
  CC      drivers/acpi/acpica/utxfinit.o
  CC      kernel/seccomp.o
  CC      drivers/gpu/drm/i915/gt/intel_gt_pm.o
  CC      fs/nfs/nfs4trace.o
  CC      drivers/firmware/efi/libstub/lib-ctype.o
  CC      drivers/hid/hid-generic.o
  CC      drivers/firmware/efi/libstub/alignedmem.o
  AR      drivers/net/ethernet/neterion/built-in.a
  CC      fs/xattr.o
  CC      drivers/mailbox/pcc.o
  CC      drivers/firmware/dmi_scan.o
  AR      drivers/thermal/built-in.a
  CC      drivers/acpi/processor_perflib.o
  AR      drivers/hwtracing/intel_th/built-in.a
  CC      drivers/firmware/dmi-id.o
  CC      fs/libfs.o
  CC [M]  drivers/gpu/drm/xe/xe_guc_engine_activity.o
  CC      drivers/usb/host/xhci-trace.o
  CC      drivers/gpu/drm/i915/gt/intel_gt_pm_debugfs.o
  CC      drivers/firmware/memmap.o
  AR      drivers/net/ethernet/netronome/built-in.a
  CC      drivers/usb/host/xhci-debugfs.o
  CC [M]  drivers/gpu/drm/xe/xe_guc_hwconfig.o
  CC      net/mac80211/airtime.o
  CC      drivers/gpu/drm/drm_plane.o
  CC      drivers/hid/hid-a4tech.o
  CC      lib/asn1_decoder.o
  CC      drivers/gpu/drm/i915/gt/intel_gt_pm_irq.o
  CC      drivers/acpi/acpica/utxferror.o
  CC      kernel/relay.o
  CC      drivers/firmware/efi/memattr.o
  CC      drivers/md/dm-raid1.o
  CC      drivers/md/dm-log.o
  CC      fs/fs-writeback.o
  CC      drivers/gpu/drm/drm_prime.o
  CC      drivers/platform/x86/p2sb.o
  CC      net/ipv6/tcpv6_offload.o
  CC      drivers/acpi/acpica/utxfmutex.o
  CC      drivers/md/dm-region-hash.o
  CC      drivers/firmware/efi/libstub/relocate.o
  CC      drivers/firmware/efi/libstub/printk.o
  CC      drivers/firmware/efi/tpm.o
  AR      drivers/mailbox/built-in.a
  CC      drivers/gpu/drm/drm_print.o
  CC      fs/nfs/nfs4sysctl.o
  CC      drivers/gpu/drm/i915/gt/intel_gt_requests.o
  CC      kernel/utsname_sysctl.o
  CC      net/mac80211/eht.o
  CC      fs/pnode.o
  CC      drivers/usb/host/xhci-pci.o
  AR      drivers/android/built-in.a
  CC      net/ipv6/exthdrs_offload.o
  CC      drivers/gpu/drm/i915/gt/intel_gt_sysfs.o
  AR      drivers/cpufreq/built-in.a
  GEN     lib/oid_registry_data.c
  CC      drivers/firmware/efi/libstub/vsprintf.o
  CC      lib/ucs2_string.o
  AR      drivers/acpi/acpica/built-in.a
  CC      drivers/acpi/container.o
  CC      drivers/firmware/efi/memmap.o
  CC      drivers/firmware/efi/capsule.o
  CC      drivers/hid/hid-apple.o
  CC      drivers/md/dm-zero.o
  CC      drivers/firmware/efi/libstub/x86-stub.o
  CC      net/ipv6/inet6_hashtables.o
  CC      net/ipv4/fib_rules.o
  CC [M]  drivers/gpu/drm/xe/xe_guc_id_mgr.o
  CC      drivers/firmware/efi/esrt.o
  AR      drivers/platform/x86/built-in.a
  AR      drivers/platform/built-in.a
  CC      lib/sbitmap.o
  CC      lib/group_cpus.o
  CC      drivers/gpu/drm/drm_property.o
  CC      kernel/delayacct.o
  CC      drivers/firmware/efi/libstub/smbios.o
  CC      kernel/taskstats.o
  AR      drivers/net/ethernet/ni/built-in.a
  CC      lib/fw_table.o
  CC      net/mac80211/led.o
  CC      kernel/tsacct.o
  CC      drivers/firmware/efi/runtime-wrappers.o
  CC      net/mac80211/pm.o
  CC      drivers/acpi/thermal_lib.o
  CC      drivers/net/ethernet/nvidia/forcedeth.o
  CC      kernel/tracepoint.o
  AR      drivers/net/ethernet/oki-semi/built-in.a
  CC      drivers/gpu/drm/i915/gt/intel_gt_sysfs_pm.o
  AR      drivers/net/ethernet/packetengines/built-in.a
  STUBCPY drivers/firmware/efi/libstub/alignedmem.stub.o
  AR      drivers/nvmem/layouts/built-in.a
  CC      drivers/nvmem/core.o
  CC      drivers/hid/hid-belkin.o
  CC      fs/splice.o
  CC      net/mac80211/rc80211_minstrel_ht.o
  CC      drivers/gpu/drm/i915/gt/intel_gtt.o
  CC      drivers/acpi/thermal.o
  CC      drivers/hid/hid-cherry.o
  CC      net/ipv4/ipmr.o
  AR      drivers/md/built-in.a
  CC [M]  drivers/gpu/drm/xe/xe_guc_klv_helpers.o
  CC      net/ipv6/mcast_snoop.o
  CC      kernel/irq_work.o
  CC      drivers/firmware/efi/capsule-loader.o
  CC [M]  drivers/gpu/drm/xe/xe_guc_log.o
  CC      kernel/static_call.o
  STUBCPY drivers/firmware/efi/libstub/efi-stub-helper.stub.o
  AR      lib/lib.a
  AR      drivers/net/ethernet/qlogic/built-in.a
  CC      fs/sync.o
  CC      net/mac80211/wbrf.o
  CC      drivers/firmware/efi/earlycon.o
  CC      drivers/gpu/drm/i915/gt/intel_llc.o
  CC      drivers/gpu/drm/drm_rect.o
  CC      drivers/acpi/nhlt.o
  STUBCPY drivers/firmware/efi/libstub/file.stub.o
  CC      net/ipv4/ipmr_base.o
  CC      kernel/padata.o
  CC [M]  drivers/gpu/drm/xe/xe_guc_pc.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
  STUBCPY drivers/firmware/efi/libstub/mem.stub.o
  STUBCPY drivers/firmware/efi/libstub/pci.stub.o
  STUBCPY drivers/firmware/efi/libstub/printk.stub.o
  STUBCPY drivers/firmware/efi/libstub/random.stub.o
  AR      drivers/net/ethernet/qualcomm/emac/built-in.a
  CC      drivers/hid/hid-chicony.o
  AR      drivers/net/ethernet/qualcomm/built-in.a
  STUBCPY drivers/firmware/efi/libstub/randomalloc.stub.o
  CC      drivers/gpu/drm/drm_syncobj.o
  STUBCPY drivers/firmware/efi/libstub/relocate.stub.o
  CC      drivers/hid/hid-cypress.o
  STUBCPY drivers/firmware/efi/libstub/secureboot.stub.o
  CC      fs/utimes.o
  STUBCPY drivers/firmware/efi/libstub/skip_spaces.stub.o
  GEN     lib/crc32table.h
  CC      lib/oid_registry.o
  STUBCPY drivers/firmware/efi/libstub/smbios.stub.o
  STUBCPY drivers/firmware/efi/libstub/tpm.stub.o
  STUBCPY drivers/firmware/efi/libstub/vsprintf.stub.o
  CC      fs/d_path.o
  STUBCPY drivers/firmware/efi/libstub/x86-stub.stub.o
  AR      drivers/firmware/efi/libstub/lib.a
  CC      drivers/hid/hid-ezkey.o
  CC      net/ipv4/syncookies.o
  CC      drivers/acpi/acpi_memhotplug.o
  CC [M]  drivers/gpu/drm/xe/xe_guc_submit.o
  CC      drivers/net/ethernet/realtek/8139too.o
  CC      drivers/gpu/drm/drm_sysfs.o
  CC      net/ipv4/tunnel4.o
  AR      drivers/usb/host/built-in.a
  AR      drivers/usb/built-in.a
  AR      drivers/net/ethernet/renesas/built-in.a
  CC      drivers/acpi/ioapic.o
  CC      kernel/jump_label.o
  CC      fs/stack.o
  CC      drivers/gpu/drm/i915/gt/intel_lrc.o
  CC      drivers/acpi/battery.o
  AR      drivers/net/ethernet/rdc/built-in.a
  CC      drivers/hid/hid-gyration.o
  CC [M]  drivers/gpu/drm/xe/xe_heci_gsc.o
  CC      drivers/acpi/bgrt.o
  CC      drivers/gpu/drm/drm_trace_points.o
  CC      lib/crc32.o
  CC      drivers/gpu/drm/i915/gt/intel_migrate.o
  CC      drivers/net/ethernet/realtek/r8169_main.o
  CC      drivers/gpu/drm/i915/gt/intel_mocs.o
  AR      drivers/firmware/efi/built-in.a
  AR      drivers/firmware/built-in.a
  CC      drivers/gpu/drm/i915/gt/intel_ppgtt.o
  CC      kernel/context_tracking.o
  AR      drivers/nvmem/built-in.a
  CC      kernel/iomem.o
  CC      fs/fs_struct.o
  CC      kernel/rseq.o
  CC      fs/statfs.o
  CC      fs/fs_pin.o
  CC      fs/nsfs.o
  CC      drivers/net/ethernet/realtek/r8169_firmware.o
  CC      drivers/acpi/spcr.o
  AR      drivers/net/ethernet/rocker/built-in.a
  CC [M]  drivers/gpu/drm/xe/xe_huc.o
  CC      net/ipv4/ipconfig.o
  CC      drivers/gpu/drm/drm_vblank.o
  AR      lib/built-in.a
  CC      drivers/hid/hid-ite.o
  CC      drivers/hid/hid-kensington.o
  CC      drivers/net/ethernet/realtek/r8169_phy_config.o
  CC      drivers/hid/hid-microsoft.o
  AR      net/ipv6/built-in.a
  CC      net/ipv4/netfilter.o
  CC      drivers/gpu/drm/drm_vblank_work.o
  CC [M]  drivers/gpu/drm/xe/xe_hw_engine.o
  CC [M]  drivers/gpu/drm/xe/xe_hw_engine_class_sysfs.o
  CC      drivers/hid/hid-monterey.o
  AR      drivers/net/ethernet/samsung/built-in.a
  CC      net/ipv4/tcp_cubic.o
  CC      drivers/gpu/drm/i915/gt/intel_rc6.o
  CC      net/ipv4/tcp_sigpool.o
  AR      fs/nfs/built-in.a
  CC [M]  drivers/gpu/drm/xe/xe_hw_engine_group.o
  CC      drivers/hid/hid-ntrig.o
  CC      drivers/gpu/drm/drm_vma_manager.o
  CC [M]  drivers/gpu/drm/xe/xe_hw_fence.o
  CC      drivers/gpu/drm/i915/gt/intel_region_lmem.o
  CC      net/ipv4/cipso_ipv4.o
  CC      drivers/hid/hid-pl.o
  CC      drivers/gpu/drm/drm_writeback.o
  AR      drivers/net/ethernet/seeq/built-in.a
  CC      fs/fs_types.o
  CC      drivers/gpu/drm/drm_panel.o
  CC [M]  drivers/gpu/drm/xe/xe_irq.o
  AR      drivers/net/ethernet/silan/built-in.a
  CC      drivers/hid/hid-petalynx.o
  AR      drivers/net/ethernet/intel/e1000e/built-in.a
  AR      drivers/net/ethernet/intel/built-in.a
  CC      net/ipv4/xfrm4_policy.o
  CC      drivers/gpu/drm/i915/gt/intel_renderstate.o
  CC      drivers/gpu/drm/drm_pci.o
  CC      fs/fs_context.o
  AR      drivers/acpi/built-in.a
  CC      net/ipv4/xfrm4_state.o
  CC [M]  drivers/gpu/drm/xe/xe_lrc.o
  CC      drivers/hid/hid-redragon.o
  CC      drivers/gpu/drm/drm_debugfs.o
  AR      drivers/net/ethernet/sis/built-in.a
  CC      fs/fs_parser.o
  CC      drivers/hid/hid-samsung.o
  CC      fs/fsopen.o
  AR      kernel/built-in.a
  CC      net/ipv4/xfrm4_input.o
  CC [M]  drivers/gpu/drm/xe/xe_migrate.o
  CC      drivers/gpu/drm/i915/gt/intel_reset.o
  CC [M]  drivers/gpu/drm/xe/xe_mmio.o
  CC      net/ipv4/xfrm4_output.o
  CC      drivers/gpu/drm/drm_debugfs_crc.o
  CC      fs/init.o
  AR      drivers/net/ethernet/sfc/built-in.a
  CC      net/ipv4/xfrm4_protocol.o
  CC [M]  drivers/gpu/drm/xe/xe_mocs.o
  CC      drivers/hid/hid-sony.o
  CC      drivers/gpu/drm/i915/gt/intel_ring.o
  CC      drivers/hid/hid-sunplus.o
  CC      drivers/gpu/drm/drm_panel_orientation_quirks.o
  CC      drivers/hid/hid-topseed.o
  CC      fs/kernel_read_file.o
  AR      drivers/net/ethernet/smsc/built-in.a
  AR      drivers/net/ethernet/socionext/built-in.a
  CC [M]  drivers/gpu/drm/xe/xe_module.o
  AR      drivers/net/ethernet/stmicro/built-in.a
  CC      drivers/gpu/drm/drm_buddy.o
  CC      drivers/gpu/drm/i915/gt/intel_ring_submission.o
  AR      drivers/net/ethernet/sun/built-in.a
  CC [M]  drivers/gpu/drm/xe/xe_oa.o
  CC      drivers/gpu/drm/drm_gem_shmem_helper.o
  CC      fs/mnt_idmapping.o
  CC      drivers/gpu/drm/i915/gt/intel_rps.o
  CC      fs/remap_range.o
  AR      drivers/net/ethernet/tehuti/built-in.a
  AR      drivers/net/ethernet/ti/built-in.a
  CC      drivers/gpu/drm/i915/gt/intel_sa_media.o
  AR      drivers/net/ethernet/vertexcom/built-in.a
  AR      drivers/net/ethernet/via/built-in.a
  CC      fs/pidfs.o
  CC      drivers/gpu/drm/drm_atomic_helper.o
  CC      drivers/gpu/drm/i915/gt/intel_sseu.o
  CC [M]  drivers/gpu/drm/xe/xe_observation.o
  AR      drivers/net/ethernet/nvidia/built-in.a
  CC      fs/buffer.o
  CC [M]  drivers/gpu/drm/xe/xe_pat.o
  AR      drivers/net/ethernet/wangxun/built-in.a
  AR      drivers/net/ethernet/wiznet/built-in.a
  CC      drivers/gpu/drm/i915/gt/intel_sseu_debugfs.o
  CC      fs/mpage.o
  CC      drivers/gpu/drm/i915/gt/intel_timeline.o
  AR      drivers/net/ethernet/xilinx/built-in.a
  CC [M]  drivers/gpu/drm/xe/xe_pci.o
  CC      drivers/gpu/drm/drm_atomic_state_helper.o
  CC      fs/proc_namespace.o
  CC      drivers/gpu/drm/i915/gt/intel_tlb.o
  CC      fs/direct-io.o
  CC      fs/eventpoll.o
  AR      drivers/net/ethernet/xircom/built-in.a
  AR      drivers/net/ethernet/synopsys/built-in.a
  AR      drivers/net/ethernet/pensando/built-in.a
  CC      drivers/gpu/drm/drm_bridge_helper.o
  CC      drivers/gpu/drm/i915/gt/intel_wopcm.o
  CC [M]  drivers/gpu/drm/xe/xe_pcode.o
  CC      drivers/gpu/drm/drm_crtc_helper.o
  CC      fs/anon_inodes.o
  CC      drivers/gpu/drm/i915/gt/intel_workarounds.o
  CC [M]  drivers/gpu/drm/xe/xe_pm.o
  CC      fs/signalfd.o
  CC      drivers/gpu/drm/i915/gt/shmem_utils.o
  CC      drivers/gpu/drm/drm_damage_helper.o
  CC      drivers/gpu/drm/i915/gt/sysfs_engines.o
  CC      fs/timerfd.o
  CC      drivers/gpu/drm/drm_flip_work.o
  CC [M]  drivers/gpu/drm/xe/xe_preempt_fence.o
  AR      net/mac80211/built-in.a
  CC      fs/eventfd.o
  CC      drivers/gpu/drm/i915/gt/intel_ggtt_gmch.o
  CC      drivers/gpu/drm/i915/gt/gen6_renderstate.o
  CC      fs/aio.o
  CC [M]  drivers/gpu/drm/xe/xe_pt.o
  CC      drivers/gpu/drm/i915/gt/gen7_renderstate.o
  AR      net/ipv4/built-in.a
  AR      net/built-in.a
  AR      drivers/hid/built-in.a
  CC      fs/locks.o
  CC [M]  drivers/gpu/drm/xe/xe_pt_walk.o
  CC      drivers/gpu/drm/drm_format_helper.o
  CC      drivers/gpu/drm/i915/gt/gen8_renderstate.o
  CC      drivers/gpu/drm/drm_gem_atomic_helper.o
  CC      fs/binfmt_misc.o
  CC      drivers/gpu/drm/i915/gt/gen9_renderstate.o
  CC      fs/binfmt_script.o
  CC      fs/binfmt_elf.o
  CC      fs/mbcache.o
  CC      drivers/gpu/drm/i915/gem/i915_gem_busy.o
  CC      fs/posix_acl.o
  CC [M]  drivers/gpu/drm/xe/xe_pxp.o
  CC      drivers/gpu/drm/drm_gem_framebuffer_helper.o
  CC      drivers/gpu/drm/i915/gem/i915_gem_clflush.o
  CC      drivers/gpu/drm/drm_kms_helper_common.o
  CC [M]  drivers/gpu/drm/xe/xe_pxp_debugfs.o
  CC      drivers/gpu/drm/i915/gem/i915_gem_context.o
  CC      drivers/gpu/drm/drm_modeset_helper.o
  CC      drivers/gpu/drm/i915/gem/i915_gem_create.o
  CC      drivers/gpu/drm/i915/gem/i915_gem_dmabuf.o
  CC [M]  drivers/gpu/drm/xe/xe_pxp_submit.o
  CC      fs/coredump.o
  CC [M]  drivers/gpu/drm/xe/xe_query.o
  CC      fs/drop_caches.o
  CC      drivers/gpu/drm/drm_plane_helper.o
  AR      drivers/net/ethernet/realtek/built-in.a
  CC      drivers/gpu/drm/i915/gem/i915_gem_domain.o
  AR      drivers/net/ethernet/built-in.a
  CC      fs/sysctls.o
  CC [M]  drivers/gpu/drm/xe/xe_range_fence.o
  CC      fs/fhandle.o
  AR      drivers/net/built-in.a
  CC [M]  drivers/gpu/drm/xe/xe_reg_sr.o
  CC      drivers/gpu/drm/i915/gem/i915_gem_execbuffer.o
  CC      drivers/gpu/drm/drm_probe_helper.o
  CC [M]  drivers/gpu/drm/xe/xe_reg_whitelist.o
  CC [M]  drivers/gpu/drm/xe/xe_ring_ops.o
  CC      drivers/gpu/drm/drm_self_refresh_helper.o
  CC      drivers/gpu/drm/i915/gem/i915_gem_internal.o
  CC [M]  drivers/gpu/drm/xe/xe_rtp.o
  CC      drivers/gpu/drm/drm_simple_kms_helper.o
  CC [M]  drivers/gpu/drm/xe/xe_sa.o
  CC      drivers/gpu/drm/i915/gem/i915_gem_lmem.o
  CC      drivers/gpu/drm/i915/gem/i915_gem_mman.o
  CC      drivers/gpu/drm/bridge/panel.o
  CC      drivers/gpu/drm/drm_mipi_dsi.o
  CC [M]  drivers/gpu/drm/xe/xe_sched_job.o
  CC      drivers/gpu/drm/i915/gem/i915_gem_object.o
  CC [M]  drivers/gpu/drm/drm_exec.o
  CC [M]  drivers/gpu/drm/xe/xe_shrinker.o
  CC [M]  drivers/gpu/drm/xe/xe_step.o
  CC [M]  drivers/gpu/drm/drm_gpuvm.o
  CC      drivers/gpu/drm/i915/gem/i915_gem_pages.o
  CC [M]  drivers/gpu/drm/xe/xe_survivability_mode.o
  CC      drivers/gpu/drm/i915/gem/i915_gem_phys.o
  CC      drivers/gpu/drm/i915/gem/i915_gem_pm.o
  CC [M]  drivers/gpu/drm/xe/xe_sync.o
  CC [M]  drivers/gpu/drm/drm_suballoc.o
  CC [M]  drivers/gpu/drm/xe/xe_tile.o
  CC      drivers/gpu/drm/i915/gem/i915_gem_region.o
  CC [M]  drivers/gpu/drm/drm_gem_ttm_helper.o
  CC [M]  drivers/gpu/drm/xe/xe_tile_sysfs.o
  CC [M]  drivers/gpu/drm/xe/xe_trace.o
  CC      drivers/gpu/drm/i915/gem/i915_gem_shmem.o
  CC [M]  drivers/gpu/drm/xe/xe_trace_bo.o
  CC      drivers/gpu/drm/i915/gem/i915_gem_shrinker.o
  CC [M]  drivers/gpu/drm/xe/xe_trace_guc.o
  CC      drivers/gpu/drm/i915/gem/i915_gem_stolen.o
  CC [M]  drivers/gpu/drm/xe/xe_trace_lrc.o
  CC [M]  drivers/gpu/drm/xe/xe_ttm_stolen_mgr.o
  CC      drivers/gpu/drm/i915/gem/i915_gem_throttle.o
  CC [M]  drivers/gpu/drm/xe/xe_ttm_sys_mgr.o
  CC      drivers/gpu/drm/i915/gem/i915_gem_tiling.o
  CC [M]  drivers/gpu/drm/xe/xe_ttm_vram_mgr.o
  CC      drivers/gpu/drm/i915/gem/i915_gem_ttm.o
  CC [M]  drivers/gpu/drm/xe/xe_tuning.o
  CC      drivers/gpu/drm/i915/gem/i915_gem_ttm_move.o
  CC [M]  drivers/gpu/drm/xe/xe_uc.o
  CC      drivers/gpu/drm/i915/gem/i915_gem_ttm_pm.o
  CC [M]  drivers/gpu/drm/xe/xe_uc_fw.o
  CC [M]  drivers/gpu/drm/xe/xe_vm.o
  CC      drivers/gpu/drm/i915/gem/i915_gem_userptr.o
  CC [M]  drivers/gpu/drm/xe/xe_vram.o
  CC      drivers/gpu/drm/i915/gem/i915_gem_wait.o
  CC [M]  drivers/gpu/drm/xe/xe_vram_freq.o
  CC [M]  drivers/gpu/drm/xe/xe_vsec.o
  CC [M]  drivers/gpu/drm/xe/xe_wa.o
  CC [M]  drivers/gpu/drm/xe/xe_wait_user_fence.o
  CC      drivers/gpu/drm/i915/gem/i915_gemfs.o
  CC      drivers/gpu/drm/i915/i915_active.o
  CC [M]  drivers/gpu/drm/xe/xe_wopcm.o
  LD [M]  drivers/gpu/drm/drm_suballoc_helper.o
  CC      drivers/gpu/drm/i915/i915_cmd_parser.o
  CC [M]  drivers/gpu/drm/xe/xe_hmm.o
  LD [M]  drivers/gpu/drm/drm_ttm_helper.o
  CC [M]  drivers/gpu/drm/xe/xe_hwmon.o
  CC      drivers/gpu/drm/i915/i915_deps.o
  CC [M]  drivers/gpu/drm/xe/xe_pmu.o
  CC [M]  drivers/gpu/drm/xe/xe_gt_sriov_vf.o
  CC [M]  drivers/gpu/drm/xe/xe_guc_relay.o
  CC [M]  drivers/gpu/drm/xe/xe_memirq.o
  CC      drivers/gpu/drm/i915/i915_gem.o
  CC [M]  drivers/gpu/drm/xe/xe_sriov.o
  CC [M]  drivers/gpu/drm/xe/xe_sriov_vf.o
  CC      drivers/gpu/drm/i915/i915_gem_evict.o
  CC [M]  drivers/gpu/drm/xe/xe_sriov_vf_ccs.o
  CC      drivers/gpu/drm/i915/i915_gem_gtt.o
  CC      drivers/gpu/drm/i915/i915_gem_ww.o
  CC [M]  drivers/gpu/drm/xe/xe_tile_sriov_vf.o
  AR      fs/built-in.a
  CC      drivers/gpu/drm/i915/i915_query.o
  CC [M]  drivers/gpu/drm/xe/display/ext/i915_irq.o
  CC      drivers/gpu/drm/i915/i915_request.o
  CC [M]  drivers/gpu/drm/xe/display/ext/i915_utils.o
  CC [M]  drivers/gpu/drm/xe/display/intel_bo.o
  CC [M]  drivers/gpu/drm/xe/display/intel_fb_bo.o
  CC      drivers/gpu/drm/i915/i915_scheduler.o
  CC [M]  drivers/gpu/drm/xe/display/intel_fbdev_fb.o
  CC      drivers/gpu/drm/i915/i915_trace_points.o
  CC      drivers/gpu/drm/i915/i915_ttm_buddy_manager.o
  CC [M]  drivers/gpu/drm/xe/display/xe_display.o
  CC      drivers/gpu/drm/i915/i915_vma.o
  CC [M]  drivers/gpu/drm/xe/display/xe_display_misc.o
  CC [M]  drivers/gpu/drm/xe/display/xe_display_rpm.o
  CC      drivers/gpu/drm/i915/i915_vma_resource.o
  CC      drivers/gpu/drm/i915/gt/uc/intel_gsc_fw.o
  CC [M]  drivers/gpu/drm/xe/display/xe_display_wa.o
  CC      drivers/gpu/drm/i915/gt/uc/intel_gsc_proxy.o
  CC [M]  drivers/gpu/drm/xe/display/xe_dsb_buffer.o
  CC      drivers/gpu/drm/i915/gt/uc/intel_gsc_uc.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/xe/display/xe_plane_initial.o
  CC      drivers/gpu/drm/i915/gt/uc/intel_gsc_uc_debugfs.o
  CC      drivers/gpu/drm/i915/gt/uc/intel_gsc_uc_heci_cmd_submit.o
  CC [M]  drivers/gpu/drm/xe/display/xe_tdf.o
  CC [M]  drivers/gpu/drm/xe/i915-soc/intel_dram.o
  CC      drivers/gpu/drm/i915/gt/uc/intel_guc.o
  CC      drivers/gpu/drm/i915/gt/uc/intel_guc_ads.o
  CC      drivers/gpu/drm/i915/gt/uc/intel_guc_capture.o
  CC [M]  drivers/gpu/drm/xe/i915-soc/intel_rom.o
  CC [M]  drivers/gpu/drm/xe/i915-display/icl_dsi.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_alpm.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_atomic.o
  CC      drivers/gpu/drm/i915/gt/uc/intel_guc_ct.o
  CC      drivers/gpu/drm/i915/gt/uc/intel_guc_debugfs.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_atomic_plane.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_audio.o
  CC      drivers/gpu/drm/i915/gt/uc/intel_guc_fw.o
  CC      drivers/gpu/drm/i915/gt/uc/intel_guc_hwconfig.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_backlight.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_bios.o
  CC      drivers/gpu/drm/i915/gt/uc/intel_guc_log.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_bw.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_cdclk.o
  CC      drivers/gpu/drm/i915/gt/uc/intel_guc_log_debugfs.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_cmtg.o
  CC      drivers/gpu/drm/i915/gt/uc/intel_guc_rc.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_color.o
  CC      drivers/gpu/drm/i915/gt/uc/intel_guc_slpc.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      drivers/gpu/drm/i915/gt/uc/intel_guc_submission.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_crtc.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_crtc_state_dump.o
  CC      drivers/gpu/drm/i915/gt/uc/intel_huc.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_cursor.o
  CC      drivers/gpu/drm/i915/gt/uc/intel_huc_debugfs.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_cx0_phy.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_ddi.o
  CC      drivers/gpu/drm/i915/gt/uc/intel_huc_fw.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_ddi_buf_trans.o
  CC      drivers/gpu/drm/i915/gt/uc/intel_uc.o
  CC      drivers/gpu/drm/i915/gt/uc/intel_uc_debugfs.o
  CC      drivers/gpu/drm/i915/gt/uc/intel_uc_fw.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_display.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_display_conversion.o
  CC      drivers/gpu/drm/i915/gt/intel_gsc.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_display_device.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      drivers/gpu/drm/i915/i915_hwmon.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_display_params.o
  CC      drivers/gpu/drm/i915/display/hsw_ips.o
  CC      drivers/gpu/drm/i915/display/i9xx_plane.o
  CC      drivers/gpu/drm/i915/display/i9xx_display_sr.o
  CC      drivers/gpu/drm/i915/display/i9xx_wm.o
  CC      drivers/gpu/drm/i915/display/intel_alpm.o
  CC      drivers/gpu/drm/i915/display/intel_atomic.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_display_power.o
  CC      drivers/gpu/drm/i915/display/intel_atomic_plane.o
  CC      drivers/gpu/drm/i915/display/intel_audio.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_display_power_map.o
  CC      drivers/gpu/drm/i915/display/intel_bios.o
  CC      drivers/gpu/drm/i915/display/intel_bo.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_display_power_well.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_display_trace.o
  CC      drivers/gpu/drm/i915/display/intel_bw.o
  CC      drivers/gpu/drm/i915/display/intel_cdclk.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_display_wa.o
  CC      drivers/gpu/drm/i915/display/intel_cmtg.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_dkl_phy.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_dmc.o
  CC      drivers/gpu/drm/i915/display/intel_color.o
  CC      drivers/gpu/drm/i915/display/intel_combo_phy.o
  CC      drivers/gpu/drm/i915/display/intel_connector.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_dmc_wl.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_dp.o
  CC      drivers/gpu/drm/i915/display/intel_crtc.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_dp_aux.o
  CC      drivers/gpu/drm/i915/display/intel_crtc_state_dump.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_dp_aux_backlight.o
  CC      drivers/gpu/drm/i915/display/intel_cursor.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_dp_hdcp.o
  CC      drivers/gpu/drm/i915/display/intel_display.o
  CC      drivers/gpu/drm/i915/display/intel_display_conversion.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_dp_link_training.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_dp_mst.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_dp_test.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_dpll.o
  CC      drivers/gpu/drm/i915/display/intel_display_driver.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_dpll_mgr.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_dpt_common.o
  CC      drivers/gpu/drm/i915/display/intel_display_irq.o
  CC      drivers/gpu/drm/i915/display/intel_display_params.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_drrs.o
  CC      drivers/gpu/drm/i915/display/intel_display_power.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_dsb.o
  CC      drivers/gpu/drm/i915/display/intel_display_power_map.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_dsi.o
  CC      drivers/gpu/drm/i915/display/intel_display_power_well.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_dsi_dcs_backlight.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_dsi_vbt.o
  CC      drivers/gpu/drm/i915/display/intel_display_reset.o
  CC      drivers/gpu/drm/i915/display/intel_display_rpm.o
  CC      drivers/gpu/drm/i915/display/intel_display_rps.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_encoder.o
  CC      drivers/gpu/drm/i915/display/intel_display_snapshot.o
  CC      drivers/gpu/drm/i915/display/intel_display_wa.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_fb.o
  CC      drivers/gpu/drm/i915/display/intel_dmc.o
  CC      drivers/gpu/drm/i915/display/intel_dmc_wl.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_fbc.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_fdi.o
  CC      drivers/gpu/drm/i915/display/intel_dpio_phy.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      drivers/gpu/drm/i915/display/intel_dpll.o
  CC      drivers/gpu/drm/i915/display/intel_dpll_mgr.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_global_state.o
  CC      drivers/gpu/drm/i915/display/intel_dpt.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/xe/i915-display/intel_hdcp_gsc_message.o
  CC      drivers/gpu/drm/i915/display/intel_dpt_common.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_hdmi.o
  CC      drivers/gpu/drm/i915/display/intel_drrs.o
  CC      drivers/gpu/drm/i915/display/intel_dsb.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_hotplug.o
  CC      drivers/gpu/drm/i915/display/intel_dsb_buffer.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_hotplug_irq.o
  CC      drivers/gpu/drm/i915/display/intel_fb.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_hti.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_link_bw.o
  CC      drivers/gpu/drm/i915/display/intel_fb_bo.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_lspcon.o
  CC      drivers/gpu/drm/i915/display/intel_fb_pin.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_modeset_lock.o
  CC      drivers/gpu/drm/i915/display/intel_fbc.o
  CC      drivers/gpu/drm/i915/display/intel_fdi.o
  CC      drivers/gpu/drm/i915/display/intel_fifo_underrun.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_modeset_setup.o
  CC      drivers/gpu/drm/i915/display/intel_frontbuffer.o
  CC      drivers/gpu/drm/i915/display/intel_global_state.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_modeset_verify.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_panel.o
  CC      drivers/gpu/drm/i915/display/intel_hdcp.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_pfit.o
  CC      drivers/gpu/drm/i915/display/intel_hdcp_gsc.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_pmdemand.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_pch.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_pps.o
  CC      drivers/gpu/drm/i915/display/intel_hdcp_gsc_message.o
  CC      drivers/gpu/drm/i915/display/intel_hotplug.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_psr.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_qp_tables.o
  CC      drivers/gpu/drm/i915/display/intel_hotplug_irq.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_quirks.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_snps_hdmi_pll.o
  CC      drivers/gpu/drm/i915/display/intel_hti.o
  CC      drivers/gpu/drm/i915/display/intel_link_bw.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      drivers/gpu/drm/i915/display/intel_load_detect.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_vblank.o
  CC      drivers/gpu/drm/i915/display/intel_lpe_audio.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_vdsc.o
  CC      drivers/gpu/drm/i915/display/intel_modeset_lock.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_vga.o
  CC      drivers/gpu/drm/i915/display/intel_modeset_setup.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_vrr.o
  CC      drivers/gpu/drm/i915/display/intel_modeset_verify.o
  CC      drivers/gpu/drm/i915/display/intel_overlay.o
  CC      drivers/gpu/drm/i915/display/intel_pch.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_wm.o
  CC [M]  drivers/gpu/drm/xe/i915-display/skl_scaler.o
  CC      drivers/gpu/drm/i915/display/intel_pch_display.o
  CC [M]  drivers/gpu/drm/xe/i915-display/skl_universal_plane.o
  CC      drivers/gpu/drm/i915/display/intel_pch_refclk.o
  CC [M]  drivers/gpu/drm/xe/i915-display/skl_watermark.o
  CC      drivers/gpu/drm/i915/display/intel_plane_initial.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/xe/xe_debugfs.o
  CC      drivers/gpu/drm/i915/display/intel_pmdemand.o
  CC [M]  drivers/gpu/drm/xe/xe_gt_debugfs.o
  CC      drivers/gpu/drm/i915/display/intel_psr.o
  CC      drivers/gpu/drm/i915/display/intel_quirks.o
  CC      drivers/gpu/drm/i915/display/intel_sbi.o
  CC [M]  drivers/gpu/drm/xe/xe_gt_sriov_vf_debugfs.o
  CC [M]  drivers/gpu/drm/xe/xe_gt_stats.o
  CC      drivers/gpu/drm/i915/display/intel_sprite.o
  CC [M]  drivers/gpu/drm/xe/xe_guc_debugfs.o
  CC [M]  drivers/gpu/drm/xe/xe_huc_debugfs.o
  CC      drivers/gpu/drm/i915/display/intel_sprite_uapi.o
  CC      drivers/gpu/drm/i915/display/intel_tc.o
  CC      drivers/gpu/drm/i915/display/intel_vblank.o
  CC [M]  drivers/gpu/drm/xe/xe_uc_debugfs.o
  CC      drivers/gpu/drm/i915/display/intel_vga.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_display_debugfs.o
  CC      drivers/gpu/drm/i915/display/intel_wm.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_display_debugfs_params.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_pipe_crc.o
  CC      drivers/gpu/drm/i915/display/skl_scaler.o
  CC      drivers/gpu/drm/i915/display/skl_universal_plane.o
  CC      drivers/gpu/drm/i915/display/skl_watermark.o
  CC      drivers/gpu/drm/i915/display/vlv_sideband.o
  CC      drivers/gpu/drm/i915/display/intel_acpi.o
  CC      drivers/gpu/drm/i915/display/intel_opregion.o
  CC      drivers/gpu/drm/i915/display/intel_display_debugfs.o
  CC      drivers/gpu/drm/i915/display/intel_display_debugfs_params.o
  CC      drivers/gpu/drm/i915/display/intel_pipe_crc.o
  CC      drivers/gpu/drm/i915/display/dvo_ch7017.o
  CC      drivers/gpu/drm/i915/display/dvo_ch7xxx.o
  CC      drivers/gpu/drm/i915/display/dvo_ivch.o
  CC      drivers/gpu/drm/i915/display/dvo_ns2501.o
  CC      drivers/gpu/drm/i915/display/dvo_sil164.o
  CC      drivers/gpu/drm/i915/display/dvo_tfp410.o
  CC      drivers/gpu/drm/i915/display/g4x_dp.o
  CC      drivers/gpu/drm/i915/display/g4x_hdmi.o
  CC      drivers/gpu/drm/i915/display/icl_dsi.o
  CC      drivers/gpu/drm/i915/display/intel_backlight.o
  CC      drivers/gpu/drm/i915/display/intel_crt.o
  CC      drivers/gpu/drm/i915/display/intel_cx0_phy.o
  CC      drivers/gpu/drm/i915/display/intel_ddi.o
  CC      drivers/gpu/drm/i915/display/intel_ddi_buf_trans.o
  CC      drivers/gpu/drm/i915/display/intel_display_device.o
  CC      drivers/gpu/drm/i915/display/intel_display_trace.o
  CC      drivers/gpu/drm/i915/display/intel_dkl_phy.o
  CC      drivers/gpu/drm/i915/display/intel_dp.o
  CC      drivers/gpu/drm/i915/display/intel_dp_aux.o
  CC      drivers/gpu/drm/i915/display/intel_dp_aux_backlight.o
  CC      drivers/gpu/drm/i915/display/intel_dp_hdcp.o
  CC      drivers/gpu/drm/i915/display/intel_dp_link_training.o
  CC      drivers/gpu/drm/i915/display/intel_dp_mst.o
  CC      drivers/gpu/drm/i915/display/intel_dp_test.o
  CC      drivers/gpu/drm/i915/display/intel_dsi.o
  CC      drivers/gpu/drm/i915/display/intel_dsi_dcs_backlight.o
  CC      drivers/gpu/drm/i915/display/intel_dsi_vbt.o
  CC      drivers/gpu/drm/i915/display/intel_dvo.o
  CC      drivers/gpu/drm/i915/display/intel_encoder.o
  CC      drivers/gpu/drm/i915/display/intel_gmbus.o
  CC      drivers/gpu/drm/i915/display/intel_hdmi.o
  CC      drivers/gpu/drm/i915/display/intel_lspcon.o
  CC      drivers/gpu/drm/i915/display/intel_lvds.o
  CC      drivers/gpu/drm/i915/display/intel_panel.o
  CC      drivers/gpu/drm/i915/display/intel_pfit.o
  CC      drivers/gpu/drm/i915/display/intel_pps.o
  CC      drivers/gpu/drm/i915/display/intel_qp_tables.o
  CC      drivers/gpu/drm/i915/display/intel_sdvo.o
  CC      drivers/gpu/drm/i915/display/intel_snps_hdmi_pll.o
  CC      drivers/gpu/drm/i915/display/intel_snps_phy.o
  CC      drivers/gpu/drm/i915/display/intel_tv.o
  CC      drivers/gpu/drm/i915/display/intel_vdsc.o
  CC      drivers/gpu/drm/i915/display/intel_vrr.o
  CC      drivers/gpu/drm/i915/display/vlv_dsi.o
  CC      drivers/gpu/drm/i915/display/vlv_dsi_pll.o
  CC      drivers/gpu/drm/i915/i915_perf.o
  CC      drivers/gpu/drm/i915/pxp/intel_pxp.o
  CC      drivers/gpu/drm/i915/pxp/intel_pxp_huc.o
  CC      drivers/gpu/drm/i915/pxp/intel_pxp_tee.o
  CC      drivers/gpu/drm/i915/i915_gpu_error.o
  CC      drivers/gpu/drm/i915/i915_vgpu.o
  LD [M]  drivers/gpu/drm/xe/xe.o
  AR      drivers/gpu/drm/i915/built-in.a
  AR      drivers/gpu/drm/built-in.a
  AR      drivers/gpu/built-in.a
  AR      drivers/built-in.a
  AR      built-in.a
  AR      vmlinux.a
  LD      vmlinux.o
  OBJCOPY modules.builtin.modinfo
  GEN     modules.builtin
  MODPOST Module.symvers
ERROR: modpost: "__divdi3" [drivers/gpu/drm/xe/xe.ko] undefined!
ERROR: modpost: "__udivdi3" [drivers/gpu/drm/xe/xe.ko] undefined!
make[2]: *** [/workspace/kernel/scripts/Makefile.modpost:147: Module.symvers] Error 1
make[1]: *** [/workspace/kernel/Makefile:1953: modpost] Error 2
make: *** [/workspace/kernel/Makefile:248: __sub-make] Error 2
run-parts: /workspace/ci/hooks/11-build-32b exited with return code 2



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

* ✓ CI.checksparse: success for CCS save restore for IGPU (rev6)
  2025-06-06 12:45 [PATCH v6 0/3] CCS save restore for IGPU Satyanarayana K V P
                   ` (7 preceding siblings ...)
  2025-06-06 14:31 ` ✗ CI.Hooks: failure " Patchwork
@ 2025-06-06 14:33 ` Patchwork
  2025-06-06 15:09 ` ✓ Xe.CI.BAT: " Patchwork
  2025-06-08 18:37 ` ✓ Xe.CI.Full: " Patchwork
  10 siblings, 0 replies; 23+ messages in thread
From: Patchwork @ 2025-06-06 14:33 UTC (permalink / raw)
  To: Satyanarayana K V P; +Cc: intel-xe

== Series Details ==

Series: CCS save restore for IGPU (rev6)
URL   : https://patchwork.freedesktop.org/series/149108/
State : success

== Summary ==

+ trap cleanup EXIT
+ KERNEL=/kernel
+ MT=/root/linux/maintainer-tools
+ git clone https://gitlab.freedesktop.org/drm/maintainer-tools /root/linux/maintainer-tools
Cloning into '/root/linux/maintainer-tools'...
warning: redirecting to https://gitlab.freedesktop.org/drm/maintainer-tools.git/
+ make -C /root/linux/maintainer-tools
make: Entering directory '/root/linux/maintainer-tools'
cc -O2 -g -Wextra -o remap-log remap-log.c
make: Leaving directory '/root/linux/maintainer-tools'
+ cd /kernel
+ git config --global --add safe.directory /kernel
+ /root/linux/maintainer-tools/dim sparse --fast 2f92a5cfa1b06e29699d63b805ce3e4aab6c4f77
Sparse version: 0.6.4 (Ubuntu: 0.6.4-4ubuntu3)
Fast mode used, each commit won't be checked separately.
Okay!

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



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

* ✓ Xe.CI.BAT: success for CCS save restore for IGPU (rev6)
  2025-06-06 12:45 [PATCH v6 0/3] CCS save restore for IGPU Satyanarayana K V P
                   ` (8 preceding siblings ...)
  2025-06-06 14:33 ` ✓ CI.checksparse: success " Patchwork
@ 2025-06-06 15:09 ` Patchwork
  2025-06-08 18:37 ` ✓ Xe.CI.Full: " Patchwork
  10 siblings, 0 replies; 23+ messages in thread
From: Patchwork @ 2025-06-06 15:09 UTC (permalink / raw)
  To: Satyanarayana K V P; +Cc: intel-xe

[-- Attachment #1: Type: text/plain, Size: 939 bytes --]

== Series Details ==

Series: CCS save restore for IGPU (rev6)
URL   : https://patchwork.freedesktop.org/series/149108/
State : success

== Summary ==

CI Bug Log - changes from xe-3209-18c655116ff21afbb7c0dc013f52a011f90c91a4_BAT -> xe-pw-149108v6_BAT
====================================================

Summary
-------

  **SUCCESS**

  No regressions found.

  

Participating hosts (8 -> 7)
------------------------------

  Missing    (1): bat-adlp-vm 


Changes
-------

  No changes found


Build changes
-------------

  * Linux: xe-3209-18c655116ff21afbb7c0dc013f52a011f90c91a4 -> xe-pw-149108v6

  IGT_8400: 90a23a10be60c805ab0da456e846d1ec45799f9d @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git
  xe-3209-18c655116ff21afbb7c0dc013f52a011f90c91a4: 18c655116ff21afbb7c0dc013f52a011f90c91a4
  xe-pw-149108v6: 149108v6

== Logs ==

For more details see: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-149108v6/index.html

[-- Attachment #2: Type: text/html, Size: 1487 bytes --]

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

* Re: [PATCH v6 1/3] drm/xe/vf: Create contexts for CCS read write
  2025-06-06 12:45 ` [PATCH v6 1/3] drm/xe/vf: Create contexts for CCS read write Satyanarayana K V P
@ 2025-06-06 17:18   ` Matthew Brost
  2025-06-06 17:39   ` Matthew Brost
  2025-06-09 12:39   ` Michal Wajdeczko
  2 siblings, 0 replies; 23+ messages in thread
From: Matthew Brost @ 2025-06-06 17:18 UTC (permalink / raw)
  To: Satyanarayana K V P
  Cc: intel-xe, Michal Wajdeczko, Michał Winiarski, Tomasz Lis,
	Matthew Auld

On Fri, Jun 06, 2025 at 06:15:56PM +0530, Satyanarayana K V P wrote:
> Create two LRCs to handle CCS meta data read / write from CCS pool in the
> VM. Read context is used to hold GPU instructions to be executed at save
> time and write context is used to hold GPU instructions to be executed at
> the restore time.
> 
> Allocate batch buffer pool using suballocator for both read and write
> contexts.
> 
> Migration framework is reused to create LRCAs for read and write.
> 
> Signed-off-by: Satyanarayana K V P <satyanarayana.k.v.p@intel.com>
> ---
> Cc: Michal Wajdeczko <michal.wajdeczko@intel.com>
> Cc: Michał Winiarski <michal.winiarski@intel.com>
> Cc: Tomasz Lis <tomasz.lis@intel.com>
> Cc: Matthew Brost <matthew.brost@intel.com>
> Cc: Matthew Auld <matthew.auld@intel.com>
> 
> V5 -> V6:
> - Added id field in the xe_tile_vf_ccs structure for self identification.
> 
> V4 -> V5:
> - Modified read/write contexts to enums from #defines (Matthew Brost).
> - The CCS BB pool size is calculated based on the system memory size (Michal
>   Wajdeczko & Matthew Brost).
> 
> V3 -> V4:
> - Fixed issues reported by patchworks.
> 
> V2 -> V3:
> - Added new variable which denotes the initialization of contexts.
> 
> V1 -> V2:
> - Fixed review comments.
> ---
>  drivers/gpu/drm/xe/Makefile                |   1 +
>  drivers/gpu/drm/xe/xe_device.c             |   4 +
>  drivers/gpu/drm/xe/xe_device_types.h       |   4 +
>  drivers/gpu/drm/xe/xe_gt_debugfs.c         |  36 ++++
>  drivers/gpu/drm/xe/xe_sriov.c              |  19 +++
>  drivers/gpu/drm/xe/xe_sriov.h              |   1 +
>  drivers/gpu/drm/xe/xe_sriov_types.h        |   5 +
>  drivers/gpu/drm/xe/xe_sriov_vf_ccs.c       | 186 +++++++++++++++++++++
>  drivers/gpu/drm/xe/xe_sriov_vf_ccs.h       |  13 ++
>  drivers/gpu/drm/xe/xe_sriov_vf_ccs_types.h |  46 +++++
>  10 files changed, 315 insertions(+)
>  create mode 100644 drivers/gpu/drm/xe/xe_sriov_vf_ccs.c
>  create mode 100644 drivers/gpu/drm/xe/xe_sriov_vf_ccs.h
>  create mode 100644 drivers/gpu/drm/xe/xe_sriov_vf_ccs_types.h
> 
> diff --git a/drivers/gpu/drm/xe/Makefile b/drivers/gpu/drm/xe/Makefile
> index f5f5775acdc0..3b5241937742 100644
> --- a/drivers/gpu/drm/xe/Makefile
> +++ b/drivers/gpu/drm/xe/Makefile
> @@ -140,6 +140,7 @@ xe-y += \
>  	xe_memirq.o \
>  	xe_sriov.o \
>  	xe_sriov_vf.o \
> +	xe_sriov_vf_ccs.o \
>  	xe_tile_sriov_vf.o
>  
>  xe-$(CONFIG_PCI_IOV) += \
> diff --git a/drivers/gpu/drm/xe/xe_device.c b/drivers/gpu/drm/xe/xe_device.c
> index 660b0c5126dc..bf96045770c7 100644
> --- a/drivers/gpu/drm/xe/xe_device.c
> +++ b/drivers/gpu/drm/xe/xe_device.c
> @@ -925,6 +925,10 @@ int xe_device_probe(struct xe_device *xe)
>  
>  	xe_vsec_init(xe);
>  
> +	err = xe_sriov_late_init(xe);
> +	if (err)
> +		goto err_unregister_display;
> +
>  	return devm_add_action_or_reset(xe->drm.dev, xe_device_sanitize, xe);
>  
>  err_unregister_display:
> diff --git a/drivers/gpu/drm/xe/xe_device_types.h b/drivers/gpu/drm/xe/xe_device_types.h
> index ac27389ccb8b..caf3bb1ef048 100644
> --- a/drivers/gpu/drm/xe/xe_device_types.h
> +++ b/drivers/gpu/drm/xe/xe_device_types.h
> @@ -22,6 +22,7 @@
>  #include "xe_pmu_types.h"
>  #include "xe_pt_types.h"
>  #include "xe_sriov_types.h"
> +#include "xe_sriov_vf_ccs_types.h"
>  #include "xe_step_types.h"
>  #include "xe_survivability_mode_types.h"
>  #include "xe_ttm_vram_mgr_types.h"
> @@ -234,6 +235,9 @@ struct xe_tile {
>  		struct {
>  			/** @sriov.vf.ggtt_balloon: GGTT regions excluded from use. */
>  			struct xe_ggtt_node *ggtt_balloon[2];
> +
> +			/** @sriov.vf.ccs: CCS read and write contexts for VF. */
> +			struct xe_tile_vf_ccs ccs[XE_SRIOV_VF_CCS_RW_MAX_CTXS];
>  		} vf;
>  	} sriov;
>  
> diff --git a/drivers/gpu/drm/xe/xe_gt_debugfs.c b/drivers/gpu/drm/xe/xe_gt_debugfs.c
> index 848618acdca8..2c6d757db810 100644
> --- a/drivers/gpu/drm/xe/xe_gt_debugfs.c
> +++ b/drivers/gpu/drm/xe/xe_gt_debugfs.c
> @@ -134,6 +134,30 @@ static int sa_info(struct xe_gt *gt, struct drm_printer *p)
>  	return 0;
>  }
>  
> +static int sa_info_vf_ccs(struct xe_gt *gt, struct drm_printer *p)
> +{
> +	struct xe_tile *tile = gt_to_tile(gt);
> +	struct xe_sa_manager *bb_pool;
> +	int ctx_id;
> +
> +	if (!IS_VF_CCS_READY(gt_to_xe(gt)))
> +		return 0;
> +
> +	xe_pm_runtime_get(gt_to_xe(gt));
> +
> +	for_each_ccs_rw_ctx(ctx_id) {
> +		drm_printf(p, "ccs %s bb suballoc info\n", ctx_id ? "write" : "read");
> +		drm_printf(p, "-------------------------\n");
> +		bb_pool = tile->sriov.vf.ccs[ctx_id].mem.ccs_bb_pool;
> +		drm_suballoc_dump_debug_info(&bb_pool->base, p, bb_pool->gpu_addr);
> +		drm_puts(p, "\n");
> +	}
> +
> +	xe_pm_runtime_put(gt_to_xe(gt));
> +
> +	return 0;
> +}
> +
>  static int topology(struct xe_gt *gt, struct drm_printer *p)
>  {
>  	xe_pm_runtime_get(gt_to_xe(gt));
> @@ -303,6 +327,13 @@ static const struct drm_info_list vf_safe_debugfs_list[] = {
>  	{"hwconfig", .show = xe_gt_debugfs_simple_show, .data = hwconfig},
>  };
>  
> +/*
> + * only for GT debugfs files which are valid on VF. Not valid on PF.
> + */
> +static const struct drm_info_list vf_only_debugfs_list[] = {
> +	{"sa_info_vf_ccs", .show = xe_gt_debugfs_simple_show, .data = sa_info_vf_ccs},
> +};
> +
>  /* everything else should be added here */
>  static const struct drm_info_list pf_only_debugfs_list[] = {
>  	{"hw_engines", .show = xe_gt_debugfs_simple_show, .data = hw_engines},
> @@ -419,6 +450,11 @@ void xe_gt_debugfs_register(struct xe_gt *gt)
>  		drm_debugfs_create_files(pf_only_debugfs_list,
>  					 ARRAY_SIZE(pf_only_debugfs_list),
>  					 root, minor);
> +	else
> +		drm_debugfs_create_files(vf_only_debugfs_list,
> +					 ARRAY_SIZE(vf_only_debugfs_list),
> +					 root, minor);
> +
>  
>  	xe_uc_debugfs_register(&gt->uc, root);
>  
> diff --git a/drivers/gpu/drm/xe/xe_sriov.c b/drivers/gpu/drm/xe/xe_sriov.c
> index a0eab44c0e76..87911fb4eea7 100644
> --- a/drivers/gpu/drm/xe/xe_sriov.c
> +++ b/drivers/gpu/drm/xe/xe_sriov.c
> @@ -15,6 +15,7 @@
>  #include "xe_sriov.h"
>  #include "xe_sriov_pf.h"
>  #include "xe_sriov_vf.h"
> +#include "xe_sriov_vf_ccs.h"
>  
>  /**
>   * xe_sriov_mode_to_string - Convert enum value to string.
> @@ -157,3 +158,21 @@ const char *xe_sriov_function_name(unsigned int n, char *buf, size_t size)
>  		strscpy(buf, "PF", size);
>  	return buf;
>  }
> +
> +/**
> + * xe_sriov_late_init() - SR-IOV late initialization functions.
> + * @xe: the &xe_device to initialize
> + *
> + * On VF this function will initialize code for CCS migration.
> + *
> + * Return: 0 on success or a negative error code on failure.
> + */
> +int xe_sriov_late_init(struct xe_device *xe)
> +{
> +	int err = 0;
> +
> +	if (IS_VF_CCS_INIT_NEEDED(xe))
> +		err = xe_sriov_vf_ccs_init(xe);
> +
> +	return err;
> +}
> diff --git a/drivers/gpu/drm/xe/xe_sriov.h b/drivers/gpu/drm/xe/xe_sriov.h
> index 688fbabf08f1..0e0c1abf2d14 100644
> --- a/drivers/gpu/drm/xe/xe_sriov.h
> +++ b/drivers/gpu/drm/xe/xe_sriov.h
> @@ -18,6 +18,7 @@ const char *xe_sriov_function_name(unsigned int n, char *buf, size_t len);
>  void xe_sriov_probe_early(struct xe_device *xe);
>  void xe_sriov_print_info(struct xe_device *xe, struct drm_printer *p);
>  int xe_sriov_init(struct xe_device *xe);
> +int xe_sriov_late_init(struct xe_device *xe);
>  
>  static inline enum xe_sriov_mode xe_device_sriov_mode(const struct xe_device *xe)
>  {
> diff --git a/drivers/gpu/drm/xe/xe_sriov_types.h b/drivers/gpu/drm/xe/xe_sriov_types.h
> index ca94382a721e..8abfdb2c5ead 100644
> --- a/drivers/gpu/drm/xe/xe_sriov_types.h
> +++ b/drivers/gpu/drm/xe/xe_sriov_types.h
> @@ -71,6 +71,11 @@ struct xe_device_vf {
>  		/** @migration.gt_flags: Per-GT request flags for VF migration recovery */
>  		unsigned long gt_flags;
>  	} migration;
> +
> +	struct {
> +		/** @initialized: Initilalization of vf ccs is completed or not */
> +		bool initialized;
> +	} ccs;
>  };
>  
>  #endif
> diff --git a/drivers/gpu/drm/xe/xe_sriov_vf_ccs.c b/drivers/gpu/drm/xe/xe_sriov_vf_ccs.c
> new file mode 100644
> index 000000000000..41fe1f59e0e9
> --- /dev/null
> +++ b/drivers/gpu/drm/xe/xe_sriov_vf_ccs.c
> @@ -0,0 +1,186 @@
> +// SPDX-License-Identifier: MIT
> +/*
> + * Copyright © 2025 Intel Corporation
> + */
> +
> +#include "instructions/xe_mi_commands.h"
> +#include "instructions/xe_gpu_commands.h"
> +#include "xe_bo.h"
> +#include "xe_device.h"
> +#include "xe_migrate.h"
> +#include "xe_sa.h"
> +#include "xe_sriov_printk.h"
> +#include "xe_sriov_vf_ccs.h"
> +#include "xe_sriov_vf_ccs_types.h"
> +
> +/**
> + * DOC: VF save/restore of compression Meta Data
> + *
> + * VF KMD registers two special contexts/LRCAs.
> + *
> + * Save Context/LRCA: contain necessary cmds+page table to trigger Meta data /
> + * compression control surface (Aka CCS) save in regular System memory in VM.
> + *
> + * Restore Context/LRCA: contain necessary cmds+page table to trigger Meta data /
> + * compression control surface (Aka CCS) Restore from regular System memory in
> + * VM to corresponding CCS pool.
> + *
> + * Below diagram explain steps needed for VF save/Restore of compression Meta
> + * Data::
> + *
> + *    CCS Save    CCS Restore          VF KMD                          Guc       BCS
> + *     LRCA        LRCA
> + *      |           |                     |                              |         |
> + *      |           |                     |                              |         |
> + *      |     Create Save LRCA            |                              |         |
> + *     [ ]<----------------------------- [ ]                             |         |
> + *      |           |                     |                              |         |
> + *      |           |                     |                              |         |
> + *      |           |                     |   Register LRCA with Guc     |         |
> + *      |           |                    [ ]--------------------------->[ ]        |
> + *      |           |                     |                              |         |
> + *      |           |                     |                              |         |
> + *      |           | Create restore LRCA |                              |         |
> + *      |          [ ]<------------------[ ]                             |         |
> + *      |           |                     |                              |         |
> + *      |           |                     |                              |         |
> + *      |           |                    [ ]-----------------------      |         |
> + *      |           |                    [ ]  Allocate main memory |     |         |
> + *      |           |                    [ ]  Allocate CCS memory  |     |         |
> + *      |           |                    [ ]<----------------------      |         |
> + *      |           |                     |                              |         |
> + *      |           |                     |                              |         |
> + *      | Update Main memory & CCS pages  |                              |         |
> + *      |   PPGTT + BB cmds to save       |                              |         |
> + *     [ ]<------------------------------[ ]                             |         |
> + *      |           |                     |                              |         |
> + *      |           |                     |                              |         |
> + *      |           | Update Main memory  |                              |         |
> + *      |           | & CCS pages PPGTT + |                              |         |
> + *      |           | BB cms to restore   |                              |         |
> + *      |          [ ]<------------------[ ]                             |         |
> + *      |           |                     |                              |         |
> + *      |           |                     |                              |         |
> + *      |           |                   VF Pause                         |         |
> + *      |           |                     |                              |Schedule |
> + *      |           |                     |                              |CCS Save |
> + *      |           |                     |                              | LRCA    |
> + *      |           |                     |                             [ ]------>[ ]
> + *      |           |                     |                              |         |
> + *      |           |                     |                              |         |
> + *      |           |                   VF Restore                       |         |
> + *      |           |                     |                              |         |
> + *      |           |                     |                              |         |
> + *      |           |                    [ ]--------------               |         |
> + *      |           |                    [ ] Fix up GGTT  |              |         |
> + *      |           |                    [ ]<-------------               |         |
> + *      |           |                     |                              |         |
> + *      |           |                     |                              |         |
> + *      |           |                     |                              |Schedule |
> + *      |           |                     |                              |CCS      |
> + *      |           |                     |                              |Restore  |
> + *      |           |                     |                              |LRCA     |
> + *      |           |                     |                             [ ]------>[ ]
> + *      |           |                     |                              |         |
> + *      |           |                     |                              |         |
> + *
> + */
> +
> +static u64 get_ccs_bb_pool_size(struct xe_device *xe)
> +{
> +	u64 sys_mem_size, ccs_mem_size, ptes, bb_pool_size;
> +	struct sysinfo si;
> +
> +	si_meminfo(&si);
> +	sys_mem_size = si.totalram * si.mem_unit;
> +	ccs_mem_size = sys_mem_size / NUM_BYTES_PER_CCS_BYTE(xe);
> +	ptes = DIV_ROUND_UP(sys_mem_size + ccs_mem_size, XE_PAGE_SIZE);
> +
> +	/**
> +	 * We need below BB size to hold PTE mappings and some DWs for copy
> +	 * command. In reality, we need space for many copy commands. So, let
> +	 * us allocate double the calculated size which is enough to holds GPU
> +	 * instructions for the whole region.
> +	 */
> +	bb_pool_size = ptes * sizeof(u32);
> +
> +	return round_up(bb_pool_size * 2, SZ_1M);
> +}
> +
> +static int alloc_bb_pool(struct xe_tile *tile, struct xe_tile_vf_ccs *ctx)
> +{
> +	struct xe_device *xe = tile_to_xe(tile);
> +	struct xe_sa_manager *sa_manager;
> +	u64 bb_pool_size;
> +	int offset, err;
> +
> +	bb_pool_size = get_ccs_bb_pool_size(xe);
> +	xe_sriov_info(xe, "Allocating %s CCS BB pool size = %lldMB\n",
> +		      ctx->id ? "Restore" : "Save", bb_pool_size / SZ_1M);
> +
> +	sa_manager = xe_sa_bo_manager_init(tile, bb_pool_size, SZ_16);
> +
> +	if (IS_ERR(sa_manager)) {
> +		xe_sriov_err(xe, "Suballocator init failed with error: %pe\n",
> +			     sa_manager);
> +		err = PTR_ERR(sa_manager);
> +		return err;
> +	}
> +
> +	offset = 0;
> +	xe_map_memset(xe, &sa_manager->bo->vmap, offset, MI_NOOP,
> +		      bb_pool_size);
> +
> +	offset = bb_pool_size - sizeof(u32);
> +	xe_map_wr(xe, &sa_manager->bo->vmap, offset, u32, MI_BATCH_BUFFER_END);
> +
> +	ctx->mem.ccs_bb_pool = sa_manager;
> +
> +	return 0;
> +}
> +
> +/**
> + * xe_sriov_vf_ccs_init - Setup LRCA for save & restore.
> + * @xe: the &xe_device to start recovery on
> + *
> + * This function shall be called only by VF. It initializes
> + * LRCA and suballocator needed for CCS save & restore.
> + *
> + * Return: 0 on success. Negative error code on failure.
> + */
> +int xe_sriov_vf_ccs_init(struct xe_device *xe)
> +{
> +	struct xe_migrate *migrate;
> +	struct xe_tile_vf_ccs *ctx;
> +	struct xe_tile *tile;
> +	int tile_id, ctx_id;
> +	int err = 0;
> +
> +	xe_assert(xe, (IS_SRIOV_VF(xe) || !IS_DGFX(xe) ||
> +		       xe_device_has_flat_ccs(xe)));
> +
> +	for_each_tile(tile, xe, tile_id) {
> +		for_each_ccs_rw_ctx(ctx_id) {
> +			ctx = &tile->sriov.vf.ccs[ctx_id];
> +			ctx->id = ctx_id;
> +
> +			migrate = xe_migrate_init(tile);
> +			if (IS_ERR(migrate)) {
> +				err = PTR_ERR(migrate);
> +				goto err_ret;
> +			}
> +			ctx->migrate = migrate;
> +
> +			err = alloc_bb_pool(tile, ctx);
> +			if (err)
> +				goto err_ret;
> +		}
> +	}
> +
> +	xe->sriov.vf.ccs.initialized = 1;
> +
> +	return 0;
> +
> +err_ret:
> +	return err;
> +}
> diff --git a/drivers/gpu/drm/xe/xe_sriov_vf_ccs.h b/drivers/gpu/drm/xe/xe_sriov_vf_ccs.h
> new file mode 100644
> index 000000000000..5df9ba028d14
> --- /dev/null
> +++ b/drivers/gpu/drm/xe/xe_sriov_vf_ccs.h
> @@ -0,0 +1,13 @@
> +/* SPDX-License-Identifier: MIT */
> +/*
> + * Copyright © 2025 Intel Corporation
> + */
> +
> +#ifndef _XE_SRIOV_VF_CCS_H_
> +#define _XE_SRIOV_VF_CCS_H_
> +
> +struct xe_device;
> +
> +int xe_sriov_vf_ccs_init(struct xe_device *xe);
> +
> +#endif
> diff --git a/drivers/gpu/drm/xe/xe_sriov_vf_ccs_types.h b/drivers/gpu/drm/xe/xe_sriov_vf_ccs_types.h
> new file mode 100644
> index 000000000000..f67f002c7a96
> --- /dev/null
> +++ b/drivers/gpu/drm/xe/xe_sriov_vf_ccs_types.h
> @@ -0,0 +1,46 @@
> +/* SPDX-License-Identifier: MIT */
> +/*
> + * Copyright © 2022-2023 Intel Corporation

s/2022-2023/2025

> + */
> +
> +#ifndef _XE_SRIOV_VF_CCS__TYPES_H_
> +#define _XE_SRIOV_VF_CCS__TYPES_H_
> +
> +#define for_each_ccs_rw_ctx(id__) \
> +	for ((id__) = 0; (id__) < XE_SRIOV_VF_CCS_RW_MAX_CTXS; (id__)++)
> +
> +#define IS_VF_CCS_READY(xe) ({ \
> +		struct xe_device *___xe = (xe); \
> +		xe_assert(___xe, IS_SRIOV_VF(___xe)); \
> +		___xe->sriov.vf.ccs.initialized; \
> +		})
> +
> +#define IS_VF_CCS_INIT_NEEDED(xe) ({\
> +		struct xe_device *___xe = (xe); \
> +		IS_SRIOV_VF(___xe) && !IS_DGFX(___xe) && \
> +		xe_device_has_flat_ccs(___xe) && GRAPHICS_VER(___xe) >= 20; \
> +		})
> +
> +enum xe_sriov_vf_ccs_rw_ctxs {
> +	XE_SRIOV_VF_CCS_RW_MIN_CTXS = 0,

XE_SRIOV_VF_CCS_RW_MIN_CTXS is unused, I'd drop and just set
XE_SRIOV_VF_CCS_READ_CTX to 0.

> +	XE_SRIOV_VF_CCS_READ_CTX = XE_SRIOV_VF_CCS_RW_MIN_CTXS,
> +	XE_SRIOV_VF_CCS_WRITE_CTX,
> +	XE_SRIOV_VF_CCS_RW_MAX_CTXS

s/XE_SRIOV_VF_CCS_RW_MAX_CTXS/XE_SRIOV_VF_CCS_CTX_COUNT/

With the nits fixed:
Acked-by: Matthew Brost <matthew.brost@intel.com>

I'll leave the final review to the SRIOV team as they know more about
the init flows and can review the structure of that.

Matt

> +};
> +
> +struct xe_migrate;
> +struct xe_sa_manager;
> +
> +struct xe_tile_vf_ccs {
> +	/** @id: Id to which context it belongs to */
> +	int id;
> +	/** @migrate: Migration helper for save/restore of CCS data */
> +	struct xe_migrate *migrate;
> +
> +	struct {
> +		/** @ccs_rw_bb_pool: Pool from which batch buffers are allocated. */
> +		struct xe_sa_manager *ccs_bb_pool;
> +	} mem;
> +};
> +
> +#endif
> -- 
> 2.43.0
> 

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

* Re: [PATCH v6 2/3] drm/xe/vf: Attach and detach CCS copy commands with BO
  2025-06-06 12:45 ` [PATCH v6 2/3] drm/xe/vf: Attach and detach CCS copy commands with BO Satyanarayana K V P
@ 2025-06-06 17:37   ` Matthew Brost
  2025-06-09 12:00     ` K V P, Satyanarayana
  0 siblings, 1 reply; 23+ messages in thread
From: Matthew Brost @ 2025-06-06 17:37 UTC (permalink / raw)
  To: Satyanarayana K V P
  Cc: intel-xe, Michal Wajdeczko, Michał Winiarski, Tomasz Lis,
	Matthew Auld

On Fri, Jun 06, 2025 at 06:15:57PM +0530, Satyanarayana K V P wrote:
> Attach CCS read/write copy commands to BO for old and new mem types as
> NULL -> tt or system -> tt.
> Detach the CCS read/write copy commands from BO while deleting ttm bo
> from xe_ttm_bo_delete_mem_notify().
> 
> Signed-off-by: Satyanarayana K V P <satyanarayana.k.v.p@intel.com>
> ---
> Cc: Michal Wajdeczko <michal.wajdeczko@intel.com>
> Cc: Michał Winiarski <michal.winiarski@intel.com>
> Cc: Tomasz Lis <tomasz.lis@intel.com>
> Cc: Matthew Brost <matthew.brost@intel.com>
> Cc: Matthew Auld <matthew.auld@intel.com>
> 
> V5 -> V6:
> - Removed dead code from xe_migrate_ccs_rw_copy() function. (Matthew Brost)
> 
> V4 -> V5:
> - Create a list of BBs for the given BO and fixed memory leak while
>   detaching BOs. (Matthew Brost).

I'd still personally prefer a single BB per BO rather than having a
list. Unless I'm missing something, I think that would work and would be
cleaner. Any particular reason you went with a list of BB over a single
BB?

> - Fixed review comments (Matthew Brost & Matthew Auld).
> - Yet to cleanup xe_migrate_ccs_rw_copy() function.
> 
> V3 -> V4:
> - Fixed issues reported by patchworks.
> 
> V2 -> V3:
> - Attach and detach functions check for IS_VF_CCS_READY().
> 
> V1 -> V2:
> - Fixed review comments.
> ---
>  drivers/gpu/drm/xe/xe_bb.c                 | 34 ++++++++
>  drivers/gpu/drm/xe/xe_bb.h                 |  3 +
>  drivers/gpu/drm/xe/xe_bb_types.h           |  1 +
>  drivers/gpu/drm/xe/xe_bo.c                 | 23 +++++
>  drivers/gpu/drm/xe/xe_bo_types.h           |  3 +
>  drivers/gpu/drm/xe/xe_migrate.c            | 98 ++++++++++++++++++++++
>  drivers/gpu/drm/xe/xe_migrate.h            |  4 +
>  drivers/gpu/drm/xe/xe_sriov_vf_ccs.c       | 77 +++++++++++++++++
>  drivers/gpu/drm/xe/xe_sriov_vf_ccs.h       |  3 +
>  drivers/gpu/drm/xe/xe_sriov_vf_ccs_types.h |  8 ++
>  10 files changed, 254 insertions(+)
> 
> diff --git a/drivers/gpu/drm/xe/xe_bb.c b/drivers/gpu/drm/xe/xe_bb.c
> index 9570672fce33..ee31556e00bc 100644
> --- a/drivers/gpu/drm/xe/xe_bb.c
> +++ b/drivers/gpu/drm/xe/xe_bb.c
> @@ -60,6 +60,40 @@ struct xe_bb *xe_bb_new(struct xe_gt *gt, u32 dwords, bool usm)
>  	return ERR_PTR(err);
>  }
>  
> +struct xe_bb *xe_bb_ccs_new(struct xe_gt *gt, u32 dwords,
> +			    enum xe_sriov_vf_ccs_rw_ctxs ctx_id)
> +{
> +	struct xe_bb *bb = kmalloc(sizeof(*bb), GFP_KERNEL);
> +	struct xe_tile *tile = gt_to_tile(gt);
> +	struct xe_sa_manager *bb_pool;
> +	int err;
> +
> +	if (!bb)
> +		return ERR_PTR(-ENOMEM);
> +
> +	/*
> +	 * We need to allocate space for the requested number of dwords,
> +	 * one additional MI_BATCH_BUFFER_END dword, and additional buffer
> +	 * space to accommodate the platform-specific hardware prefetch
> +	 * requirements.
> +	 */
> +	bb_pool = tile->sriov.vf.ccs[ctx_id].mem.ccs_bb_pool;
> +	bb->bo = xe_sa_bo_new(bb_pool, 4 * (dwords + 1) + bb_prefetch(gt));
> +
> +	if (IS_ERR(bb->bo)) {
> +		err = PTR_ERR(bb->bo);
> +		goto err;
> +	}
> +
> +	bb->cs = xe_sa_bo_cpu_addr(bb->bo);
> +	bb->len = 0;
> +
> +	return bb;
> +err:
> +	kfree(bb);
> +	return ERR_PTR(err);
> +}
> +
>  static struct xe_sched_job *
>  __xe_bb_create_job(struct xe_exec_queue *q, struct xe_bb *bb, u64 *addr)
>  {
> diff --git a/drivers/gpu/drm/xe/xe_bb.h b/drivers/gpu/drm/xe/xe_bb.h
> index fafacd73dcc3..32c9c4c5d2be 100644
> --- a/drivers/gpu/drm/xe/xe_bb.h
> +++ b/drivers/gpu/drm/xe/xe_bb.h
> @@ -13,8 +13,11 @@ struct dma_fence;
>  struct xe_gt;
>  struct xe_exec_queue;
>  struct xe_sched_job;
> +enum xe_sriov_vf_ccs_rw_ctxs;
>  
>  struct xe_bb *xe_bb_new(struct xe_gt *gt, u32 size, bool usm);
> +struct xe_bb *xe_bb_ccs_new(struct xe_gt *gt, u32 dwords,
> +			    enum xe_sriov_vf_ccs_rw_ctxs ctx_id);
>  struct xe_sched_job *xe_bb_create_job(struct xe_exec_queue *q,
>  				      struct xe_bb *bb);
>  struct xe_sched_job *xe_bb_create_migration_job(struct xe_exec_queue *q,
> diff --git a/drivers/gpu/drm/xe/xe_bb_types.h b/drivers/gpu/drm/xe/xe_bb_types.h
> index b7d30308cf90..b2358cc051ff 100644
> --- a/drivers/gpu/drm/xe/xe_bb_types.h
> +++ b/drivers/gpu/drm/xe/xe_bb_types.h
> @@ -12,6 +12,7 @@ struct drm_suballoc;
>  
>  struct xe_bb {
>  	struct drm_suballoc *bo;
> +	struct list_head list;
>  
>  	u32 *cs;
>  	u32 len; /* in dwords */
> diff --git a/drivers/gpu/drm/xe/xe_bo.c b/drivers/gpu/drm/xe/xe_bo.c
> index 61d208c85281..b2ed5a36ab3d 100644
> --- a/drivers/gpu/drm/xe/xe_bo.c
> +++ b/drivers/gpu/drm/xe/xe_bo.c
> @@ -31,6 +31,7 @@
>  #include "xe_pxp.h"
>  #include "xe_res_cursor.h"
>  #include "xe_shrinker.h"
> +#include "xe_sriov_vf_ccs.h"
>  #include "xe_trace_bo.h"
>  #include "xe_ttm_stolen_mgr.h"
>  #include "xe_vm.h"
> @@ -948,6 +949,20 @@ static int xe_bo_move(struct ttm_buffer_object *ttm_bo, bool evict,
>  	dma_fence_put(fence);
>  	xe_pm_runtime_put(xe);
>  
> +	/*
> +	 * CCS meta data is migrated from TT -> SMEM. So, let us detach the
> +	 * BBs from BO as it is no longer needed.
> +	 */
> +	if (IS_VF_CCS_BB_VALID(xe, bo) && old_mem_type == XE_PL_TT &&
> +	    new_mem->mem_type == XE_PL_SYSTEM)
> +		xe_sriov_vf_ccs_detach_bo(bo);
> +
> +	if (IS_SRIOV_VF(xe) &&
> +	    ((move_lacks_source && new_mem->mem_type == XE_PL_TT) ||
> +	     (old_mem_type == XE_PL_SYSTEM && new_mem->mem_type == XE_PL_TT)) &&
> +	    handle_system_ccs)
> +		ret = xe_sriov_vf_ccs_attach_bo(bo);
> +
>  out:
>  	if ((!ttm_bo->resource || ttm_bo->resource->mem_type == XE_PL_SYSTEM) &&
>  	    ttm_bo->ttm) {
> @@ -958,6 +973,9 @@ static int xe_bo_move(struct ttm_buffer_object *ttm_bo, bool evict,
>  		if (timeout < 0)
>  			ret = timeout;
>  
> +		if (IS_VF_CCS_BB_VALID(xe, bo))
> +			xe_sriov_vf_ccs_detach_bo(bo);
> +
>  		xe_tt_unmap_sg(ttm_bo->ttm);
>  	}
>  
> @@ -1482,9 +1500,14 @@ static void xe_ttm_bo_release_notify(struct ttm_buffer_object *ttm_bo)
>  
>  static void xe_ttm_bo_delete_mem_notify(struct ttm_buffer_object *ttm_bo)
>  {
> +	struct xe_bo *bo = ttm_to_xe_bo(ttm_bo);
> +
>  	if (!xe_bo_is_xe_bo(ttm_bo))
>  		return;
>  
> +	if (IS_VF_CCS_BB_VALID(ttm_to_xe_device(ttm_bo->bdev), bo))
> +		xe_sriov_vf_ccs_detach_bo(bo);
> +
>  	/*
>  	 * Object is idle and about to be destroyed. Release the
>  	 * dma-buf attachment.
> diff --git a/drivers/gpu/drm/xe/xe_bo_types.h b/drivers/gpu/drm/xe/xe_bo_types.h
> index eb5e83c5f233..481b8e0d8ab1 100644
> --- a/drivers/gpu/drm/xe/xe_bo_types.h
> +++ b/drivers/gpu/drm/xe/xe_bo_types.h
> @@ -78,6 +78,9 @@ struct xe_bo {
>  	/** @ccs_cleared */
>  	bool ccs_cleared;
>  
> +	/** @bb_ccs_rw: BB instructions of CCS read/write. Valid only for VF */
> +	struct xe_bb *bb_ccs[XE_SRIOV_VF_CCS_RW_MAX_CTXS];
> +
>  	/**
>  	 * @cpu_caching: CPU caching mode. Currently only used for userspace
>  	 * objects. Exceptions are system memory on DGFX, which is always
> diff --git a/drivers/gpu/drm/xe/xe_migrate.c b/drivers/gpu/drm/xe/xe_migrate.c
> index 8f8e9fdfb2a8..d7f3009260ee 100644
> --- a/drivers/gpu/drm/xe/xe_migrate.c
> +++ b/drivers/gpu/drm/xe/xe_migrate.c
> @@ -940,6 +940,104 @@ struct dma_fence *xe_migrate_copy(struct xe_migrate *m,
>  	return fence;
>  }
>  
> +/**
> + * xe_migrate_ccs_rw_copy() - Copy content of TTM resources.
> + * @m: The migration context.
> + * @src_bo: The buffer object @src is currently bound to.
> + * @read_write : Creates BB commands for CCS read/write.
> + *
> + * Creates batch buffer instructions to copy CCS metadata from CCS pool to
> + * memory and vice versa.
> + *
> + * This function should only be called for IGPU.
> + *
> + * Return: 0 if successful, negative error code on failure.
> + */
> +int xe_migrate_ccs_rw_copy(struct xe_migrate *m,
> +			   struct xe_bo *src_bo,
> +			   int read_write)

s/int read_write/enum xe_sriov_vf_ccs_rw_ctxs

> +
> +{
> +	bool src_is_pltt = read_write == XE_SRIOV_VF_CCS_WRITE_CTX;
> +	bool dst_is_pltt = read_write == XE_SRIOV_VF_CCS_READ_CTX;
> +	struct ttm_resource *src = src_bo->ttm.resource;
> +	struct xe_gt *gt = m->tile->primary_gt;
> +	struct xe_device *xe = gt_to_xe(gt);
> +	struct xe_res_cursor src_it, ccs_it;
> +	u64 size = src_bo->size;
> +	u64 src_L0, src_L0_ofs;
> +	u32 src_L0_pt;
> +	int err;
> +
> +	xe_res_first_sg(xe_bo_sg(src_bo), 0, size, &src_it);
> +
> +	xe_res_first_sg(xe_bo_sg(src_bo), xe_bo_ccs_pages_start(src_bo),
> +			PAGE_ALIGN(xe_device_ccs_bytes(xe, size)),
> +			&ccs_it);
> +
> +	while (size) {
> +		u32 batch_size = 8; /* arb_clear() + MI_BATCH_BUFFER_END + Flush + NOP */
> +		struct xe_bb *bb;
> +		u32 flush_flags = 0;
> +		u64 ccs_ofs, ccs_size;
> +		u32 ccs_pt;
> +
> +		u32 avail_pts = max_mem_transfer_per_pass(xe) / LEVEL0_PAGE_TABLE_ENCODE_SIZE;
> +
> +		src_L0 = xe_migrate_res_sizes(m, &src_it);
> +
> +		batch_size += pte_update_size(m, false, src, &src_it, &src_L0,
> +					      &src_L0_ofs, &src_L0_pt, 0, 0,
> +					      avail_pts);
> +
> +		ccs_size = xe_device_ccs_bytes(xe, src_L0);
> +		batch_size += pte_update_size(m, 0, NULL, &ccs_it, &ccs_size, &ccs_ofs,
> +					      &ccs_pt, 0, avail_pts, avail_pts);
> +		xe_assert(xe, IS_ALIGNED(ccs_it.start, PAGE_SIZE));
> +
> +		/* Add copy commands size here */
> +		batch_size += EMIT_COPY_CCS_DW;
> +
> +		bb = xe_bb_ccs_new(gt, batch_size, read_write);
> +		if (IS_ERR(bb)) {
> +			drm_dbg(&xe->drm, "BB allocation failed.\n");

s/drm_dbg/xe_sriov_err - I think.

> +			err = PTR_ERR(bb);
> +			goto err_ret;
> +		}
> +
> +		emit_pte(m, bb, src_L0_pt, false, true, &src_it, src_L0, src);
> +
> +		emit_pte(m, bb, ccs_pt, false, false, &ccs_it, ccs_size, src);
> +
> +		bb->cs[bb->len++] = MI_FLUSH_DW | MI_INVALIDATE_TLB | MI_FLUSH_DW_OP_STOREDW |
> +					MI_FLUSH_IMM_DW;
> +		bb->cs[bb->len++] = MI_NOOP;
> +		bb->cs[bb->len++] = MI_NOOP;
> +
> +		flush_flags = xe_migrate_ccs_copy(m, bb, src_L0_ofs, src_is_pltt,
> +						  src_L0_ofs, dst_is_pltt,
> +						  src_L0, ccs_ofs, true);
> +
> +		bb->cs[bb->len++] = MI_FLUSH_DW | MI_INVALIDATE_TLB | MI_FLUSH_DW_OP_STOREDW |
> +					MI_FLUSH_IMM_DW | flush_flags;
> +		bb->cs[bb->len++] = MI_NOOP;
> +		bb->cs[bb->len++] = MI_NOOP;
> +
> +		if (size == src_bo->size) {
> +			src_bo->bb_ccs[read_write] = bb;
> +			INIT_LIST_HEAD(&src_bo->bb_ccs[read_write]->list);
> +		} else {
> +			list_add(&bb->list, &src_bo->bb_ccs[read_write]->list);
> +		}
> +
> +		size -= src_L0;
> +	}
> +	return 0;
> +
> +err_ret:
> +	return err;
> +}
> +
>  static void emit_clear_link_copy(struct xe_gt *gt, struct xe_bb *bb, u64 src_ofs,
>  				 u32 size, u32 pitch)
>  {
> diff --git a/drivers/gpu/drm/xe/xe_migrate.h b/drivers/gpu/drm/xe/xe_migrate.h
> index fb9839c1bae0..ab5ebb44d2c9 100644
> --- a/drivers/gpu/drm/xe/xe_migrate.h
> +++ b/drivers/gpu/drm/xe/xe_migrate.h
> @@ -112,6 +112,10 @@ struct dma_fence *xe_migrate_copy(struct xe_migrate *m,
>  				  struct ttm_resource *dst,
>  				  bool copy_only_ccs);
>  
> +int xe_migrate_ccs_rw_copy(struct xe_migrate *m,
> +			   struct xe_bo *src_bo,
> +			   int read_write);
> +
>  int xe_migrate_access_memory(struct xe_migrate *m, struct xe_bo *bo,
>  			     unsigned long offset, void *buf, int len,
>  			     int write);
> diff --git a/drivers/gpu/drm/xe/xe_sriov_vf_ccs.c b/drivers/gpu/drm/xe/xe_sriov_vf_ccs.c
> index 41fe1f59e0e9..4b5cfc0d421b 100644
> --- a/drivers/gpu/drm/xe/xe_sriov_vf_ccs.c
> +++ b/drivers/gpu/drm/xe/xe_sriov_vf_ccs.c
> @@ -5,6 +5,7 @@
>  
>  #include "instructions/xe_mi_commands.h"
>  #include "instructions/xe_gpu_commands.h"
> +#include "xe_bb.h"
>  #include "xe_bo.h"
>  #include "xe_device.h"
>  #include "xe_migrate.h"
> @@ -184,3 +185,79 @@ int xe_sriov_vf_ccs_init(struct xe_device *xe)
>  err_ret:
>  	return err;
>  }
> +
> +/**
> + * xe_sriov_vf_ccs_attach_bo - Insert CCS read write commands in the BO.
> + * @bo: the &buffer object to which batch buffer commands will be added.
> + *
> + * This function shall be called only by VF. It inserts the PTEs and copy
> + * command instructions in the BO by calling xe_migrate_ccs_rw_copy()
> + * function.
> + *
> + * Returns: 0 if successful, negative error code on failure.
> + */
> +int xe_sriov_vf_ccs_attach_bo(struct xe_bo *bo)
> +{
> +	struct xe_device *xe = xe_bo_device(bo);
> +	struct xe_migrate *migrate;
> +	struct xe_tile *tile;
> +	int tile_id, ctx_id;

ctx_id can be enum xe_sriov_vf_ccs_rw_ctxs

> +	struct xe_bb *bb;
> +	int err = 0;
> +
> +	if (!IS_VF_CCS_READY(xe))
> +		return 0;
> +
> +	for_each_tile(tile, xe, tile_id) {
> +		for_each_ccs_rw_ctx(ctx_id) {
> +			bb = bo->bb_ccs[ctx_id];
> +			if (bb)
> +				xe_sriov_err(xe, "Probable memory leak\n");
> +
> +			migrate = tile->sriov.vf.ccs[ctx_id].migrate;
> +			err = xe_migrate_ccs_rw_copy(migrate, bo, ctx_id);
> +		}
> +	}
> +	return err;
> +}
> +
> +/**
> + * xe_sriov_vf_ccs_detach_bo - Remove CCS read write commands from the BO.
> + * @bo: the &buffer object from which batch buffer commands will be removed.
> + *
> + * This function shall be called only by VF. It removes the PTEs and copy
> + * command instructions from the BO. Make sure to update the BB with MI_NOOP
> + * before freeing.
> + *
> + * Returns: 0 if successful, negative error code on failure.
> + */
> +int xe_sriov_vf_ccs_detach_bo(struct xe_bo *bo)
> +{
> +	struct xe_device *xe = xe_bo_device(bo);
> +	struct xe_bb *bb, *pos, *temp;
> +	struct xe_tile *tile;
> +	int tile_id, ctx_id;

ctx_id can be enum xe_sriov_vf_ccs_rw_ctxs

Matt

> +
> +	if (!IS_VF_CCS_READY(xe))
> +		return 0;
> +
> +	for_each_tile(tile, xe, tile_id) {
> +		for_each_ccs_rw_ctx(ctx_id) {
> +			bb = bo->bb_ccs[ctx_id];
> +			if (!bb)
> +				continue;
> +
> +			list_for_each_entry_safe(pos, temp, &bb->list, list) {
> +				list_del(&pos->list);
> +				memset(pos->cs, MI_NOOP, pos->len * sizeof(u32));
> +				xe_bb_free(pos, NULL);
> +			}
> +
> +			/* Free-up head BB */
> +			memset(bb->cs, MI_NOOP, bb->len * sizeof(u32));
> +			xe_bb_free(bb, NULL);
> +			bo->bb_ccs[ctx_id] = NULL;
> +		}
> +	}
> +	return 0;
> +}
> diff --git a/drivers/gpu/drm/xe/xe_sriov_vf_ccs.h b/drivers/gpu/drm/xe/xe_sriov_vf_ccs.h
> index 5df9ba028d14..5d5e4bd25904 100644
> --- a/drivers/gpu/drm/xe/xe_sriov_vf_ccs.h
> +++ b/drivers/gpu/drm/xe/xe_sriov_vf_ccs.h
> @@ -7,7 +7,10 @@
>  #define _XE_SRIOV_VF_CCS_H_
>  
>  struct xe_device;
> +struct xe_bo;
>  
>  int xe_sriov_vf_ccs_init(struct xe_device *xe);
> +int xe_sriov_vf_ccs_attach_bo(struct xe_bo *bo);
> +int xe_sriov_vf_ccs_detach_bo(struct xe_bo *bo);
>  
>  #endif
> diff --git a/drivers/gpu/drm/xe/xe_sriov_vf_ccs_types.h b/drivers/gpu/drm/xe/xe_sriov_vf_ccs_types.h
> index f67f002c7a96..9545c5cfc2b1 100644
> --- a/drivers/gpu/drm/xe/xe_sriov_vf_ccs_types.h
> +++ b/drivers/gpu/drm/xe/xe_sriov_vf_ccs_types.h
> @@ -28,6 +28,14 @@ enum xe_sriov_vf_ccs_rw_ctxs {
>  	XE_SRIOV_VF_CCS_RW_MAX_CTXS
>  };
>  
> +#define IS_VF_CCS_BB_VALID(xe, bo) ({ \
> +		struct xe_device *___xe = (xe); \
> +		struct xe_bo *___bo = (bo); \
> +		IS_SRIOV_VF(___xe) && \
> +		___bo->bb_ccs[XE_SRIOV_VF_CCS_READ_CTX] && \
> +		___bo->bb_ccs[XE_SRIOV_VF_CCS_WRITE_CTX]; \
> +		})
> +
>  struct xe_migrate;
>  struct xe_sa_manager;
>  
> -- 
> 2.43.0
> 

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

* Re: [PATCH v6 1/3] drm/xe/vf: Create contexts for CCS read write
  2025-06-06 12:45 ` [PATCH v6 1/3] drm/xe/vf: Create contexts for CCS read write Satyanarayana K V P
  2025-06-06 17:18   ` Matthew Brost
@ 2025-06-06 17:39   ` Matthew Brost
  2025-06-09 12:39   ` Michal Wajdeczko
  2 siblings, 0 replies; 23+ messages in thread
From: Matthew Brost @ 2025-06-06 17:39 UTC (permalink / raw)
  To: Satyanarayana K V P
  Cc: intel-xe, Michal Wajdeczko, Michał Winiarski, Tomasz Lis,
	Matthew Auld

On Fri, Jun 06, 2025 at 06:15:56PM +0530, Satyanarayana K V P wrote:
> Create two LRCs to handle CCS meta data read / write from CCS pool in the
> VM. Read context is used to hold GPU instructions to be executed at save
> time and write context is used to hold GPU instructions to be executed at
> the restore time.
> 
> Allocate batch buffer pool using suballocator for both read and write
> contexts.
> 
> Migration framework is reused to create LRCAs for read and write.
> 

Missed a few nits...

Ack stands, with nits fixes.

> Signed-off-by: Satyanarayana K V P <satyanarayana.k.v.p@intel.com>
> ---
> Cc: Michal Wajdeczko <michal.wajdeczko@intel.com>
> Cc: Michał Winiarski <michal.winiarski@intel.com>
> Cc: Tomasz Lis <tomasz.lis@intel.com>
> Cc: Matthew Brost <matthew.brost@intel.com>
> Cc: Matthew Auld <matthew.auld@intel.com>
> 
> V5 -> V6:
> - Added id field in the xe_tile_vf_ccs structure for self identification.
> 
> V4 -> V5:
> - Modified read/write contexts to enums from #defines (Matthew Brost).
> - The CCS BB pool size is calculated based on the system memory size (Michal
>   Wajdeczko & Matthew Brost).
> 
> V3 -> V4:
> - Fixed issues reported by patchworks.
> 
> V2 -> V3:
> - Added new variable which denotes the initialization of contexts.
> 
> V1 -> V2:
> - Fixed review comments.
> ---
>  drivers/gpu/drm/xe/Makefile                |   1 +
>  drivers/gpu/drm/xe/xe_device.c             |   4 +
>  drivers/gpu/drm/xe/xe_device_types.h       |   4 +
>  drivers/gpu/drm/xe/xe_gt_debugfs.c         |  36 ++++
>  drivers/gpu/drm/xe/xe_sriov.c              |  19 +++
>  drivers/gpu/drm/xe/xe_sriov.h              |   1 +
>  drivers/gpu/drm/xe/xe_sriov_types.h        |   5 +
>  drivers/gpu/drm/xe/xe_sriov_vf_ccs.c       | 186 +++++++++++++++++++++
>  drivers/gpu/drm/xe/xe_sriov_vf_ccs.h       |  13 ++
>  drivers/gpu/drm/xe/xe_sriov_vf_ccs_types.h |  46 +++++
>  10 files changed, 315 insertions(+)
>  create mode 100644 drivers/gpu/drm/xe/xe_sriov_vf_ccs.c
>  create mode 100644 drivers/gpu/drm/xe/xe_sriov_vf_ccs.h
>  create mode 100644 drivers/gpu/drm/xe/xe_sriov_vf_ccs_types.h
> 
> diff --git a/drivers/gpu/drm/xe/Makefile b/drivers/gpu/drm/xe/Makefile
> index f5f5775acdc0..3b5241937742 100644
> --- a/drivers/gpu/drm/xe/Makefile
> +++ b/drivers/gpu/drm/xe/Makefile
> @@ -140,6 +140,7 @@ xe-y += \
>  	xe_memirq.o \
>  	xe_sriov.o \
>  	xe_sriov_vf.o \
> +	xe_sriov_vf_ccs.o \
>  	xe_tile_sriov_vf.o
>  
>  xe-$(CONFIG_PCI_IOV) += \
> diff --git a/drivers/gpu/drm/xe/xe_device.c b/drivers/gpu/drm/xe/xe_device.c
> index 660b0c5126dc..bf96045770c7 100644
> --- a/drivers/gpu/drm/xe/xe_device.c
> +++ b/drivers/gpu/drm/xe/xe_device.c
> @@ -925,6 +925,10 @@ int xe_device_probe(struct xe_device *xe)
>  
>  	xe_vsec_init(xe);
>  
> +	err = xe_sriov_late_init(xe);
> +	if (err)
> +		goto err_unregister_display;
> +
>  	return devm_add_action_or_reset(xe->drm.dev, xe_device_sanitize, xe);
>  
>  err_unregister_display:
> diff --git a/drivers/gpu/drm/xe/xe_device_types.h b/drivers/gpu/drm/xe/xe_device_types.h
> index ac27389ccb8b..caf3bb1ef048 100644
> --- a/drivers/gpu/drm/xe/xe_device_types.h
> +++ b/drivers/gpu/drm/xe/xe_device_types.h
> @@ -22,6 +22,7 @@
>  #include "xe_pmu_types.h"
>  #include "xe_pt_types.h"
>  #include "xe_sriov_types.h"
> +#include "xe_sriov_vf_ccs_types.h"
>  #include "xe_step_types.h"
>  #include "xe_survivability_mode_types.h"
>  #include "xe_ttm_vram_mgr_types.h"
> @@ -234,6 +235,9 @@ struct xe_tile {
>  		struct {
>  			/** @sriov.vf.ggtt_balloon: GGTT regions excluded from use. */
>  			struct xe_ggtt_node *ggtt_balloon[2];
> +
> +			/** @sriov.vf.ccs: CCS read and write contexts for VF. */
> +			struct xe_tile_vf_ccs ccs[XE_SRIOV_VF_CCS_RW_MAX_CTXS];
>  		} vf;
>  	} sriov;
>  
> diff --git a/drivers/gpu/drm/xe/xe_gt_debugfs.c b/drivers/gpu/drm/xe/xe_gt_debugfs.c
> index 848618acdca8..2c6d757db810 100644
> --- a/drivers/gpu/drm/xe/xe_gt_debugfs.c
> +++ b/drivers/gpu/drm/xe/xe_gt_debugfs.c
> @@ -134,6 +134,30 @@ static int sa_info(struct xe_gt *gt, struct drm_printer *p)
>  	return 0;
>  }
>  
> +static int sa_info_vf_ccs(struct xe_gt *gt, struct drm_printer *p)
> +{
> +	struct xe_tile *tile = gt_to_tile(gt);
> +	struct xe_sa_manager *bb_pool;
> +	int ctx_id;

s/int ctx_id/enum xe_sriov_vf_ccs_rw_ctxs ctx_id

> +
> +	if (!IS_VF_CCS_READY(gt_to_xe(gt)))
> +		return 0;
> +
> +	xe_pm_runtime_get(gt_to_xe(gt));
> +
> +	for_each_ccs_rw_ctx(ctx_id) {
> +		drm_printf(p, "ccs %s bb suballoc info\n", ctx_id ? "write" : "read");
> +		drm_printf(p, "-------------------------\n");
> +		bb_pool = tile->sriov.vf.ccs[ctx_id].mem.ccs_bb_pool;
> +		drm_suballoc_dump_debug_info(&bb_pool->base, p, bb_pool->gpu_addr);
> +		drm_puts(p, "\n");
> +	}
> +
> +	xe_pm_runtime_put(gt_to_xe(gt));
> +
> +	return 0;
> +}
> +
>  static int topology(struct xe_gt *gt, struct drm_printer *p)
>  {
>  	xe_pm_runtime_get(gt_to_xe(gt));
> @@ -303,6 +327,13 @@ static const struct drm_info_list vf_safe_debugfs_list[] = {
>  	{"hwconfig", .show = xe_gt_debugfs_simple_show, .data = hwconfig},
>  };
>  
> +/*
> + * only for GT debugfs files which are valid on VF. Not valid on PF.
> + */
> +static const struct drm_info_list vf_only_debugfs_list[] = {
> +	{"sa_info_vf_ccs", .show = xe_gt_debugfs_simple_show, .data = sa_info_vf_ccs},
> +};
> +
>  /* everything else should be added here */
>  static const struct drm_info_list pf_only_debugfs_list[] = {
>  	{"hw_engines", .show = xe_gt_debugfs_simple_show, .data = hw_engines},
> @@ -419,6 +450,11 @@ void xe_gt_debugfs_register(struct xe_gt *gt)
>  		drm_debugfs_create_files(pf_only_debugfs_list,
>  					 ARRAY_SIZE(pf_only_debugfs_list),
>  					 root, minor);
> +	else
> +		drm_debugfs_create_files(vf_only_debugfs_list,
> +					 ARRAY_SIZE(vf_only_debugfs_list),
> +					 root, minor);
> +
>  
>  	xe_uc_debugfs_register(&gt->uc, root);
>  
> diff --git a/drivers/gpu/drm/xe/xe_sriov.c b/drivers/gpu/drm/xe/xe_sriov.c
> index a0eab44c0e76..87911fb4eea7 100644
> --- a/drivers/gpu/drm/xe/xe_sriov.c
> +++ b/drivers/gpu/drm/xe/xe_sriov.c
> @@ -15,6 +15,7 @@
>  #include "xe_sriov.h"
>  #include "xe_sriov_pf.h"
>  #include "xe_sriov_vf.h"
> +#include "xe_sriov_vf_ccs.h"
>  
>  /**
>   * xe_sriov_mode_to_string - Convert enum value to string.
> @@ -157,3 +158,21 @@ const char *xe_sriov_function_name(unsigned int n, char *buf, size_t size)
>  		strscpy(buf, "PF", size);
>  	return buf;
>  }
> +
> +/**
> + * xe_sriov_late_init() - SR-IOV late initialization functions.
> + * @xe: the &xe_device to initialize
> + *
> + * On VF this function will initialize code for CCS migration.
> + *
> + * Return: 0 on success or a negative error code on failure.
> + */
> +int xe_sriov_late_init(struct xe_device *xe)
> +{
> +	int err = 0;
> +
> +	if (IS_VF_CCS_INIT_NEEDED(xe))
> +		err = xe_sriov_vf_ccs_init(xe);
> +
> +	return err;
> +}
> diff --git a/drivers/gpu/drm/xe/xe_sriov.h b/drivers/gpu/drm/xe/xe_sriov.h
> index 688fbabf08f1..0e0c1abf2d14 100644
> --- a/drivers/gpu/drm/xe/xe_sriov.h
> +++ b/drivers/gpu/drm/xe/xe_sriov.h
> @@ -18,6 +18,7 @@ const char *xe_sriov_function_name(unsigned int n, char *buf, size_t len);
>  void xe_sriov_probe_early(struct xe_device *xe);
>  void xe_sriov_print_info(struct xe_device *xe, struct drm_printer *p);
>  int xe_sriov_init(struct xe_device *xe);
> +int xe_sriov_late_init(struct xe_device *xe);
>  
>  static inline enum xe_sriov_mode xe_device_sriov_mode(const struct xe_device *xe)
>  {
> diff --git a/drivers/gpu/drm/xe/xe_sriov_types.h b/drivers/gpu/drm/xe/xe_sriov_types.h
> index ca94382a721e..8abfdb2c5ead 100644
> --- a/drivers/gpu/drm/xe/xe_sriov_types.h
> +++ b/drivers/gpu/drm/xe/xe_sriov_types.h
> @@ -71,6 +71,11 @@ struct xe_device_vf {
>  		/** @migration.gt_flags: Per-GT request flags for VF migration recovery */
>  		unsigned long gt_flags;
>  	} migration;
> +
> +	struct {
> +		/** @initialized: Initilalization of vf ccs is completed or not */
> +		bool initialized;
> +	} ccs;
>  };
>  
>  #endif
> diff --git a/drivers/gpu/drm/xe/xe_sriov_vf_ccs.c b/drivers/gpu/drm/xe/xe_sriov_vf_ccs.c
> new file mode 100644
> index 000000000000..41fe1f59e0e9
> --- /dev/null
> +++ b/drivers/gpu/drm/xe/xe_sriov_vf_ccs.c
> @@ -0,0 +1,186 @@
> +// SPDX-License-Identifier: MIT
> +/*
> + * Copyright © 2025 Intel Corporation
> + */
> +
> +#include "instructions/xe_mi_commands.h"
> +#include "instructions/xe_gpu_commands.h"
> +#include "xe_bo.h"
> +#include "xe_device.h"
> +#include "xe_migrate.h"
> +#include "xe_sa.h"
> +#include "xe_sriov_printk.h"
> +#include "xe_sriov_vf_ccs.h"
> +#include "xe_sriov_vf_ccs_types.h"
> +
> +/**
> + * DOC: VF save/restore of compression Meta Data
> + *
> + * VF KMD registers two special contexts/LRCAs.
> + *
> + * Save Context/LRCA: contain necessary cmds+page table to trigger Meta data /
> + * compression control surface (Aka CCS) save in regular System memory in VM.
> + *
> + * Restore Context/LRCA: contain necessary cmds+page table to trigger Meta data /
> + * compression control surface (Aka CCS) Restore from regular System memory in
> + * VM to corresponding CCS pool.
> + *
> + * Below diagram explain steps needed for VF save/Restore of compression Meta
> + * Data::
> + *
> + *    CCS Save    CCS Restore          VF KMD                          Guc       BCS
> + *     LRCA        LRCA
> + *      |           |                     |                              |         |
> + *      |           |                     |                              |         |
> + *      |     Create Save LRCA            |                              |         |
> + *     [ ]<----------------------------- [ ]                             |         |
> + *      |           |                     |                              |         |
> + *      |           |                     |                              |         |
> + *      |           |                     |   Register LRCA with Guc     |         |
> + *      |           |                    [ ]--------------------------->[ ]        |
> + *      |           |                     |                              |         |
> + *      |           |                     |                              |         |
> + *      |           | Create restore LRCA |                              |         |
> + *      |          [ ]<------------------[ ]                             |         |
> + *      |           |                     |                              |         |
> + *      |           |                     |                              |         |
> + *      |           |                    [ ]-----------------------      |         |
> + *      |           |                    [ ]  Allocate main memory |     |         |
> + *      |           |                    [ ]  Allocate CCS memory  |     |         |
> + *      |           |                    [ ]<----------------------      |         |
> + *      |           |                     |                              |         |
> + *      |           |                     |                              |         |
> + *      | Update Main memory & CCS pages  |                              |         |
> + *      |   PPGTT + BB cmds to save       |                              |         |
> + *     [ ]<------------------------------[ ]                             |         |
> + *      |           |                     |                              |         |
> + *      |           |                     |                              |         |
> + *      |           | Update Main memory  |                              |         |
> + *      |           | & CCS pages PPGTT + |                              |         |
> + *      |           | BB cms to restore   |                              |         |
> + *      |          [ ]<------------------[ ]                             |         |
> + *      |           |                     |                              |         |
> + *      |           |                     |                              |         |
> + *      |           |                   VF Pause                         |         |
> + *      |           |                     |                              |Schedule |
> + *      |           |                     |                              |CCS Save |
> + *      |           |                     |                              | LRCA    |
> + *      |           |                     |                             [ ]------>[ ]
> + *      |           |                     |                              |         |
> + *      |           |                     |                              |         |
> + *      |           |                   VF Restore                       |         |
> + *      |           |                     |                              |         |
> + *      |           |                     |                              |         |
> + *      |           |                    [ ]--------------               |         |
> + *      |           |                    [ ] Fix up GGTT  |              |         |
> + *      |           |                    [ ]<-------------               |         |
> + *      |           |                     |                              |         |
> + *      |           |                     |                              |         |
> + *      |           |                     |                              |Schedule |
> + *      |           |                     |                              |CCS      |
> + *      |           |                     |                              |Restore  |
> + *      |           |                     |                              |LRCA     |
> + *      |           |                     |                             [ ]------>[ ]
> + *      |           |                     |                              |         |
> + *      |           |                     |                              |         |
> + *
> + */
> +
> +static u64 get_ccs_bb_pool_size(struct xe_device *xe)
> +{
> +	u64 sys_mem_size, ccs_mem_size, ptes, bb_pool_size;
> +	struct sysinfo si;
> +
> +	si_meminfo(&si);
> +	sys_mem_size = si.totalram * si.mem_unit;
> +	ccs_mem_size = sys_mem_size / NUM_BYTES_PER_CCS_BYTE(xe);
> +	ptes = DIV_ROUND_UP(sys_mem_size + ccs_mem_size, XE_PAGE_SIZE);
> +
> +	/**
> +	 * We need below BB size to hold PTE mappings and some DWs for copy
> +	 * command. In reality, we need space for many copy commands. So, let
> +	 * us allocate double the calculated size which is enough to holds GPU
> +	 * instructions for the whole region.
> +	 */
> +	bb_pool_size = ptes * sizeof(u32);
> +
> +	return round_up(bb_pool_size * 2, SZ_1M);
> +}
> +
> +static int alloc_bb_pool(struct xe_tile *tile, struct xe_tile_vf_ccs *ctx)
> +{
> +	struct xe_device *xe = tile_to_xe(tile);
> +	struct xe_sa_manager *sa_manager;
> +	u64 bb_pool_size;
> +	int offset, err;
> +
> +	bb_pool_size = get_ccs_bb_pool_size(xe);
> +	xe_sriov_info(xe, "Allocating %s CCS BB pool size = %lldMB\n",
> +		      ctx->id ? "Restore" : "Save", bb_pool_size / SZ_1M);
> +
> +	sa_manager = xe_sa_bo_manager_init(tile, bb_pool_size, SZ_16);
> +
> +	if (IS_ERR(sa_manager)) {
> +		xe_sriov_err(xe, "Suballocator init failed with error: %pe\n",
> +			     sa_manager);
> +		err = PTR_ERR(sa_manager);
> +		return err;
> +	}
> +
> +	offset = 0;
> +	xe_map_memset(xe, &sa_manager->bo->vmap, offset, MI_NOOP,
> +		      bb_pool_size);
> +
> +	offset = bb_pool_size - sizeof(u32);
> +	xe_map_wr(xe, &sa_manager->bo->vmap, offset, u32, MI_BATCH_BUFFER_END);
> +
> +	ctx->mem.ccs_bb_pool = sa_manager;
> +
> +	return 0;
> +}
> +
> +/**
> + * xe_sriov_vf_ccs_init - Setup LRCA for save & restore.
> + * @xe: the &xe_device to start recovery on
> + *
> + * This function shall be called only by VF. It initializes
> + * LRCA and suballocator needed for CCS save & restore.
> + *
> + * Return: 0 on success. Negative error code on failure.
> + */
> +int xe_sriov_vf_ccs_init(struct xe_device *xe)
> +{
> +	struct xe_migrate *migrate;
> +	struct xe_tile_vf_ccs *ctx;
> +	struct xe_tile *tile;
> +	int tile_id, ctx_id;

s/int ctx_id/enum xe_sriov_vf_ccs_rw_ctxs ctx_id

> +	int err = 0;
> +
> +	xe_assert(xe, (IS_SRIOV_VF(xe) || !IS_DGFX(xe) ||
> +		       xe_device_has_flat_ccs(xe)));
> +
> +	for_each_tile(tile, xe, tile_id) {
> +		for_each_ccs_rw_ctx(ctx_id) {
> +			ctx = &tile->sriov.vf.ccs[ctx_id];
> +			ctx->id = ctx_id;
> +
> +			migrate = xe_migrate_init(tile);
> +			if (IS_ERR(migrate)) {
> +				err = PTR_ERR(migrate);
> +				goto err_ret;
> +			}
> +			ctx->migrate = migrate;
> +
> +			err = alloc_bb_pool(tile, ctx);
> +			if (err)
> +				goto err_ret;
> +		}
> +	}
> +
> +	xe->sriov.vf.ccs.initialized = 1;
> +
> +	return 0;
> +
> +err_ret:
> +	return err;
> +}
> diff --git a/drivers/gpu/drm/xe/xe_sriov_vf_ccs.h b/drivers/gpu/drm/xe/xe_sriov_vf_ccs.h
> new file mode 100644
> index 000000000000..5df9ba028d14
> --- /dev/null
> +++ b/drivers/gpu/drm/xe/xe_sriov_vf_ccs.h
> @@ -0,0 +1,13 @@
> +/* SPDX-License-Identifier: MIT */
> +/*
> + * Copyright © 2025 Intel Corporation
> + */
> +
> +#ifndef _XE_SRIOV_VF_CCS_H_
> +#define _XE_SRIOV_VF_CCS_H_
> +
> +struct xe_device;
> +
> +int xe_sriov_vf_ccs_init(struct xe_device *xe);
> +
> +#endif
> diff --git a/drivers/gpu/drm/xe/xe_sriov_vf_ccs_types.h b/drivers/gpu/drm/xe/xe_sriov_vf_ccs_types.h
> new file mode 100644
> index 000000000000..f67f002c7a96
> --- /dev/null
> +++ b/drivers/gpu/drm/xe/xe_sriov_vf_ccs_types.h
> @@ -0,0 +1,46 @@
> +/* SPDX-License-Identifier: MIT */
> +/*
> + * Copyright © 2022-2023 Intel Corporation
> + */
> +
> +#ifndef _XE_SRIOV_VF_CCS__TYPES_H_
> +#define _XE_SRIOV_VF_CCS__TYPES_H_
> +
> +#define for_each_ccs_rw_ctx(id__) \
> +	for ((id__) = 0; (id__) < XE_SRIOV_VF_CCS_RW_MAX_CTXS; (id__)++)
> +
> +#define IS_VF_CCS_READY(xe) ({ \
> +		struct xe_device *___xe = (xe); \
> +		xe_assert(___xe, IS_SRIOV_VF(___xe)); \
> +		___xe->sriov.vf.ccs.initialized; \
> +		})
> +
> +#define IS_VF_CCS_INIT_NEEDED(xe) ({\
> +		struct xe_device *___xe = (xe); \
> +		IS_SRIOV_VF(___xe) && !IS_DGFX(___xe) && \
> +		xe_device_has_flat_ccs(___xe) && GRAPHICS_VER(___xe) >= 20; \
> +		})
> +
> +enum xe_sriov_vf_ccs_rw_ctxs {
> +	XE_SRIOV_VF_CCS_RW_MIN_CTXS = 0,
> +	XE_SRIOV_VF_CCS_READ_CTX = XE_SRIOV_VF_CCS_RW_MIN_CTXS,
> +	XE_SRIOV_VF_CCS_WRITE_CTX,
> +	XE_SRIOV_VF_CCS_RW_MAX_CTXS
> +};
> +
> +struct xe_migrate;
> +struct xe_sa_manager;
> +
> +struct xe_tile_vf_ccs {
> +	/** @id: Id to which context it belongs to */
> +	int id;

s/int id/enum xe_sriov_vf_ccs_rw_ctxs ctx_id

Matt

> +	/** @migrate: Migration helper for save/restore of CCS data */
> +	struct xe_migrate *migrate;
> +
> +	struct {
> +		/** @ccs_rw_bb_pool: Pool from which batch buffers are allocated. */
> +		struct xe_sa_manager *ccs_bb_pool;
> +	} mem;
> +};
> +
> +#endif
> -- 
> 2.43.0
> 

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

* ✓ Xe.CI.Full: success for CCS save restore for IGPU (rev6)
  2025-06-06 12:45 [PATCH v6 0/3] CCS save restore for IGPU Satyanarayana K V P
                   ` (9 preceding siblings ...)
  2025-06-06 15:09 ` ✓ Xe.CI.BAT: " Patchwork
@ 2025-06-08 18:37 ` Patchwork
  10 siblings, 0 replies; 23+ messages in thread
From: Patchwork @ 2025-06-08 18:37 UTC (permalink / raw)
  To: Satyanarayana K V P; +Cc: intel-xe

[-- Attachment #1: Type: text/plain, Size: 51131 bytes --]

== Series Details ==

Series: CCS save restore for IGPU (rev6)
URL   : https://patchwork.freedesktop.org/series/149108/
State : success

== Summary ==

CI Bug Log - changes from xe-3209-18c655116ff21afbb7c0dc013f52a011f90c91a4_FULL -> xe-pw-149108v6_FULL
====================================================

Summary
-------

  **SUCCESS**

  No regressions found.

  

Participating hosts (4 -> 4)
------------------------------

  No changes in participating hosts

Known issues
------------

  Here are the changes found in xe-pw-149108v6_FULL that come from known issues:

### IGT changes ###

#### Issues hit ####

  * igt@kms_async_flips@async-flip-with-page-flip-events-tiled-atomic@pipe-a-hdmi-a-6-4-rc-ccs-cc:
    - shard-dg2-set2:     NOTRUN -> [SKIP][1] ([Intel XE#3767]) +15 other tests skip
   [1]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-149108v6/shard-dg2-463/igt@kms_async_flips@async-flip-with-page-flip-events-tiled-atomic@pipe-a-hdmi-a-6-4-rc-ccs-cc.html

  * igt@kms_atomic_transition@plane-all-modeset-transition-fencing:
    - shard-adlp:         [PASS][2] -> [FAIL][3] ([Intel XE#3908]) +1 other test fail
   [2]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3209-18c655116ff21afbb7c0dc013f52a011f90c91a4/shard-adlp-8/igt@kms_atomic_transition@plane-all-modeset-transition-fencing.html
   [3]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-149108v6/shard-adlp-8/igt@kms_atomic_transition@plane-all-modeset-transition-fencing.html

  * igt@kms_big_fb@4-tiled-32bpp-rotate-270:
    - shard-dg2-set2:     NOTRUN -> [SKIP][4] ([Intel XE#316]) +2 other tests skip
   [4]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-149108v6/shard-dg2-432/igt@kms_big_fb@4-tiled-32bpp-rotate-270.html

  * igt@kms_big_fb@y-tiled-16bpp-rotate-90:
    - shard-dg2-set2:     NOTRUN -> [SKIP][5] ([Intel XE#1124]) +12 other tests skip
   [5]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-149108v6/shard-dg2-433/igt@kms_big_fb@y-tiled-16bpp-rotate-90.html

  * igt@kms_big_fb@y-tiled-addfb-size-offset-overflow:
    - shard-dg2-set2:     NOTRUN -> [SKIP][6] ([Intel XE#607])
   [6]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-149108v6/shard-dg2-432/igt@kms_big_fb@y-tiled-addfb-size-offset-overflow.html

  * igt@kms_bw@linear-tiling-3-displays-3840x2160p:
    - shard-dg2-set2:     NOTRUN -> [SKIP][7] ([Intel XE#367]) +2 other tests skip
   [7]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-149108v6/shard-dg2-432/igt@kms_bw@linear-tiling-3-displays-3840x2160p.html

  * igt@kms_ccs@bad-pixel-format-yf-tiled-ccs:
    - shard-dg2-set2:     NOTRUN -> [SKIP][8] ([Intel XE#455] / [Intel XE#787]) +42 other tests skip
   [8]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-149108v6/shard-dg2-432/igt@kms_ccs@bad-pixel-format-yf-tiled-ccs.html

  * igt@kms_ccs@crc-primary-basic-y-tiled-gen12-rc-ccs-cc@pipe-a-dp-4:
    - shard-dg2-set2:     NOTRUN -> [SKIP][9] ([Intel XE#787]) +181 other tests skip
   [9]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-149108v6/shard-dg2-463/igt@kms_ccs@crc-primary-basic-y-tiled-gen12-rc-ccs-cc@pipe-a-dp-4.html

  * igt@kms_ccs@crc-primary-suspend-4-tiled-bmg-ccs:
    - shard-bmg:          [PASS][10] -> [INCOMPLETE][11] ([Intel XE#3862]) +1 other test incomplete
   [10]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3209-18c655116ff21afbb7c0dc013f52a011f90c91a4/shard-bmg-7/igt@kms_ccs@crc-primary-suspend-4-tiled-bmg-ccs.html
   [11]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-149108v6/shard-bmg-5/igt@kms_ccs@crc-primary-suspend-4-tiled-bmg-ccs.html

  * igt@kms_cdclk@mode-transition@pipe-d-dp-4:
    - shard-dg2-set2:     NOTRUN -> [SKIP][12] ([Intel XE#4417]) +3 other tests skip
   [12]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-149108v6/shard-dg2-433/igt@kms_cdclk@mode-transition@pipe-d-dp-4.html

  * igt@kms_cdclk@plane-scaling@pipe-b-dp-2:
    - shard-dg2-set2:     NOTRUN -> [SKIP][13] ([Intel XE#4416]) +3 other tests skip
   [13]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-149108v6/shard-dg2-432/igt@kms_cdclk@plane-scaling@pipe-b-dp-2.html

  * igt@kms_chamelium_color@degamma:
    - shard-dg2-set2:     NOTRUN -> [SKIP][14] ([Intel XE#306])
   [14]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-149108v6/shard-dg2-432/igt@kms_chamelium_color@degamma.html

  * igt@kms_chamelium_hpd@vga-hpd:
    - shard-dg2-set2:     NOTRUN -> [SKIP][15] ([Intel XE#373]) +8 other tests skip
   [15]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-149108v6/shard-dg2-433/igt@kms_chamelium_hpd@vga-hpd.html

  * igt@kms_content_protection@dp-mst-type-1:
    - shard-dg2-set2:     NOTRUN -> [SKIP][16] ([Intel XE#307])
   [16]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-149108v6/shard-dg2-432/igt@kms_content_protection@dp-mst-type-1.html

  * igt@kms_content_protection@srm@pipe-a-dp-4:
    - shard-dg2-set2:     NOTRUN -> [FAIL][17] ([Intel XE#1178]) +2 other tests fail
   [17]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-149108v6/shard-dg2-463/igt@kms_content_protection@srm@pipe-a-dp-4.html

  * igt@kms_cursor_legacy@2x-flip-vs-cursor-legacy:
    - shard-bmg:          [PASS][18] -> [SKIP][19] ([Intel XE#2291]) +5 other tests skip
   [18]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3209-18c655116ff21afbb7c0dc013f52a011f90c91a4/shard-bmg-4/igt@kms_cursor_legacy@2x-flip-vs-cursor-legacy.html
   [19]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-149108v6/shard-bmg-6/igt@kms_cursor_legacy@2x-flip-vs-cursor-legacy.html

  * igt@kms_cursor_legacy@short-busy-flip-before-cursor-atomic-transitions:
    - shard-dg2-set2:     NOTRUN -> [SKIP][20] ([Intel XE#323])
   [20]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-149108v6/shard-dg2-432/igt@kms_cursor_legacy@short-busy-flip-before-cursor-atomic-transitions.html

  * igt@kms_dither@fb-8bpc-vs-panel-6bpc@pipe-a-hdmi-a-6:
    - shard-dg2-set2:     NOTRUN -> [SKIP][21] ([Intel XE#4494] / [i915#3804])
   [21]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-149108v6/shard-dg2-433/igt@kms_dither@fb-8bpc-vs-panel-6bpc@pipe-a-hdmi-a-6.html

  * igt@kms_dp_link_training@uhbr-sst:
    - shard-dg2-set2:     NOTRUN -> [SKIP][22] ([Intel XE#4356])
   [22]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-149108v6/shard-dg2-433/igt@kms_dp_link_training@uhbr-sst.html

  * igt@kms_fbc_dirty_rect@fbc-dirty-rectangle-out-visible-area:
    - shard-dg2-set2:     NOTRUN -> [SKIP][23] ([Intel XE#4422])
   [23]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-149108v6/shard-dg2-432/igt@kms_fbc_dirty_rect@fbc-dirty-rectangle-out-visible-area.html

  * igt@kms_feature_discovery@chamelium:
    - shard-dg2-set2:     NOTRUN -> [SKIP][24] ([Intel XE#701])
   [24]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-149108v6/shard-dg2-433/igt@kms_feature_discovery@chamelium.html

  * igt@kms_flip@2x-plain-flip-ts-check-interruptible:
    - shard-bmg:          [PASS][25] -> [SKIP][26] ([Intel XE#2316]) +3 other tests skip
   [25]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3209-18c655116ff21afbb7c0dc013f52a011f90c91a4/shard-bmg-4/igt@kms_flip@2x-plain-flip-ts-check-interruptible.html
   [26]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-149108v6/shard-bmg-6/igt@kms_flip@2x-plain-flip-ts-check-interruptible.html

  * igt@kms_flip@flip-vs-expired-vblank@b-hdmi-a6:
    - shard-dg2-set2:     NOTRUN -> [FAIL][27] ([Intel XE#301]) +10 other tests fail
   [27]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-149108v6/shard-dg2-433/igt@kms_flip@flip-vs-expired-vblank@b-hdmi-a6.html

  * igt@kms_flip@flip-vs-rmfb@a-hdmi-a1:
    - shard-adlp:         [PASS][28] -> [DMESG-WARN][29] ([Intel XE#2953] / [Intel XE#4173]) +7 other tests dmesg-warn
   [28]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3209-18c655116ff21afbb7c0dc013f52a011f90c91a4/shard-adlp-6/igt@kms_flip@flip-vs-rmfb@a-hdmi-a1.html
   [29]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-149108v6/shard-adlp-9/igt@kms_flip@flip-vs-rmfb@a-hdmi-a1.html

  * igt@kms_flip@flip-vs-suspend-interruptible:
    - shard-bmg:          [PASS][30] -> [INCOMPLETE][31] ([Intel XE#2049] / [Intel XE#2597]) +1 other test incomplete
   [30]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3209-18c655116ff21afbb7c0dc013f52a011f90c91a4/shard-bmg-1/igt@kms_flip@flip-vs-suspend-interruptible.html
   [31]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-149108v6/shard-bmg-7/igt@kms_flip@flip-vs-suspend-interruptible.html

  * igt@kms_flip@flip-vs-suspend@d-dp4:
    - shard-dg2-set2:     [PASS][32] -> [INCOMPLETE][33] ([Intel XE#2049] / [Intel XE#2597]) +1 other test incomplete
   [32]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3209-18c655116ff21afbb7c0dc013f52a011f90c91a4/shard-dg2-463/igt@kms_flip@flip-vs-suspend@d-dp4.html
   [33]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-149108v6/shard-dg2-466/igt@kms_flip@flip-vs-suspend@d-dp4.html

  * igt@kms_flip_scaled_crc@flip-64bpp-ytile-to-32bpp-ytilegen12rcccs-upscaling:
    - shard-dg2-set2:     NOTRUN -> [SKIP][34] ([Intel XE#455]) +17 other tests skip
   [34]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-149108v6/shard-dg2-432/igt@kms_flip_scaled_crc@flip-64bpp-ytile-to-32bpp-ytilegen12rcccs-upscaling.html

  * igt@kms_flip_tiling@flip-change-tiling@pipe-b-hdmi-a-1-y-to-y:
    - shard-adlp:         [PASS][35] -> [DMESG-FAIL][36] ([Intel XE#4543]) +1 other test dmesg-fail
   [35]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3209-18c655116ff21afbb7c0dc013f52a011f90c91a4/shard-adlp-8/igt@kms_flip_tiling@flip-change-tiling@pipe-b-hdmi-a-1-y-to-y.html
   [36]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-149108v6/shard-adlp-2/igt@kms_flip_tiling@flip-change-tiling@pipe-b-hdmi-a-1-y-to-y.html

  * igt@kms_frontbuffer_tracking@fbcdrrs-1p-primscrn-spr-indfb-onoff:
    - shard-dg2-set2:     NOTRUN -> [SKIP][37] ([Intel XE#651]) +30 other tests skip
   [37]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-149108v6/shard-dg2-433/igt@kms_frontbuffer_tracking@fbcdrrs-1p-primscrn-spr-indfb-onoff.html

  * igt@kms_frontbuffer_tracking@fbcdrrs-tiling-y:
    - shard-dg2-set2:     NOTRUN -> [SKIP][38] ([Intel XE#658])
   [38]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-149108v6/shard-dg2-433/igt@kms_frontbuffer_tracking@fbcdrrs-tiling-y.html

  * igt@kms_frontbuffer_tracking@psr-1p-primscrn-pri-shrfb-draw-mmap-wc:
    - shard-dg2-set2:     NOTRUN -> [SKIP][39] ([Intel XE#653]) +32 other tests skip
   [39]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-149108v6/shard-dg2-433/igt@kms_frontbuffer_tracking@psr-1p-primscrn-pri-shrfb-draw-mmap-wc.html

  * igt@kms_hdr@invalid-hdr:
    - shard-dg2-set2:     [PASS][40] -> [SKIP][41] ([Intel XE#455])
   [40]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3209-18c655116ff21afbb7c0dc013f52a011f90c91a4/shard-dg2-463/igt@kms_hdr@invalid-hdr.html
   [41]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-149108v6/shard-dg2-432/igt@kms_hdr@invalid-hdr.html

  * igt@kms_joiner@basic-big-joiner:
    - shard-dg2-set2:     NOTRUN -> [SKIP][42] ([Intel XE#346])
   [42]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-149108v6/shard-dg2-432/igt@kms_joiner@basic-big-joiner.html

  * igt@kms_plane_multiple@2x-tiling-none:
    - shard-bmg:          [PASS][43] -> [SKIP][44] ([Intel XE#4596])
   [43]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3209-18c655116ff21afbb7c0dc013f52a011f90c91a4/shard-bmg-2/igt@kms_plane_multiple@2x-tiling-none.html
   [44]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-149108v6/shard-bmg-6/igt@kms_plane_multiple@2x-tiling-none.html

  * igt@kms_plane_multiple@tiling-y:
    - shard-dg2-set2:     NOTRUN -> [SKIP][45] ([Intel XE#5020])
   [45]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-149108v6/shard-dg2-433/igt@kms_plane_multiple@tiling-y.html

  * igt@kms_plane_scaling@2x-scaler-multi-pipe:
    - shard-bmg:          [PASS][46] -> [SKIP][47] ([Intel XE#2571])
   [46]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3209-18c655116ff21afbb7c0dc013f52a011f90c91a4/shard-bmg-2/igt@kms_plane_scaling@2x-scaler-multi-pipe.html
   [47]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-149108v6/shard-bmg-6/igt@kms_plane_scaling@2x-scaler-multi-pipe.html

  * igt@kms_pm_dc@dc6-psr:
    - shard-dg2-set2:     NOTRUN -> [SKIP][48] ([Intel XE#1129])
   [48]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-149108v6/shard-dg2-432/igt@kms_pm_dc@dc6-psr.html

  * igt@kms_psr2_sf@pr-cursor-plane-update-sf:
    - shard-dg2-set2:     NOTRUN -> [SKIP][49] ([Intel XE#1489]) +6 other tests skip
   [49]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-149108v6/shard-dg2-433/igt@kms_psr2_sf@pr-cursor-plane-update-sf.html

  * igt@kms_psr@fbc-psr2-cursor-plane-onoff:
    - shard-dg2-set2:     NOTRUN -> [SKIP][50] ([Intel XE#2850] / [Intel XE#929]) +14 other tests skip
   [50]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-149108v6/shard-dg2-432/igt@kms_psr@fbc-psr2-cursor-plane-onoff.html

  * igt@kms_rotation_crc@bad-tiling:
    - shard-dg2-set2:     NOTRUN -> [SKIP][51] ([Intel XE#3414]) +1 other test skip
   [51]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-149108v6/shard-dg2-433/igt@kms_rotation_crc@bad-tiling.html

  * igt@kms_rotation_crc@primary-y-tiled-reflect-x-180:
    - shard-dg2-set2:     NOTRUN -> [SKIP][52] ([Intel XE#1127])
   [52]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-149108v6/shard-dg2-432/igt@kms_rotation_crc@primary-y-tiled-reflect-x-180.html

  * igt@kms_tiled_display@basic-test-pattern-with-chamelium:
    - shard-dg2-set2:     NOTRUN -> [SKIP][53] ([Intel XE#1500])
   [53]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-149108v6/shard-dg2-433/igt@kms_tiled_display@basic-test-pattern-with-chamelium.html

  * igt@kms_tv_load_detect@load-detect:
    - shard-dg2-set2:     NOTRUN -> [SKIP][54] ([Intel XE#330])
   [54]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-149108v6/shard-dg2-433/igt@kms_tv_load_detect@load-detect.html

  * igt@kms_vrr@cmrr:
    - shard-dg2-set2:     NOTRUN -> [SKIP][55] ([Intel XE#2168])
   [55]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-149108v6/shard-dg2-433/igt@kms_vrr@cmrr.html

  * igt@kms_vrr@negative-basic:
    - shard-bmg:          [PASS][56] -> [SKIP][57] ([Intel XE#1499])
   [56]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3209-18c655116ff21afbb7c0dc013f52a011f90c91a4/shard-bmg-4/igt@kms_vrr@negative-basic.html
   [57]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-149108v6/shard-bmg-6/igt@kms_vrr@negative-basic.html

  * igt@xe_copy_basic@mem-copy-linear-0x369:
    - shard-dg2-set2:     NOTRUN -> [SKIP][58] ([Intel XE#1123])
   [58]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-149108v6/shard-dg2-433/igt@xe_copy_basic@mem-copy-linear-0x369.html

  * igt@xe_eudebug_online@debugger-reopen:
    - shard-dg2-set2:     NOTRUN -> [SKIP][59] ([Intel XE#4837]) +13 other tests skip
   [59]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-149108v6/shard-dg2-433/igt@xe_eudebug_online@debugger-reopen.html

  * igt@xe_exec_basic@multigpu-no-exec-basic-defer-mmap:
    - shard-dg2-set2:     NOTRUN -> [SKIP][60] ([Intel XE#1392]) +4 other tests skip
   [60]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-149108v6/shard-dg2-432/igt@xe_exec_basic@multigpu-no-exec-basic-defer-mmap.html

  * igt@xe_exec_basic@multigpu-once-bindexecqueue-userptr-invalidate:
    - shard-dg2-set2:     [PASS][61] -> [SKIP][62] ([Intel XE#1392]) +1 other test skip
   [61]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3209-18c655116ff21afbb7c0dc013f52a011f90c91a4/shard-dg2-463/igt@xe_exec_basic@multigpu-once-bindexecqueue-userptr-invalidate.html
   [62]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-149108v6/shard-dg2-432/igt@xe_exec_basic@multigpu-once-bindexecqueue-userptr-invalidate.html

  * igt@xe_exec_fault_mode@once-rebind-prefetch:
    - shard-dg2-set2:     NOTRUN -> [SKIP][63] ([Intel XE#288]) +24 other tests skip
   [63]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-149108v6/shard-dg2-432/igt@xe_exec_fault_mode@once-rebind-prefetch.html

  * igt@xe_exec_mix_modes@exec-simple-batch-store-lr:
    - shard-dg2-set2:     NOTRUN -> [SKIP][64] ([Intel XE#2360])
   [64]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-149108v6/shard-dg2-432/igt@xe_exec_mix_modes@exec-simple-batch-store-lr.html

  * igt@xe_exec_system_allocator@threads-many-large-execqueues-malloc-mlock-nomemset:
    - shard-dg2-set2:     NOTRUN -> [SKIP][65] ([Intel XE#4915]) +263 other tests skip
   [65]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-149108v6/shard-dg2-432/igt@xe_exec_system_allocator@threads-many-large-execqueues-malloc-mlock-nomemset.html

  * igt@xe_mmap@small-bar:
    - shard-dg2-set2:     NOTRUN -> [SKIP][66] ([Intel XE#512])
   [66]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-149108v6/shard-dg2-433/igt@xe_mmap@small-bar.html

  * igt@xe_oa@oa-unit-exclusive-stream-sample-oa:
    - shard-dg2-set2:     NOTRUN -> [SKIP][67] ([Intel XE#2541] / [Intel XE#3573]) +7 other tests skip
   [67]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-149108v6/shard-dg2-432/igt@xe_oa@oa-unit-exclusive-stream-sample-oa.html

  * igt@xe_pat@pat-index-xe2:
    - shard-dg2-set2:     NOTRUN -> [SKIP][68] ([Intel XE#977])
   [68]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-149108v6/shard-dg2-432/igt@xe_pat@pat-index-xe2.html

  * igt@xe_pm@d3cold-mocs:
    - shard-dg2-set2:     NOTRUN -> [SKIP][69] ([Intel XE#2284])
   [69]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-149108v6/shard-dg2-432/igt@xe_pm@d3cold-mocs.html

  * igt@xe_pm@s4-mocs:
    - shard-adlp:         [PASS][70] -> [ABORT][71] ([Intel XE#1794])
   [70]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3209-18c655116ff21afbb7c0dc013f52a011f90c91a4/shard-adlp-3/igt@xe_pm@s4-mocs.html
   [71]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-149108v6/shard-adlp-9/igt@xe_pm@s4-mocs.html

  * igt@xe_pmu@fn-engine-activity-load:
    - shard-dg2-set2:     NOTRUN -> [SKIP][72] ([Intel XE#4650])
   [72]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-149108v6/shard-dg2-432/igt@xe_pmu@fn-engine-activity-load.html

  * igt@xe_pxp@pxp-stale-bo-bind-post-rpm:
    - shard-dg2-set2:     NOTRUN -> [SKIP][73] ([Intel XE#4733]) +2 other tests skip
   [73]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-149108v6/shard-dg2-433/igt@xe_pxp@pxp-stale-bo-bind-post-rpm.html

  * igt@xe_query@multigpu-query-invalid-cs-cycles:
    - shard-dg2-set2:     NOTRUN -> [SKIP][74] ([Intel XE#944]) +1 other test skip
   [74]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-149108v6/shard-dg2-432/igt@xe_query@multigpu-query-invalid-cs-cycles.html

  * igt@xe_sriov_auto_provisioning@resources-released-on-vfs-disabling:
    - shard-dg2-set2:     NOTRUN -> [SKIP][75] ([Intel XE#4130]) +2 other tests skip
   [75]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-149108v6/shard-dg2-433/igt@xe_sriov_auto_provisioning@resources-released-on-vfs-disabling.html

  * igt@xe_sriov_flr@flr-vf1-clear:
    - shard-dg2-set2:     NOTRUN -> [SKIP][76] ([Intel XE#3342])
   [76]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-149108v6/shard-dg2-433/igt@xe_sriov_flr@flr-vf1-clear.html

  
#### Possible fixes ####

  * igt@kms_flip@flip-vs-absolute-wf_vblank-interruptible@a-dp2:
    - shard-bmg:          [FAIL][77] ([Intel XE#2882]) -> [PASS][78] +5 other tests pass
   [77]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3209-18c655116ff21afbb7c0dc013f52a011f90c91a4/shard-bmg-5/igt@kms_flip@flip-vs-absolute-wf_vblank-interruptible@a-dp2.html
   [78]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-149108v6/shard-bmg-4/igt@kms_flip@flip-vs-absolute-wf_vblank-interruptible@a-dp2.html

  * igt@kms_flip@flip-vs-dpms-on-nop-interruptible:
    - shard-adlp:         [FAIL][79] -> [PASS][80] +1 other test pass
   [79]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3209-18c655116ff21afbb7c0dc013f52a011f90c91a4/shard-adlp-9/igt@kms_flip@flip-vs-dpms-on-nop-interruptible.html
   [80]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-149108v6/shard-adlp-1/igt@kms_flip@flip-vs-dpms-on-nop-interruptible.html

  * igt@kms_flip@flip-vs-expired-vblank@d-dp2:
    - shard-bmg:          [FAIL][81] ([Intel XE#3321]) -> [PASS][82] +1 other test pass
   [81]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3209-18c655116ff21afbb7c0dc013f52a011f90c91a4/shard-bmg-8/igt@kms_flip@flip-vs-expired-vblank@d-dp2.html
   [82]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-149108v6/shard-bmg-5/igt@kms_flip@flip-vs-expired-vblank@d-dp2.html

  * igt@kms_flip@plain-flip-ts-check-interruptible:
    - shard-dg2-set2:     [FAIL][83] ([Intel XE#2882] / [Intel XE#3098] / [Intel XE#886]) -> [PASS][84]
   [83]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3209-18c655116ff21afbb7c0dc013f52a011f90c91a4/shard-dg2-434/igt@kms_flip@plain-flip-ts-check-interruptible.html
   [84]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-149108v6/shard-dg2-435/igt@kms_flip@plain-flip-ts-check-interruptible.html

  * igt@kms_flip@plain-flip-ts-check-interruptible@a-hdmi-a6:
    - shard-dg2-set2:     [FAIL][85] ([Intel XE#3098]) -> [PASS][86]
   [85]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3209-18c655116ff21afbb7c0dc013f52a011f90c91a4/shard-dg2-434/igt@kms_flip@plain-flip-ts-check-interruptible@a-hdmi-a6.html
   [86]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-149108v6/shard-dg2-435/igt@kms_flip@plain-flip-ts-check-interruptible@a-hdmi-a6.html

  * igt@kms_flip@plain-flip-ts-check-interruptible@b-hdmi-a6:
    - shard-dg2-set2:     [FAIL][87] ([Intel XE#2882] / [Intel XE#886]) -> [PASS][88]
   [87]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3209-18c655116ff21afbb7c0dc013f52a011f90c91a4/shard-dg2-434/igt@kms_flip@plain-flip-ts-check-interruptible@b-hdmi-a6.html
   [88]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-149108v6/shard-dg2-435/igt@kms_flip@plain-flip-ts-check-interruptible@b-hdmi-a6.html

  * igt@kms_flip@plain-flip-ts-check-interruptible@d-hdmi-a6:
    - shard-dg2-set2:     [FAIL][89] ([Intel XE#886]) -> [PASS][90] +1 other test pass
   [89]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3209-18c655116ff21afbb7c0dc013f52a011f90c91a4/shard-dg2-434/igt@kms_flip@plain-flip-ts-check-interruptible@d-hdmi-a6.html
   [90]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-149108v6/shard-dg2-435/igt@kms_flip@plain-flip-ts-check-interruptible@d-hdmi-a6.html

  * igt@kms_flip_tiling@flip-change-tiling@pipe-b-hdmi-a-1-x-to-x:
    - shard-adlp:         [DMESG-FAIL][91] ([Intel XE#4543]) -> [PASS][92]
   [91]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3209-18c655116ff21afbb7c0dc013f52a011f90c91a4/shard-adlp-8/igt@kms_flip_tiling@flip-change-tiling@pipe-b-hdmi-a-1-x-to-x.html
   [92]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-149108v6/shard-adlp-2/igt@kms_flip_tiling@flip-change-tiling@pipe-b-hdmi-a-1-x-to-x.html

  * igt@kms_flip_tiling@flip-change-tiling@pipe-d-hdmi-a-1-y-to-y:
    - shard-adlp:         [FAIL][93] ([Intel XE#1874]) -> [PASS][94]
   [93]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3209-18c655116ff21afbb7c0dc013f52a011f90c91a4/shard-adlp-8/igt@kms_flip_tiling@flip-change-tiling@pipe-d-hdmi-a-1-y-to-y.html
   [94]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-149108v6/shard-adlp-2/igt@kms_flip_tiling@flip-change-tiling@pipe-d-hdmi-a-1-y-to-y.html

  * igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-spr-indfb-draw-mmap-wc:
    - shard-dg2-set2:     [SKIP][95] ([Intel XE#2351] / [Intel XE#4208]) -> [PASS][96] +1 other test pass
   [95]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3209-18c655116ff21afbb7c0dc013f52a011f90c91a4/shard-dg2-466/igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-spr-indfb-draw-mmap-wc.html
   [96]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-149108v6/shard-dg2-466/igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-spr-indfb-draw-mmap-wc.html

  * igt@kms_plane_alpha_blend@coverage-vs-premult-vs-constant:
    - shard-dg2-set2:     [SKIP][97] ([Intel XE#4208] / [i915#2575]) -> [PASS][98] +17 other tests pass
   [97]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3209-18c655116ff21afbb7c0dc013f52a011f90c91a4/shard-dg2-466/igt@kms_plane_alpha_blend@coverage-vs-premult-vs-constant.html
   [98]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-149108v6/shard-dg2-466/igt@kms_plane_alpha_blend@coverage-vs-premult-vs-constant.html

  * igt@kms_vblank@ts-continuation-suspend:
    - shard-adlp:         [DMESG-WARN][99] ([Intel XE#2953] / [Intel XE#4173]) -> [PASS][100] +8 other tests pass
   [99]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3209-18c655116ff21afbb7c0dc013f52a011f90c91a4/shard-adlp-6/igt@kms_vblank@ts-continuation-suspend.html
   [100]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-149108v6/shard-adlp-4/igt@kms_vblank@ts-continuation-suspend.html

  * igt@xe_exec_basic@multigpu-once-bindexecqueue-rebind:
    - shard-dg2-set2:     [SKIP][101] ([Intel XE#1392]) -> [PASS][102] +1 other test pass
   [101]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3209-18c655116ff21afbb7c0dc013f52a011f90c91a4/shard-dg2-432/igt@xe_exec_basic@multigpu-once-bindexecqueue-rebind.html
   [102]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-149108v6/shard-dg2-463/igt@xe_exec_basic@multigpu-once-bindexecqueue-rebind.html

  * igt@xe_exec_threads@threads-hang-fd-rebind:
    - shard-dg2-set2:     [DMESG-WARN][103] ([Intel XE#3876]) -> [PASS][104]
   [103]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3209-18c655116ff21afbb7c0dc013f52a011f90c91a4/shard-dg2-435/igt@xe_exec_threads@threads-hang-fd-rebind.html
   [104]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-149108v6/shard-dg2-436/igt@xe_exec_threads@threads-hang-fd-rebind.html

  * igt@xe_live_ktest@xe_mocs@xe_live_mocs_kernel_kunit:
    - shard-dg2-set2:     [INCOMPLETE][105] ([Intel XE#4842]) -> [PASS][106] +1 other test pass
   [105]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3209-18c655116ff21afbb7c0dc013f52a011f90c91a4/shard-dg2-466/igt@xe_live_ktest@xe_mocs@xe_live_mocs_kernel_kunit.html
   [106]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-149108v6/shard-dg2-466/igt@xe_live_ktest@xe_mocs@xe_live_mocs_kernel_kunit.html

  * igt@xe_vm@large-split-binds-536870912:
    - shard-dg2-set2:     [SKIP][107] ([Intel XE#4208]) -> [PASS][108] +32 other tests pass
   [107]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3209-18c655116ff21afbb7c0dc013f52a011f90c91a4/shard-dg2-466/igt@xe_vm@large-split-binds-536870912.html
   [108]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-149108v6/shard-dg2-466/igt@xe_vm@large-split-binds-536870912.html

  
#### Warnings ####

  * igt@kms_big_fb@4-tiled-16bpp-rotate-270:
    - shard-dg2-set2:     [SKIP][109] ([Intel XE#2351] / [Intel XE#4208]) -> [SKIP][110] ([Intel XE#316])
   [109]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3209-18c655116ff21afbb7c0dc013f52a011f90c91a4/shard-dg2-466/igt@kms_big_fb@4-tiled-16bpp-rotate-270.html
   [110]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-149108v6/shard-dg2-466/igt@kms_big_fb@4-tiled-16bpp-rotate-270.html

  * igt@kms_big_fb@linear-16bpp-rotate-270:
    - shard-dg2-set2:     [SKIP][111] ([Intel XE#4208]) -> [SKIP][112] ([Intel XE#316])
   [111]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3209-18c655116ff21afbb7c0dc013f52a011f90c91a4/shard-dg2-466/igt@kms_big_fb@linear-16bpp-rotate-270.html
   [112]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-149108v6/shard-dg2-466/igt@kms_big_fb@linear-16bpp-rotate-270.html

  * igt@kms_big_fb@y-tiled-16bpp-rotate-0:
    - shard-dg2-set2:     [SKIP][113] ([Intel XE#4208]) -> [SKIP][114] ([Intel XE#1124])
   [113]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3209-18c655116ff21afbb7c0dc013f52a011f90c91a4/shard-dg2-466/igt@kms_big_fb@y-tiled-16bpp-rotate-0.html
   [114]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-149108v6/shard-dg2-466/igt@kms_big_fb@y-tiled-16bpp-rotate-0.html

  * igt@kms_big_fb@y-tiled-8bpp-rotate-0:
    - shard-adlp:         [DMESG-FAIL][115] ([Intel XE#4543]) -> [DMESG-FAIL][116] ([Intel XE#2953] / [Intel XE#4173] / [Intel XE#4543])
   [115]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3209-18c655116ff21afbb7c0dc013f52a011f90c91a4/shard-adlp-8/igt@kms_big_fb@y-tiled-8bpp-rotate-0.html
   [116]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-149108v6/shard-adlp-8/igt@kms_big_fb@y-tiled-8bpp-rotate-0.html

  * igt@kms_big_fb@yf-tiled-addfb-size-offset-overflow:
    - shard-dg2-set2:     [SKIP][117] ([Intel XE#4208]) -> [SKIP][118] ([Intel XE#607])
   [117]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3209-18c655116ff21afbb7c0dc013f52a011f90c91a4/shard-dg2-466/igt@kms_big_fb@yf-tiled-addfb-size-offset-overflow.html
   [118]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-149108v6/shard-dg2-466/igt@kms_big_fb@yf-tiled-addfb-size-offset-overflow.html

  * igt@kms_bw@connected-linear-tiling-4-displays-2160x1440p:
    - shard-dg2-set2:     [SKIP][119] ([Intel XE#4208] / [i915#2575]) -> [SKIP][120] ([Intel XE#2191])
   [119]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3209-18c655116ff21afbb7c0dc013f52a011f90c91a4/shard-dg2-466/igt@kms_bw@connected-linear-tiling-4-displays-2160x1440p.html
   [120]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-149108v6/shard-dg2-466/igt@kms_bw@connected-linear-tiling-4-displays-2160x1440p.html

  * igt@kms_ccs@crc-sprite-planes-basic-yf-tiled-ccs:
    - shard-dg2-set2:     [SKIP][121] ([Intel XE#4208]) -> [SKIP][122] ([Intel XE#455] / [Intel XE#787]) +1 other test skip
   [121]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3209-18c655116ff21afbb7c0dc013f52a011f90c91a4/shard-dg2-466/igt@kms_ccs@crc-sprite-planes-basic-yf-tiled-ccs.html
   [122]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-149108v6/shard-dg2-466/igt@kms_ccs@crc-sprite-planes-basic-yf-tiled-ccs.html

  * igt@kms_chamelium_color@ctm-negative:
    - shard-dg2-set2:     [SKIP][123] ([Intel XE#4208] / [i915#2575]) -> [SKIP][124] ([Intel XE#306])
   [123]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3209-18c655116ff21afbb7c0dc013f52a011f90c91a4/shard-dg2-466/igt@kms_chamelium_color@ctm-negative.html
   [124]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-149108v6/shard-dg2-466/igt@kms_chamelium_color@ctm-negative.html

  * igt@kms_chamelium_frames@hdmi-cmp-planes-random:
    - shard-dg2-set2:     [SKIP][125] ([Intel XE#4208] / [i915#2575]) -> [SKIP][126] ([Intel XE#373]) +1 other test skip
   [125]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3209-18c655116ff21afbb7c0dc013f52a011f90c91a4/shard-dg2-466/igt@kms_chamelium_frames@hdmi-cmp-planes-random.html
   [126]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-149108v6/shard-dg2-466/igt@kms_chamelium_frames@hdmi-cmp-planes-random.html

  * igt@kms_dirtyfb@psr-dirtyfb-ioctl:
    - shard-dg2-set2:     [SKIP][127] ([Intel XE#2351] / [Intel XE#4208]) -> [SKIP][128] ([Intel XE#455])
   [127]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3209-18c655116ff21afbb7c0dc013f52a011f90c91a4/shard-dg2-466/igt@kms_dirtyfb@psr-dirtyfb-ioctl.html
   [128]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-149108v6/shard-dg2-466/igt@kms_dirtyfb@psr-dirtyfb-ioctl.html

  * igt@kms_flip@2x-flip-vs-expired-vblank:
    - shard-bmg:          [FAIL][129] ([Intel XE#3321]) -> [SKIP][130] ([Intel XE#2316])
   [129]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3209-18c655116ff21afbb7c0dc013f52a011f90c91a4/shard-bmg-2/igt@kms_flip@2x-flip-vs-expired-vblank.html
   [130]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-149108v6/shard-bmg-6/igt@kms_flip@2x-flip-vs-expired-vblank.html

  * igt@kms_flip@flip-vs-expired-vblank-interruptible:
    - shard-dg2-set2:     [SKIP][131] ([Intel XE#4208] / [i915#2575]) -> [FAIL][132] ([Intel XE#301])
   [131]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3209-18c655116ff21afbb7c0dc013f52a011f90c91a4/shard-dg2-466/igt@kms_flip@flip-vs-expired-vblank-interruptible.html
   [132]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-149108v6/shard-dg2-466/igt@kms_flip@flip-vs-expired-vblank-interruptible.html

  * igt@kms_frontbuffer_tracking@drrs-1p-offscren-pri-indfb-draw-blt:
    - shard-dg2-set2:     [SKIP][133] ([Intel XE#2351] / [Intel XE#4208]) -> [SKIP][134] ([Intel XE#651]) +2 other tests skip
   [133]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3209-18c655116ff21afbb7c0dc013f52a011f90c91a4/shard-dg2-466/igt@kms_frontbuffer_tracking@drrs-1p-offscren-pri-indfb-draw-blt.html
   [134]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-149108v6/shard-dg2-466/igt@kms_frontbuffer_tracking@drrs-1p-offscren-pri-indfb-draw-blt.html

  * igt@kms_frontbuffer_tracking@drrs-modesetfrombusy:
    - shard-dg2-set2:     [SKIP][135] ([Intel XE#4208]) -> [SKIP][136] ([Intel XE#651]) +2 other tests skip
   [135]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3209-18c655116ff21afbb7c0dc013f52a011f90c91a4/shard-dg2-466/igt@kms_frontbuffer_tracking@drrs-modesetfrombusy.html
   [136]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-149108v6/shard-dg2-466/igt@kms_frontbuffer_tracking@drrs-modesetfrombusy.html

  * igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-shrfb-pgflip-blt:
    - shard-bmg:          [SKIP][137] ([Intel XE#2312]) -> [SKIP][138] ([Intel XE#4141]) +1 other test skip
   [137]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3209-18c655116ff21afbb7c0dc013f52a011f90c91a4/shard-bmg-6/igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-shrfb-pgflip-blt.html
   [138]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-149108v6/shard-bmg-1/igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-shrfb-pgflip-blt.html

  * igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-spr-indfb-draw-render:
    - shard-bmg:          [SKIP][139] ([Intel XE#4141]) -> [SKIP][140] ([Intel XE#2312]) +8 other tests skip
   [139]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3209-18c655116ff21afbb7c0dc013f52a011f90c91a4/shard-bmg-4/igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-spr-indfb-draw-render.html
   [140]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-149108v6/shard-bmg-6/igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-spr-indfb-draw-render.html

  * igt@kms_frontbuffer_tracking@fbcdrrs-2p-primscrn-indfb-plflip-blt:
    - shard-bmg:          [SKIP][141] ([Intel XE#2311]) -> [SKIP][142] ([Intel XE#2312]) +14 other tests skip
   [141]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3209-18c655116ff21afbb7c0dc013f52a011f90c91a4/shard-bmg-4/igt@kms_frontbuffer_tracking@fbcdrrs-2p-primscrn-indfb-plflip-blt.html
   [142]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-149108v6/shard-bmg-6/igt@kms_frontbuffer_tracking@fbcdrrs-2p-primscrn-indfb-plflip-blt.html

  * igt@kms_frontbuffer_tracking@fbcdrrs-2p-scndscrn-indfb-plflip-blt:
    - shard-bmg:          [SKIP][143] ([Intel XE#2312]) -> [SKIP][144] ([Intel XE#2311])
   [143]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3209-18c655116ff21afbb7c0dc013f52a011f90c91a4/shard-bmg-6/igt@kms_frontbuffer_tracking@fbcdrrs-2p-scndscrn-indfb-plflip-blt.html
   [144]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-149108v6/shard-bmg-7/igt@kms_frontbuffer_tracking@fbcdrrs-2p-scndscrn-indfb-plflip-blt.html

  * igt@kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-shrfb-msflip-blt:
    - shard-dg2-set2:     [SKIP][145] ([Intel XE#2351] / [Intel XE#4208]) -> [SKIP][146] ([Intel XE#653]) +1 other test skip
   [145]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3209-18c655116ff21afbb7c0dc013f52a011f90c91a4/shard-dg2-466/igt@kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-shrfb-msflip-blt.html
   [146]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-149108v6/shard-dg2-466/igt@kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-shrfb-msflip-blt.html

  * igt@kms_frontbuffer_tracking@psr-1p-primscrn-pri-shrfb-draw-blt:
    - shard-dg2-set2:     [SKIP][147] ([Intel XE#4208]) -> [SKIP][148] ([Intel XE#653]) +3 other tests skip
   [147]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3209-18c655116ff21afbb7c0dc013f52a011f90c91a4/shard-dg2-466/igt@kms_frontbuffer_tracking@psr-1p-primscrn-pri-shrfb-draw-blt.html
   [148]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-149108v6/shard-dg2-466/igt@kms_frontbuffer_tracking@psr-1p-primscrn-pri-shrfb-draw-blt.html

  * igt@kms_frontbuffer_tracking@psr-2p-primscrn-indfb-plflip-blt:
    - shard-bmg:          [SKIP][149] ([Intel XE#2313]) -> [SKIP][150] ([Intel XE#2312]) +16 other tests skip
   [149]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3209-18c655116ff21afbb7c0dc013f52a011f90c91a4/shard-bmg-2/igt@kms_frontbuffer_tracking@psr-2p-primscrn-indfb-plflip-blt.html
   [150]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-149108v6/shard-bmg-6/igt@kms_frontbuffer_tracking@psr-2p-primscrn-indfb-plflip-blt.html

  * igt@kms_joiner@basic-force-ultra-joiner:
    - shard-dg2-set2:     [SKIP][151] ([Intel XE#4208]) -> [SKIP][152] ([Intel XE#2925])
   [151]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3209-18c655116ff21afbb7c0dc013f52a011f90c91a4/shard-dg2-466/igt@kms_joiner@basic-force-ultra-joiner.html
   [152]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-149108v6/shard-dg2-466/igt@kms_joiner@basic-force-ultra-joiner.html

  * igt@kms_psr2_sf@pr-overlay-primary-update-sf-dmg-area:
    - shard-dg2-set2:     [SKIP][153] ([Intel XE#4208]) -> [SKIP][154] ([Intel XE#1489]) +1 other test skip
   [153]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3209-18c655116ff21afbb7c0dc013f52a011f90c91a4/shard-dg2-466/igt@kms_psr2_sf@pr-overlay-primary-update-sf-dmg-area.html
   [154]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-149108v6/shard-dg2-466/igt@kms_psr2_sf@pr-overlay-primary-update-sf-dmg-area.html

  * igt@kms_psr@fbc-psr2-no-drrs:
    - shard-dg2-set2:     [SKIP][155] ([Intel XE#4208]) -> [SKIP][156] ([Intel XE#2850] / [Intel XE#929]) +2 other tests skip
   [155]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3209-18c655116ff21afbb7c0dc013f52a011f90c91a4/shard-dg2-466/igt@kms_psr@fbc-psr2-no-drrs.html
   [156]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-149108v6/shard-dg2-466/igt@kms_psr@fbc-psr2-no-drrs.html

  * igt@kms_psr@pr-sprite-render:
    - shard-dg2-set2:     [SKIP][157] ([Intel XE#2351] / [Intel XE#4208]) -> [SKIP][158] ([Intel XE#2850] / [Intel XE#929])
   [157]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3209-18c655116ff21afbb7c0dc013f52a011f90c91a4/shard-dg2-466/igt@kms_psr@pr-sprite-render.html
   [158]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-149108v6/shard-dg2-466/igt@kms_psr@pr-sprite-render.html

  * igt@kms_rotation_crc@primary-yf-tiled-reflect-x-180:
    - shard-dg2-set2:     [SKIP][159] ([Intel XE#4208] / [i915#2575]) -> [SKIP][160] ([Intel XE#1127])
   [159]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3209-18c655116ff21afbb7c0dc013f52a011f90c91a4/shard-dg2-466/igt@kms_rotation_crc@primary-yf-tiled-reflect-x-180.html
   [160]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-149108v6/shard-dg2-466/igt@kms_rotation_crc@primary-yf-tiled-reflect-x-180.html

  * igt@kms_scaling_modes@scaling-mode-center:
    - shard-dg2-set2:     [SKIP][161] ([Intel XE#4208] / [i915#2575]) -> [SKIP][162] ([Intel XE#455]) +1 other test skip
   [161]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3209-18c655116ff21afbb7c0dc013f52a011f90c91a4/shard-dg2-466/igt@kms_scaling_modes@scaling-mode-center.html
   [162]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-149108v6/shard-dg2-466/igt@kms_scaling_modes@scaling-mode-center.html

  * igt@kms_tiled_display@basic-test-pattern-with-chamelium:
    - shard-bmg:          [SKIP][163] ([Intel XE#2426]) -> [SKIP][164] ([Intel XE#2509])
   [163]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3209-18c655116ff21afbb7c0dc013f52a011f90c91a4/shard-bmg-8/igt@kms_tiled_display@basic-test-pattern-with-chamelium.html
   [164]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-149108v6/shard-bmg-5/igt@kms_tiled_display@basic-test-pattern-with-chamelium.html

  * igt@sriov_basic@enable-vfs-bind-unbind-each-numvfs-all:
    - shard-dg2-set2:     [SKIP][165] ([Intel XE#4208] / [i915#2575]) -> [SKIP][166] ([Intel XE#1091] / [Intel XE#2849])
   [165]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3209-18c655116ff21afbb7c0dc013f52a011f90c91a4/shard-dg2-466/igt@sriov_basic@enable-vfs-bind-unbind-each-numvfs-all.html
   [166]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-149108v6/shard-dg2-466/igt@sriov_basic@enable-vfs-bind-unbind-each-numvfs-all.html

  * igt@xe_create@multigpu-create-massive-size:
    - shard-dg2-set2:     [SKIP][167] ([Intel XE#4208]) -> [SKIP][168] ([Intel XE#944])
   [167]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3209-18c655116ff21afbb7c0dc013f52a011f90c91a4/shard-dg2-466/igt@xe_create@multigpu-create-massive-size.html
   [168]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-149108v6/shard-dg2-466/igt@xe_create@multigpu-create-massive-size.html

  * igt@xe_eudebug@vma-ufence-faultable:
    - shard-dg2-set2:     [SKIP][169] ([Intel XE#4208]) -> [SKIP][170] ([Intel XE#4837]) +3 other tests skip
   [169]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3209-18c655116ff21afbb7c0dc013f52a011f90c91a4/shard-dg2-466/igt@xe_eudebug@vma-ufence-faultable.html
   [170]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-149108v6/shard-dg2-466/igt@xe_eudebug@vma-ufence-faultable.html

  * igt@xe_exec_fault_mode@once-bindexecqueue-userptr-invalidate-imm:
    - shard-dg2-set2:     [SKIP][171] ([Intel XE#4208]) -> [SKIP][172] ([Intel XE#288]) +5 other tests skip
   [171]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3209-18c655116ff21afbb7c0dc013f52a011f90c91a4/shard-dg2-466/igt@xe_exec_fault_mode@once-bindexecqueue-userptr-invalidate-imm.html
   [172]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-149108v6/shard-dg2-466/igt@xe_exec_fault_mode@once-bindexecqueue-userptr-invalidate-imm.html

  * igt@xe_exec_system_allocator@threads-shared-vm-many-execqueues-mmap-shared-nomemset:
    - shard-dg2-set2:     [SKIP][173] ([Intel XE#4208]) -> [SKIP][174] ([Intel XE#4915]) +51 other tests skip
   [173]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3209-18c655116ff21afbb7c0dc013f52a011f90c91a4/shard-dg2-466/igt@xe_exec_system_allocator@threads-shared-vm-many-execqueues-mmap-shared-nomemset.html
   [174]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-149108v6/shard-dg2-466/igt@xe_exec_system_allocator@threads-shared-vm-many-execqueues-mmap-shared-nomemset.html

  * igt@xe_pat@display-vs-wb-transient:
    - shard-dg2-set2:     [SKIP][175] ([Intel XE#4208]) -> [SKIP][176] ([Intel XE#1337])
   [175]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3209-18c655116ff21afbb7c0dc013f52a011f90c91a4/shard-dg2-466/igt@xe_pat@display-vs-wb-transient.html
   [176]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-149108v6/shard-dg2-466/igt@xe_pat@display-vs-wb-transient.html

  * igt@xe_pm@s4-d3cold-basic-exec:
    - shard-dg2-set2:     [SKIP][177] ([Intel XE#4208]) -> [SKIP][178] ([Intel XE#2284] / [Intel XE#366])
   [177]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3209-18c655116ff21afbb7c0dc013f52a011f90c91a4/shard-dg2-466/igt@xe_pm@s4-d3cold-basic-exec.html
   [178]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-149108v6/shard-dg2-466/igt@xe_pm@s4-d3cold-basic-exec.html

  * igt@xe_pxp@pxp-stale-queue-post-termination-irq:
    - shard-dg2-set2:     [SKIP][179] ([Intel XE#4208]) -> [SKIP][180] ([Intel XE#4733])
   [179]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3209-18c655116ff21afbb7c0dc013f52a011f90c91a4/shard-dg2-466/igt@xe_pxp@pxp-stale-queue-post-termination-irq.html
   [180]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-149108v6/shard-dg2-466/igt@xe_pxp@pxp-stale-queue-post-termination-irq.html

  * igt@xe_render_copy@render-stress-2-copies:
    - shard-dg2-set2:     [SKIP][181] ([Intel XE#4208]) -> [SKIP][182] ([Intel XE#4814])
   [181]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3209-18c655116ff21afbb7c0dc013f52a011f90c91a4/shard-dg2-466/igt@xe_render_copy@render-stress-2-copies.html
   [182]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-149108v6/shard-dg2-466/igt@xe_render_copy@render-stress-2-copies.html

  * igt@xe_sriov_scheduling@equal-throughput:
    - shard-dg2-set2:     [SKIP][183] ([Intel XE#4208]) -> [SKIP][184] ([Intel XE#4351])
   [183]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3209-18c655116ff21afbb7c0dc013f52a011f90c91a4/shard-dg2-466/igt@xe_sriov_scheduling@equal-throughput.html
   [184]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-149108v6/shard-dg2-466/igt@xe_sriov_scheduling@equal-throughput.html

  
  {name}: This element is suppressed. This means it is ignored when computing
          the status of the difference (SUCCESS, WARNING, or FAILURE).

  [Intel XE#1091]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1091
  [Intel XE#1123]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1123
  [Intel XE#1124]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1124
  [Intel XE#1127]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1127
  [Intel XE#1129]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1129
  [Intel XE#1178]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1178
  [Intel XE#1337]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1337
  [Intel XE#1392]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1392
  [Intel XE#1489]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1489
  [Intel XE#1499]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1499
  [Intel XE#1500]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1500
  [Intel XE#1794]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1794
  [Intel XE#1874]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1874
  [Intel XE#2049]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2049
  [Intel XE#2168]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2168
  [Intel XE#2191]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2191
  [Intel XE#2284]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2284
  [Intel XE#2291]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2291
  [Intel XE#2311]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2311
  [Intel XE#2312]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2312
  [Intel XE#2313]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2313
  [Intel XE#2316]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2316
  [Intel XE#2351]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2351
  [Intel XE#2360]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2360
  [Intel XE#2426]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2426
  [Intel XE#2509]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2509
  [Intel XE#2541]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2541
  [Intel XE#2571]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2571
  [Intel XE#2597]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2597
  [Intel XE#2849]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2849
  [Intel XE#2850]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2850
  [Intel XE#288]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/288
  [Intel XE#2882]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2882
  [Intel XE#2925]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2925
  [Intel XE#2953]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2953
  [Intel XE#301]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/301
  [Intel XE#306]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/306
  [Intel XE#307]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/307
  [Intel XE#3098]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3098
  [Intel XE#316]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/316
  [Intel XE#323]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/323
  [Intel XE#330]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/330
  [Intel XE#3321]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3321
  [Intel XE#3342]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3342
  [Intel XE#3414]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3414
  [Intel XE#346]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/346
  [Intel XE#3573]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3573
  [Intel XE#366]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/366
  [Intel XE#367]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/367
  [Intel XE#373]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/373
  [Intel XE#3767]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3767
  [Intel XE#3862]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3862
  [Intel XE#3876]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3876
  [Intel XE#3908]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3908
  [Intel XE#4130]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4130
  [Intel XE#4141]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4141
  [Intel XE#4173]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4173
  [Intel XE#4208]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4208
  [Intel XE#4351]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4351
  [Intel XE#4356]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4356
  [Intel XE#4416]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4416
  [Intel XE#4417]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4417
  [Intel XE#4422]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4422
  [Intel XE#4494]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4494
  [Intel XE#4543]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4543
  [Intel XE#455]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/455
  [Intel XE#4596]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4596
  [Intel XE#4650]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4650
  [Intel XE#4733]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4733
  [Intel XE#4814]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4814
  [Intel XE#4837]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4837
  [Intel XE#4842]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4842
  [Intel XE#4915]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4915
  [Intel XE#5020]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5020
  [Intel XE#512]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/512
  [Intel XE#5172]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5172
  [Intel XE#607]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/607
  [Intel XE#651]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/651
  [Intel XE#653]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/653
  [Intel XE#658]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/658
  [Intel XE#701]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/701
  [Intel XE#787]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/787
  [Intel XE#886]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/886
  [Intel XE#929]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/929
  [Intel XE#944]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/944
  [Intel XE#977]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/977
  [i915#2575]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/2575
  [i915#3804]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/3804


Build changes
-------------

  * Linux: xe-3209-18c655116ff21afbb7c0dc013f52a011f90c91a4 -> xe-pw-149108v6

  IGT_8400: 90a23a10be60c805ab0da456e846d1ec45799f9d @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git
  xe-3209-18c655116ff21afbb7c0dc013f52a011f90c91a4: 18c655116ff21afbb7c0dc013f52a011f90c91a4
  xe-pw-149108v6: 149108v6

== Logs ==

For more details see: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-149108v6/index.html

[-- Attachment #2: Type: text/html, Size: 60959 bytes --]

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

* RE: [PATCH v6 2/3] drm/xe/vf: Attach and detach CCS copy commands with BO
  2025-06-06 17:37   ` Matthew Brost
@ 2025-06-09 12:00     ` K V P, Satyanarayana
  2025-06-09 16:06       ` Matthew Brost
  0 siblings, 1 reply; 23+ messages in thread
From: K V P, Satyanarayana @ 2025-06-09 12:00 UTC (permalink / raw)
  To: Brost, Matthew
  Cc: intel-xe@lists.freedesktop.org, Wajdeczko, Michal,
	Winiarski, Michal, Lis, Tomasz, Auld, Matthew,
	K V P, Satyanarayana

Hi.
> -----Original Message-----
> From: Brost, Matthew <matthew.brost@intel.com>
> Sent: Friday, June 6, 2025 11:08 PM
> To: K V P, Satyanarayana <satyanarayana.k.v.p@intel.com>
> Cc: intel-xe@lists.freedesktop.org; Wajdeczko, Michal
> <Michal.Wajdeczko@intel.com>; Winiarski, Michal
> <michal.winiarski@intel.com>; Lis, Tomasz <tomasz.lis@intel.com>; Auld,
> Matthew <matthew.auld@intel.com>
> Subject: Re: [PATCH v6 2/3] drm/xe/vf: Attach and detach CCS copy
> commands with BO
> 
> On Fri, Jun 06, 2025 at 06:15:57PM +0530, Satyanarayana K V P wrote:
> > Attach CCS read/write copy commands to BO for old and new mem types as
> > NULL -> tt or system -> tt.
> > Detach the CCS read/write copy commands from BO while deleting ttm bo
> > from xe_ttm_bo_delete_mem_notify().
> >
> > Signed-off-by: Satyanarayana K V P <satyanarayana.k.v.p@intel.com>
> > ---
> > Cc: Michal Wajdeczko <michal.wajdeczko@intel.com>
> > Cc: Michał Winiarski <michal.winiarski@intel.com>
> > Cc: Tomasz Lis <tomasz.lis@intel.com>
> > Cc: Matthew Brost <matthew.brost@intel.com>
> > Cc: Matthew Auld <matthew.auld@intel.com>
> >
> > V5 -> V6:
> > - Removed dead code from xe_migrate_ccs_rw_copy() function. (Matthew
> Brost)
> >
> > V4 -> V5:
> > - Create a list of BBs for the given BO and fixed memory leak while
> >   detaching BOs. (Matthew Brost).
> 
> I'd still personally prefer a single BB per BO rather than having a
> list. Unless I'm missing something, I think that would work and would be
> cleaner. Any particular reason you went with a list of BB over a single
> BB?
> 
If the provided size is more than max_mem_transfer_per_pass(), then the copy is divided into chunks.
The max_mem_transfer_per_pass = MAX_CCS_LIMITED_TRANSFER = 4MB.
For buffer sizes bigger than 4MB, we get more BBs and so, created a list to track and free them.
The Head of the list is stored in the BO, and list is parsed only when more BBs are available in the list.
For 98% of the cases, only one BB was allocated when checked with 3D benchmark.
-Satya.
> > - Fixed review comments (Matthew Brost & Matthew Auld).
> > - Yet to cleanup xe_migrate_ccs_rw_copy() function.
> >
> > V3 -> V4:
> > - Fixed issues reported by patchworks.
> >
> > V2 -> V3:
> > - Attach and detach functions check for IS_VF_CCS_READY().
> >
> > V1 -> V2:
> > - Fixed review comments.
> > ---
> >  drivers/gpu/drm/xe/xe_bb.c                 | 34 ++++++++
> >  drivers/gpu/drm/xe/xe_bb.h                 |  3 +
> >  drivers/gpu/drm/xe/xe_bb_types.h           |  1 +
> >  drivers/gpu/drm/xe/xe_bo.c                 | 23 +++++
> >  drivers/gpu/drm/xe/xe_bo_types.h           |  3 +
> >  drivers/gpu/drm/xe/xe_migrate.c            | 98 ++++++++++++++++++++++
> >  drivers/gpu/drm/xe/xe_migrate.h            |  4 +
> >  drivers/gpu/drm/xe/xe_sriov_vf_ccs.c       | 77 +++++++++++++++++
> >  drivers/gpu/drm/xe/xe_sriov_vf_ccs.h       |  3 +
> >  drivers/gpu/drm/xe/xe_sriov_vf_ccs_types.h |  8 ++
> >  10 files changed, 254 insertions(+)
> >
> > diff --git a/drivers/gpu/drm/xe/xe_bb.c b/drivers/gpu/drm/xe/xe_bb.c
> > index 9570672fce33..ee31556e00bc 100644
> > --- a/drivers/gpu/drm/xe/xe_bb.c
> > +++ b/drivers/gpu/drm/xe/xe_bb.c
> > @@ -60,6 +60,40 @@ struct xe_bb *xe_bb_new(struct xe_gt *gt, u32
> dwords, bool usm)
> >  	return ERR_PTR(err);
> >  }
> >
> > +struct xe_bb *xe_bb_ccs_new(struct xe_gt *gt, u32 dwords,
> > +			    enum xe_sriov_vf_ccs_rw_ctxs ctx_id)
> > +{
> > +	struct xe_bb *bb = kmalloc(sizeof(*bb), GFP_KERNEL);
> > +	struct xe_tile *tile = gt_to_tile(gt);
> > +	struct xe_sa_manager *bb_pool;
> > +	int err;
> > +
> > +	if (!bb)
> > +		return ERR_PTR(-ENOMEM);
> > +
> > +	/*
> > +	 * We need to allocate space for the requested number of dwords,
> > +	 * one additional MI_BATCH_BUFFER_END dword, and additional
> buffer
> > +	 * space to accommodate the platform-specific hardware prefetch
> > +	 * requirements.
> > +	 */
> > +	bb_pool = tile->sriov.vf.ccs[ctx_id].mem.ccs_bb_pool;
> > +	bb->bo = xe_sa_bo_new(bb_pool, 4 * (dwords + 1) +
> bb_prefetch(gt));
> > +
> > +	if (IS_ERR(bb->bo)) {
> > +		err = PTR_ERR(bb->bo);
> > +		goto err;
> > +	}
> > +
> > +	bb->cs = xe_sa_bo_cpu_addr(bb->bo);
> > +	bb->len = 0;
> > +
> > +	return bb;
> > +err:
> > +	kfree(bb);
> > +	return ERR_PTR(err);
> > +}
> > +
> >  static struct xe_sched_job *
> >  __xe_bb_create_job(struct xe_exec_queue *q, struct xe_bb *bb, u64 *addr)
> >  {
> > diff --git a/drivers/gpu/drm/xe/xe_bb.h b/drivers/gpu/drm/xe/xe_bb.h
> > index fafacd73dcc3..32c9c4c5d2be 100644
> > --- a/drivers/gpu/drm/xe/xe_bb.h
> > +++ b/drivers/gpu/drm/xe/xe_bb.h
> > @@ -13,8 +13,11 @@ struct dma_fence;
> >  struct xe_gt;
> >  struct xe_exec_queue;
> >  struct xe_sched_job;
> > +enum xe_sriov_vf_ccs_rw_ctxs;
> >
> >  struct xe_bb *xe_bb_new(struct xe_gt *gt, u32 size, bool usm);
> > +struct xe_bb *xe_bb_ccs_new(struct xe_gt *gt, u32 dwords,
> > +			    enum xe_sriov_vf_ccs_rw_ctxs ctx_id);
> >  struct xe_sched_job *xe_bb_create_job(struct xe_exec_queue *q,
> >  				      struct xe_bb *bb);
> >  struct xe_sched_job *xe_bb_create_migration_job(struct xe_exec_queue
> *q,
> > diff --git a/drivers/gpu/drm/xe/xe_bb_types.h
> b/drivers/gpu/drm/xe/xe_bb_types.h
> > index b7d30308cf90..b2358cc051ff 100644
> > --- a/drivers/gpu/drm/xe/xe_bb_types.h
> > +++ b/drivers/gpu/drm/xe/xe_bb_types.h
> > @@ -12,6 +12,7 @@ struct drm_suballoc;
> >
> >  struct xe_bb {
> >  	struct drm_suballoc *bo;
> > +	struct list_head list;
> >
> >  	u32 *cs;
> >  	u32 len; /* in dwords */
> > diff --git a/drivers/gpu/drm/xe/xe_bo.c b/drivers/gpu/drm/xe/xe_bo.c
> > index 61d208c85281..b2ed5a36ab3d 100644
> > --- a/drivers/gpu/drm/xe/xe_bo.c
> > +++ b/drivers/gpu/drm/xe/xe_bo.c
> > @@ -31,6 +31,7 @@
> >  #include "xe_pxp.h"
> >  #include "xe_res_cursor.h"
> >  #include "xe_shrinker.h"
> > +#include "xe_sriov_vf_ccs.h"
> >  #include "xe_trace_bo.h"
> >  #include "xe_ttm_stolen_mgr.h"
> >  #include "xe_vm.h"
> > @@ -948,6 +949,20 @@ static int xe_bo_move(struct ttm_buffer_object
> *ttm_bo, bool evict,
> >  	dma_fence_put(fence);
> >  	xe_pm_runtime_put(xe);
> >
> > +	/*
> > +	 * CCS meta data is migrated from TT -> SMEM. So, let us detach the
> > +	 * BBs from BO as it is no longer needed.
> > +	 */
> > +	if (IS_VF_CCS_BB_VALID(xe, bo) && old_mem_type == XE_PL_TT &&
> > +	    new_mem->mem_type == XE_PL_SYSTEM)
> > +		xe_sriov_vf_ccs_detach_bo(bo);
> > +
> > +	if (IS_SRIOV_VF(xe) &&
> > +	    ((move_lacks_source && new_mem->mem_type == XE_PL_TT) ||
> > +	     (old_mem_type == XE_PL_SYSTEM && new_mem->mem_type ==
> XE_PL_TT)) &&
> > +	    handle_system_ccs)
> > +		ret = xe_sriov_vf_ccs_attach_bo(bo);
> > +
> >  out:
> >  	if ((!ttm_bo->resource || ttm_bo->resource->mem_type ==
> XE_PL_SYSTEM) &&
> >  	    ttm_bo->ttm) {
> > @@ -958,6 +973,9 @@ static int xe_bo_move(struct ttm_buffer_object
> *ttm_bo, bool evict,
> >  		if (timeout < 0)
> >  			ret = timeout;
> >
> > +		if (IS_VF_CCS_BB_VALID(xe, bo))
> > +			xe_sriov_vf_ccs_detach_bo(bo);
> > +
> >  		xe_tt_unmap_sg(ttm_bo->ttm);
> >  	}
> >
> > @@ -1482,9 +1500,14 @@ static void xe_ttm_bo_release_notify(struct
> ttm_buffer_object *ttm_bo)
> >
> >  static void xe_ttm_bo_delete_mem_notify(struct ttm_buffer_object
> *ttm_bo)
> >  {
> > +	struct xe_bo *bo = ttm_to_xe_bo(ttm_bo);
> > +
> >  	if (!xe_bo_is_xe_bo(ttm_bo))
> >  		return;
> >
> > +	if (IS_VF_CCS_BB_VALID(ttm_to_xe_device(ttm_bo->bdev), bo))
> > +		xe_sriov_vf_ccs_detach_bo(bo);
> > +
> >  	/*
> >  	 * Object is idle and about to be destroyed. Release the
> >  	 * dma-buf attachment.
> > diff --git a/drivers/gpu/drm/xe/xe_bo_types.h
> b/drivers/gpu/drm/xe/xe_bo_types.h
> > index eb5e83c5f233..481b8e0d8ab1 100644
> > --- a/drivers/gpu/drm/xe/xe_bo_types.h
> > +++ b/drivers/gpu/drm/xe/xe_bo_types.h
> > @@ -78,6 +78,9 @@ struct xe_bo {
> >  	/** @ccs_cleared */
> >  	bool ccs_cleared;
> >
> > +	/** @bb_ccs_rw: BB instructions of CCS read/write. Valid only for VF
> */
> > +	struct xe_bb *bb_ccs[XE_SRIOV_VF_CCS_RW_MAX_CTXS];
> > +
> >  	/**
> >  	 * @cpu_caching: CPU caching mode. Currently only used for
> userspace
> >  	 * objects. Exceptions are system memory on DGFX, which is always
> > diff --git a/drivers/gpu/drm/xe/xe_migrate.c
> b/drivers/gpu/drm/xe/xe_migrate.c
> > index 8f8e9fdfb2a8..d7f3009260ee 100644
> > --- a/drivers/gpu/drm/xe/xe_migrate.c
> > +++ b/drivers/gpu/drm/xe/xe_migrate.c
> > @@ -940,6 +940,104 @@ struct dma_fence *xe_migrate_copy(struct
> xe_migrate *m,
> >  	return fence;
> >  }
> >
> > +/**
> > + * xe_migrate_ccs_rw_copy() - Copy content of TTM resources.
> > + * @m: The migration context.
> > + * @src_bo: The buffer object @src is currently bound to.
> > + * @read_write : Creates BB commands for CCS read/write.
> > + *
> > + * Creates batch buffer instructions to copy CCS metadata from CCS pool to
> > + * memory and vice versa.
> > + *
> > + * This function should only be called for IGPU.
> > + *
> > + * Return: 0 if successful, negative error code on failure.
> > + */
> > +int xe_migrate_ccs_rw_copy(struct xe_migrate *m,
> > +			   struct xe_bo *src_bo,
> > +			   int read_write)
> 
> s/int read_write/enum xe_sriov_vf_ccs_rw_ctxs
> 
> > +
> > +{
> > +	bool src_is_pltt = read_write == XE_SRIOV_VF_CCS_WRITE_CTX;
> > +	bool dst_is_pltt = read_write == XE_SRIOV_VF_CCS_READ_CTX;
> > +	struct ttm_resource *src = src_bo->ttm.resource;
> > +	struct xe_gt *gt = m->tile->primary_gt;
> > +	struct xe_device *xe = gt_to_xe(gt);
> > +	struct xe_res_cursor src_it, ccs_it;
> > +	u64 size = src_bo->size;
> > +	u64 src_L0, src_L0_ofs;
> > +	u32 src_L0_pt;
> > +	int err;
> > +
> > +	xe_res_first_sg(xe_bo_sg(src_bo), 0, size, &src_it);
> > +
> > +	xe_res_first_sg(xe_bo_sg(src_bo), xe_bo_ccs_pages_start(src_bo),
> > +			PAGE_ALIGN(xe_device_ccs_bytes(xe, size)),
> > +			&ccs_it);
> > +
> > +	while (size) {
> > +		u32 batch_size = 8; /* arb_clear() + MI_BATCH_BUFFER_END +
> Flush + NOP */
> > +		struct xe_bb *bb;
> > +		u32 flush_flags = 0;
> > +		u64 ccs_ofs, ccs_size;
> > +		u32 ccs_pt;
> > +
> > +		u32 avail_pts = max_mem_transfer_per_pass(xe) /
> LEVEL0_PAGE_TABLE_ENCODE_SIZE;
> > +
> > +		src_L0 = xe_migrate_res_sizes(m, &src_it);
> > +
> > +		batch_size += pte_update_size(m, false, src, &src_it, &src_L0,
> > +					      &src_L0_ofs, &src_L0_pt, 0, 0,
> > +					      avail_pts);
> > +
> > +		ccs_size = xe_device_ccs_bytes(xe, src_L0);
> > +		batch_size += pte_update_size(m, 0, NULL, &ccs_it, &ccs_size,
> &ccs_ofs,
> > +					      &ccs_pt, 0, avail_pts, avail_pts);
> > +		xe_assert(xe, IS_ALIGNED(ccs_it.start, PAGE_SIZE));
> > +
> > +		/* Add copy commands size here */
> > +		batch_size += EMIT_COPY_CCS_DW;
> > +
> > +		bb = xe_bb_ccs_new(gt, batch_size, read_write);
> > +		if (IS_ERR(bb)) {
> > +			drm_dbg(&xe->drm, "BB allocation failed.\n");
> 
> s/drm_dbg/xe_sriov_err - I think.
> 
> > +			err = PTR_ERR(bb);
> > +			goto err_ret;
> > +		}
> > +
> > +		emit_pte(m, bb, src_L0_pt, false, true, &src_it, src_L0, src);
> > +
> > +		emit_pte(m, bb, ccs_pt, false, false, &ccs_it, ccs_size, src);
> > +
> > +		bb->cs[bb->len++] = MI_FLUSH_DW | MI_INVALIDATE_TLB |
> MI_FLUSH_DW_OP_STOREDW |
> > +					MI_FLUSH_IMM_DW;
> > +		bb->cs[bb->len++] = MI_NOOP;
> > +		bb->cs[bb->len++] = MI_NOOP;
> > +
> > +		flush_flags = xe_migrate_ccs_copy(m, bb, src_L0_ofs,
> src_is_pltt,
> > +						  src_L0_ofs, dst_is_pltt,
> > +						  src_L0, ccs_ofs, true);
> > +
> > +		bb->cs[bb->len++] = MI_FLUSH_DW | MI_INVALIDATE_TLB |
> MI_FLUSH_DW_OP_STOREDW |
> > +					MI_FLUSH_IMM_DW | flush_flags;
> > +		bb->cs[bb->len++] = MI_NOOP;
> > +		bb->cs[bb->len++] = MI_NOOP;
> > +
> > +		if (size == src_bo->size) {
> > +			src_bo->bb_ccs[read_write] = bb;
> > +			INIT_LIST_HEAD(&src_bo->bb_ccs[read_write]->list);
> > +		} else {
> > +			list_add(&bb->list, &src_bo->bb_ccs[read_write]-
> >list);
> > +		}
> > +
> > +		size -= src_L0;
> > +	}
> > +	return 0;
> > +
> > +err_ret:
> > +	return err;
> > +}
> > +
> >  static void emit_clear_link_copy(struct xe_gt *gt, struct xe_bb *bb, u64
> src_ofs,
> >  				 u32 size, u32 pitch)
> >  {
> > diff --git a/drivers/gpu/drm/xe/xe_migrate.h
> b/drivers/gpu/drm/xe/xe_migrate.h
> > index fb9839c1bae0..ab5ebb44d2c9 100644
> > --- a/drivers/gpu/drm/xe/xe_migrate.h
> > +++ b/drivers/gpu/drm/xe/xe_migrate.h
> > @@ -112,6 +112,10 @@ struct dma_fence *xe_migrate_copy(struct
> xe_migrate *m,
> >  				  struct ttm_resource *dst,
> >  				  bool copy_only_ccs);
> >
> > +int xe_migrate_ccs_rw_copy(struct xe_migrate *m,
> > +			   struct xe_bo *src_bo,
> > +			   int read_write);
> > +
> >  int xe_migrate_access_memory(struct xe_migrate *m, struct xe_bo *bo,
> >  			     unsigned long offset, void *buf, int len,
> >  			     int write);
> > diff --git a/drivers/gpu/drm/xe/xe_sriov_vf_ccs.c
> b/drivers/gpu/drm/xe/xe_sriov_vf_ccs.c
> > index 41fe1f59e0e9..4b5cfc0d421b 100644
> > --- a/drivers/gpu/drm/xe/xe_sriov_vf_ccs.c
> > +++ b/drivers/gpu/drm/xe/xe_sriov_vf_ccs.c
> > @@ -5,6 +5,7 @@
> >
> >  #include "instructions/xe_mi_commands.h"
> >  #include "instructions/xe_gpu_commands.h"
> > +#include "xe_bb.h"
> >  #include "xe_bo.h"
> >  #include "xe_device.h"
> >  #include "xe_migrate.h"
> > @@ -184,3 +185,79 @@ int xe_sriov_vf_ccs_init(struct xe_device *xe)
> >  err_ret:
> >  	return err;
> >  }
> > +
> > +/**
> > + * xe_sriov_vf_ccs_attach_bo - Insert CCS read write commands in the BO.
> > + * @bo: the &buffer object to which batch buffer commands will be added.
> > + *
> > + * This function shall be called only by VF. It inserts the PTEs and copy
> > + * command instructions in the BO by calling xe_migrate_ccs_rw_copy()
> > + * function.
> > + *
> > + * Returns: 0 if successful, negative error code on failure.
> > + */
> > +int xe_sriov_vf_ccs_attach_bo(struct xe_bo *bo)
> > +{
> > +	struct xe_device *xe = xe_bo_device(bo);
> > +	struct xe_migrate *migrate;
> > +	struct xe_tile *tile;
> > +	int tile_id, ctx_id;
> 
> ctx_id can be enum xe_sriov_vf_ccs_rw_ctxs
> 
> > +	struct xe_bb *bb;
> > +	int err = 0;
> > +
> > +	if (!IS_VF_CCS_READY(xe))
> > +		return 0;
> > +
> > +	for_each_tile(tile, xe, tile_id) {
> > +		for_each_ccs_rw_ctx(ctx_id) {
> > +			bb = bo->bb_ccs[ctx_id];
> > +			if (bb)
> > +				xe_sriov_err(xe, "Probable memory leak\n");
> > +
> > +			migrate = tile->sriov.vf.ccs[ctx_id].migrate;
> > +			err = xe_migrate_ccs_rw_copy(migrate, bo, ctx_id);
> > +		}
> > +	}
> > +	return err;
> > +}
> > +
> > +/**
> > + * xe_sriov_vf_ccs_detach_bo - Remove CCS read write commands from the
> BO.
> > + * @bo: the &buffer object from which batch buffer commands will be
> removed.
> > + *
> > + * This function shall be called only by VF. It removes the PTEs and copy
> > + * command instructions from the BO. Make sure to update the BB with
> MI_NOOP
> > + * before freeing.
> > + *
> > + * Returns: 0 if successful, negative error code on failure.
> > + */
> > +int xe_sriov_vf_ccs_detach_bo(struct xe_bo *bo)
> > +{
> > +	struct xe_device *xe = xe_bo_device(bo);
> > +	struct xe_bb *bb, *pos, *temp;
> > +	struct xe_tile *tile;
> > +	int tile_id, ctx_id;
> 
> ctx_id can be enum xe_sriov_vf_ccs_rw_ctxs
> 
> Matt
> 
> > +
> > +	if (!IS_VF_CCS_READY(xe))
> > +		return 0;
> > +
> > +	for_each_tile(tile, xe, tile_id) {
> > +		for_each_ccs_rw_ctx(ctx_id) {
> > +			bb = bo->bb_ccs[ctx_id];
> > +			if (!bb)
> > +				continue;
> > +
> > +			list_for_each_entry_safe(pos, temp, &bb->list, list) {
> > +				list_del(&pos->list);
> > +				memset(pos->cs, MI_NOOP, pos->len *
> sizeof(u32));
> > +				xe_bb_free(pos, NULL);
> > +			}
> > +
> > +			/* Free-up head BB */
> > +			memset(bb->cs, MI_NOOP, bb->len * sizeof(u32));
> > +			xe_bb_free(bb, NULL);
> > +			bo->bb_ccs[ctx_id] = NULL;
> > +		}
> > +	}
> > +	return 0;
> > +}
> > diff --git a/drivers/gpu/drm/xe/xe_sriov_vf_ccs.h
> b/drivers/gpu/drm/xe/xe_sriov_vf_ccs.h
> > index 5df9ba028d14..5d5e4bd25904 100644
> > --- a/drivers/gpu/drm/xe/xe_sriov_vf_ccs.h
> > +++ b/drivers/gpu/drm/xe/xe_sriov_vf_ccs.h
> > @@ -7,7 +7,10 @@
> >  #define _XE_SRIOV_VF_CCS_H_
> >
> >  struct xe_device;
> > +struct xe_bo;
> >
> >  int xe_sriov_vf_ccs_init(struct xe_device *xe);
> > +int xe_sriov_vf_ccs_attach_bo(struct xe_bo *bo);
> > +int xe_sriov_vf_ccs_detach_bo(struct xe_bo *bo);
> >
> >  #endif
> > diff --git a/drivers/gpu/drm/xe/xe_sriov_vf_ccs_types.h
> b/drivers/gpu/drm/xe/xe_sriov_vf_ccs_types.h
> > index f67f002c7a96..9545c5cfc2b1 100644
> > --- a/drivers/gpu/drm/xe/xe_sriov_vf_ccs_types.h
> > +++ b/drivers/gpu/drm/xe/xe_sriov_vf_ccs_types.h
> > @@ -28,6 +28,14 @@ enum xe_sriov_vf_ccs_rw_ctxs {
> >  	XE_SRIOV_VF_CCS_RW_MAX_CTXS
> >  };
> >
> > +#define IS_VF_CCS_BB_VALID(xe, bo) ({ \
> > +		struct xe_device *___xe = (xe); \
> > +		struct xe_bo *___bo = (bo); \
> > +		IS_SRIOV_VF(___xe) && \
> > +		___bo->bb_ccs[XE_SRIOV_VF_CCS_READ_CTX] && \
> > +		___bo->bb_ccs[XE_SRIOV_VF_CCS_WRITE_CTX]; \
> > +		})
> > +
> >  struct xe_migrate;
> >  struct xe_sa_manager;
> >
> > --
> > 2.43.0
> >

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

* Re: [PATCH v6 1/3] drm/xe/vf: Create contexts for CCS read write
  2025-06-06 12:45 ` [PATCH v6 1/3] drm/xe/vf: Create contexts for CCS read write Satyanarayana K V P
  2025-06-06 17:18   ` Matthew Brost
  2025-06-06 17:39   ` Matthew Brost
@ 2025-06-09 12:39   ` Michal Wajdeczko
  2025-06-09 16:08     ` Matthew Brost
  2 siblings, 1 reply; 23+ messages in thread
From: Michal Wajdeczko @ 2025-06-09 12:39 UTC (permalink / raw)
  To: Satyanarayana K V P, intel-xe
  Cc: Michał Winiarski, Tomasz Lis, Matthew Brost, Matthew Auld



On 06.06.2025 14:45, Satyanarayana K V P wrote:
> Create two LRCs to handle CCS meta data read / write from CCS pool in the
> VM. Read context is used to hold GPU instructions to be executed at save
> time and write context is used to hold GPU instructions to be executed at
> the restore time.
> 
> Allocate batch buffer pool using suballocator for both read and write
> contexts.
> 
> Migration framework is reused to create LRCAs for read and write.
> 
> Signed-off-by: Satyanarayana K V P <satyanarayana.k.v.p@intel.com>
> ---
> Cc: Michal Wajdeczko <michal.wajdeczko@intel.com>
> Cc: Michał Winiarski <michal.winiarski@intel.com>
> Cc: Tomasz Lis <tomasz.lis@intel.com>
> Cc: Matthew Brost <matthew.brost@intel.com>
> Cc: Matthew Auld <matthew.auld@intel.com>
> 
> V5 -> V6:
> - Added id field in the xe_tile_vf_ccs structure for self identification.
> 
> V4 -> V5:
> - Modified read/write contexts to enums from #defines (Matthew Brost).
> - The CCS BB pool size is calculated based on the system memory size (Michal
>   Wajdeczko & Matthew Brost).
> 
> V3 -> V4:
> - Fixed issues reported by patchworks.
> 
> V2 -> V3:
> - Added new variable which denotes the initialization of contexts.
> 
> V1 -> V2:
> - Fixed review comments.
> ---
>  drivers/gpu/drm/xe/Makefile                |   1 +
>  drivers/gpu/drm/xe/xe_device.c             |   4 +
>  drivers/gpu/drm/xe/xe_device_types.h       |   4 +
>  drivers/gpu/drm/xe/xe_gt_debugfs.c         |  36 ++++
>  drivers/gpu/drm/xe/xe_sriov.c              |  19 +++
>  drivers/gpu/drm/xe/xe_sriov.h              |   1 +
>  drivers/gpu/drm/xe/xe_sriov_types.h        |   5 +
>  drivers/gpu/drm/xe/xe_sriov_vf_ccs.c       | 186 +++++++++++++++++++++
>  drivers/gpu/drm/xe/xe_sriov_vf_ccs.h       |  13 ++
>  drivers/gpu/drm/xe/xe_sriov_vf_ccs_types.h |  46 +++++
>  10 files changed, 315 insertions(+)
>  create mode 100644 drivers/gpu/drm/xe/xe_sriov_vf_ccs.c
>  create mode 100644 drivers/gpu/drm/xe/xe_sriov_vf_ccs.h
>  create mode 100644 drivers/gpu/drm/xe/xe_sriov_vf_ccs_types.h
> 
> diff --git a/drivers/gpu/drm/xe/Makefile b/drivers/gpu/drm/xe/Makefile
> index f5f5775acdc0..3b5241937742 100644
> --- a/drivers/gpu/drm/xe/Makefile
> +++ b/drivers/gpu/drm/xe/Makefile
> @@ -140,6 +140,7 @@ xe-y += \
>  	xe_memirq.o \
>  	xe_sriov.o \
>  	xe_sriov_vf.o \
> +	xe_sriov_vf_ccs.o \
>  	xe_tile_sriov_vf.o
>  
>  xe-$(CONFIG_PCI_IOV) += \
> diff --git a/drivers/gpu/drm/xe/xe_device.c b/drivers/gpu/drm/xe/xe_device.c
> index 660b0c5126dc..bf96045770c7 100644
> --- a/drivers/gpu/drm/xe/xe_device.c
> +++ b/drivers/gpu/drm/xe/xe_device.c
> @@ -925,6 +925,10 @@ int xe_device_probe(struct xe_device *xe)
>  
>  	xe_vsec_init(xe);
>  
> +	err = xe_sriov_late_init(xe);
> +	if (err)
> +		goto err_unregister_display;
> +
>  	return devm_add_action_or_reset(xe->drm.dev, xe_device_sanitize, xe);
>  
>  err_unregister_display:
> diff --git a/drivers/gpu/drm/xe/xe_device_types.h b/drivers/gpu/drm/xe/xe_device_types.h
> index ac27389ccb8b..caf3bb1ef048 100644
> --- a/drivers/gpu/drm/xe/xe_device_types.h
> +++ b/drivers/gpu/drm/xe/xe_device_types.h
> @@ -22,6 +22,7 @@
>  #include "xe_pmu_types.h"
>  #include "xe_pt_types.h"
>  #include "xe_sriov_types.h"
> +#include "xe_sriov_vf_ccs_types.h"
>  #include "xe_step_types.h"
>  #include "xe_survivability_mode_types.h"
>  #include "xe_ttm_vram_mgr_types.h"
> @@ -234,6 +235,9 @@ struct xe_tile {
>  		struct {
>  			/** @sriov.vf.ggtt_balloon: GGTT regions excluded from use. */
>  			struct xe_ggtt_node *ggtt_balloon[2];
> +
> +			/** @sriov.vf.ccs: CCS read and write contexts for VF. */
> +			struct xe_tile_vf_ccs ccs[XE_SRIOV_VF_CCS_RW_MAX_CTXS];
>  		} vf;
>  	} sriov;
>  
> diff --git a/drivers/gpu/drm/xe/xe_gt_debugfs.c b/drivers/gpu/drm/xe/xe_gt_debugfs.c
> index 848618acdca8..2c6d757db810 100644
> --- a/drivers/gpu/drm/xe/xe_gt_debugfs.c
> +++ b/drivers/gpu/drm/xe/xe_gt_debugfs.c
> @@ -134,6 +134,30 @@ static int sa_info(struct xe_gt *gt, struct drm_printer *p)
>  	return 0;
>  }
>  
> +static int sa_info_vf_ccs(struct xe_gt *gt, struct drm_printer *p)
> +{
> +	struct xe_tile *tile = gt_to_tile(gt);
> +	struct xe_sa_manager *bb_pool;
> +	int ctx_id;
> +
> +	if (!IS_VF_CCS_READY(gt_to_xe(gt)))
> +		return 0;
> +
> +	xe_pm_runtime_get(gt_to_xe(gt));
> +
> +	for_each_ccs_rw_ctx(ctx_id) {
> +		drm_printf(p, "ccs %s bb suballoc info\n", ctx_id ? "write" : "read");
> +		drm_printf(p, "-------------------------\n");
> +		bb_pool = tile->sriov.vf.ccs[ctx_id].mem.ccs_bb_pool;
> +		drm_suballoc_dump_debug_info(&bb_pool->base, p, bb_pool->gpu_addr);
> +		drm_puts(p, "\n");
> +	}
> +
> +	xe_pm_runtime_put(gt_to_xe(gt));
> +
> +	return 0;
> +}
> +
>  static int topology(struct xe_gt *gt, struct drm_printer *p)
>  {
>  	xe_pm_runtime_get(gt_to_xe(gt));
> @@ -303,6 +327,13 @@ static const struct drm_info_list vf_safe_debugfs_list[] = {
>  	{"hwconfig", .show = xe_gt_debugfs_simple_show, .data = hwconfig},
>  };
>  
> +/*
> + * only for GT debugfs files which are valid on VF. Not valid on PF.
> + */
> +static const struct drm_info_list vf_only_debugfs_list[] = {
> +	{"sa_info_vf_ccs", .show = xe_gt_debugfs_simple_show, .data = sa_info_vf_ccs},
> +};
> +
>  /* everything else should be added here */
>  static const struct drm_info_list pf_only_debugfs_list[] = {
>  	{"hw_engines", .show = xe_gt_debugfs_simple_show, .data = hw_engines},
> @@ -419,6 +450,11 @@ void xe_gt_debugfs_register(struct xe_gt *gt)
>  		drm_debugfs_create_files(pf_only_debugfs_list,
>  					 ARRAY_SIZE(pf_only_debugfs_list),
>  					 root, minor);
> +	else
> +		drm_debugfs_create_files(vf_only_debugfs_list,
> +					 ARRAY_SIZE(vf_only_debugfs_list),
> +					 root, minor);
> +
>  
>  	xe_uc_debugfs_register(&gt->uc, root);
>  
> diff --git a/drivers/gpu/drm/xe/xe_sriov.c b/drivers/gpu/drm/xe/xe_sriov.c
> index a0eab44c0e76..87911fb4eea7 100644
> --- a/drivers/gpu/drm/xe/xe_sriov.c
> +++ b/drivers/gpu/drm/xe/xe_sriov.c
> @@ -15,6 +15,7 @@
>  #include "xe_sriov.h"
>  #include "xe_sriov_pf.h"
>  #include "xe_sriov_vf.h"
> +#include "xe_sriov_vf_ccs.h"
>  
>  /**
>   * xe_sriov_mode_to_string - Convert enum value to string.
> @@ -157,3 +158,21 @@ const char *xe_sriov_function_name(unsigned int n, char *buf, size_t size)
>  		strscpy(buf, "PF", size);
>  	return buf;
>  }
> +
> +/**
> + * xe_sriov_late_init() - SR-IOV late initialization functions.
> + * @xe: the &xe_device to initialize
> + *
> + * On VF this function will initialize code for CCS migration.
> + *
> + * Return: 0 on success or a negative error code on failure.
> + */
> +int xe_sriov_late_init(struct xe_device *xe)
> +{
> +	int err = 0;
> +
> +	if (IS_VF_CCS_INIT_NEEDED(xe))
> +		err = xe_sriov_vf_ccs_init(xe);
> +
> +	return err;
> +}
> diff --git a/drivers/gpu/drm/xe/xe_sriov.h b/drivers/gpu/drm/xe/xe_sriov.h
> index 688fbabf08f1..0e0c1abf2d14 100644
> --- a/drivers/gpu/drm/xe/xe_sriov.h
> +++ b/drivers/gpu/drm/xe/xe_sriov.h
> @@ -18,6 +18,7 @@ const char *xe_sriov_function_name(unsigned int n, char *buf, size_t len);
>  void xe_sriov_probe_early(struct xe_device *xe);
>  void xe_sriov_print_info(struct xe_device *xe, struct drm_printer *p);
>  int xe_sriov_init(struct xe_device *xe);
> +int xe_sriov_late_init(struct xe_device *xe);
>  
>  static inline enum xe_sriov_mode xe_device_sriov_mode(const struct xe_device *xe)
>  {
> diff --git a/drivers/gpu/drm/xe/xe_sriov_types.h b/drivers/gpu/drm/xe/xe_sriov_types.h
> index ca94382a721e..8abfdb2c5ead 100644
> --- a/drivers/gpu/drm/xe/xe_sriov_types.h
> +++ b/drivers/gpu/drm/xe/xe_sriov_types.h
> @@ -71,6 +71,11 @@ struct xe_device_vf {
>  		/** @migration.gt_flags: Per-GT request flags for VF migration recovery */
>  		unsigned long gt_flags;
>  	} migration;
> +
> +	struct {
> +		/** @initialized: Initilalization of vf ccs is completed or not */
> +		bool initialized;
> +	} ccs;
>  };
>  
>  #endif
> diff --git a/drivers/gpu/drm/xe/xe_sriov_vf_ccs.c b/drivers/gpu/drm/xe/xe_sriov_vf_ccs.c
> new file mode 100644
> index 000000000000..41fe1f59e0e9
> --- /dev/null
> +++ b/drivers/gpu/drm/xe/xe_sriov_vf_ccs.c
> @@ -0,0 +1,186 @@
> +// SPDX-License-Identifier: MIT
> +/*
> + * Copyright © 2025 Intel Corporation
> + */
> +
> +#include "instructions/xe_mi_commands.h"
> +#include "instructions/xe_gpu_commands.h"
> +#include "xe_bo.h"
> +#include "xe_device.h"
> +#include "xe_migrate.h"
> +#include "xe_sa.h"
> +#include "xe_sriov_printk.h"
> +#include "xe_sriov_vf_ccs.h"
> +#include "xe_sriov_vf_ccs_types.h"
> +
> +/**
> + * DOC: VF save/restore of compression Meta Data
> + *
> + * VF KMD registers two special contexts/LRCAs.
> + *
> + * Save Context/LRCA: contain necessary cmds+page table to trigger Meta data /
> + * compression control surface (Aka CCS) save in regular System memory in VM.
> + *
> + * Restore Context/LRCA: contain necessary cmds+page table to trigger Meta data /
> + * compression control surface (Aka CCS) Restore from regular System memory in
> + * VM to corresponding CCS pool.
> + *
> + * Below diagram explain steps needed for VF save/Restore of compression Meta
> + * Data::

nit: this last word likely can be part of prev line

> + *
> + *    CCS Save    CCS Restore          VF KMD                          Guc       BCS
> + *     LRCA        LRCA
> + *      |           |                     |                              |         |
> + *      |           |                     |                              |         |
> + *      |     Create Save LRCA            |                              |         |
> + *     [ ]<----------------------------- [ ]                             |         |
> + *      |           |                     |                              |         |
> + *      |           |                     |                              |         |
> + *      |           |                     |   Register LRCA with Guc     |         |
> + *      |           |                    [ ]--------------------------->[ ]        |
> + *      |           |                     |                              |         |
> + *      |           |                     |                              |         |
> + *      |           | Create restore LRCA |                              |         |
> + *      |          [ ]<------------------[ ]                             |         |

don't we need to register in GuC this 'restore' LRCA ?

> + *      |           |                     |                              |         |
> + *      |           |                     |                              |         |
> + *      |           |                    [ ]-----------------------      |         |
> + *      |           |                    [ ]  Allocate main memory |     |         |
> + *      |           |                    [ ]  Allocate CCS memory  |     |         |
> + *      |           |                    [ ]<----------------------      |         |
> + *      |           |                     |                              |         |
> + *      |           |                     |                              |         |
> + *      | Update Main memory & CCS pages  |                              |         |
> + *      |   PPGTT + BB cmds to save       |                              |         |
> + *     [ ]<------------------------------[ ]                             |         |
> + *      |           |                     |                              |         |
> + *      |           |                     |                              |         |
> + *      |           | Update Main memory  |                              |         |
> + *      |           | & CCS pages PPGTT + |                              |         |
> + *      |           | BB cms to restore   |                              |         |

typo: cms

> + *      |          [ ]<------------------[ ]                             |         |

those above updates are happening as part of BO allocations sequence,
likely depicted as above 'allocate' box - so shouldn't it be drawn as such?

> + *      |           |                     |                              |         |
> + *      |           |                     |                              |         |
> + *      |           |                   VF Pause                         |         |

this is out of VF control, so maybe

           :           :                                            :
       ------------------------  VF Paused -----------------------------


> + *      |           |                     |                              |Schedule |
> + *      |           |                     |                              |CCS Save |
> + *      |           |                     |                              | LRCA    |
> + *      |           |                     |                             [ ]------>[ ]

shouldn't we also have arrow from HW to save-LRCA?

> + *      |           |                     |                              |         |
> + *      |           |                     |                              |         |
> + *      |           |                   VF Restore                       |         |

and

       ------------------------  VF Resumed ---------------------------
           :           :                                            :


> + *      |           |                     |                              |         |
> + *      |           |                     |                              |         |
> + *      |           |                    [ ]--------------               |         |
> + *      |           |                    [ ] Fix up GGTT  |              |         |
> + *      |           |                    [ ]<-------------               |         |

what about showing RESFIX_DONE notification to GuC here ?

> + *      |           |                     |                              |         |
> + *      |           |                     |                              |         |
> + *      |           |                     |                              |Schedule |
> + *      |           |                     |                              |CCS      |
> + *      |           |                     |                              |Restore  |
> + *      |           |                     |                              |LRCA     |
> + *      |           |                     |                             [ ]------>[ ]

shouldn't we also have arrow from HW to restore-LRCA?

> + *      |           |                     |                              |         |
> + *      |           |                     |                              |         |

btw, I assume this 'restore' job is happening as part of the RESFIX_DONE
message processing so return arrow will fit here as well

> + *
> + */
> +
> +static u64 get_ccs_bb_pool_size(struct xe_device *xe)
> +{
> +	u64 sys_mem_size, ccs_mem_size, ptes, bb_pool_size;
> +	struct sysinfo si;
> +
> +	si_meminfo(&si);
> +	sys_mem_size = si.totalram * si.mem_unit;
> +	ccs_mem_size = sys_mem_size / NUM_BYTES_PER_CCS_BYTE(xe);
> +	ptes = DIV_ROUND_UP(sys_mem_size + ccs_mem_size, XE_PAGE_SIZE);
> +
> +	/**
> +	 * We need below BB size to hold PTE mappings and some DWs for copy
> +	 * command. In reality, we need space for many copy commands. So, let
> +	 * us allocate double the calculated size which is enough to holds GPU
> +	 * instructions for the whole region.
> +	 */
> +	bb_pool_size = ptes * sizeof(u32);
> +
> +	return round_up(bb_pool_size * 2, SZ_1M);
> +}
> +
> +static int alloc_bb_pool(struct xe_tile *tile, struct xe_tile_vf_ccs *ctx)
> +{
> +	struct xe_device *xe = tile_to_xe(tile);
> +	struct xe_sa_manager *sa_manager;
> +	u64 bb_pool_size;
> +	int offset, err;
> +
> +	bb_pool_size = get_ccs_bb_pool_size(xe);
> +	xe_sriov_info(xe, "Allocating %s CCS BB pool size = %lldMB\n",
> +		      ctx->id ? "Restore" : "Save", bb_pool_size / SZ_1M);
> +
> +	sa_manager = xe_sa_bo_manager_init(tile, bb_pool_size, SZ_16);
> +
> +	if (IS_ERR(sa_manager)) {
> +		xe_sriov_err(xe, "Suballocator init failed with error: %pe\n",
> +			     sa_manager);
> +		err = PTR_ERR(sa_manager);
> +		return err;
> +	}
> +
> +	offset = 0;
> +	xe_map_memset(xe, &sa_manager->bo->vmap, offset, MI_NOOP,
> +		      bb_pool_size);
> +
> +	offset = bb_pool_size - sizeof(u32);
> +	xe_map_wr(xe, &sa_manager->bo->vmap, offset, u32, MI_BATCH_BUFFER_END);
> +
> +	ctx->mem.ccs_bb_pool = sa_manager;
> +
> +	return 0;
> +}
> +
> +/**
> + * xe_sriov_vf_ccs_init - Setup LRCA for save & restore.
> + * @xe: the &xe_device to start recovery on
> + *
> + * This function shall be called only by VF. It initializes
> + * LRCA and suballocator needed for CCS save & restore.
> + *
> + * Return: 0 on success. Negative error code on failure.
> + */
> +int xe_sriov_vf_ccs_init(struct xe_device *xe)
> +{
> +	struct xe_migrate *migrate;
> +	struct xe_tile_vf_ccs *ctx;
> +	struct xe_tile *tile;
> +	int tile_id, ctx_id;
> +	int err = 0;
> +
> +	xe_assert(xe, (IS_SRIOV_VF(xe) || !IS_DGFX(xe) ||
> +		       xe_device_has_flat_ccs(xe)));

make it as 3x separate asserts to clearly see which one will eventually
fire (and to make then logical AND condition)

> +
> +	for_each_tile(tile, xe, tile_id) {
> +		for_each_ccs_rw_ctx(ctx_id) {
> +			ctx = &tile->sriov.vf.ccs[ctx_id];
> +			ctx->id = ctx_id;
> +
> +			migrate = xe_migrate_init(tile);
> +			if (IS_ERR(migrate)) {
> +				err = PTR_ERR(migrate);
> +				goto err_ret;
> +			}
> +			ctx->migrate = migrate;
> +
> +			err = alloc_bb_pool(tile, ctx);
> +			if (err)
> +				goto err_ret;
> +		}
> +	}
> +
> +	xe->sriov.vf.ccs.initialized = 1;
> +
> +	return 0;
> +
> +err_ret:
> +	return err;
> +}
> diff --git a/drivers/gpu/drm/xe/xe_sriov_vf_ccs.h b/drivers/gpu/drm/xe/xe_sriov_vf_ccs.h
> new file mode 100644
> index 000000000000..5df9ba028d14
> --- /dev/null
> +++ b/drivers/gpu/drm/xe/xe_sriov_vf_ccs.h
> @@ -0,0 +1,13 @@
> +/* SPDX-License-Identifier: MIT */
> +/*
> + * Copyright © 2025 Intel Corporation
> + */
> +
> +#ifndef _XE_SRIOV_VF_CCS_H_
> +#define _XE_SRIOV_VF_CCS_H_
> +
> +struct xe_device;
> +
> +int xe_sriov_vf_ccs_init(struct xe_device *xe);
> +
> +#endif
> diff --git a/drivers/gpu/drm/xe/xe_sriov_vf_ccs_types.h b/drivers/gpu/drm/xe/xe_sriov_vf_ccs_types.h
> new file mode 100644
> index 000000000000..f67f002c7a96
> --- /dev/null
> +++ b/drivers/gpu/drm/xe/xe_sriov_vf_ccs_types.h
> @@ -0,0 +1,46 @@
> +/* SPDX-License-Identifier: MIT */
> +/*
> + * Copyright © 2022-2023 Intel Corporation

2025

> + */
> +
> +#ifndef _XE_SRIOV_VF_CCS__TYPES_H_
> +#define _XE_SRIOV_VF_CCS__TYPES_H_

_XE_SRIOV_VF_CCS_TYPES_H_

> +
> +#define for_each_ccs_rw_ctx(id__) \
> +	for ((id__) = 0; (id__) < XE_SRIOV_VF_CCS_RW_MAX_CTXS; (id__)++)
> +
> +#define IS_VF_CCS_READY(xe) ({ \
> +		struct xe_device *___xe = (xe); \
> +		xe_assert(___xe, IS_SRIOV_VF(___xe)); \
> +		___xe->sriov.vf.ccs.initialized; \
> +		})
> +
> +#define IS_VF_CCS_INIT_NEEDED(xe) ({\
> +		struct xe_device *___xe = (xe); \
> +		IS_SRIOV_VF(___xe) && !IS_DGFX(___xe) && \
> +		xe_device_has_flat_ccs(___xe) && GRAPHICS_VER(___xe) >= 20; \
> +		})
> +
> +enum xe_sriov_vf_ccs_rw_ctxs {
> +	XE_SRIOV_VF_CCS_RW_MIN_CTXS = 0,
> +	XE_SRIOV_VF_CCS_READ_CTX = XE_SRIOV_VF_CCS_RW_MIN_CTXS,
> +	XE_SRIOV_VF_CCS_WRITE_CTX,
> +	XE_SRIOV_VF_CCS_RW_MAX_CTXS

if we need just READ and WRITE then maybe we can use existing
definitions from <linux/kernel.h>

> +};
> +
> +struct xe_migrate;
> +struct xe_sa_manager;
> +
> +struct xe_tile_vf_ccs {
> +	/** @id: Id to which context it belongs to */

did you mean GuC context id here?
if yes then maybe name it as guc_id as done elsewhere?

> +	int id;
> +	/** @migrate: Migration helper for save/restore of CCS data */
> +	struct xe_migrate *migrate;
> +
> +	struct {
> +		/** @ccs_rw_bb_pool: Pool from which batch buffers are allocated. */
> +		struct xe_sa_manager *ccs_bb_pool;
> +	} mem;
> +};
> +
> +#endif


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

* Re: [PATCH v6 2/3] drm/xe/vf: Attach and detach CCS copy commands with BO
  2025-06-09 12:00     ` K V P, Satyanarayana
@ 2025-06-09 16:06       ` Matthew Brost
  2025-06-16 14:57         ` K V P, Satyanarayana
  0 siblings, 1 reply; 23+ messages in thread
From: Matthew Brost @ 2025-06-09 16:06 UTC (permalink / raw)
  To: K V P, Satyanarayana
  Cc: intel-xe@lists.freedesktop.org, Wajdeczko, Michal,
	Winiarski, Michal, Lis, Tomasz, Auld, Matthew

On Mon, Jun 09, 2025 at 06:00:40AM -0600, K V P, Satyanarayana wrote:
> Hi.
> > -----Original Message-----
> > From: Brost, Matthew <matthew.brost@intel.com>
> > Sent: Friday, June 6, 2025 11:08 PM
> > To: K V P, Satyanarayana <satyanarayana.k.v.p@intel.com>
> > Cc: intel-xe@lists.freedesktop.org; Wajdeczko, Michal
> > <Michal.Wajdeczko@intel.com>; Winiarski, Michal
> > <michal.winiarski@intel.com>; Lis, Tomasz <tomasz.lis@intel.com>; Auld,
> > Matthew <matthew.auld@intel.com>
> > Subject: Re: [PATCH v6 2/3] drm/xe/vf: Attach and detach CCS copy
> > commands with BO
> > 
> > On Fri, Jun 06, 2025 at 06:15:57PM +0530, Satyanarayana K V P wrote:
> > > Attach CCS read/write copy commands to BO for old and new mem types as
> > > NULL -> tt or system -> tt.
> > > Detach the CCS read/write copy commands from BO while deleting ttm bo
> > > from xe_ttm_bo_delete_mem_notify().
> > >
> > > Signed-off-by: Satyanarayana K V P <satyanarayana.k.v.p@intel.com>
> > > ---
> > > Cc: Michal Wajdeczko <michal.wajdeczko@intel.com>
> > > Cc: Michał Winiarski <michal.winiarski@intel.com>
> > > Cc: Tomasz Lis <tomasz.lis@intel.com>
> > > Cc: Matthew Brost <matthew.brost@intel.com>
> > > Cc: Matthew Auld <matthew.auld@intel.com>
> > >
> > > V5 -> V6:
> > > - Removed dead code from xe_migrate_ccs_rw_copy() function. (Matthew
> > Brost)
> > >
> > > V4 -> V5:
> > > - Create a list of BBs for the given BO and fixed memory leak while
> > >   detaching BOs. (Matthew Brost).
> > 
> > I'd still personally prefer a single BB per BO rather than having a
> > list. Unless I'm missing something, I think that would work and would be
> > cleaner. Any particular reason you went with a list of BB over a single
> > BB?
> > 
> If the provided size is more than max_mem_transfer_per_pass(), then the copy is divided into chunks.
> The max_mem_transfer_per_pass = MAX_CCS_LIMITED_TRANSFER = 4MB.

The only reason max_mem_transfer_per_pass() exists is so the migration
queue issues jobs that run in a reasonable amount of time and engine
which the queue runs on can be safely shared without migration queue
hogging the timeslices or in worst case getting a preemption timeout
causing a queue reset.

Do the save / restore queues get timesliced once execution starts? I
suspect not but you should follow up with the arch / GuC team on this.
Also you'd need to insert explict preemption points into the BBs if this
is a concern which this series is not doing.

> For buffer sizes bigger than 4MB, we get more BBs and so, created a list to track and free them.
> The Head of the list is stored in the BO, and list is parsed only when more BBs are available in the list.
> For 98% of the cases, only one BB was allocated when checked with 3D benchmark.

I understand what the code is doing - I'm asking for a justification of
using a list vs. a single BB allocation, see above.

If save / restore queues do not get timesliced, then refactor the code
for one BB per BO, IMO much cleaner.

If save / restore queues do get timesliced, then you need add explict
preemption points (MI_ARB_CHECK instruction) into each BB after each
copy.

Matt

> -Satya.
> > > - Fixed review comments (Matthew Brost & Matthew Auld).
> > > - Yet to cleanup xe_migrate_ccs_rw_copy() function.
> > >
> > > V3 -> V4:
> > > - Fixed issues reported by patchworks.
> > >
> > > V2 -> V3:
> > > - Attach and detach functions check for IS_VF_CCS_READY().
> > >
> > > V1 -> V2:
> > > - Fixed review comments.
> > > ---
> > >  drivers/gpu/drm/xe/xe_bb.c                 | 34 ++++++++
> > >  drivers/gpu/drm/xe/xe_bb.h                 |  3 +
> > >  drivers/gpu/drm/xe/xe_bb_types.h           |  1 +
> > >  drivers/gpu/drm/xe/xe_bo.c                 | 23 +++++
> > >  drivers/gpu/drm/xe/xe_bo_types.h           |  3 +
> > >  drivers/gpu/drm/xe/xe_migrate.c            | 98 ++++++++++++++++++++++
> > >  drivers/gpu/drm/xe/xe_migrate.h            |  4 +
> > >  drivers/gpu/drm/xe/xe_sriov_vf_ccs.c       | 77 +++++++++++++++++
> > >  drivers/gpu/drm/xe/xe_sriov_vf_ccs.h       |  3 +
> > >  drivers/gpu/drm/xe/xe_sriov_vf_ccs_types.h |  8 ++
> > >  10 files changed, 254 insertions(+)
> > >
> > > diff --git a/drivers/gpu/drm/xe/xe_bb.c b/drivers/gpu/drm/xe/xe_bb.c
> > > index 9570672fce33..ee31556e00bc 100644
> > > --- a/drivers/gpu/drm/xe/xe_bb.c
> > > +++ b/drivers/gpu/drm/xe/xe_bb.c
> > > @@ -60,6 +60,40 @@ struct xe_bb *xe_bb_new(struct xe_gt *gt, u32
> > dwords, bool usm)
> > >  	return ERR_PTR(err);
> > >  }
> > >
> > > +struct xe_bb *xe_bb_ccs_new(struct xe_gt *gt, u32 dwords,
> > > +			    enum xe_sriov_vf_ccs_rw_ctxs ctx_id)
> > > +{
> > > +	struct xe_bb *bb = kmalloc(sizeof(*bb), GFP_KERNEL);
> > > +	struct xe_tile *tile = gt_to_tile(gt);
> > > +	struct xe_sa_manager *bb_pool;
> > > +	int err;
> > > +
> > > +	if (!bb)
> > > +		return ERR_PTR(-ENOMEM);
> > > +
> > > +	/*
> > > +	 * We need to allocate space for the requested number of dwords,
> > > +	 * one additional MI_BATCH_BUFFER_END dword, and additional
> > buffer
> > > +	 * space to accommodate the platform-specific hardware prefetch
> > > +	 * requirements.
> > > +	 */
> > > +	bb_pool = tile->sriov.vf.ccs[ctx_id].mem.ccs_bb_pool;
> > > +	bb->bo = xe_sa_bo_new(bb_pool, 4 * (dwords + 1) +
> > bb_prefetch(gt));
> > > +
> > > +	if (IS_ERR(bb->bo)) {
> > > +		err = PTR_ERR(bb->bo);
> > > +		goto err;
> > > +	}
> > > +
> > > +	bb->cs = xe_sa_bo_cpu_addr(bb->bo);
> > > +	bb->len = 0;
> > > +
> > > +	return bb;
> > > +err:
> > > +	kfree(bb);
> > > +	return ERR_PTR(err);
> > > +}
> > > +
> > >  static struct xe_sched_job *
> > >  __xe_bb_create_job(struct xe_exec_queue *q, struct xe_bb *bb, u64 *addr)
> > >  {
> > > diff --git a/drivers/gpu/drm/xe/xe_bb.h b/drivers/gpu/drm/xe/xe_bb.h
> > > index fafacd73dcc3..32c9c4c5d2be 100644
> > > --- a/drivers/gpu/drm/xe/xe_bb.h
> > > +++ b/drivers/gpu/drm/xe/xe_bb.h
> > > @@ -13,8 +13,11 @@ struct dma_fence;
> > >  struct xe_gt;
> > >  struct xe_exec_queue;
> > >  struct xe_sched_job;
> > > +enum xe_sriov_vf_ccs_rw_ctxs;
> > >
> > >  struct xe_bb *xe_bb_new(struct xe_gt *gt, u32 size, bool usm);
> > > +struct xe_bb *xe_bb_ccs_new(struct xe_gt *gt, u32 dwords,
> > > +			    enum xe_sriov_vf_ccs_rw_ctxs ctx_id);
> > >  struct xe_sched_job *xe_bb_create_job(struct xe_exec_queue *q,
> > >  				      struct xe_bb *bb);
> > >  struct xe_sched_job *xe_bb_create_migration_job(struct xe_exec_queue
> > *q,
> > > diff --git a/drivers/gpu/drm/xe/xe_bb_types.h
> > b/drivers/gpu/drm/xe/xe_bb_types.h
> > > index b7d30308cf90..b2358cc051ff 100644
> > > --- a/drivers/gpu/drm/xe/xe_bb_types.h
> > > +++ b/drivers/gpu/drm/xe/xe_bb_types.h
> > > @@ -12,6 +12,7 @@ struct drm_suballoc;
> > >
> > >  struct xe_bb {
> > >  	struct drm_suballoc *bo;
> > > +	struct list_head list;
> > >
> > >  	u32 *cs;
> > >  	u32 len; /* in dwords */
> > > diff --git a/drivers/gpu/drm/xe/xe_bo.c b/drivers/gpu/drm/xe/xe_bo.c
> > > index 61d208c85281..b2ed5a36ab3d 100644
> > > --- a/drivers/gpu/drm/xe/xe_bo.c
> > > +++ b/drivers/gpu/drm/xe/xe_bo.c
> > > @@ -31,6 +31,7 @@
> > >  #include "xe_pxp.h"
> > >  #include "xe_res_cursor.h"
> > >  #include "xe_shrinker.h"
> > > +#include "xe_sriov_vf_ccs.h"
> > >  #include "xe_trace_bo.h"
> > >  #include "xe_ttm_stolen_mgr.h"
> > >  #include "xe_vm.h"
> > > @@ -948,6 +949,20 @@ static int xe_bo_move(struct ttm_buffer_object
> > *ttm_bo, bool evict,
> > >  	dma_fence_put(fence);
> > >  	xe_pm_runtime_put(xe);
> > >
> > > +	/*
> > > +	 * CCS meta data is migrated from TT -> SMEM. So, let us detach the
> > > +	 * BBs from BO as it is no longer needed.
> > > +	 */
> > > +	if (IS_VF_CCS_BB_VALID(xe, bo) && old_mem_type == XE_PL_TT &&
> > > +	    new_mem->mem_type == XE_PL_SYSTEM)
> > > +		xe_sriov_vf_ccs_detach_bo(bo);
> > > +
> > > +	if (IS_SRIOV_VF(xe) &&
> > > +	    ((move_lacks_source && new_mem->mem_type == XE_PL_TT) ||
> > > +	     (old_mem_type == XE_PL_SYSTEM && new_mem->mem_type ==
> > XE_PL_TT)) &&
> > > +	    handle_system_ccs)
> > > +		ret = xe_sriov_vf_ccs_attach_bo(bo);
> > > +
> > >  out:
> > >  	if ((!ttm_bo->resource || ttm_bo->resource->mem_type ==
> > XE_PL_SYSTEM) &&
> > >  	    ttm_bo->ttm) {
> > > @@ -958,6 +973,9 @@ static int xe_bo_move(struct ttm_buffer_object
> > *ttm_bo, bool evict,
> > >  		if (timeout < 0)
> > >  			ret = timeout;
> > >
> > > +		if (IS_VF_CCS_BB_VALID(xe, bo))
> > > +			xe_sriov_vf_ccs_detach_bo(bo);
> > > +
> > >  		xe_tt_unmap_sg(ttm_bo->ttm);
> > >  	}
> > >
> > > @@ -1482,9 +1500,14 @@ static void xe_ttm_bo_release_notify(struct
> > ttm_buffer_object *ttm_bo)
> > >
> > >  static void xe_ttm_bo_delete_mem_notify(struct ttm_buffer_object
> > *ttm_bo)
> > >  {
> > > +	struct xe_bo *bo = ttm_to_xe_bo(ttm_bo);
> > > +
> > >  	if (!xe_bo_is_xe_bo(ttm_bo))
> > >  		return;
> > >
> > > +	if (IS_VF_CCS_BB_VALID(ttm_to_xe_device(ttm_bo->bdev), bo))
> > > +		xe_sriov_vf_ccs_detach_bo(bo);
> > > +
> > >  	/*
> > >  	 * Object is idle and about to be destroyed. Release the
> > >  	 * dma-buf attachment.
> > > diff --git a/drivers/gpu/drm/xe/xe_bo_types.h
> > b/drivers/gpu/drm/xe/xe_bo_types.h
> > > index eb5e83c5f233..481b8e0d8ab1 100644
> > > --- a/drivers/gpu/drm/xe/xe_bo_types.h
> > > +++ b/drivers/gpu/drm/xe/xe_bo_types.h
> > > @@ -78,6 +78,9 @@ struct xe_bo {
> > >  	/** @ccs_cleared */
> > >  	bool ccs_cleared;
> > >
> > > +	/** @bb_ccs_rw: BB instructions of CCS read/write. Valid only for VF
> > */
> > > +	struct xe_bb *bb_ccs[XE_SRIOV_VF_CCS_RW_MAX_CTXS];
> > > +
> > >  	/**
> > >  	 * @cpu_caching: CPU caching mode. Currently only used for
> > userspace
> > >  	 * objects. Exceptions are system memory on DGFX, which is always
> > > diff --git a/drivers/gpu/drm/xe/xe_migrate.c
> > b/drivers/gpu/drm/xe/xe_migrate.c
> > > index 8f8e9fdfb2a8..d7f3009260ee 100644
> > > --- a/drivers/gpu/drm/xe/xe_migrate.c
> > > +++ b/drivers/gpu/drm/xe/xe_migrate.c
> > > @@ -940,6 +940,104 @@ struct dma_fence *xe_migrate_copy(struct
> > xe_migrate *m,
> > >  	return fence;
> > >  }
> > >
> > > +/**
> > > + * xe_migrate_ccs_rw_copy() - Copy content of TTM resources.
> > > + * @m: The migration context.
> > > + * @src_bo: The buffer object @src is currently bound to.
> > > + * @read_write : Creates BB commands for CCS read/write.
> > > + *
> > > + * Creates batch buffer instructions to copy CCS metadata from CCS pool to
> > > + * memory and vice versa.
> > > + *
> > > + * This function should only be called for IGPU.
> > > + *
> > > + * Return: 0 if successful, negative error code on failure.
> > > + */
> > > +int xe_migrate_ccs_rw_copy(struct xe_migrate *m,
> > > +			   struct xe_bo *src_bo,
> > > +			   int read_write)
> > 
> > s/int read_write/enum xe_sriov_vf_ccs_rw_ctxs
> > 
> > > +
> > > +{
> > > +	bool src_is_pltt = read_write == XE_SRIOV_VF_CCS_WRITE_CTX;
> > > +	bool dst_is_pltt = read_write == XE_SRIOV_VF_CCS_READ_CTX;
> > > +	struct ttm_resource *src = src_bo->ttm.resource;
> > > +	struct xe_gt *gt = m->tile->primary_gt;
> > > +	struct xe_device *xe = gt_to_xe(gt);
> > > +	struct xe_res_cursor src_it, ccs_it;
> > > +	u64 size = src_bo->size;
> > > +	u64 src_L0, src_L0_ofs;
> > > +	u32 src_L0_pt;
> > > +	int err;
> > > +
> > > +	xe_res_first_sg(xe_bo_sg(src_bo), 0, size, &src_it);
> > > +
> > > +	xe_res_first_sg(xe_bo_sg(src_bo), xe_bo_ccs_pages_start(src_bo),
> > > +			PAGE_ALIGN(xe_device_ccs_bytes(xe, size)),
> > > +			&ccs_it);
> > > +
> > > +	while (size) {
> > > +		u32 batch_size = 8; /* arb_clear() + MI_BATCH_BUFFER_END +
> > Flush + NOP */
> > > +		struct xe_bb *bb;
> > > +		u32 flush_flags = 0;
> > > +		u64 ccs_ofs, ccs_size;
> > > +		u32 ccs_pt;
> > > +
> > > +		u32 avail_pts = max_mem_transfer_per_pass(xe) /
> > LEVEL0_PAGE_TABLE_ENCODE_SIZE;
> > > +
> > > +		src_L0 = xe_migrate_res_sizes(m, &src_it);
> > > +
> > > +		batch_size += pte_update_size(m, false, src, &src_it, &src_L0,
> > > +					      &src_L0_ofs, &src_L0_pt, 0, 0,
> > > +					      avail_pts);
> > > +
> > > +		ccs_size = xe_device_ccs_bytes(xe, src_L0);
> > > +		batch_size += pte_update_size(m, 0, NULL, &ccs_it, &ccs_size,
> > &ccs_ofs,
> > > +					      &ccs_pt, 0, avail_pts, avail_pts);
> > > +		xe_assert(xe, IS_ALIGNED(ccs_it.start, PAGE_SIZE));
> > > +
> > > +		/* Add copy commands size here */
> > > +		batch_size += EMIT_COPY_CCS_DW;
> > > +
> > > +		bb = xe_bb_ccs_new(gt, batch_size, read_write);
> > > +		if (IS_ERR(bb)) {
> > > +			drm_dbg(&xe->drm, "BB allocation failed.\n");
> > 
> > s/drm_dbg/xe_sriov_err - I think.
> > 
> > > +			err = PTR_ERR(bb);
> > > +			goto err_ret;
> > > +		}
> > > +
> > > +		emit_pte(m, bb, src_L0_pt, false, true, &src_it, src_L0, src);
> > > +
> > > +		emit_pte(m, bb, ccs_pt, false, false, &ccs_it, ccs_size, src);
> > > +
> > > +		bb->cs[bb->len++] = MI_FLUSH_DW | MI_INVALIDATE_TLB |
> > MI_FLUSH_DW_OP_STOREDW |
> > > +					MI_FLUSH_IMM_DW;
> > > +		bb->cs[bb->len++] = MI_NOOP;
> > > +		bb->cs[bb->len++] = MI_NOOP;
> > > +
> > > +		flush_flags = xe_migrate_ccs_copy(m, bb, src_L0_ofs,
> > src_is_pltt,
> > > +						  src_L0_ofs, dst_is_pltt,
> > > +						  src_L0, ccs_ofs, true);
> > > +
> > > +		bb->cs[bb->len++] = MI_FLUSH_DW | MI_INVALIDATE_TLB |
> > MI_FLUSH_DW_OP_STOREDW |
> > > +					MI_FLUSH_IMM_DW | flush_flags;
> > > +		bb->cs[bb->len++] = MI_NOOP;
> > > +		bb->cs[bb->len++] = MI_NOOP;
> > > +
> > > +		if (size == src_bo->size) {
> > > +			src_bo->bb_ccs[read_write] = bb;
> > > +			INIT_LIST_HEAD(&src_bo->bb_ccs[read_write]->list);
> > > +		} else {
> > > +			list_add(&bb->list, &src_bo->bb_ccs[read_write]-
> > >list);
> > > +		}
> > > +
> > > +		size -= src_L0;
> > > +	}
> > > +	return 0;
> > > +
> > > +err_ret:
> > > +	return err;
> > > +}
> > > +
> > >  static void emit_clear_link_copy(struct xe_gt *gt, struct xe_bb *bb, u64
> > src_ofs,
> > >  				 u32 size, u32 pitch)
> > >  {
> > > diff --git a/drivers/gpu/drm/xe/xe_migrate.h
> > b/drivers/gpu/drm/xe/xe_migrate.h
> > > index fb9839c1bae0..ab5ebb44d2c9 100644
> > > --- a/drivers/gpu/drm/xe/xe_migrate.h
> > > +++ b/drivers/gpu/drm/xe/xe_migrate.h
> > > @@ -112,6 +112,10 @@ struct dma_fence *xe_migrate_copy(struct
> > xe_migrate *m,
> > >  				  struct ttm_resource *dst,
> > >  				  bool copy_only_ccs);
> > >
> > > +int xe_migrate_ccs_rw_copy(struct xe_migrate *m,
> > > +			   struct xe_bo *src_bo,
> > > +			   int read_write);
> > > +
> > >  int xe_migrate_access_memory(struct xe_migrate *m, struct xe_bo *bo,
> > >  			     unsigned long offset, void *buf, int len,
> > >  			     int write);
> > > diff --git a/drivers/gpu/drm/xe/xe_sriov_vf_ccs.c
> > b/drivers/gpu/drm/xe/xe_sriov_vf_ccs.c
> > > index 41fe1f59e0e9..4b5cfc0d421b 100644
> > > --- a/drivers/gpu/drm/xe/xe_sriov_vf_ccs.c
> > > +++ b/drivers/gpu/drm/xe/xe_sriov_vf_ccs.c
> > > @@ -5,6 +5,7 @@
> > >
> > >  #include "instructions/xe_mi_commands.h"
> > >  #include "instructions/xe_gpu_commands.h"
> > > +#include "xe_bb.h"
> > >  #include "xe_bo.h"
> > >  #include "xe_device.h"
> > >  #include "xe_migrate.h"
> > > @@ -184,3 +185,79 @@ int xe_sriov_vf_ccs_init(struct xe_device *xe)
> > >  err_ret:
> > >  	return err;
> > >  }
> > > +
> > > +/**
> > > + * xe_sriov_vf_ccs_attach_bo - Insert CCS read write commands in the BO.
> > > + * @bo: the &buffer object to which batch buffer commands will be added.
> > > + *
> > > + * This function shall be called only by VF. It inserts the PTEs and copy
> > > + * command instructions in the BO by calling xe_migrate_ccs_rw_copy()
> > > + * function.
> > > + *
> > > + * Returns: 0 if successful, negative error code on failure.
> > > + */
> > > +int xe_sriov_vf_ccs_attach_bo(struct xe_bo *bo)
> > > +{
> > > +	struct xe_device *xe = xe_bo_device(bo);
> > > +	struct xe_migrate *migrate;
> > > +	struct xe_tile *tile;
> > > +	int tile_id, ctx_id;
> > 
> > ctx_id can be enum xe_sriov_vf_ccs_rw_ctxs
> > 
> > > +	struct xe_bb *bb;
> > > +	int err = 0;
> > > +
> > > +	if (!IS_VF_CCS_READY(xe))
> > > +		return 0;
> > > +
> > > +	for_each_tile(tile, xe, tile_id) {
> > > +		for_each_ccs_rw_ctx(ctx_id) {
> > > +			bb = bo->bb_ccs[ctx_id];
> > > +			if (bb)
> > > +				xe_sriov_err(xe, "Probable memory leak\n");
> > > +
> > > +			migrate = tile->sriov.vf.ccs[ctx_id].migrate;
> > > +			err = xe_migrate_ccs_rw_copy(migrate, bo, ctx_id);
> > > +		}
> > > +	}
> > > +	return err;
> > > +}
> > > +
> > > +/**
> > > + * xe_sriov_vf_ccs_detach_bo - Remove CCS read write commands from the
> > BO.
> > > + * @bo: the &buffer object from which batch buffer commands will be
> > removed.
> > > + *
> > > + * This function shall be called only by VF. It removes the PTEs and copy
> > > + * command instructions from the BO. Make sure to update the BB with
> > MI_NOOP
> > > + * before freeing.
> > > + *
> > > + * Returns: 0 if successful, negative error code on failure.
> > > + */
> > > +int xe_sriov_vf_ccs_detach_bo(struct xe_bo *bo)
> > > +{
> > > +	struct xe_device *xe = xe_bo_device(bo);
> > > +	struct xe_bb *bb, *pos, *temp;
> > > +	struct xe_tile *tile;
> > > +	int tile_id, ctx_id;
> > 
> > ctx_id can be enum xe_sriov_vf_ccs_rw_ctxs
> > 
> > Matt
> > 
> > > +
> > > +	if (!IS_VF_CCS_READY(xe))
> > > +		return 0;
> > > +
> > > +	for_each_tile(tile, xe, tile_id) {
> > > +		for_each_ccs_rw_ctx(ctx_id) {
> > > +			bb = bo->bb_ccs[ctx_id];
> > > +			if (!bb)
> > > +				continue;
> > > +
> > > +			list_for_each_entry_safe(pos, temp, &bb->list, list) {
> > > +				list_del(&pos->list);
> > > +				memset(pos->cs, MI_NOOP, pos->len *
> > sizeof(u32));
> > > +				xe_bb_free(pos, NULL);
> > > +			}
> > > +
> > > +			/* Free-up head BB */
> > > +			memset(bb->cs, MI_NOOP, bb->len * sizeof(u32));
> > > +			xe_bb_free(bb, NULL);
> > > +			bo->bb_ccs[ctx_id] = NULL;
> > > +		}
> > > +	}
> > > +	return 0;
> > > +}
> > > diff --git a/drivers/gpu/drm/xe/xe_sriov_vf_ccs.h
> > b/drivers/gpu/drm/xe/xe_sriov_vf_ccs.h
> > > index 5df9ba028d14..5d5e4bd25904 100644
> > > --- a/drivers/gpu/drm/xe/xe_sriov_vf_ccs.h
> > > +++ b/drivers/gpu/drm/xe/xe_sriov_vf_ccs.h
> > > @@ -7,7 +7,10 @@
> > >  #define _XE_SRIOV_VF_CCS_H_
> > >
> > >  struct xe_device;
> > > +struct xe_bo;
> > >
> > >  int xe_sriov_vf_ccs_init(struct xe_device *xe);
> > > +int xe_sriov_vf_ccs_attach_bo(struct xe_bo *bo);
> > > +int xe_sriov_vf_ccs_detach_bo(struct xe_bo *bo);
> > >
> > >  #endif
> > > diff --git a/drivers/gpu/drm/xe/xe_sriov_vf_ccs_types.h
> > b/drivers/gpu/drm/xe/xe_sriov_vf_ccs_types.h
> > > index f67f002c7a96..9545c5cfc2b1 100644
> > > --- a/drivers/gpu/drm/xe/xe_sriov_vf_ccs_types.h
> > > +++ b/drivers/gpu/drm/xe/xe_sriov_vf_ccs_types.h
> > > @@ -28,6 +28,14 @@ enum xe_sriov_vf_ccs_rw_ctxs {
> > >  	XE_SRIOV_VF_CCS_RW_MAX_CTXS
> > >  };
> > >
> > > +#define IS_VF_CCS_BB_VALID(xe, bo) ({ \
> > > +		struct xe_device *___xe = (xe); \
> > > +		struct xe_bo *___bo = (bo); \
> > > +		IS_SRIOV_VF(___xe) && \
> > > +		___bo->bb_ccs[XE_SRIOV_VF_CCS_READ_CTX] && \
> > > +		___bo->bb_ccs[XE_SRIOV_VF_CCS_WRITE_CTX]; \
> > > +		})
> > > +
> > >  struct xe_migrate;
> > >  struct xe_sa_manager;
> > >
> > > --
> > > 2.43.0
> > >

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

* Re: [PATCH v6 1/3] drm/xe/vf: Create contexts for CCS read write
  2025-06-09 12:39   ` Michal Wajdeczko
@ 2025-06-09 16:08     ` Matthew Brost
  2025-06-16 15:01       ` K V P, Satyanarayana
  0 siblings, 1 reply; 23+ messages in thread
From: Matthew Brost @ 2025-06-09 16:08 UTC (permalink / raw)
  To: Michal Wajdeczko
  Cc: Satyanarayana K V P, intel-xe, Michał Winiarski, Tomasz Lis,
	Matthew Auld

On Mon, Jun 09, 2025 at 02:39:27PM +0200, Michal Wajdeczko wrote:
> 
> 
> On 06.06.2025 14:45, Satyanarayana K V P wrote:
> > Create two LRCs to handle CCS meta data read / write from CCS pool in the
> > VM. Read context is used to hold GPU instructions to be executed at save
> > time and write context is used to hold GPU instructions to be executed at
> > the restore time.
> > 
> > Allocate batch buffer pool using suballocator for both read and write
> > contexts.
> > 
> > Migration framework is reused to create LRCAs for read and write.
> > 
> > Signed-off-by: Satyanarayana K V P <satyanarayana.k.v.p@intel.com>
> > ---
> > Cc: Michal Wajdeczko <michal.wajdeczko@intel.com>
> > Cc: Michał Winiarski <michal.winiarski@intel.com>
> > Cc: Tomasz Lis <tomasz.lis@intel.com>
> > Cc: Matthew Brost <matthew.brost@intel.com>
> > Cc: Matthew Auld <matthew.auld@intel.com>
> > 
> > V5 -> V6:
> > - Added id field in the xe_tile_vf_ccs structure for self identification.
> > 
> > V4 -> V5:
> > - Modified read/write contexts to enums from #defines (Matthew Brost).
> > - The CCS BB pool size is calculated based on the system memory size (Michal
> >   Wajdeczko & Matthew Brost).
> > 
> > V3 -> V4:
> > - Fixed issues reported by patchworks.
> > 
> > V2 -> V3:
> > - Added new variable which denotes the initialization of contexts.
> > 
> > V1 -> V2:
> > - Fixed review comments.
> > ---
> >  drivers/gpu/drm/xe/Makefile                |   1 +
> >  drivers/gpu/drm/xe/xe_device.c             |   4 +
> >  drivers/gpu/drm/xe/xe_device_types.h       |   4 +
> >  drivers/gpu/drm/xe/xe_gt_debugfs.c         |  36 ++++
> >  drivers/gpu/drm/xe/xe_sriov.c              |  19 +++
> >  drivers/gpu/drm/xe/xe_sriov.h              |   1 +
> >  drivers/gpu/drm/xe/xe_sriov_types.h        |   5 +
> >  drivers/gpu/drm/xe/xe_sriov_vf_ccs.c       | 186 +++++++++++++++++++++
> >  drivers/gpu/drm/xe/xe_sriov_vf_ccs.h       |  13 ++
> >  drivers/gpu/drm/xe/xe_sriov_vf_ccs_types.h |  46 +++++
> >  10 files changed, 315 insertions(+)
> >  create mode 100644 drivers/gpu/drm/xe/xe_sriov_vf_ccs.c
> >  create mode 100644 drivers/gpu/drm/xe/xe_sriov_vf_ccs.h
> >  create mode 100644 drivers/gpu/drm/xe/xe_sriov_vf_ccs_types.h
> > 
> > diff --git a/drivers/gpu/drm/xe/Makefile b/drivers/gpu/drm/xe/Makefile
> > index f5f5775acdc0..3b5241937742 100644
> > --- a/drivers/gpu/drm/xe/Makefile
> > +++ b/drivers/gpu/drm/xe/Makefile
> > @@ -140,6 +140,7 @@ xe-y += \
> >  	xe_memirq.o \
> >  	xe_sriov.o \
> >  	xe_sriov_vf.o \
> > +	xe_sriov_vf_ccs.o \
> >  	xe_tile_sriov_vf.o
> >  
> >  xe-$(CONFIG_PCI_IOV) += \
> > diff --git a/drivers/gpu/drm/xe/xe_device.c b/drivers/gpu/drm/xe/xe_device.c
> > index 660b0c5126dc..bf96045770c7 100644
> > --- a/drivers/gpu/drm/xe/xe_device.c
> > +++ b/drivers/gpu/drm/xe/xe_device.c
> > @@ -925,6 +925,10 @@ int xe_device_probe(struct xe_device *xe)
> >  
> >  	xe_vsec_init(xe);
> >  
> > +	err = xe_sriov_late_init(xe);
> > +	if (err)
> > +		goto err_unregister_display;
> > +
> >  	return devm_add_action_or_reset(xe->drm.dev, xe_device_sanitize, xe);
> >  
> >  err_unregister_display:
> > diff --git a/drivers/gpu/drm/xe/xe_device_types.h b/drivers/gpu/drm/xe/xe_device_types.h
> > index ac27389ccb8b..caf3bb1ef048 100644
> > --- a/drivers/gpu/drm/xe/xe_device_types.h
> > +++ b/drivers/gpu/drm/xe/xe_device_types.h
> > @@ -22,6 +22,7 @@
> >  #include "xe_pmu_types.h"
> >  #include "xe_pt_types.h"
> >  #include "xe_sriov_types.h"
> > +#include "xe_sriov_vf_ccs_types.h"
> >  #include "xe_step_types.h"
> >  #include "xe_survivability_mode_types.h"
> >  #include "xe_ttm_vram_mgr_types.h"
> > @@ -234,6 +235,9 @@ struct xe_tile {
> >  		struct {
> >  			/** @sriov.vf.ggtt_balloon: GGTT regions excluded from use. */
> >  			struct xe_ggtt_node *ggtt_balloon[2];
> > +
> > +			/** @sriov.vf.ccs: CCS read and write contexts for VF. */
> > +			struct xe_tile_vf_ccs ccs[XE_SRIOV_VF_CCS_RW_MAX_CTXS];
> >  		} vf;
> >  	} sriov;
> >  
> > diff --git a/drivers/gpu/drm/xe/xe_gt_debugfs.c b/drivers/gpu/drm/xe/xe_gt_debugfs.c
> > index 848618acdca8..2c6d757db810 100644
> > --- a/drivers/gpu/drm/xe/xe_gt_debugfs.c
> > +++ b/drivers/gpu/drm/xe/xe_gt_debugfs.c
> > @@ -134,6 +134,30 @@ static int sa_info(struct xe_gt *gt, struct drm_printer *p)
> >  	return 0;
> >  }
> >  
> > +static int sa_info_vf_ccs(struct xe_gt *gt, struct drm_printer *p)
> > +{
> > +	struct xe_tile *tile = gt_to_tile(gt);
> > +	struct xe_sa_manager *bb_pool;
> > +	int ctx_id;
> > +
> > +	if (!IS_VF_CCS_READY(gt_to_xe(gt)))
> > +		return 0;
> > +
> > +	xe_pm_runtime_get(gt_to_xe(gt));
> > +
> > +	for_each_ccs_rw_ctx(ctx_id) {
> > +		drm_printf(p, "ccs %s bb suballoc info\n", ctx_id ? "write" : "read");
> > +		drm_printf(p, "-------------------------\n");
> > +		bb_pool = tile->sriov.vf.ccs[ctx_id].mem.ccs_bb_pool;
> > +		drm_suballoc_dump_debug_info(&bb_pool->base, p, bb_pool->gpu_addr);
> > +		drm_puts(p, "\n");
> > +	}
> > +
> > +	xe_pm_runtime_put(gt_to_xe(gt));
> > +
> > +	return 0;
> > +}
> > +
> >  static int topology(struct xe_gt *gt, struct drm_printer *p)
> >  {
> >  	xe_pm_runtime_get(gt_to_xe(gt));
> > @@ -303,6 +327,13 @@ static const struct drm_info_list vf_safe_debugfs_list[] = {
> >  	{"hwconfig", .show = xe_gt_debugfs_simple_show, .data = hwconfig},
> >  };
> >  
> > +/*
> > + * only for GT debugfs files which are valid on VF. Not valid on PF.
> > + */
> > +static const struct drm_info_list vf_only_debugfs_list[] = {
> > +	{"sa_info_vf_ccs", .show = xe_gt_debugfs_simple_show, .data = sa_info_vf_ccs},
> > +};
> > +
> >  /* everything else should be added here */
> >  static const struct drm_info_list pf_only_debugfs_list[] = {
> >  	{"hw_engines", .show = xe_gt_debugfs_simple_show, .data = hw_engines},
> > @@ -419,6 +450,11 @@ void xe_gt_debugfs_register(struct xe_gt *gt)
> >  		drm_debugfs_create_files(pf_only_debugfs_list,
> >  					 ARRAY_SIZE(pf_only_debugfs_list),
> >  					 root, minor);
> > +	else
> > +		drm_debugfs_create_files(vf_only_debugfs_list,
> > +					 ARRAY_SIZE(vf_only_debugfs_list),
> > +					 root, minor);
> > +
> >  
> >  	xe_uc_debugfs_register(&gt->uc, root);
> >  
> > diff --git a/drivers/gpu/drm/xe/xe_sriov.c b/drivers/gpu/drm/xe/xe_sriov.c
> > index a0eab44c0e76..87911fb4eea7 100644
> > --- a/drivers/gpu/drm/xe/xe_sriov.c
> > +++ b/drivers/gpu/drm/xe/xe_sriov.c
> > @@ -15,6 +15,7 @@
> >  #include "xe_sriov.h"
> >  #include "xe_sriov_pf.h"
> >  #include "xe_sriov_vf.h"
> > +#include "xe_sriov_vf_ccs.h"
> >  
> >  /**
> >   * xe_sriov_mode_to_string - Convert enum value to string.
> > @@ -157,3 +158,21 @@ const char *xe_sriov_function_name(unsigned int n, char *buf, size_t size)
> >  		strscpy(buf, "PF", size);
> >  	return buf;
> >  }
> > +
> > +/**
> > + * xe_sriov_late_init() - SR-IOV late initialization functions.
> > + * @xe: the &xe_device to initialize
> > + *
> > + * On VF this function will initialize code for CCS migration.
> > + *
> > + * Return: 0 on success or a negative error code on failure.
> > + */
> > +int xe_sriov_late_init(struct xe_device *xe)
> > +{
> > +	int err = 0;
> > +
> > +	if (IS_VF_CCS_INIT_NEEDED(xe))
> > +		err = xe_sriov_vf_ccs_init(xe);
> > +
> > +	return err;
> > +}
> > diff --git a/drivers/gpu/drm/xe/xe_sriov.h b/drivers/gpu/drm/xe/xe_sriov.h
> > index 688fbabf08f1..0e0c1abf2d14 100644
> > --- a/drivers/gpu/drm/xe/xe_sriov.h
> > +++ b/drivers/gpu/drm/xe/xe_sriov.h
> > @@ -18,6 +18,7 @@ const char *xe_sriov_function_name(unsigned int n, char *buf, size_t len);
> >  void xe_sriov_probe_early(struct xe_device *xe);
> >  void xe_sriov_print_info(struct xe_device *xe, struct drm_printer *p);
> >  int xe_sriov_init(struct xe_device *xe);
> > +int xe_sriov_late_init(struct xe_device *xe);
> >  
> >  static inline enum xe_sriov_mode xe_device_sriov_mode(const struct xe_device *xe)
> >  {
> > diff --git a/drivers/gpu/drm/xe/xe_sriov_types.h b/drivers/gpu/drm/xe/xe_sriov_types.h
> > index ca94382a721e..8abfdb2c5ead 100644
> > --- a/drivers/gpu/drm/xe/xe_sriov_types.h
> > +++ b/drivers/gpu/drm/xe/xe_sriov_types.h
> > @@ -71,6 +71,11 @@ struct xe_device_vf {
> >  		/** @migration.gt_flags: Per-GT request flags for VF migration recovery */
> >  		unsigned long gt_flags;
> >  	} migration;
> > +
> > +	struct {
> > +		/** @initialized: Initilalization of vf ccs is completed or not */
> > +		bool initialized;
> > +	} ccs;
> >  };
> >  
> >  #endif
> > diff --git a/drivers/gpu/drm/xe/xe_sriov_vf_ccs.c b/drivers/gpu/drm/xe/xe_sriov_vf_ccs.c
> > new file mode 100644
> > index 000000000000..41fe1f59e0e9
> > --- /dev/null
> > +++ b/drivers/gpu/drm/xe/xe_sriov_vf_ccs.c
> > @@ -0,0 +1,186 @@
> > +// SPDX-License-Identifier: MIT
> > +/*
> > + * Copyright © 2025 Intel Corporation
> > + */
> > +
> > +#include "instructions/xe_mi_commands.h"
> > +#include "instructions/xe_gpu_commands.h"
> > +#include "xe_bo.h"
> > +#include "xe_device.h"
> > +#include "xe_migrate.h"
> > +#include "xe_sa.h"
> > +#include "xe_sriov_printk.h"
> > +#include "xe_sriov_vf_ccs.h"
> > +#include "xe_sriov_vf_ccs_types.h"
> > +
> > +/**
> > + * DOC: VF save/restore of compression Meta Data
> > + *
> > + * VF KMD registers two special contexts/LRCAs.
> > + *
> > + * Save Context/LRCA: contain necessary cmds+page table to trigger Meta data /
> > + * compression control surface (Aka CCS) save in regular System memory in VM.
> > + *
> > + * Restore Context/LRCA: contain necessary cmds+page table to trigger Meta data /
> > + * compression control surface (Aka CCS) Restore from regular System memory in
> > + * VM to corresponding CCS pool.
> > + *
> > + * Below diagram explain steps needed for VF save/Restore of compression Meta
> > + * Data::
> 
> nit: this last word likely can be part of prev line
> 
> > + *
> > + *    CCS Save    CCS Restore          VF KMD                          Guc       BCS
> > + *     LRCA        LRCA
> > + *      |           |                     |                              |         |
> > + *      |           |                     |                              |         |
> > + *      |     Create Save LRCA            |                              |         |
> > + *     [ ]<----------------------------- [ ]                             |         |
> > + *      |           |                     |                              |         |
> > + *      |           |                     |                              |         |
> > + *      |           |                     |   Register LRCA with Guc     |         |
> > + *      |           |                    [ ]--------------------------->[ ]        |
> > + *      |           |                     |                              |         |
> > + *      |           |                     |                              |         |
> > + *      |           | Create restore LRCA |                              |         |
> > + *      |          [ ]<------------------[ ]                             |         |
> 
> don't we need to register in GuC this 'restore' LRCA ?
> 
> > + *      |           |                     |                              |         |
> > + *      |           |                     |                              |         |
> > + *      |           |                    [ ]-----------------------      |         |
> > + *      |           |                    [ ]  Allocate main memory |     |         |
> > + *      |           |                    [ ]  Allocate CCS memory  |     |         |
> > + *      |           |                    [ ]<----------------------      |         |
> > + *      |           |                     |                              |         |
> > + *      |           |                     |                              |         |
> > + *      | Update Main memory & CCS pages  |                              |         |
> > + *      |   PPGTT + BB cmds to save       |                              |         |
> > + *     [ ]<------------------------------[ ]                             |         |
> > + *      |           |                     |                              |         |
> > + *      |           |                     |                              |         |
> > + *      |           | Update Main memory  |                              |         |
> > + *      |           | & CCS pages PPGTT + |                              |         |
> > + *      |           | BB cms to restore   |                              |         |
> 
> typo: cms
> 
> > + *      |          [ ]<------------------[ ]                             |         |
> 
> those above updates are happening as part of BO allocations sequence,
> likely depicted as above 'allocate' box - so shouldn't it be drawn as such?
> 
> > + *      |           |                     |                              |         |
> > + *      |           |                     |                              |         |
> > + *      |           |                   VF Pause                         |         |
> 
> this is out of VF control, so maybe
> 
>            :           :                                            :
>        ------------------------  VF Paused -----------------------------
> 
> 
> > + *      |           |                     |                              |Schedule |
> > + *      |           |                     |                              |CCS Save |
> > + *      |           |                     |                              | LRCA    |
> > + *      |           |                     |                             [ ]------>[ ]
> 
> shouldn't we also have arrow from HW to save-LRCA?
> 
> > + *      |           |                     |                              |         |
> > + *      |           |                     |                              |         |
> > + *      |           |                   VF Restore                       |         |
> 
> and
> 
>        ------------------------  VF Resumed ---------------------------
>            :           :                                            :
> 
> 
> > + *      |           |                     |                              |         |
> > + *      |           |                     |                              |         |
> > + *      |           |                    [ ]--------------               |         |
> > + *      |           |                    [ ] Fix up GGTT  |              |         |
> > + *      |           |                    [ ]<-------------               |         |
> 
> what about showing RESFIX_DONE notification to GuC here ?
> 
> > + *      |           |                     |                              |         |
> > + *      |           |                     |                              |         |
> > + *      |           |                     |                              |Schedule |
> > + *      |           |                     |                              |CCS      |
> > + *      |           |                     |                              |Restore  |
> > + *      |           |                     |                              |LRCA     |
> > + *      |           |                     |                             [ ]------>[ ]
> 
> shouldn't we also have arrow from HW to restore-LRCA?
> 
> > + *      |           |                     |                              |         |
> > + *      |           |                     |                              |         |
> 
> btw, I assume this 'restore' job is happening as part of the RESFIX_DONE
> message processing so return arrow will fit here as well
> 
> > + *
> > + */
> > +
> > +static u64 get_ccs_bb_pool_size(struct xe_device *xe)
> > +{
> > +	u64 sys_mem_size, ccs_mem_size, ptes, bb_pool_size;
> > +	struct sysinfo si;
> > +
> > +	si_meminfo(&si);
> > +	sys_mem_size = si.totalram * si.mem_unit;
> > +	ccs_mem_size = sys_mem_size / NUM_BYTES_PER_CCS_BYTE(xe);
> > +	ptes = DIV_ROUND_UP(sys_mem_size + ccs_mem_size, XE_PAGE_SIZE);
> > +
> > +	/**
> > +	 * We need below BB size to hold PTE mappings and some DWs for copy
> > +	 * command. In reality, we need space for many copy commands. So, let
> > +	 * us allocate double the calculated size which is enough to holds GPU
> > +	 * instructions for the whole region.
> > +	 */
> > +	bb_pool_size = ptes * sizeof(u32);
> > +
> > +	return round_up(bb_pool_size * 2, SZ_1M);
> > +}
> > +
> > +static int alloc_bb_pool(struct xe_tile *tile, struct xe_tile_vf_ccs *ctx)
> > +{
> > +	struct xe_device *xe = tile_to_xe(tile);
> > +	struct xe_sa_manager *sa_manager;
> > +	u64 bb_pool_size;
> > +	int offset, err;
> > +
> > +	bb_pool_size = get_ccs_bb_pool_size(xe);
> > +	xe_sriov_info(xe, "Allocating %s CCS BB pool size = %lldMB\n",
> > +		      ctx->id ? "Restore" : "Save", bb_pool_size / SZ_1M);
> > +
> > +	sa_manager = xe_sa_bo_manager_init(tile, bb_pool_size, SZ_16);
> > +
> > +	if (IS_ERR(sa_manager)) {
> > +		xe_sriov_err(xe, "Suballocator init failed with error: %pe\n",
> > +			     sa_manager);
> > +		err = PTR_ERR(sa_manager);
> > +		return err;
> > +	}
> > +
> > +	offset = 0;
> > +	xe_map_memset(xe, &sa_manager->bo->vmap, offset, MI_NOOP,
> > +		      bb_pool_size);
> > +
> > +	offset = bb_pool_size - sizeof(u32);
> > +	xe_map_wr(xe, &sa_manager->bo->vmap, offset, u32, MI_BATCH_BUFFER_END);
> > +
> > +	ctx->mem.ccs_bb_pool = sa_manager;
> > +
> > +	return 0;
> > +}
> > +
> > +/**
> > + * xe_sriov_vf_ccs_init - Setup LRCA for save & restore.
> > + * @xe: the &xe_device to start recovery on
> > + *
> > + * This function shall be called only by VF. It initializes
> > + * LRCA and suballocator needed for CCS save & restore.
> > + *
> > + * Return: 0 on success. Negative error code on failure.
> > + */
> > +int xe_sriov_vf_ccs_init(struct xe_device *xe)
> > +{
> > +	struct xe_migrate *migrate;
> > +	struct xe_tile_vf_ccs *ctx;
> > +	struct xe_tile *tile;
> > +	int tile_id, ctx_id;
> > +	int err = 0;
> > +
> > +	xe_assert(xe, (IS_SRIOV_VF(xe) || !IS_DGFX(xe) ||
> > +		       xe_device_has_flat_ccs(xe)));
> 
> make it as 3x separate asserts to clearly see which one will eventually
> fire (and to make then logical AND condition)
> 
> > +
> > +	for_each_tile(tile, xe, tile_id) {
> > +		for_each_ccs_rw_ctx(ctx_id) {
> > +			ctx = &tile->sriov.vf.ccs[ctx_id];
> > +			ctx->id = ctx_id;
> > +
> > +			migrate = xe_migrate_init(tile);
> > +			if (IS_ERR(migrate)) {
> > +				err = PTR_ERR(migrate);
> > +				goto err_ret;
> > +			}
> > +			ctx->migrate = migrate;
> > +
> > +			err = alloc_bb_pool(tile, ctx);
> > +			if (err)
> > +				goto err_ret;
> > +		}
> > +	}
> > +
> > +	xe->sriov.vf.ccs.initialized = 1;
> > +
> > +	return 0;
> > +
> > +err_ret:
> > +	return err;
> > +}
> > diff --git a/drivers/gpu/drm/xe/xe_sriov_vf_ccs.h b/drivers/gpu/drm/xe/xe_sriov_vf_ccs.h
> > new file mode 100644
> > index 000000000000..5df9ba028d14
> > --- /dev/null
> > +++ b/drivers/gpu/drm/xe/xe_sriov_vf_ccs.h
> > @@ -0,0 +1,13 @@
> > +/* SPDX-License-Identifier: MIT */
> > +/*
> > + * Copyright © 2025 Intel Corporation
> > + */
> > +
> > +#ifndef _XE_SRIOV_VF_CCS_H_
> > +#define _XE_SRIOV_VF_CCS_H_
> > +
> > +struct xe_device;
> > +
> > +int xe_sriov_vf_ccs_init(struct xe_device *xe);
> > +
> > +#endif
> > diff --git a/drivers/gpu/drm/xe/xe_sriov_vf_ccs_types.h b/drivers/gpu/drm/xe/xe_sriov_vf_ccs_types.h
> > new file mode 100644
> > index 000000000000..f67f002c7a96
> > --- /dev/null
> > +++ b/drivers/gpu/drm/xe/xe_sriov_vf_ccs_types.h
> > @@ -0,0 +1,46 @@
> > +/* SPDX-License-Identifier: MIT */
> > +/*
> > + * Copyright © 2022-2023 Intel Corporation
> 
> 2025
> 
> > + */
> > +
> > +#ifndef _XE_SRIOV_VF_CCS__TYPES_H_
> > +#define _XE_SRIOV_VF_CCS__TYPES_H_
> 
> _XE_SRIOV_VF_CCS_TYPES_H_
> 
> > +
> > +#define for_each_ccs_rw_ctx(id__) \
> > +	for ((id__) = 0; (id__) < XE_SRIOV_VF_CCS_RW_MAX_CTXS; (id__)++)
> > +
> > +#define IS_VF_CCS_READY(xe) ({ \
> > +		struct xe_device *___xe = (xe); \
> > +		xe_assert(___xe, IS_SRIOV_VF(___xe)); \
> > +		___xe->sriov.vf.ccs.initialized; \
> > +		})
> > +
> > +#define IS_VF_CCS_INIT_NEEDED(xe) ({\
> > +		struct xe_device *___xe = (xe); \
> > +		IS_SRIOV_VF(___xe) && !IS_DGFX(___xe) && \
> > +		xe_device_has_flat_ccs(___xe) && GRAPHICS_VER(___xe) >= 20; \
> > +		})
> > +
> > +enum xe_sriov_vf_ccs_rw_ctxs {
> > +	XE_SRIOV_VF_CCS_RW_MIN_CTXS = 0,
> > +	XE_SRIOV_VF_CCS_READ_CTX = XE_SRIOV_VF_CCS_RW_MIN_CTXS,
> > +	XE_SRIOV_VF_CCS_WRITE_CTX,
> > +	XE_SRIOV_VF_CCS_RW_MAX_CTXS
> 
> if we need just READ and WRITE then maybe we can use existing
> definitions from <linux/kernel.h>
> 

This seems like not such a great idea.

> > +};
> > +
> > +struct xe_migrate;
> > +struct xe_sa_manager;
> > +
> > +struct xe_tile_vf_ccs {
> > +	/** @id: Id to which context it belongs to */
> 
> did you mean GuC context id here?
> if yes then maybe name it as guc_id as done elsewhere?
>

It is ctx_id, I suggested s/id/ctx_id/ for consistency.

Matt
 
> > +	int id;
> > +	/** @migrate: Migration helper for save/restore of CCS data */
> > +	struct xe_migrate *migrate;
> > +
> > +	struct {
> > +		/** @ccs_rw_bb_pool: Pool from which batch buffers are allocated. */
> > +		struct xe_sa_manager *ccs_bb_pool;
> > +	} mem;
> > +};
> > +
> > +#endif
> 

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

* Re: [PATCH v6 3/3] drm/xe/vf: Register CCS read/write contexts with Guc
  2025-06-06 12:45 ` [PATCH v6 3/3] drm/xe/vf: Register CCS read/write contexts with Guc Satyanarayana K V P
@ 2025-06-09 16:28   ` Matthew Brost
  2025-06-16 14:55     ` K V P, Satyanarayana
  0 siblings, 1 reply; 23+ messages in thread
From: Matthew Brost @ 2025-06-09 16:28 UTC (permalink / raw)
  To: Satyanarayana K V P
  Cc: intel-xe, Michal Wajdeczko, Michał Winiarski, Tomasz Lis,
	Matthew Auld, Maarten Lankhorst

On Fri, Jun 06, 2025 at 06:15:58PM +0530, Satyanarayana K V P wrote:
> Register read write contexts with newly added flags with GUC and
> enable the context immediately after registration.
> Re-register the context with Guc when resuming from runtime suspend as
> soft reset is applied to Guc during xe_pm_runtime_resume().
> Make Ring head=tail while unbinding device to avoid issues with VF pause
> after device is unbinded.
> 
> Signed-off-by: Satyanarayana K V P <satyanarayana.k.v.p@intel.com>
> ---
> Cc: Michal Wajdeczko <michal.wajdeczko@intel.com>
> Cc: Michał Winiarski <michal.winiarski@intel.com>
> Cc: Tomasz Lis <tomasz.lis@intel.com>
> Cc: Matthew Brost <matthew.brost@intel.com>
> Cc: Matthew Auld <matthew.auld@intel.com>
> Cc: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
> 
> V5 -> V6:
> - None
> 
> V4 -> V5:
> - Fixed review comments (Matthew Brost).
> 
> V3 -> V4:
> - Fixed issues reported by patchworks.
> 
> V2 -> V3:
> - Made xe_migrate structure private as per review comments.
> - Created new xe_migrate functions to get lrc and exec_queue.
> 
> V1 -> V2:
> - Fixed review comments.
> ---
>  drivers/gpu/drm/xe/xe_guc_fwif.h     |  5 ++
>  drivers/gpu/drm/xe/xe_guc_submit.c   | 37 +++++++++++-
>  drivers/gpu/drm/xe/xe_guc_submit.h   |  1 +
>  drivers/gpu/drm/xe/xe_migrate.c      | 22 +++++++
>  drivers/gpu/drm/xe/xe_migrate.h      |  3 +
>  drivers/gpu/drm/xe/xe_pm.c           |  4 ++
>  drivers/gpu/drm/xe/xe_sriov_vf_ccs.c | 89 ++++++++++++++++++++++++++++
>  drivers/gpu/drm/xe/xe_sriov_vf_ccs.h |  1 +
>  8 files changed, 160 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/gpu/drm/xe/xe_guc_fwif.h b/drivers/gpu/drm/xe/xe_guc_fwif.h
> index 6f57578b07cb..71a5208d0316 100644
> --- a/drivers/gpu/drm/xe/xe_guc_fwif.h
> +++ b/drivers/gpu/drm/xe/xe_guc_fwif.h
> @@ -45,6 +45,11 @@
>  #define GUC_MAX_ENGINE_CLASSES		16
>  #define GUC_MAX_INSTANCES_PER_CLASS	32
>  
> +#define GUC_CONTEXT_NORMAL			0
> +#define GUC_CONTEXT_COMPRESSION_SAVE		1
> +#define GUC_CONTEXT_COMPRESSION_RESTORE	2
> +#define GUC_CONTEXT_MAX_TYPES			(GUC_CONTEXT_COMPRESSION_RESTORE + 1)

s/GUC_CONTEXT_MAX_TYPES/GUC_CONTEXT_COUNT

> +
>  /* Helper for context registration H2G */
>  struct guc_ctxt_registration_info {
>  	u32 flags;
> diff --git a/drivers/gpu/drm/xe/xe_guc_submit.c b/drivers/gpu/drm/xe/xe_guc_submit.c
> index 80f748baad3f..4e1423b0f07c 100644
> --- a/drivers/gpu/drm/xe/xe_guc_submit.c
> +++ b/drivers/gpu/drm/xe/xe_guc_submit.c
> @@ -531,7 +531,7 @@ static void __register_exec_queue(struct xe_guc *guc,
>  	xe_guc_ct_send(&guc->ct, action, ARRAY_SIZE(action), 0, 0);
>  }
>  
> -static void register_exec_queue(struct xe_exec_queue *q)
> +static void register_exec_queue(struct xe_exec_queue *q, int ctx_type)
>  {
>  	struct xe_guc *guc = exec_queue_to_guc(q);
>  	struct xe_device *xe = guc_to_xe(guc);
> @@ -539,6 +539,7 @@ static void register_exec_queue(struct xe_exec_queue *q)
>  	struct guc_ctxt_registration_info info;
>  
>  	xe_gt_assert(guc_to_gt(guc), !exec_queue_registered(q));
> +	xe_gt_assert(guc_to_gt(guc), ctx_type < GUC_CONTEXT_MAX_TYPES);
>  
>  	memset(&info, 0, sizeof(info));
>  	info.context_idx = q->guc->id;
> @@ -548,6 +549,9 @@ static void register_exec_queue(struct xe_exec_queue *q)
>  	info.hwlrca_hi = upper_32_bits(xe_lrc_descriptor(lrc));
>  	info.flags = CONTEXT_REGISTRATION_FLAG_KMD;
>  
> +	if (ctx_type != GUC_CONTEXT_NORMAL)
> +		info.flags |= BIT(ctx_type);
> +
>  	if (xe_exec_queue_is_parallel(q)) {
>  		u64 ggtt_addr = xe_lrc_parallel_ggtt_addr(lrc);
>  		struct iosys_map map = xe_lrc_parallel_map(lrc);
> @@ -750,7 +754,7 @@ guc_exec_queue_run_job(struct drm_sched_job *drm_job)
>  
>  	if (!exec_queue_killed_or_banned_or_wedged(q) && !xe_sched_job_is_error(job)) {
>  		if (!exec_queue_registered(q))
> -			register_exec_queue(q);
> +			register_exec_queue(q, GUC_CONTEXT_NORMAL);
>  		if (!lr)	/* LR jobs are emitted in the exec IOCTL */
>  			q->ring_ops->emit_job(job);
>  		submit_exec_queue(q);
> @@ -2347,6 +2351,35 @@ static void guc_exec_queue_print(struct xe_exec_queue *q, struct drm_printer *p)
>  	xe_guc_exec_queue_snapshot_free(snapshot);
>  }
>  
> +/**
> + * xe_guc_register_exec_queue - Register exec queue for a given context type.
> + * @q - Execution queue
> + * @ctx_type - Type of the context
> + *
> + * This function registers the execution queue with the guc. Special context
> + * types like GUC_CONTEXT_COMPRESSION_SAVE and GUC_CONTEXT_COMPRESSION_RESTORE
> + * are only applicable for IGPU and in the VF.
> + * Submits the execution queue to GUC after registering it.
> + *
> + * Returns - Success or asserts.

It always returns 0, so maybe just convert to void return.

> + */
> +int xe_guc_register_exec_queue(struct xe_exec_queue *q, int ctx_type)
> +{
> +	struct xe_guc *guc = exec_queue_to_guc(q);
> +	struct xe_device *xe = guc_to_xe(guc);
> +
> +	if (ctx_type != GUC_CONTEXT_NORMAL) {

I wouldn't expose this for GUC_CONTEXT_NORMAL as there is not a current
user and registering normal user contexts would like mess with internal
state machine / expose races.

If we want to expose this for normal queues, I think we'd need to think
it through more so best to disallow this or assert it is not normal.

> +		xe_assert(xe, IS_SRIOV_VF(xe) || !IS_DGFX(xe));
> +		xe_assert(xe, (ctx_type > GUC_CONTEXT_NORMAL &&
> +			       ctx_type < GUC_CONTEXT_MAX_TYPES));
> +	}
> +
> +	register_exec_queue(q, ctx_type);
> +	enable_scheduling(q);

I didn't see a reply to my question regarding if enabling scheduling is
required. Please follow up and answer.

> +
> +	return 0;
> +}
> +
>  /**
>   * xe_guc_submit_print - GuC Submit Print.
>   * @guc: GuC.
> diff --git a/drivers/gpu/drm/xe/xe_guc_submit.h b/drivers/gpu/drm/xe/xe_guc_submit.h
> index 9b71a986c6ca..f1a26d498339 100644
> --- a/drivers/gpu/drm/xe/xe_guc_submit.h
> +++ b/drivers/gpu/drm/xe/xe_guc_submit.h
> @@ -39,5 +39,6 @@ xe_guc_exec_queue_snapshot_print(struct xe_guc_submit_exec_queue_snapshot *snaps
>  void
>  xe_guc_exec_queue_snapshot_free(struct xe_guc_submit_exec_queue_snapshot *snapshot);
>  void xe_guc_submit_print(struct xe_guc *guc, struct drm_printer *p);
> +int xe_guc_register_exec_queue(struct xe_exec_queue *q, int ctx_type);
>  
>  #endif
> diff --git a/drivers/gpu/drm/xe/xe_migrate.c b/drivers/gpu/drm/xe/xe_migrate.c
> index d7f3009260ee..dbc1bbfc944f 100644
> --- a/drivers/gpu/drm/xe/xe_migrate.c
> +++ b/drivers/gpu/drm/xe/xe_migrate.c
> @@ -1038,6 +1038,28 @@ int xe_migrate_ccs_rw_copy(struct xe_migrate *m,
>  	return err;
>  }
>  
> +/**
> + * xe_get_migrate_lrc() - Get the LRC from migrate context.
> + * @migrate: Migrate context.
> + *
> + * Return: Pointer to LRC on success, error on failure
> + */
> +struct xe_lrc *xe_migrate_get_lrc(struct xe_migrate *migrate)
> +{
> +	return migrate->q->lrc[0];
> +}

s/xe_migrate_get_lrc/xe_migrate_lrc/

'get' generally implies a ref is taken.

> +
> +/**
> + * xe_get_migrate_exec_queue() - Get the execution queue from migrate context.
> + * @migrate: Migrate context.
> + *
> + * Return: Pointer to execution queue on success, error on failure
> + */
> +struct xe_exec_queue *xe_migrate_get_exec_queue(struct xe_migrate *migrate)
> +{
> +	return migrate->q;
> +}


s/xe_migrate_get_exec_queue/xe_migrate_exec_queue/

Maybe drop xe_tile_migrate_exec_queue too and use this new function.

> +
>  static void emit_clear_link_copy(struct xe_gt *gt, struct xe_bb *bb, u64 src_ofs,
>  				 u32 size, u32 pitch)
>  {
> diff --git a/drivers/gpu/drm/xe/xe_migrate.h b/drivers/gpu/drm/xe/xe_migrate.h
> index ab5ebb44d2c9..016747916c31 100644
> --- a/drivers/gpu/drm/xe/xe_migrate.h
> +++ b/drivers/gpu/drm/xe/xe_migrate.h
> @@ -116,6 +116,9 @@ int xe_migrate_ccs_rw_copy(struct xe_migrate *m,
>  			   struct xe_bo *src_bo,
>  			   int read_write);
>  
> +struct xe_lrc *xe_migrate_get_lrc(struct xe_migrate *migrate);
> +struct xe_exec_queue *xe_migrate_get_exec_queue(struct xe_migrate *migrate);
> +
>  int xe_migrate_access_memory(struct xe_migrate *m, struct xe_bo *bo,
>  			     unsigned long offset, void *buf, int len,
>  			     int write);
> diff --git a/drivers/gpu/drm/xe/xe_pm.c b/drivers/gpu/drm/xe/xe_pm.c
> index f64ebd7b854a..a47539ce98eb 100644
> --- a/drivers/gpu/drm/xe/xe_pm.c
> +++ b/drivers/gpu/drm/xe/xe_pm.c
> @@ -22,6 +22,7 @@
>  #include "xe_irq.h"
>  #include "xe_pcode.h"
>  #include "xe_pxp.h"
> +#include "xe_sriov_vf_ccs.h"
>  #include "xe_trace.h"
>  #include "xe_wa.h"
>  
> @@ -546,6 +547,9 @@ int xe_pm_runtime_resume(struct xe_device *xe)
>  
>  	xe_pxp_pm_resume(xe->pxp);
>  
> +	if (IS_SRIOV_VF(xe))
> +		xe_sriov_vf_ccs_register_context(xe);
> +
>  out:
>  	xe_rpm_lockmap_release(xe);
>  	xe_pm_write_callback_task(xe, NULL);
> diff --git a/drivers/gpu/drm/xe/xe_sriov_vf_ccs.c b/drivers/gpu/drm/xe/xe_sriov_vf_ccs.c
> index 4b5cfc0d421b..9afb652f6299 100644
> --- a/drivers/gpu/drm/xe/xe_sriov_vf_ccs.c
> +++ b/drivers/gpu/drm/xe/xe_sriov_vf_ccs.c
> @@ -8,6 +8,9 @@
>  #include "xe_bb.h"
>  #include "xe_bo.h"
>  #include "xe_device.h"
> +#include "xe_exec_queue_types.h"
> +#include "xe_guc_submit.h"
> +#include "xe_lrc.h"
>  #include "xe_migrate.h"
>  #include "xe_sa.h"
>  #include "xe_sriov_printk.h"
> @@ -140,6 +143,82 @@ static int alloc_bb_pool(struct xe_tile *tile, struct xe_tile_vf_ccs *ctx)
>  	return 0;
>  }
>  
> +static void ccs_rw_update_ring(struct xe_tile_vf_ccs *ctx)
> +{
> +	struct xe_lrc *lrc = xe_migrate_get_lrc(ctx->migrate);
> +	u32 addr = ctx->mem.ccs_bb_pool->gpu_addr;
> +	u32 dw[10], i = 0;
> +
> +	dw[i++] = MI_ARB_ON_OFF | MI_ARB_DISABLE;

See my lastest reply to patch #1 about a single BB vs. a list.

You are disabling preemption here, so if save / restore queue is
timesliced, this will explode in the GuC (i.e. it will likely run longer
that preemption timeout period and trigger an engine reset).

If the save / restore queue is not timesliced, then multiple BB for BOs
is useless.

Please follow on my comments in patch #1 and pick one the options laid
out.

> +	dw[i++] = MI_BATCH_BUFFER_START | XE_INSTR_NUM_DW(3);
> +	dw[i++] = addr;
> +	dw[i++] = 0;
> +	dw[i++] = MI_NOOP;
> +
> +	xe_lrc_write_ring(lrc, dw, i * sizeof(u32));
> +}
> +
> +static int register_save_restore_context(struct xe_migrate *m, int ctx_id)
> +{
> +	int err = -EINVAL;
> +	int ctx_type;
> +
> +	switch (ctx_id) {
> +	case XE_SRIOV_VF_CCS_READ_CTX:
> +		ctx_type = GUC_CONTEXT_COMPRESSION_SAVE;
> +		break;
> +	case XE_SRIOV_VF_CCS_WRITE_CTX:
> +		ctx_type = GUC_CONTEXT_COMPRESSION_RESTORE;
> +		break;
> +	default:
> +		return err;
> +	}
> +
> +	err = xe_guc_register_exec_queue(xe_migrate_get_exec_queue(m), ctx_type);
> +	return err;
> +}
> +
> +/**
> + * xe_sriov_vf_ccs_register_context - Register read/write contexts with guc.
> + * @xe: the &xe_device to register contexts on.
> + *
> + * This function registers read and write contexts with Guc. Re-registration
> + * is needed whenever resuming from pm runtime suspend.
> + *
> + * Return: 0 on success. Negative error code on failure.
> + */
> +int xe_sriov_vf_ccs_register_context(struct xe_device *xe)
> +{
> +	struct xe_tile_vf_ccs *ctx;
> +	struct xe_tile *tile;
> +	int tile_id, ctx_id;
> +	int err;
> +
> +	if (!IS_VF_CCS_READY(xe))
> +		return 0;
> +
> +	for_each_tile(tile, xe, tile_id) {
> +		for_each_ccs_rw_ctx(ctx_id) {
> +			ctx = &tile->sriov.vf.ccs[ctx_id];
> +			err = register_save_restore_context(ctx->migrate, ctx_id);

if (err)
	return err;

Matt

> +		}
> +	}
> +
> +	return err;
> +}
> +
> +static void xe_sriov_vf_ccs_fini(void *arg)
> +{
> +	struct xe_tile_vf_ccs *ctx = arg;
> +	struct xe_lrc *lrc = xe_migrate_get_lrc(ctx->migrate);
> +
> +	/*
> +	 * Make TAIL = HEAD in the ring so that no issues are seen if Guc
> +	 * submits this context to HW on VF pause after unbinding device.
> +	 */
> +	xe_lrc_set_ring_tail(lrc, xe_lrc_ring_head(lrc));
> +}
> +
>  /**
>   * xe_sriov_vf_ccs_init - Setup LRCA for save & restore.
>   * @xe: the &xe_device to start recovery on
> @@ -175,6 +254,16 @@ int xe_sriov_vf_ccs_init(struct xe_device *xe)
>  			err = alloc_bb_pool(tile, ctx);
>  			if (err)
>  				goto err_ret;
> +
> +			ccs_rw_update_ring(ctx);
> +
> +			err = register_save_restore_context(migrate, ctx_id);
> +			if (err)
> +				goto err_ret;
> +
> +			err = devm_add_action_or_reset(xe->drm.dev,
> +						       xe_sriov_vf_ccs_fini,
> +						       ctx);
>  		}
>  	}
>  
> diff --git a/drivers/gpu/drm/xe/xe_sriov_vf_ccs.h b/drivers/gpu/drm/xe/xe_sriov_vf_ccs.h
> index 5d5e4bd25904..1f1baf685fec 100644
> --- a/drivers/gpu/drm/xe/xe_sriov_vf_ccs.h
> +++ b/drivers/gpu/drm/xe/xe_sriov_vf_ccs.h
> @@ -12,5 +12,6 @@ struct xe_bo;
>  int xe_sriov_vf_ccs_init(struct xe_device *xe);
>  int xe_sriov_vf_ccs_attach_bo(struct xe_bo *bo);
>  int xe_sriov_vf_ccs_detach_bo(struct xe_bo *bo);
> +int xe_sriov_vf_ccs_register_context(struct xe_device *xe);
>  
>  #endif
> -- 
> 2.43.0
> 

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

* RE: [PATCH v6 3/3] drm/xe/vf: Register CCS read/write contexts with Guc
  2025-06-09 16:28   ` Matthew Brost
@ 2025-06-16 14:55     ` K V P, Satyanarayana
  0 siblings, 0 replies; 23+ messages in thread
From: K V P, Satyanarayana @ 2025-06-16 14:55 UTC (permalink / raw)
  To: Brost, Matthew
  Cc: intel-xe@lists.freedesktop.org, Wajdeczko, Michal,
	Winiarski, Michal, Lis, Tomasz, Auld, Matthew, Maarten Lankhorst,
	K V P, Satyanarayana

Hi.
> -----Original Message-----
> From: Brost, Matthew <matthew.brost@intel.com>
> Sent: Monday, June 9, 2025 9:59 PM
> To: K V P, Satyanarayana <satyanarayana.k.v.p@intel.com>
> Cc: intel-xe@lists.freedesktop.org; Wajdeczko, Michal
> <Michal.Wajdeczko@intel.com>; Winiarski, Michal
> <michal.winiarski@intel.com>; Lis, Tomasz <tomasz.lis@intel.com>; Auld,
> Matthew <matthew.auld@intel.com>; Maarten Lankhorst
> <maarten.lankhorst@linux.intel.com>
> Subject: Re: [PATCH v6 3/3] drm/xe/vf: Register CCS read/write contexts with
> Guc
> 
> On Fri, Jun 06, 2025 at 06:15:58PM +0530, Satyanarayana K V P wrote:
> > Register read write contexts with newly added flags with GUC and
> > enable the context immediately after registration.
> > Re-register the context with Guc when resuming from runtime suspend as
> > soft reset is applied to Guc during xe_pm_runtime_resume().
> > Make Ring head=tail while unbinding device to avoid issues with VF pause
> > after device is unbinded.
> >
> > Signed-off-by: Satyanarayana K V P <satyanarayana.k.v.p@intel.com>
> > ---
> > Cc: Michal Wajdeczko <michal.wajdeczko@intel.com>
> > Cc: Michał Winiarski <michal.winiarski@intel.com>
> > Cc: Tomasz Lis <tomasz.lis@intel.com>
> > Cc: Matthew Brost <matthew.brost@intel.com>
> > Cc: Matthew Auld <matthew.auld@intel.com>
> > Cc: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
> >
> > V5 -> V6:
> > - None
> >
> > V4 -> V5:
> > - Fixed review comments (Matthew Brost).
> >
> > V3 -> V4:
> > - Fixed issues reported by patchworks.
> >
> > V2 -> V3:
> > - Made xe_migrate structure private as per review comments.
> > - Created new xe_migrate functions to get lrc and exec_queue.
> >
> > V1 -> V2:
> > - Fixed review comments.
> > ---
> >  drivers/gpu/drm/xe/xe_guc_fwif.h     |  5 ++
> >  drivers/gpu/drm/xe/xe_guc_submit.c   | 37 +++++++++++-
> >  drivers/gpu/drm/xe/xe_guc_submit.h   |  1 +
> >  drivers/gpu/drm/xe/xe_migrate.c      | 22 +++++++
> >  drivers/gpu/drm/xe/xe_migrate.h      |  3 +
> >  drivers/gpu/drm/xe/xe_pm.c           |  4 ++
> >  drivers/gpu/drm/xe/xe_sriov_vf_ccs.c | 89
> ++++++++++++++++++++++++++++
> >  drivers/gpu/drm/xe/xe_sriov_vf_ccs.h |  1 +
> >  8 files changed, 160 insertions(+), 2 deletions(-)
> >
> > diff --git a/drivers/gpu/drm/xe/xe_guc_fwif.h
> b/drivers/gpu/drm/xe/xe_guc_fwif.h
> > index 6f57578b07cb..71a5208d0316 100644
> > --- a/drivers/gpu/drm/xe/xe_guc_fwif.h
> > +++ b/drivers/gpu/drm/xe/xe_guc_fwif.h
> > @@ -45,6 +45,11 @@
> >  #define GUC_MAX_ENGINE_CLASSES		16
> >  #define GUC_MAX_INSTANCES_PER_CLASS	32
> >
> > +#define GUC_CONTEXT_NORMAL			0
> > +#define GUC_CONTEXT_COMPRESSION_SAVE		1
> > +#define GUC_CONTEXT_COMPRESSION_RESTORE	2
> > +#define GUC_CONTEXT_MAX_TYPES
> 	(GUC_CONTEXT_COMPRESSION_RESTORE + 1)
> 
> s/GUC_CONTEXT_MAX_TYPES/GUC_CONTEXT_COUNT
> 
Fixed in new revision.
> > +
> >  /* Helper for context registration H2G */
> >  struct guc_ctxt_registration_info {
> >  	u32 flags;
> > diff --git a/drivers/gpu/drm/xe/xe_guc_submit.c
> b/drivers/gpu/drm/xe/xe_guc_submit.c
> > index 80f748baad3f..4e1423b0f07c 100644
> > --- a/drivers/gpu/drm/xe/xe_guc_submit.c
> > +++ b/drivers/gpu/drm/xe/xe_guc_submit.c
> > @@ -531,7 +531,7 @@ static void __register_exec_queue(struct xe_guc
> *guc,
> >  	xe_guc_ct_send(&guc->ct, action, ARRAY_SIZE(action), 0, 0);
> >  }
> >
> > -static void register_exec_queue(struct xe_exec_queue *q)
> > +static void register_exec_queue(struct xe_exec_queue *q, int ctx_type)
> >  {
> >  	struct xe_guc *guc = exec_queue_to_guc(q);
> >  	struct xe_device *xe = guc_to_xe(guc);
> > @@ -539,6 +539,7 @@ static void register_exec_queue(struct
> xe_exec_queue *q)
> >  	struct guc_ctxt_registration_info info;
> >
> >  	xe_gt_assert(guc_to_gt(guc), !exec_queue_registered(q));
> > +	xe_gt_assert(guc_to_gt(guc), ctx_type < GUC_CONTEXT_MAX_TYPES);
> >
> >  	memset(&info, 0, sizeof(info));
> >  	info.context_idx = q->guc->id;
> > @@ -548,6 +549,9 @@ static void register_exec_queue(struct
> xe_exec_queue *q)
> >  	info.hwlrca_hi = upper_32_bits(xe_lrc_descriptor(lrc));
> >  	info.flags = CONTEXT_REGISTRATION_FLAG_KMD;
> >
> > +	if (ctx_type != GUC_CONTEXT_NORMAL)
> > +		info.flags |= BIT(ctx_type);
> > +
> >  	if (xe_exec_queue_is_parallel(q)) {
> >  		u64 ggtt_addr = xe_lrc_parallel_ggtt_addr(lrc);
> >  		struct iosys_map map = xe_lrc_parallel_map(lrc);
> > @@ -750,7 +754,7 @@ guc_exec_queue_run_job(struct drm_sched_job
> *drm_job)
> >
> >  	if (!exec_queue_killed_or_banned_or_wedged(q) &&
> !xe_sched_job_is_error(job)) {
> >  		if (!exec_queue_registered(q))
> > -			register_exec_queue(q);
> > +			register_exec_queue(q, GUC_CONTEXT_NORMAL);
> >  		if (!lr)	/* LR jobs are emitted in the exec IOCTL */
> >  			q->ring_ops->emit_job(job);
> >  		submit_exec_queue(q);
> > @@ -2347,6 +2351,35 @@ static void guc_exec_queue_print(struct
> xe_exec_queue *q, struct drm_printer *p)
> >  	xe_guc_exec_queue_snapshot_free(snapshot);
> >  }
> >
> > +/**
> > + * xe_guc_register_exec_queue - Register exec queue for a given context
> type.
> > + * @q - Execution queue
> > + * @ctx_type - Type of the context
> > + *
> > + * This function registers the execution queue with the guc. Special context
> > + * types like GUC_CONTEXT_COMPRESSION_SAVE and
> GUC_CONTEXT_COMPRESSION_RESTORE
> > + * are only applicable for IGPU and in the VF.
> > + * Submits the execution queue to GUC after registering it.
> > + *
> > + * Returns - Success or asserts.
> 
> It always returns 0, so maybe just convert to void return.
> 
Fixed in new revision.
> > + */
> > +int xe_guc_register_exec_queue(struct xe_exec_queue *q, int ctx_type)
> > +{
> > +	struct xe_guc *guc = exec_queue_to_guc(q);
> > +	struct xe_device *xe = guc_to_xe(guc);
> > +
> > +	if (ctx_type != GUC_CONTEXT_NORMAL) {
> 
> I wouldn't expose this for GUC_CONTEXT_NORMAL as there is not a current
> user and registering normal user contexts would like mess with internal
> state machine / expose races.
> 
> If we want to expose this for normal queues, I think we'd need to think
> it through more so best to disallow this or assert it is not normal.
> 
> > +		xe_assert(xe, IS_SRIOV_VF(xe) || !IS_DGFX(xe));
> > +		xe_assert(xe, (ctx_type > GUC_CONTEXT_NORMAL &&
> > +			       ctx_type < GUC_CONTEXT_MAX_TYPES));
> > +	}
> > +
> > +	register_exec_queue(q, ctx_type);
> > +	enable_scheduling(q);
> 
> I didn't see a reply to my question regarding if enabling scheduling is
> required. Please follow up and answer.
> 
Checked with Guc team. We need to both register and enable the context. Guc will not submit to HW until
the context is made runnable even if it is special save/restore context also.
> > +
> > +	return 0;
> > +}
> > +
> >  /**
> >   * xe_guc_submit_print - GuC Submit Print.
> >   * @guc: GuC.
> > diff --git a/drivers/gpu/drm/xe/xe_guc_submit.h
> b/drivers/gpu/drm/xe/xe_guc_submit.h
> > index 9b71a986c6ca..f1a26d498339 100644
> > --- a/drivers/gpu/drm/xe/xe_guc_submit.h
> > +++ b/drivers/gpu/drm/xe/xe_guc_submit.h
> > @@ -39,5 +39,6 @@ xe_guc_exec_queue_snapshot_print(struct
> xe_guc_submit_exec_queue_snapshot *snaps
> >  void
> >  xe_guc_exec_queue_snapshot_free(struct
> xe_guc_submit_exec_queue_snapshot *snapshot);
> >  void xe_guc_submit_print(struct xe_guc *guc, struct drm_printer *p);
> > +int xe_guc_register_exec_queue(struct xe_exec_queue *q, int ctx_type);
> >
> >  #endif
> > diff --git a/drivers/gpu/drm/xe/xe_migrate.c
> b/drivers/gpu/drm/xe/xe_migrate.c
> > index d7f3009260ee..dbc1bbfc944f 100644
> > --- a/drivers/gpu/drm/xe/xe_migrate.c
> > +++ b/drivers/gpu/drm/xe/xe_migrate.c
> > @@ -1038,6 +1038,28 @@ int xe_migrate_ccs_rw_copy(struct xe_migrate
> *m,
> >  	return err;
> >  }
> >
> > +/**
> > + * xe_get_migrate_lrc() - Get the LRC from migrate context.
> > + * @migrate: Migrate context.
> > + *
> > + * Return: Pointer to LRC on success, error on failure
> > + */
> > +struct xe_lrc *xe_migrate_get_lrc(struct xe_migrate *migrate)
> > +{
> > +	return migrate->q->lrc[0];
> > +}
> 
> s/xe_migrate_get_lrc/xe_migrate_lrc/
> 
> 'get' generally implies a ref is taken.
> 
Fixed in new revision.
> > +
> > +/**
> > + * xe_get_migrate_exec_queue() - Get the execution queue from migrate
> context.
> > + * @migrate: Migrate context.
> > + *
> > + * Return: Pointer to execution queue on success, error on failure
> > + */
> > +struct xe_exec_queue *xe_migrate_get_exec_queue(struct xe_migrate
> *migrate)
> > +{
> > +	return migrate->q;
> > +}
> 
> 
> s/xe_migrate_get_exec_queue/xe_migrate_exec_queue/
> 
> Maybe drop xe_tile_migrate_exec_queue too and use this new function.
> 
Fixed in new revision.
> > +
> >  static void emit_clear_link_copy(struct xe_gt *gt, struct xe_bb *bb, u64
> src_ofs,
> >  				 u32 size, u32 pitch)
> >  {
> > diff --git a/drivers/gpu/drm/xe/xe_migrate.h
> b/drivers/gpu/drm/xe/xe_migrate.h
> > index ab5ebb44d2c9..016747916c31 100644
> > --- a/drivers/gpu/drm/xe/xe_migrate.h
> > +++ b/drivers/gpu/drm/xe/xe_migrate.h
> > @@ -116,6 +116,9 @@ int xe_migrate_ccs_rw_copy(struct xe_migrate *m,
> >  			   struct xe_bo *src_bo,
> >  			   int read_write);
> >
> > +struct xe_lrc *xe_migrate_get_lrc(struct xe_migrate *migrate);
> > +struct xe_exec_queue *xe_migrate_get_exec_queue(struct xe_migrate
> *migrate);
> > +
> >  int xe_migrate_access_memory(struct xe_migrate *m, struct xe_bo *bo,
> >  			     unsigned long offset, void *buf, int len,
> >  			     int write);
> > diff --git a/drivers/gpu/drm/xe/xe_pm.c b/drivers/gpu/drm/xe/xe_pm.c
> > index f64ebd7b854a..a47539ce98eb 100644
> > --- a/drivers/gpu/drm/xe/xe_pm.c
> > +++ b/drivers/gpu/drm/xe/xe_pm.c
> > @@ -22,6 +22,7 @@
> >  #include "xe_irq.h"
> >  #include "xe_pcode.h"
> >  #include "xe_pxp.h"
> > +#include "xe_sriov_vf_ccs.h"
> >  #include "xe_trace.h"
> >  #include "xe_wa.h"
> >
> > @@ -546,6 +547,9 @@ int xe_pm_runtime_resume(struct xe_device *xe)
> >
> >  	xe_pxp_pm_resume(xe->pxp);
> >
> > +	if (IS_SRIOV_VF(xe))
> > +		xe_sriov_vf_ccs_register_context(xe);
> > +
> >  out:
> >  	xe_rpm_lockmap_release(xe);
> >  	xe_pm_write_callback_task(xe, NULL);
> > diff --git a/drivers/gpu/drm/xe/xe_sriov_vf_ccs.c
> b/drivers/gpu/drm/xe/xe_sriov_vf_ccs.c
> > index 4b5cfc0d421b..9afb652f6299 100644
> > --- a/drivers/gpu/drm/xe/xe_sriov_vf_ccs.c
> > +++ b/drivers/gpu/drm/xe/xe_sriov_vf_ccs.c
> > @@ -8,6 +8,9 @@
> >  #include "xe_bb.h"
> >  #include "xe_bo.h"
> >  #include "xe_device.h"
> > +#include "xe_exec_queue_types.h"
> > +#include "xe_guc_submit.h"
> > +#include "xe_lrc.h"
> >  #include "xe_migrate.h"
> >  #include "xe_sa.h"
> >  #include "xe_sriov_printk.h"
> > @@ -140,6 +143,82 @@ static int alloc_bb_pool(struct xe_tile *tile, struct
> xe_tile_vf_ccs *ctx)
> >  	return 0;
> >  }
> >
> > +static void ccs_rw_update_ring(struct xe_tile_vf_ccs *ctx)
> > +{
> > +	struct xe_lrc *lrc = xe_migrate_get_lrc(ctx->migrate);
> > +	u32 addr = ctx->mem.ccs_bb_pool->gpu_addr;
> > +	u32 dw[10], i = 0;
> > +
> > +	dw[i++] = MI_ARB_ON_OFF | MI_ARB_DISABLE;
> 
> See my lastest reply to patch #1 about a single BB vs. a list.
> 
> You are disabling preemption here, so if save / restore queue is
> timesliced, this will explode in the GuC (i.e. it will likely run longer
> that preemption timeout period and trigger an engine reset).
> 
> If the save / restore queue is not timesliced, then multiple BB for BOs
> is useless.
> 
> Please follow on my comments in patch #1 and pick one the options laid
> out.
> 
Created a single big batch buffer and with pre-emption off.
> > +	dw[i++] = MI_BATCH_BUFFER_START | XE_INSTR_NUM_DW(3);
> > +	dw[i++] = addr;
> > +	dw[i++] = 0;
> > +	dw[i++] = MI_NOOP;
> > +
> > +	xe_lrc_write_ring(lrc, dw, i * sizeof(u32));
> > +}
> > +
> > +static int register_save_restore_context(struct xe_migrate *m, int ctx_id)
> > +{
> > +	int err = -EINVAL;
> > +	int ctx_type;
> > +
> > +	switch (ctx_id) {
> > +	case XE_SRIOV_VF_CCS_READ_CTX:
> > +		ctx_type = GUC_CONTEXT_COMPRESSION_SAVE;
> > +		break;
> > +	case XE_SRIOV_VF_CCS_WRITE_CTX:
> > +		ctx_type = GUC_CONTEXT_COMPRESSION_RESTORE;
> > +		break;
> > +	default:
> > +		return err;
> > +	}
> > +
> > +	err = xe_guc_register_exec_queue(xe_migrate_get_exec_queue(m),
> ctx_type);
> > +	return err;
> > +}
> > +
> > +/**
> > + * xe_sriov_vf_ccs_register_context - Register read/write contexts with guc.
> > + * @xe: the &xe_device to register contexts on.
> > + *
> > + * This function registers read and write contexts with Guc. Re-registration
> > + * is needed whenever resuming from pm runtime suspend.
> > + *
> > + * Return: 0 on success. Negative error code on failure.
> > + */
> > +int xe_sriov_vf_ccs_register_context(struct xe_device *xe)
> > +{
> > +	struct xe_tile_vf_ccs *ctx;
> > +	struct xe_tile *tile;
> > +	int tile_id, ctx_id;
> > +	int err;
> > +
> > +	if (!IS_VF_CCS_READY(xe))
> > +		return 0;
> > +
> > +	for_each_tile(tile, xe, tile_id) {
> > +		for_each_ccs_rw_ctx(ctx_id) {
> > +			ctx = &tile->sriov.vf.ccs[ctx_id];
> > +			err = register_save_restore_context(ctx->migrate,
> ctx_id);
> 
> if (err)
> 	return err;
> 
> Matt
> 
Fixed in new revision.
-Satya.
> > +		}
> > +	}
> > +
> > +	return err;
> > +}
> > +
> > +static void xe_sriov_vf_ccs_fini(void *arg)
> > +{
> > +	struct xe_tile_vf_ccs *ctx = arg;
> > +	struct xe_lrc *lrc = xe_migrate_get_lrc(ctx->migrate);
> > +
> > +	/*
> > +	 * Make TAIL = HEAD in the ring so that no issues are seen if Guc
> > +	 * submits this context to HW on VF pause after unbinding device.
> > +	 */
> > +	xe_lrc_set_ring_tail(lrc, xe_lrc_ring_head(lrc));
> > +}
> > +
> >  /**
> >   * xe_sriov_vf_ccs_init - Setup LRCA for save & restore.
> >   * @xe: the &xe_device to start recovery on
> > @@ -175,6 +254,16 @@ int xe_sriov_vf_ccs_init(struct xe_device *xe)
> >  			err = alloc_bb_pool(tile, ctx);
> >  			if (err)
> >  				goto err_ret;
> > +
> > +			ccs_rw_update_ring(ctx);
> > +
> > +			err = register_save_restore_context(migrate, ctx_id);
> > +			if (err)
> > +				goto err_ret;
> > +
> > +			err = devm_add_action_or_reset(xe->drm.dev,
> > +						       xe_sriov_vf_ccs_fini,
> > +						       ctx);
> >  		}
> >  	}
> >
> > diff --git a/drivers/gpu/drm/xe/xe_sriov_vf_ccs.h
> b/drivers/gpu/drm/xe/xe_sriov_vf_ccs.h
> > index 5d5e4bd25904..1f1baf685fec 100644
> > --- a/drivers/gpu/drm/xe/xe_sriov_vf_ccs.h
> > +++ b/drivers/gpu/drm/xe/xe_sriov_vf_ccs.h
> > @@ -12,5 +12,6 @@ struct xe_bo;
> >  int xe_sriov_vf_ccs_init(struct xe_device *xe);
> >  int xe_sriov_vf_ccs_attach_bo(struct xe_bo *bo);
> >  int xe_sriov_vf_ccs_detach_bo(struct xe_bo *bo);
> > +int xe_sriov_vf_ccs_register_context(struct xe_device *xe);
> >
> >  #endif
> > --
> > 2.43.0
> >

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

* RE: [PATCH v6 2/3] drm/xe/vf: Attach and detach CCS copy commands with BO
  2025-06-09 16:06       ` Matthew Brost
@ 2025-06-16 14:57         ` K V P, Satyanarayana
  0 siblings, 0 replies; 23+ messages in thread
From: K V P, Satyanarayana @ 2025-06-16 14:57 UTC (permalink / raw)
  To: Brost, Matthew
  Cc: intel-xe@lists.freedesktop.org, Wajdeczko, Michal,
	Winiarski, Michal, Lis, Tomasz, Auld, Matthew,
	K V P, Satyanarayana

Hi.
> -----Original Message-----
> From: Brost, Matthew <matthew.brost@intel.com>
> Sent: Monday, June 9, 2025 9:37 PM
> To: K V P, Satyanarayana <satyanarayana.k.v.p@intel.com>
> Cc: intel-xe@lists.freedesktop.org; Wajdeczko, Michal
> <Michal.Wajdeczko@intel.com>; Winiarski, Michal
> <michal.winiarski@intel.com>; Lis, Tomasz <tomasz.lis@intel.com>; Auld,
> Matthew <matthew.auld@intel.com>
> Subject: Re: [PATCH v6 2/3] drm/xe/vf: Attach and detach CCS copy
> commands with BO
> 
> On Mon, Jun 09, 2025 at 06:00:40AM -0600, K V P, Satyanarayana wrote:
> > Hi.
> > > -----Original Message-----
> > > From: Brost, Matthew <matthew.brost@intel.com>
> > > Sent: Friday, June 6, 2025 11:08 PM
> > > To: K V P, Satyanarayana <satyanarayana.k.v.p@intel.com>
> > > Cc: intel-xe@lists.freedesktop.org; Wajdeczko, Michal
> > > <Michal.Wajdeczko@intel.com>; Winiarski, Michal
> > > <michal.winiarski@intel.com>; Lis, Tomasz <tomasz.lis@intel.com>; Auld,
> > > Matthew <matthew.auld@intel.com>
> > > Subject: Re: [PATCH v6 2/3] drm/xe/vf: Attach and detach CCS copy
> > > commands with BO
> > >
> > > On Fri, Jun 06, 2025 at 06:15:57PM +0530, Satyanarayana K V P wrote:
> > > > Attach CCS read/write copy commands to BO for old and new mem types
> as
> > > > NULL -> tt or system -> tt.
> > > > Detach the CCS read/write copy commands from BO while deleting ttm
> bo
> > > > from xe_ttm_bo_delete_mem_notify().
> > > >
> > > > Signed-off-by: Satyanarayana K V P <satyanarayana.k.v.p@intel.com>
> > > > ---
> > > > Cc: Michal Wajdeczko <michal.wajdeczko@intel.com>
> > > > Cc: Michał Winiarski <michal.winiarski@intel.com>
> > > > Cc: Tomasz Lis <tomasz.lis@intel.com>
> > > > Cc: Matthew Brost <matthew.brost@intel.com>
> > > > Cc: Matthew Auld <matthew.auld@intel.com>
> > > >
> > > > V5 -> V6:
> > > > - Removed dead code from xe_migrate_ccs_rw_copy() function.
> (Matthew
> > > Brost)
> > > >
> > > > V4 -> V5:
> > > > - Create a list of BBs for the given BO and fixed memory leak while
> > > >   detaching BOs. (Matthew Brost).
> > >
> > > I'd still personally prefer a single BB per BO rather than having a
> > > list. Unless I'm missing something, I think that would work and would be
> > > cleaner. Any particular reason you went with a list of BB over a single
> > > BB?
> > >
Fixed in new revision.
> > If the provided size is more than max_mem_transfer_per_pass(), then the
> copy is divided into chunks.
> > The max_mem_transfer_per_pass = MAX_CCS_LIMITED_TRANSFER = 4MB.
> 
> The only reason max_mem_transfer_per_pass() exists is so the migration
> queue issues jobs that run in a reasonable amount of time and engine
> which the queue runs on can be safely shared without migration queue
> hogging the timeslices or in worst case getting a preemption timeout
> causing a queue reset.
> 
> Do the save / restore queues get timesliced once execution starts? I
> suspect not but you should follow up with the arch / GuC team on this.
> Also you'd need to insert explict preemption points into the BBs if this
> is a concern which this series is not doing.
> 
> > For buffer sizes bigger than 4MB, we get more BBs and so, created a list to
> track and free them.
> > The Head of the list is stored in the BO, and list is parsed only when more BBs
> are available in the list.
> > For 98% of the cases, only one BB was allocated when checked with 3D
> benchmark.
> 
> I understand what the code is doing - I'm asking for a justification of
> using a list vs. a single BB allocation, see above.
> 
> If save / restore queues do not get timesliced, then refactor the code
> for one BB per BO, IMO much cleaner.
> 
> If save / restore queues do get timesliced, then you need add explict
> preemption points (MI_ARB_CHECK instruction) into each BB after each
> copy.
> 
> Matt
> 
> > -Satya.
> > > > - Fixed review comments (Matthew Brost & Matthew Auld).
> > > > - Yet to cleanup xe_migrate_ccs_rw_copy() function.
> > > >
> > > > V3 -> V4:
> > > > - Fixed issues reported by patchworks.
> > > >
> > > > V2 -> V3:
> > > > - Attach and detach functions check for IS_VF_CCS_READY().
> > > >
> > > > V1 -> V2:
> > > > - Fixed review comments.
> > > > ---
> > > >  drivers/gpu/drm/xe/xe_bb.c                 | 34 ++++++++
> > > >  drivers/gpu/drm/xe/xe_bb.h                 |  3 +
> > > >  drivers/gpu/drm/xe/xe_bb_types.h           |  1 +
> > > >  drivers/gpu/drm/xe/xe_bo.c                 | 23 +++++
> > > >  drivers/gpu/drm/xe/xe_bo_types.h           |  3 +
> > > >  drivers/gpu/drm/xe/xe_migrate.c            | 98
> ++++++++++++++++++++++
> > > >  drivers/gpu/drm/xe/xe_migrate.h            |  4 +
> > > >  drivers/gpu/drm/xe/xe_sriov_vf_ccs.c       | 77 +++++++++++++++++
> > > >  drivers/gpu/drm/xe/xe_sriov_vf_ccs.h       |  3 +
> > > >  drivers/gpu/drm/xe/xe_sriov_vf_ccs_types.h |  8 ++
> > > >  10 files changed, 254 insertions(+)
> > > >
> > > > diff --git a/drivers/gpu/drm/xe/xe_bb.c b/drivers/gpu/drm/xe/xe_bb.c
> > > > index 9570672fce33..ee31556e00bc 100644
> > > > --- a/drivers/gpu/drm/xe/xe_bb.c
> > > > +++ b/drivers/gpu/drm/xe/xe_bb.c
> > > > @@ -60,6 +60,40 @@ struct xe_bb *xe_bb_new(struct xe_gt *gt, u32
> > > dwords, bool usm)
> > > >  	return ERR_PTR(err);
> > > >  }
> > > >
> > > > +struct xe_bb *xe_bb_ccs_new(struct xe_gt *gt, u32 dwords,
> > > > +			    enum xe_sriov_vf_ccs_rw_ctxs ctx_id)
> > > > +{
> > > > +	struct xe_bb *bb = kmalloc(sizeof(*bb), GFP_KERNEL);
> > > > +	struct xe_tile *tile = gt_to_tile(gt);
> > > > +	struct xe_sa_manager *bb_pool;
> > > > +	int err;
> > > > +
> > > > +	if (!bb)
> > > > +		return ERR_PTR(-ENOMEM);
> > > > +
> > > > +	/*
> > > > +	 * We need to allocate space for the requested number of dwords,
> > > > +	 * one additional MI_BATCH_BUFFER_END dword, and additional
> > > buffer
> > > > +	 * space to accommodate the platform-specific hardware prefetch
> > > > +	 * requirements.
> > > > +	 */
> > > > +	bb_pool = tile->sriov.vf.ccs[ctx_id].mem.ccs_bb_pool;
> > > > +	bb->bo = xe_sa_bo_new(bb_pool, 4 * (dwords + 1) +
> > > bb_prefetch(gt));
> > > > +
> > > > +	if (IS_ERR(bb->bo)) {
> > > > +		err = PTR_ERR(bb->bo);
> > > > +		goto err;
> > > > +	}
> > > > +
> > > > +	bb->cs = xe_sa_bo_cpu_addr(bb->bo);
> > > > +	bb->len = 0;
> > > > +
> > > > +	return bb;
> > > > +err:
> > > > +	kfree(bb);
> > > > +	return ERR_PTR(err);
> > > > +}
> > > > +
> > > >  static struct xe_sched_job *
> > > >  __xe_bb_create_job(struct xe_exec_queue *q, struct xe_bb *bb, u64
> *addr)
> > > >  {
> > > > diff --git a/drivers/gpu/drm/xe/xe_bb.h b/drivers/gpu/drm/xe/xe_bb.h
> > > > index fafacd73dcc3..32c9c4c5d2be 100644
> > > > --- a/drivers/gpu/drm/xe/xe_bb.h
> > > > +++ b/drivers/gpu/drm/xe/xe_bb.h
> > > > @@ -13,8 +13,11 @@ struct dma_fence;
> > > >  struct xe_gt;
> > > >  struct xe_exec_queue;
> > > >  struct xe_sched_job;
> > > > +enum xe_sriov_vf_ccs_rw_ctxs;
> > > >
> > > >  struct xe_bb *xe_bb_new(struct xe_gt *gt, u32 size, bool usm);
> > > > +struct xe_bb *xe_bb_ccs_new(struct xe_gt *gt, u32 dwords,
> > > > +			    enum xe_sriov_vf_ccs_rw_ctxs ctx_id);
> > > >  struct xe_sched_job *xe_bb_create_job(struct xe_exec_queue *q,
> > > >  				      struct xe_bb *bb);
> > > >  struct xe_sched_job *xe_bb_create_migration_job(struct xe_exec_queue
> > > *q,
> > > > diff --git a/drivers/gpu/drm/xe/xe_bb_types.h
> > > b/drivers/gpu/drm/xe/xe_bb_types.h
> > > > index b7d30308cf90..b2358cc051ff 100644
> > > > --- a/drivers/gpu/drm/xe/xe_bb_types.h
> > > > +++ b/drivers/gpu/drm/xe/xe_bb_types.h
> > > > @@ -12,6 +12,7 @@ struct drm_suballoc;
> > > >
> > > >  struct xe_bb {
> > > >  	struct drm_suballoc *bo;
> > > > +	struct list_head list;
> > > >
> > > >  	u32 *cs;
> > > >  	u32 len; /* in dwords */
> > > > diff --git a/drivers/gpu/drm/xe/xe_bo.c b/drivers/gpu/drm/xe/xe_bo.c
> > > > index 61d208c85281..b2ed5a36ab3d 100644
> > > > --- a/drivers/gpu/drm/xe/xe_bo.c
> > > > +++ b/drivers/gpu/drm/xe/xe_bo.c
> > > > @@ -31,6 +31,7 @@
> > > >  #include "xe_pxp.h"
> > > >  #include "xe_res_cursor.h"
> > > >  #include "xe_shrinker.h"
> > > > +#include "xe_sriov_vf_ccs.h"
> > > >  #include "xe_trace_bo.h"
> > > >  #include "xe_ttm_stolen_mgr.h"
> > > >  #include "xe_vm.h"
> > > > @@ -948,6 +949,20 @@ static int xe_bo_move(struct ttm_buffer_object
> > > *ttm_bo, bool evict,
> > > >  	dma_fence_put(fence);
> > > >  	xe_pm_runtime_put(xe);
> > > >
> > > > +	/*
> > > > +	 * CCS meta data is migrated from TT -> SMEM. So, let us detach the
> > > > +	 * BBs from BO as it is no longer needed.
> > > > +	 */
> > > > +	if (IS_VF_CCS_BB_VALID(xe, bo) && old_mem_type == XE_PL_TT &&
> > > > +	    new_mem->mem_type == XE_PL_SYSTEM)
> > > > +		xe_sriov_vf_ccs_detach_bo(bo);
> > > > +
> > > > +	if (IS_SRIOV_VF(xe) &&
> > > > +	    ((move_lacks_source && new_mem->mem_type == XE_PL_TT) ||
> > > > +	     (old_mem_type == XE_PL_SYSTEM && new_mem->mem_type ==
> > > XE_PL_TT)) &&
> > > > +	    handle_system_ccs)
> > > > +		ret = xe_sriov_vf_ccs_attach_bo(bo);
> > > > +
> > > >  out:
> > > >  	if ((!ttm_bo->resource || ttm_bo->resource->mem_type ==
> > > XE_PL_SYSTEM) &&
> > > >  	    ttm_bo->ttm) {
> > > > @@ -958,6 +973,9 @@ static int xe_bo_move(struct ttm_buffer_object
> > > *ttm_bo, bool evict,
> > > >  		if (timeout < 0)
> > > >  			ret = timeout;
> > > >
> > > > +		if (IS_VF_CCS_BB_VALID(xe, bo))
> > > > +			xe_sriov_vf_ccs_detach_bo(bo);
> > > > +
> > > >  		xe_tt_unmap_sg(ttm_bo->ttm);
> > > >  	}
> > > >
> > > > @@ -1482,9 +1500,14 @@ static void xe_ttm_bo_release_notify(struct
> > > ttm_buffer_object *ttm_bo)
> > > >
> > > >  static void xe_ttm_bo_delete_mem_notify(struct ttm_buffer_object
> > > *ttm_bo)
> > > >  {
> > > > +	struct xe_bo *bo = ttm_to_xe_bo(ttm_bo);
> > > > +
> > > >  	if (!xe_bo_is_xe_bo(ttm_bo))
> > > >  		return;
> > > >
> > > > +	if (IS_VF_CCS_BB_VALID(ttm_to_xe_device(ttm_bo->bdev), bo))
> > > > +		xe_sriov_vf_ccs_detach_bo(bo);
> > > > +
> > > >  	/*
> > > >  	 * Object is idle and about to be destroyed. Release the
> > > >  	 * dma-buf attachment.
> > > > diff --git a/drivers/gpu/drm/xe/xe_bo_types.h
> > > b/drivers/gpu/drm/xe/xe_bo_types.h
> > > > index eb5e83c5f233..481b8e0d8ab1 100644
> > > > --- a/drivers/gpu/drm/xe/xe_bo_types.h
> > > > +++ b/drivers/gpu/drm/xe/xe_bo_types.h
> > > > @@ -78,6 +78,9 @@ struct xe_bo {
> > > >  	/** @ccs_cleared */
> > > >  	bool ccs_cleared;
> > > >
> > > > +	/** @bb_ccs_rw: BB instructions of CCS read/write. Valid only for VF
> > > */
> > > > +	struct xe_bb *bb_ccs[XE_SRIOV_VF_CCS_RW_MAX_CTXS];
> > > > +
> > > >  	/**
> > > >  	 * @cpu_caching: CPU caching mode. Currently only used for
> > > userspace
> > > >  	 * objects. Exceptions are system memory on DGFX, which is always
> > > > diff --git a/drivers/gpu/drm/xe/xe_migrate.c
> > > b/drivers/gpu/drm/xe/xe_migrate.c
> > > > index 8f8e9fdfb2a8..d7f3009260ee 100644
> > > > --- a/drivers/gpu/drm/xe/xe_migrate.c
> > > > +++ b/drivers/gpu/drm/xe/xe_migrate.c
> > > > @@ -940,6 +940,104 @@ struct dma_fence *xe_migrate_copy(struct
> > > xe_migrate *m,
> > > >  	return fence;
> > > >  }
> > > >
> > > > +/**
> > > > + * xe_migrate_ccs_rw_copy() - Copy content of TTM resources.
> > > > + * @m: The migration context.
> > > > + * @src_bo: The buffer object @src is currently bound to.
> > > > + * @read_write : Creates BB commands for CCS read/write.
> > > > + *
> > > > + * Creates batch buffer instructions to copy CCS metadata from CCS pool
> to
> > > > + * memory and vice versa.
> > > > + *
> > > > + * This function should only be called for IGPU.
> > > > + *
> > > > + * Return: 0 if successful, negative error code on failure.
> > > > + */
> > > > +int xe_migrate_ccs_rw_copy(struct xe_migrate *m,
> > > > +			   struct xe_bo *src_bo,
> > > > +			   int read_write)
> > >
> > > s/int read_write/enum xe_sriov_vf_ccs_rw_ctxs
> > >
Fixed in new revision.
> > > > +
> > > > +{
> > > > +	bool src_is_pltt = read_write == XE_SRIOV_VF_CCS_WRITE_CTX;
> > > > +	bool dst_is_pltt = read_write == XE_SRIOV_VF_CCS_READ_CTX;
> > > > +	struct ttm_resource *src = src_bo->ttm.resource;
> > > > +	struct xe_gt *gt = m->tile->primary_gt;
> > > > +	struct xe_device *xe = gt_to_xe(gt);
> > > > +	struct xe_res_cursor src_it, ccs_it;
> > > > +	u64 size = src_bo->size;
> > > > +	u64 src_L0, src_L0_ofs;
> > > > +	u32 src_L0_pt;
> > > > +	int err;
> > > > +
> > > > +	xe_res_first_sg(xe_bo_sg(src_bo), 0, size, &src_it);
> > > > +
> > > > +	xe_res_first_sg(xe_bo_sg(src_bo), xe_bo_ccs_pages_start(src_bo),
> > > > +			PAGE_ALIGN(xe_device_ccs_bytes(xe, size)),
> > > > +			&ccs_it);
> > > > +
> > > > +	while (size) {
> > > > +		u32 batch_size = 8; /* arb_clear() + MI_BATCH_BUFFER_END +
> > > Flush + NOP */
> > > > +		struct xe_bb *bb;
> > > > +		u32 flush_flags = 0;
> > > > +		u64 ccs_ofs, ccs_size;
> > > > +		u32 ccs_pt;
> > > > +
> > > > +		u32 avail_pts = max_mem_transfer_per_pass(xe) /
> > > LEVEL0_PAGE_TABLE_ENCODE_SIZE;
> > > > +
> > > > +		src_L0 = xe_migrate_res_sizes(m, &src_it);
> > > > +
> > > > +		batch_size += pte_update_size(m, false, src, &src_it, &src_L0,
> > > > +					      &src_L0_ofs, &src_L0_pt, 0, 0,
> > > > +					      avail_pts);
> > > > +
> > > > +		ccs_size = xe_device_ccs_bytes(xe, src_L0);
> > > > +		batch_size += pte_update_size(m, 0, NULL, &ccs_it, &ccs_size,
> > > &ccs_ofs,
> > > > +					      &ccs_pt, 0, avail_pts, avail_pts);
> > > > +		xe_assert(xe, IS_ALIGNED(ccs_it.start, PAGE_SIZE));
> > > > +
> > > > +		/* Add copy commands size here */
> > > > +		batch_size += EMIT_COPY_CCS_DW;
> > > > +
> > > > +		bb = xe_bb_ccs_new(gt, batch_size, read_write);
> > > > +		if (IS_ERR(bb)) {
> > > > +			drm_dbg(&xe->drm, "BB allocation failed.\n");
> > >
> > > s/drm_dbg/xe_sriov_err - I think.
Xe_migrate does not have any sriov related code. So, updated to drm_err()
> > >
> > > > +			err = PTR_ERR(bb);
> > > > +			goto err_ret;
> > > > +		}
> > > > +
> > > > +		emit_pte(m, bb, src_L0_pt, false, true, &src_it, src_L0, src);
> > > > +
> > > > +		emit_pte(m, bb, ccs_pt, false, false, &ccs_it, ccs_size, src);
> > > > +
> > > > +		bb->cs[bb->len++] = MI_FLUSH_DW | MI_INVALIDATE_TLB |
> > > MI_FLUSH_DW_OP_STOREDW |
> > > > +					MI_FLUSH_IMM_DW;
> > > > +		bb->cs[bb->len++] = MI_NOOP;
> > > > +		bb->cs[bb->len++] = MI_NOOP;
> > > > +
> > > > +		flush_flags = xe_migrate_ccs_copy(m, bb, src_L0_ofs,
> > > src_is_pltt,
> > > > +						  src_L0_ofs, dst_is_pltt,
> > > > +						  src_L0, ccs_ofs, true);
> > > > +
> > > > +		bb->cs[bb->len++] = MI_FLUSH_DW | MI_INVALIDATE_TLB |
> > > MI_FLUSH_DW_OP_STOREDW |
> > > > +					MI_FLUSH_IMM_DW | flush_flags;
> > > > +		bb->cs[bb->len++] = MI_NOOP;
> > > > +		bb->cs[bb->len++] = MI_NOOP;
> > > > +
> > > > +		if (size == src_bo->size) {
> > > > +			src_bo->bb_ccs[read_write] = bb;
> > > > +			INIT_LIST_HEAD(&src_bo->bb_ccs[read_write]->list);
> > > > +		} else {
> > > > +			list_add(&bb->list, &src_bo->bb_ccs[read_write]-
> > > >list);
> > > > +		}
> > > > +
> > > > +		size -= src_L0;
> > > > +	}
> > > > +	return 0;
> > > > +
> > > > +err_ret:
> > > > +	return err;
> > > > +}
> > > > +
> > > >  static void emit_clear_link_copy(struct xe_gt *gt, struct xe_bb *bb, u64
> > > src_ofs,
> > > >  				 u32 size, u32 pitch)
> > > >  {
> > > > diff --git a/drivers/gpu/drm/xe/xe_migrate.h
> > > b/drivers/gpu/drm/xe/xe_migrate.h
> > > > index fb9839c1bae0..ab5ebb44d2c9 100644
> > > > --- a/drivers/gpu/drm/xe/xe_migrate.h
> > > > +++ b/drivers/gpu/drm/xe/xe_migrate.h
> > > > @@ -112,6 +112,10 @@ struct dma_fence *xe_migrate_copy(struct
> > > xe_migrate *m,
> > > >  				  struct ttm_resource *dst,
> > > >  				  bool copy_only_ccs);
> > > >
> > > > +int xe_migrate_ccs_rw_copy(struct xe_migrate *m,
> > > > +			   struct xe_bo *src_bo,
> > > > +			   int read_write);
> > > > +
> > > >  int xe_migrate_access_memory(struct xe_migrate *m, struct xe_bo *bo,
> > > >  			     unsigned long offset, void *buf, int len,
> > > >  			     int write);
> > > > diff --git a/drivers/gpu/drm/xe/xe_sriov_vf_ccs.c
> > > b/drivers/gpu/drm/xe/xe_sriov_vf_ccs.c
> > > > index 41fe1f59e0e9..4b5cfc0d421b 100644
> > > > --- a/drivers/gpu/drm/xe/xe_sriov_vf_ccs.c
> > > > +++ b/drivers/gpu/drm/xe/xe_sriov_vf_ccs.c
> > > > @@ -5,6 +5,7 @@
> > > >
> > > >  #include "instructions/xe_mi_commands.h"
> > > >  #include "instructions/xe_gpu_commands.h"
> > > > +#include "xe_bb.h"
> > > >  #include "xe_bo.h"
> > > >  #include "xe_device.h"
> > > >  #include "xe_migrate.h"
> > > > @@ -184,3 +185,79 @@ int xe_sriov_vf_ccs_init(struct xe_device *xe)
> > > >  err_ret:
> > > >  	return err;
> > > >  }
> > > > +
> > > > +/**
> > > > + * xe_sriov_vf_ccs_attach_bo - Insert CCS read write commands in the
> BO.
> > > > + * @bo: the &buffer object to which batch buffer commands will be
> added.
> > > > + *
> > > > + * This function shall be called only by VF. It inserts the PTEs and copy
> > > > + * command instructions in the BO by calling xe_migrate_ccs_rw_copy()
> > > > + * function.
> > > > + *
> > > > + * Returns: 0 if successful, negative error code on failure.
> > > > + */
> > > > +int xe_sriov_vf_ccs_attach_bo(struct xe_bo *bo)
> > > > +{
> > > > +	struct xe_device *xe = xe_bo_device(bo);
> > > > +	struct xe_migrate *migrate;
> > > > +	struct xe_tile *tile;
> > > > +	int tile_id, ctx_id;
> > >
> > > ctx_id can be enum xe_sriov_vf_ccs_rw_ctxs
Fixed in new revision.
> > >
> > > > +	struct xe_bb *bb;
> > > > +	int err = 0;
> > > > +
> > > > +	if (!IS_VF_CCS_READY(xe))
> > > > +		return 0;
> > > > +
> > > > +	for_each_tile(tile, xe, tile_id) {
> > > > +		for_each_ccs_rw_ctx(ctx_id) {
> > > > +			bb = bo->bb_ccs[ctx_id];
> > > > +			if (bb)
> > > > +				xe_sriov_err(xe, "Probable memory leak\n");
> > > > +
> > > > +			migrate = tile->sriov.vf.ccs[ctx_id].migrate;
> > > > +			err = xe_migrate_ccs_rw_copy(migrate, bo, ctx_id);
> > > > +		}
> > > > +	}
> > > > +	return err;
> > > > +}
> > > > +
> > > > +/**
> > > > + * xe_sriov_vf_ccs_detach_bo - Remove CCS read write commands from
> the
> > > BO.
> > > > + * @bo: the &buffer object from which batch buffer commands will be
> > > removed.
> > > > + *
> > > > + * This function shall be called only by VF. It removes the PTEs and copy
> > > > + * command instructions from the BO. Make sure to update the BB with
> > > MI_NOOP
> > > > + * before freeing.
> > > > + *
> > > > + * Returns: 0 if successful, negative error code on failure.
> > > > + */
> > > > +int xe_sriov_vf_ccs_detach_bo(struct xe_bo *bo)
> > > > +{
> > > > +	struct xe_device *xe = xe_bo_device(bo);
> > > > +	struct xe_bb *bb, *pos, *temp;
> > > > +	struct xe_tile *tile;
> > > > +	int tile_id, ctx_id;
> > >
> > > ctx_id can be enum xe_sriov_vf_ccs_rw_ctxs
> > >
> > > Matt
> > >
Fixed in new revision.
-Satya.
> > > > +
> > > > +	if (!IS_VF_CCS_READY(xe))
> > > > +		return 0;
> > > > +
> > > > +	for_each_tile(tile, xe, tile_id) {
> > > > +		for_each_ccs_rw_ctx(ctx_id) {
> > > > +			bb = bo->bb_ccs[ctx_id];
> > > > +			if (!bb)
> > > > +				continue;
> > > > +
> > > > +			list_for_each_entry_safe(pos, temp, &bb->list, list) {
> > > > +				list_del(&pos->list);
> > > > +				memset(pos->cs, MI_NOOP, pos->len *
> > > sizeof(u32));
> > > > +				xe_bb_free(pos, NULL);
> > > > +			}
> > > > +
> > > > +			/* Free-up head BB */
> > > > +			memset(bb->cs, MI_NOOP, bb->len * sizeof(u32));
> > > > +			xe_bb_free(bb, NULL);
> > > > +			bo->bb_ccs[ctx_id] = NULL;
> > > > +		}
> > > > +	}
> > > > +	return 0;
> > > > +}
> > > > diff --git a/drivers/gpu/drm/xe/xe_sriov_vf_ccs.h
> > > b/drivers/gpu/drm/xe/xe_sriov_vf_ccs.h
> > > > index 5df9ba028d14..5d5e4bd25904 100644
> > > > --- a/drivers/gpu/drm/xe/xe_sriov_vf_ccs.h
> > > > +++ b/drivers/gpu/drm/xe/xe_sriov_vf_ccs.h
> > > > @@ -7,7 +7,10 @@
> > > >  #define _XE_SRIOV_VF_CCS_H_
> > > >
> > > >  struct xe_device;
> > > > +struct xe_bo;
> > > >
> > > >  int xe_sriov_vf_ccs_init(struct xe_device *xe);
> > > > +int xe_sriov_vf_ccs_attach_bo(struct xe_bo *bo);
> > > > +int xe_sriov_vf_ccs_detach_bo(struct xe_bo *bo);
> > > >
> > > >  #endif
> > > > diff --git a/drivers/gpu/drm/xe/xe_sriov_vf_ccs_types.h
> > > b/drivers/gpu/drm/xe/xe_sriov_vf_ccs_types.h
> > > > index f67f002c7a96..9545c5cfc2b1 100644
> > > > --- a/drivers/gpu/drm/xe/xe_sriov_vf_ccs_types.h
> > > > +++ b/drivers/gpu/drm/xe/xe_sriov_vf_ccs_types.h
> > > > @@ -28,6 +28,14 @@ enum xe_sriov_vf_ccs_rw_ctxs {
> > > >  	XE_SRIOV_VF_CCS_RW_MAX_CTXS
> > > >  };
> > > >
> > > > +#define IS_VF_CCS_BB_VALID(xe, bo) ({ \
> > > > +		struct xe_device *___xe = (xe); \
> > > > +		struct xe_bo *___bo = (bo); \
> > > > +		IS_SRIOV_VF(___xe) && \
> > > > +		___bo->bb_ccs[XE_SRIOV_VF_CCS_READ_CTX] && \
> > > > +		___bo->bb_ccs[XE_SRIOV_VF_CCS_WRITE_CTX]; \
> > > > +		})
> > > > +
> > > >  struct xe_migrate;
> > > >  struct xe_sa_manager;
> > > >
> > > > --
> > > > 2.43.0
> > > >

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

* RE: [PATCH v6 1/3] drm/xe/vf: Create contexts for CCS read write
  2025-06-09 16:08     ` Matthew Brost
@ 2025-06-16 15:01       ` K V P, Satyanarayana
  0 siblings, 0 replies; 23+ messages in thread
From: K V P, Satyanarayana @ 2025-06-16 15:01 UTC (permalink / raw)
  To: Brost, Matthew, Wajdeczko, Michal
  Cc: intel-xe@lists.freedesktop.org, Winiarski, Michal, Lis, Tomasz,
	Auld, Matthew, K V P, Satyanarayana

Hi.
> -----Original Message-----
> From: Brost, Matthew <matthew.brost@intel.com>
> Sent: Monday, June 9, 2025 9:38 PM
> To: Wajdeczko, Michal <Michal.Wajdeczko@intel.com>
> Cc: K V P, Satyanarayana <satyanarayana.k.v.p@intel.com>; intel-
> xe@lists.freedesktop.org; Winiarski, Michal <michal.winiarski@intel.com>; Lis,
> Tomasz <tomasz.lis@intel.com>; Auld, Matthew <matthew.auld@intel.com>
> Subject: Re: [PATCH v6 1/3] drm/xe/vf: Create contexts for CCS read write
> 
> On Mon, Jun 09, 2025 at 02:39:27PM +0200, Michal Wajdeczko wrote:
> >
> >
> > On 06.06.2025 14:45, Satyanarayana K V P wrote:
> > > Create two LRCs to handle CCS meta data read / write from CCS pool in the
> > > VM. Read context is used to hold GPU instructions to be executed at save
> > > time and write context is used to hold GPU instructions to be executed at
> > > the restore time.
> > >
> > > Allocate batch buffer pool using suballocator for both read and write
> > > contexts.
> > >
> > > Migration framework is reused to create LRCAs for read and write.
> > >
> > > Signed-off-by: Satyanarayana K V P <satyanarayana.k.v.p@intel.com>
> > > ---
> > > Cc: Michal Wajdeczko <michal.wajdeczko@intel.com>
> > > Cc: Michał Winiarski <michal.winiarski@intel.com>
> > > Cc: Tomasz Lis <tomasz.lis@intel.com>
> > > Cc: Matthew Brost <matthew.brost@intel.com>
> > > Cc: Matthew Auld <matthew.auld@intel.com>
> > >
> > > V5 -> V6:
> > > - Added id field in the xe_tile_vf_ccs structure for self identification.
> > >
> > > V4 -> V5:
> > > - Modified read/write contexts to enums from #defines (Matthew Brost).
> > > - The CCS BB pool size is calculated based on the system memory size
> (Michal
> > >   Wajdeczko & Matthew Brost).
> > >
> > > V3 -> V4:
> > > - Fixed issues reported by patchworks.
> > >
> > > V2 -> V3:
> > > - Added new variable which denotes the initialization of contexts.
> > >
> > > V1 -> V2:
> > > - Fixed review comments.
> > > ---
> > >  drivers/gpu/drm/xe/Makefile                |   1 +
> > >  drivers/gpu/drm/xe/xe_device.c             |   4 +
> > >  drivers/gpu/drm/xe/xe_device_types.h       |   4 +
> > >  drivers/gpu/drm/xe/xe_gt_debugfs.c         |  36 ++++
> > >  drivers/gpu/drm/xe/xe_sriov.c              |  19 +++
> > >  drivers/gpu/drm/xe/xe_sriov.h              |   1 +
> > >  drivers/gpu/drm/xe/xe_sriov_types.h        |   5 +
> > >  drivers/gpu/drm/xe/xe_sriov_vf_ccs.c       | 186
> +++++++++++++++++++++
> > >  drivers/gpu/drm/xe/xe_sriov_vf_ccs.h       |  13 ++
> > >  drivers/gpu/drm/xe/xe_sriov_vf_ccs_types.h |  46 +++++
> > >  10 files changed, 315 insertions(+)
> > >  create mode 100644 drivers/gpu/drm/xe/xe_sriov_vf_ccs.c
> > >  create mode 100644 drivers/gpu/drm/xe/xe_sriov_vf_ccs.h
> > >  create mode 100644 drivers/gpu/drm/xe/xe_sriov_vf_ccs_types.h
> > >
> > > diff --git a/drivers/gpu/drm/xe/Makefile b/drivers/gpu/drm/xe/Makefile
> > > index f5f5775acdc0..3b5241937742 100644
> > > --- a/drivers/gpu/drm/xe/Makefile
> > > +++ b/drivers/gpu/drm/xe/Makefile
> > > @@ -140,6 +140,7 @@ xe-y += \
> > >  	xe_memirq.o \
> > >  	xe_sriov.o \
> > >  	xe_sriov_vf.o \
> > > +	xe_sriov_vf_ccs.o \
> > >  	xe_tile_sriov_vf.o
> > >
> > >  xe-$(CONFIG_PCI_IOV) += \
> > > diff --git a/drivers/gpu/drm/xe/xe_device.c
> b/drivers/gpu/drm/xe/xe_device.c
> > > index 660b0c5126dc..bf96045770c7 100644
> > > --- a/drivers/gpu/drm/xe/xe_device.c
> > > +++ b/drivers/gpu/drm/xe/xe_device.c
> > > @@ -925,6 +925,10 @@ int xe_device_probe(struct xe_device *xe)
> > >
> > >  	xe_vsec_init(xe);
> > >
> > > +	err = xe_sriov_late_init(xe);
> > > +	if (err)
> > > +		goto err_unregister_display;
> > > +
> > >  	return devm_add_action_or_reset(xe->drm.dev, xe_device_sanitize,
> xe);
> > >
> > >  err_unregister_display:
> > > diff --git a/drivers/gpu/drm/xe/xe_device_types.h
> b/drivers/gpu/drm/xe/xe_device_types.h
> > > index ac27389ccb8b..caf3bb1ef048 100644
> > > --- a/drivers/gpu/drm/xe/xe_device_types.h
> > > +++ b/drivers/gpu/drm/xe/xe_device_types.h
> > > @@ -22,6 +22,7 @@
> > >  #include "xe_pmu_types.h"
> > >  #include "xe_pt_types.h"
> > >  #include "xe_sriov_types.h"
> > > +#include "xe_sriov_vf_ccs_types.h"
> > >  #include "xe_step_types.h"
> > >  #include "xe_survivability_mode_types.h"
> > >  #include "xe_ttm_vram_mgr_types.h"
> > > @@ -234,6 +235,9 @@ struct xe_tile {
> > >  		struct {
> > >  			/** @sriov.vf.ggtt_balloon: GGTT regions excluded
> from use. */
> > >  			struct xe_ggtt_node *ggtt_balloon[2];
> > > +
> > > +			/** @sriov.vf.ccs: CCS read and write contexts for VF.
> */
> > > +			struct xe_tile_vf_ccs
> ccs[XE_SRIOV_VF_CCS_RW_MAX_CTXS];
> > >  		} vf;
> > >  	} sriov;
> > >
> > > diff --git a/drivers/gpu/drm/xe/xe_gt_debugfs.c
> b/drivers/gpu/drm/xe/xe_gt_debugfs.c
> > > index 848618acdca8..2c6d757db810 100644
> > > --- a/drivers/gpu/drm/xe/xe_gt_debugfs.c
> > > +++ b/drivers/gpu/drm/xe/xe_gt_debugfs.c
> > > @@ -134,6 +134,30 @@ static int sa_info(struct xe_gt *gt, struct
> drm_printer *p)
> > >  	return 0;
> > >  }
> > >
> > > +static int sa_info_vf_ccs(struct xe_gt *gt, struct drm_printer *p)
> > > +{
> > > +	struct xe_tile *tile = gt_to_tile(gt);
> > > +	struct xe_sa_manager *bb_pool;
> > > +	int ctx_id;
> > > +
> > > +	if (!IS_VF_CCS_READY(gt_to_xe(gt)))
> > > +		return 0;
> > > +
> > > +	xe_pm_runtime_get(gt_to_xe(gt));
> > > +
> > > +	for_each_ccs_rw_ctx(ctx_id) {
> > > +		drm_printf(p, "ccs %s bb suballoc info\n", ctx_id ? "write" :
> "read");
> > > +		drm_printf(p, "-------------------------\n");
> > > +		bb_pool = tile->sriov.vf.ccs[ctx_id].mem.ccs_bb_pool;
> > > +		drm_suballoc_dump_debug_info(&bb_pool->base, p,
> bb_pool->gpu_addr);
> > > +		drm_puts(p, "\n");
> > > +	}
> > > +
> > > +	xe_pm_runtime_put(gt_to_xe(gt));
> > > +
> > > +	return 0;
> > > +}
> > > +
> > >  static int topology(struct xe_gt *gt, struct drm_printer *p)
> > >  {
> > >  	xe_pm_runtime_get(gt_to_xe(gt));
> > > @@ -303,6 +327,13 @@ static const struct drm_info_list
> vf_safe_debugfs_list[] = {
> > >  	{"hwconfig", .show = xe_gt_debugfs_simple_show, .data = hwconfig},
> > >  };
> > >
> > > +/*
> > > + * only for GT debugfs files which are valid on VF. Not valid on PF.
> > > + */
> > > +static const struct drm_info_list vf_only_debugfs_list[] = {
> > > +	{"sa_info_vf_ccs", .show = xe_gt_debugfs_simple_show, .data =
> sa_info_vf_ccs},
> > > +};
> > > +
> > >  /* everything else should be added here */
> > >  static const struct drm_info_list pf_only_debugfs_list[] = {
> > >  	{"hw_engines", .show = xe_gt_debugfs_simple_show, .data =
> hw_engines},
> > > @@ -419,6 +450,11 @@ void xe_gt_debugfs_register(struct xe_gt *gt)
> > >  		drm_debugfs_create_files(pf_only_debugfs_list,
> > >  					 ARRAY_SIZE(pf_only_debugfs_list),
> > >  					 root, minor);
> > > +	else
> > > +		drm_debugfs_create_files(vf_only_debugfs_list,
> > > +					 ARRAY_SIZE(vf_only_debugfs_list),
> > > +					 root, minor);
> > > +
> > >
> > >  	xe_uc_debugfs_register(&gt->uc, root);
> > >
> > > diff --git a/drivers/gpu/drm/xe/xe_sriov.c b/drivers/gpu/drm/xe/xe_sriov.c
> > > index a0eab44c0e76..87911fb4eea7 100644
> > > --- a/drivers/gpu/drm/xe/xe_sriov.c
> > > +++ b/drivers/gpu/drm/xe/xe_sriov.c
> > > @@ -15,6 +15,7 @@
> > >  #include "xe_sriov.h"
> > >  #include "xe_sriov_pf.h"
> > >  #include "xe_sriov_vf.h"
> > > +#include "xe_sriov_vf_ccs.h"
> > >
> > >  /**
> > >   * xe_sriov_mode_to_string - Convert enum value to string.
> > > @@ -157,3 +158,21 @@ const char *xe_sriov_function_name(unsigned
> int n, char *buf, size_t size)
> > >  		strscpy(buf, "PF", size);
> > >  	return buf;
> > >  }
> > > +
> > > +/**
> > > + * xe_sriov_late_init() - SR-IOV late initialization functions.
> > > + * @xe: the &xe_device to initialize
> > > + *
> > > + * On VF this function will initialize code for CCS migration.
> > > + *
> > > + * Return: 0 on success or a negative error code on failure.
> > > + */
> > > +int xe_sriov_late_init(struct xe_device *xe)
> > > +{
> > > +	int err = 0;
> > > +
> > > +	if (IS_VF_CCS_INIT_NEEDED(xe))
> > > +		err = xe_sriov_vf_ccs_init(xe);
> > > +
> > > +	return err;
> > > +}
> > > diff --git a/drivers/gpu/drm/xe/xe_sriov.h
> b/drivers/gpu/drm/xe/xe_sriov.h
> > > index 688fbabf08f1..0e0c1abf2d14 100644
> > > --- a/drivers/gpu/drm/xe/xe_sriov.h
> > > +++ b/drivers/gpu/drm/xe/xe_sriov.h
> > > @@ -18,6 +18,7 @@ const char *xe_sriov_function_name(unsigned int n,
> char *buf, size_t len);
> > >  void xe_sriov_probe_early(struct xe_device *xe);
> > >  void xe_sriov_print_info(struct xe_device *xe, struct drm_printer *p);
> > >  int xe_sriov_init(struct xe_device *xe);
> > > +int xe_sriov_late_init(struct xe_device *xe);
> > >
> > >  static inline enum xe_sriov_mode xe_device_sriov_mode(const struct
> xe_device *xe)
> > >  {
> > > diff --git a/drivers/gpu/drm/xe/xe_sriov_types.h
> b/drivers/gpu/drm/xe/xe_sriov_types.h
> > > index ca94382a721e..8abfdb2c5ead 100644
> > > --- a/drivers/gpu/drm/xe/xe_sriov_types.h
> > > +++ b/drivers/gpu/drm/xe/xe_sriov_types.h
> > > @@ -71,6 +71,11 @@ struct xe_device_vf {
> > >  		/** @migration.gt_flags: Per-GT request flags for VF migration
> recovery */
> > >  		unsigned long gt_flags;
> > >  	} migration;
> > > +
> > > +	struct {
> > > +		/** @initialized: Initilalization of vf ccs is completed or not */
> > > +		bool initialized;
> > > +	} ccs;
> > >  };
> > >
> > >  #endif
> > > diff --git a/drivers/gpu/drm/xe/xe_sriov_vf_ccs.c
> b/drivers/gpu/drm/xe/xe_sriov_vf_ccs.c
> > > new file mode 100644
> > > index 000000000000..41fe1f59e0e9
> > > --- /dev/null
> > > +++ b/drivers/gpu/drm/xe/xe_sriov_vf_ccs.c
> > > @@ -0,0 +1,186 @@
> > > +// SPDX-License-Identifier: MIT
> > > +/*
> > > + * Copyright © 2025 Intel Corporation
> > > + */
> > > +
> > > +#include "instructions/xe_mi_commands.h"
> > > +#include "instructions/xe_gpu_commands.h"
> > > +#include "xe_bo.h"
> > > +#include "xe_device.h"
> > > +#include "xe_migrate.h"
> > > +#include "xe_sa.h"
> > > +#include "xe_sriov_printk.h"
> > > +#include "xe_sriov_vf_ccs.h"
> > > +#include "xe_sriov_vf_ccs_types.h"
> > > +
> > > +/**
> > > + * DOC: VF save/restore of compression Meta Data
> > > + *
> > > + * VF KMD registers two special contexts/LRCAs.
> > > + *
> > > + * Save Context/LRCA: contain necessary cmds+page table to trigger Meta
> data /
> > > + * compression control surface (Aka CCS) save in regular System memory
> in VM.
> > > + *
> > > + * Restore Context/LRCA: contain necessary cmds+page table to trigger
> Meta data /
> > > + * compression control surface (Aka CCS) Restore from regular System
> memory in
> > > + * VM to corresponding CCS pool.
> > > + *
> > > + * Below diagram explain steps needed for VF save/Restore of
> compression Meta
> > > + * Data::
> >
> > nit: this last word likely can be part of prev line
Fixed in new version.
> >
> > > + *
> > > + *    CCS Save    CCS Restore          VF KMD                          Guc       BCS
> > > + *     LRCA        LRCA
> > > + *      |           |                     |                              |         |
> > > + *      |           |                     |                              |         |
> > > + *      |     Create Save LRCA            |                              |         |
> > > + *     [ ]<----------------------------- [ ]                             |         |
> > > + *      |           |                     |                              |         |
> > > + *      |           |                     |                              |         |
> > > + *      |           |                     |   Register LRCA with Guc     |         |
> > > + *      |           |                    [ ]--------------------------->[ ]        |
> > > + *      |           |                     |                              |         |
> > > + *      |           |                     |                              |         |
> > > + *      |           | Create restore LRCA |                              |         |
> > > + *      |          [ ]<------------------[ ]                             |         |
> >
> > don't we need to register in GuC this 'restore' LRCA ?
Fixed in new version.
> >
> > > + *      |           |                     |                              |         |
> > > + *      |           |                     |                              |         |
> > > + *      |           |                    [ ]-----------------------      |         |
> > > + *      |           |                    [ ]  Allocate main memory |     |         |
> > > + *      |           |                    [ ]  Allocate CCS memory  |     |         |
> > > + *      |           |                    [ ]<----------------------      |         |
> > > + *      |           |                     |                              |         |
> > > + *      |           |                     |                              |         |
> > > + *      | Update Main memory & CCS pages  |                              |         |
> > > + *      |   PPGTT + BB cmds to save       |                              |         |
> > > + *     [ ]<------------------------------[ ]                             |         |
> > > + *      |           |                     |                              |         |
> > > + *      |           |                     |                              |         |
> > > + *      |           | Update Main memory  |                              |         |
> > > + *      |           | & CCS pages PPGTT + |                              |         |
> > > + *      |           | BB cms to restore   |                              |         |
> >
> > typo: cms
> >
> > > + *      |          [ ]<------------------[ ]                             |         |
> >
> > those above updates are happening as part of BO allocations sequence,
> > likely depicted as above 'allocate' box - so shouldn't it be drawn as such?
Fixed in new version.
> >
> > > + *      |           |                     |                              |         |
> > > + *      |           |                     |                              |         |
> > > + *      |           |                   VF Pause                         |         |
> >
> > this is out of VF control, so maybe
> >
Fixed in new version.
> >            :           :                                            :
> >        ------------------------  VF Paused -----------------------------
> >
> >
> > > + *      |           |                     |                              |Schedule |
> > > + *      |           |                     |                              |CCS Save |
> > > + *      |           |                     |                              | LRCA    |
> > > + *      |           |                     |                             [ ]------>[ ]
> >
> > shouldn't we also have arrow from HW to save-LRCA?
Fixed in new version.
> >
> > > + *      |           |                     |                              |         |
> > > + *      |           |                     |                              |         |
> > > + *      |           |                   VF Restore                       |         |
> >
> > and
> >
> >        ------------------------  VF Resumed ---------------------------
> >            :           :                                            :
> >
> >
> > > + *      |           |                     |                              |         |
> > > + *      |           |                     |                              |         |
> > > + *      |           |                    [ ]--------------               |         |
> > > + *      |           |                    [ ] Fix up GGTT  |              |         |
> > > + *      |           |                    [ ]<-------------               |         |
> >
> > what about showing RESFIX_DONE notification to GuC here ?
Fixed in new version.
> >
> > > + *      |           |                     |                              |         |
> > > + *      |           |                     |                              |         |
> > > + *      |           |                     |                              |Schedule |
> > > + *      |           |                     |                              |CCS      |
> > > + *      |           |                     |                              |Restore  |
> > > + *      |           |                     |                              |LRCA     |
> > > + *      |           |                     |                             [ ]------>[ ]
> >
> > shouldn't we also have arrow from HW to restore-LRCA?
Fixed in new version.
> >
> > > + *      |           |                     |                              |         |
> > > + *      |           |                     |                              |         |
> >
> > btw, I assume this 'restore' job is happening as part of the RESFIX_DONE
> > message processing so return arrow will fit here as well
Fixed in new version.
> >
> > > + *
> > > + */
> > > +
> > > +static u64 get_ccs_bb_pool_size(struct xe_device *xe)
> > > +{
> > > +	u64 sys_mem_size, ccs_mem_size, ptes, bb_pool_size;
> > > +	struct sysinfo si;
> > > +
> > > +	si_meminfo(&si);
> > > +	sys_mem_size = si.totalram * si.mem_unit;
> > > +	ccs_mem_size = sys_mem_size / NUM_BYTES_PER_CCS_BYTE(xe);
> > > +	ptes = DIV_ROUND_UP(sys_mem_size + ccs_mem_size,
> XE_PAGE_SIZE);
> > > +
> > > +	/**
> > > +	 * We need below BB size to hold PTE mappings and some DWs for
> copy
> > > +	 * command. In reality, we need space for many copy commands. So,
> let
> > > +	 * us allocate double the calculated size which is enough to holds GPU
> > > +	 * instructions for the whole region.
> > > +	 */
> > > +	bb_pool_size = ptes * sizeof(u32);
> > > +
> > > +	return round_up(bb_pool_size * 2, SZ_1M);
> > > +}
> > > +
> > > +static int alloc_bb_pool(struct xe_tile *tile, struct xe_tile_vf_ccs *ctx)
> > > +{
> > > +	struct xe_device *xe = tile_to_xe(tile);
> > > +	struct xe_sa_manager *sa_manager;
> > > +	u64 bb_pool_size;
> > > +	int offset, err;
> > > +
> > > +	bb_pool_size = get_ccs_bb_pool_size(xe);
> > > +	xe_sriov_info(xe, "Allocating %s CCS BB pool size = %lldMB\n",
> > > +		      ctx->id ? "Restore" : "Save", bb_pool_size / SZ_1M);
> > > +
> > > +	sa_manager = xe_sa_bo_manager_init(tile, bb_pool_size, SZ_16);
> > > +
> > > +	if (IS_ERR(sa_manager)) {
> > > +		xe_sriov_err(xe, "Suballocator init failed with error: %pe\n",
> > > +			     sa_manager);
> > > +		err = PTR_ERR(sa_manager);
> > > +		return err;
> > > +	}
> > > +
> > > +	offset = 0;
> > > +	xe_map_memset(xe, &sa_manager->bo->vmap, offset, MI_NOOP,
> > > +		      bb_pool_size);
> > > +
> > > +	offset = bb_pool_size - sizeof(u32);
> > > +	xe_map_wr(xe, &sa_manager->bo->vmap, offset, u32,
> MI_BATCH_BUFFER_END);
> > > +
> > > +	ctx->mem.ccs_bb_pool = sa_manager;
> > > +
> > > +	return 0;
> > > +}
> > > +
> > > +/**
> > > + * xe_sriov_vf_ccs_init - Setup LRCA for save & restore.
> > > + * @xe: the &xe_device to start recovery on
> > > + *
> > > + * This function shall be called only by VF. It initializes
> > > + * LRCA and suballocator needed for CCS save & restore.
> > > + *
> > > + * Return: 0 on success. Negative error code on failure.
> > > + */
> > > +int xe_sriov_vf_ccs_init(struct xe_device *xe)
> > > +{
> > > +	struct xe_migrate *migrate;
> > > +	struct xe_tile_vf_ccs *ctx;
> > > +	struct xe_tile *tile;
> > > +	int tile_id, ctx_id;
> > > +	int err = 0;
> > > +
> > > +	xe_assert(xe, (IS_SRIOV_VF(xe) || !IS_DGFX(xe) ||
> > > +		       xe_device_has_flat_ccs(xe)));
> >
> > make it as 3x separate asserts to clearly see which one will eventually
> > fire (and to make then logical AND condition)
Fixed in new version.
> >
> > > +
> > > +	for_each_tile(tile, xe, tile_id) {
> > > +		for_each_ccs_rw_ctx(ctx_id) {
> > > +			ctx = &tile->sriov.vf.ccs[ctx_id];
> > > +			ctx->id = ctx_id;
> > > +
> > > +			migrate = xe_migrate_init(tile);
> > > +			if (IS_ERR(migrate)) {
> > > +				err = PTR_ERR(migrate);
> > > +				goto err_ret;
> > > +			}
> > > +			ctx->migrate = migrate;
> > > +
> > > +			err = alloc_bb_pool(tile, ctx);
> > > +			if (err)
> > > +				goto err_ret;
> > > +		}
> > > +	}
> > > +
> > > +	xe->sriov.vf.ccs.initialized = 1;
> > > +
> > > +	return 0;
> > > +
> > > +err_ret:
> > > +	return err;
> > > +}
> > > diff --git a/drivers/gpu/drm/xe/xe_sriov_vf_ccs.h
> b/drivers/gpu/drm/xe/xe_sriov_vf_ccs.h
> > > new file mode 100644
> > > index 000000000000..5df9ba028d14
> > > --- /dev/null
> > > +++ b/drivers/gpu/drm/xe/xe_sriov_vf_ccs.h
> > > @@ -0,0 +1,13 @@
> > > +/* SPDX-License-Identifier: MIT */
> > > +/*
> > > + * Copyright © 2025 Intel Corporation
> > > + */
> > > +
> > > +#ifndef _XE_SRIOV_VF_CCS_H_
> > > +#define _XE_SRIOV_VF_CCS_H_
> > > +
> > > +struct xe_device;
> > > +
> > > +int xe_sriov_vf_ccs_init(struct xe_device *xe);
> > > +
> > > +#endif
> > > diff --git a/drivers/gpu/drm/xe/xe_sriov_vf_ccs_types.h
> b/drivers/gpu/drm/xe/xe_sriov_vf_ccs_types.h
> > > new file mode 100644
> > > index 000000000000..f67f002c7a96
> > > --- /dev/null
> > > +++ b/drivers/gpu/drm/xe/xe_sriov_vf_ccs_types.h
> > > @@ -0,0 +1,46 @@
> > > +/* SPDX-License-Identifier: MIT */
> > > +/*
> > > + * Copyright © 2022-2023 Intel Corporation
> >
> > 2025
> >
> > > + */
> > > +
> > > +#ifndef _XE_SRIOV_VF_CCS__TYPES_H_
> > > +#define _XE_SRIOV_VF_CCS__TYPES_H_
> >
> > _XE_SRIOV_VF_CCS_TYPES_H_
> >
Fixed in new version.
> > > +
> > > +#define for_each_ccs_rw_ctx(id__) \
> > > +	for ((id__) = 0; (id__) < XE_SRIOV_VF_CCS_RW_MAX_CTXS; (id__)++)
> > > +
> > > +#define IS_VF_CCS_READY(xe) ({ \
> > > +		struct xe_device *___xe = (xe); \
> > > +		xe_assert(___xe, IS_SRIOV_VF(___xe)); \
> > > +		___xe->sriov.vf.ccs.initialized; \
> > > +		})
> > > +
> > > +#define IS_VF_CCS_INIT_NEEDED(xe) ({\
> > > +		struct xe_device *___xe = (xe); \
> > > +		IS_SRIOV_VF(___xe) && !IS_DGFX(___xe) && \
> > > +		xe_device_has_flat_ccs(___xe) && GRAPHICS_VER(___xe) >=
> 20; \
> > > +		})
> > > +
> > > +enum xe_sriov_vf_ccs_rw_ctxs {
> > > +	XE_SRIOV_VF_CCS_RW_MIN_CTXS = 0,
> > > +	XE_SRIOV_VF_CCS_READ_CTX = XE_SRIOV_VF_CCS_RW_MIN_CTXS,
> > > +	XE_SRIOV_VF_CCS_WRITE_CTX,
> > > +	XE_SRIOV_VF_CCS_RW_MAX_CTXS
> >
> > if we need just READ and WRITE then maybe we can use existing
> > definitions from <linux/kernel.h>
> >
> 
> This seems like not such a great idea.
> 
> > > +};
> > > +
> > > +struct xe_migrate;
> > > +struct xe_sa_manager;
> > > +
> > > +struct xe_tile_vf_ccs {
> > > +	/** @id: Id to which context it belongs to */
> >
> > did you mean GuC context id here?
> > if yes then maybe name it as guc_id as done elsewhere?
> >
> 
> It is ctx_id, I suggested s/id/ctx_id/ for consistency.
Fixed in new version.
> 
> Matt
> 
> > > +	int id;
> > > +	/** @migrate: Migration helper for save/restore of CCS data */
> > > +	struct xe_migrate *migrate;
> > > +
> > > +	struct {
> > > +		/** @ccs_rw_bb_pool: Pool from which batch buffers are
> allocated. */
> > > +		struct xe_sa_manager *ccs_bb_pool;
> > > +	} mem;
> > > +};
> > > +
> > > +#endif
> >

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

end of thread, other threads:[~2025-06-16 15:02 UTC | newest]

Thread overview: 23+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-06-06 12:45 [PATCH v6 0/3] CCS save restore for IGPU Satyanarayana K V P
2025-06-06 12:45 ` [PATCH v6 1/3] drm/xe/vf: Create contexts for CCS read write Satyanarayana K V P
2025-06-06 17:18   ` Matthew Brost
2025-06-06 17:39   ` Matthew Brost
2025-06-09 12:39   ` Michal Wajdeczko
2025-06-09 16:08     ` Matthew Brost
2025-06-16 15:01       ` K V P, Satyanarayana
2025-06-06 12:45 ` [PATCH v6 2/3] drm/xe/vf: Attach and detach CCS copy commands with BO Satyanarayana K V P
2025-06-06 17:37   ` Matthew Brost
2025-06-09 12:00     ` K V P, Satyanarayana
2025-06-09 16:06       ` Matthew Brost
2025-06-16 14:57         ` K V P, Satyanarayana
2025-06-06 12:45 ` [PATCH v6 3/3] drm/xe/vf: Register CCS read/write contexts with Guc Satyanarayana K V P
2025-06-09 16:28   ` Matthew Brost
2025-06-16 14:55     ` K V P, Satyanarayana
2025-06-06 14:16 ` ✓ CI.Patch_applied: success for CCS save restore for IGPU (rev6) Patchwork
2025-06-06 14:17 ` ✗ CI.checkpatch: warning " Patchwork
2025-06-06 14:18 ` ✓ CI.KUnit: success " Patchwork
2025-06-06 14:29 ` ✓ CI.Build: " Patchwork
2025-06-06 14:31 ` ✗ CI.Hooks: failure " Patchwork
2025-06-06 14:33 ` ✓ CI.checksparse: success " Patchwork
2025-06-06 15:09 ` ✓ Xe.CI.BAT: " Patchwork
2025-06-08 18:37 ` ✓ Xe.CI.Full: " Patchwork

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