All of lore.kernel.org
 help / color / mirror / Atom feed
* [Intel-xe] [PATCH v3 0/8] Scheduler changes for upstreaming
@ 2023-06-07 16:03 Matthew Brost
  2023-06-07 16:03 ` [Intel-xe] [PATCH v3 1/8] fixup! drm/sched: Convert drm scheduler to use a work queue rather than kthread Matthew Brost
                   ` (14 more replies)
  0 siblings, 15 replies; 24+ messages in thread
From: Matthew Brost @ 2023-06-07 16:03 UTC (permalink / raw)
  To: intel-xe

First 8 patches of the follow series with comments addressed:
https://patchwork.freedesktop.org/series/117156/

A follow up with submit a GuC doorbell series and a GPUVA series.

v2: Fix 'Add DRM_SCHED_POLICY_SINGLE_ENTITY scheduling policy' rebase,
checkpatch, update VM LRU bulk move removal to be in GEM free callback
rather than close
v3: Rebase, move VM LRU bulk move removal back to close

Matthew Brost (8):
  fixup! drm/sched: Convert drm scheduler to use a work queue rather
    than kthread
  drm/sched: Move schedule policy to scheduler
  drm/sched: Add DRM_SCHED_POLICY_SINGLE_ENTITY scheduling policy
  drm/xe: Use DRM_SCHED_POLICY_SINGLE_ENTITY mode
  drm/xe: Long running job update
  drm/xe: Ensure LR engines are not persistent
  drm/xe: Only try to lock external BOs in VM bind
  drm/xe: VM LRU bulk move

 drivers/gpu/drm/amd/amdgpu/amdgpu_device.c |  3 +-
 drivers/gpu/drm/etnaviv/etnaviv_sched.c    |  5 +-
 drivers/gpu/drm/lima/lima_sched.c          |  5 +-
 drivers/gpu/drm/msm/msm_ringbuffer.c       |  7 +-
 drivers/gpu/drm/panfrost/panfrost_job.c    |  5 +-
 drivers/gpu/drm/scheduler/sched_entity.c   | 85 +++++++++++++++----
 drivers/gpu/drm/scheduler/sched_fence.c    |  2 +-
 drivers/gpu/drm/scheduler/sched_main.c     | 88 ++++++++++++++++---
 drivers/gpu/drm/v3d/v3d_sched.c            | 25 +++---
 drivers/gpu/drm/xe/xe_bo.c                 | 32 ++++++-
 drivers/gpu/drm/xe/xe_bo.h                 |  4 +-
 drivers/gpu/drm/xe/xe_devcoredump_types.h  |  1 +
 drivers/gpu/drm/xe/xe_dma_buf.c            |  2 +-
 drivers/gpu/drm/xe/xe_engine.c             | 36 +++++++-
 drivers/gpu/drm/xe/xe_engine.h             |  4 +
 drivers/gpu/drm/xe/xe_exec.c               | 14 +++
 drivers/gpu/drm/xe/xe_execlist.c           |  3 +-
 drivers/gpu/drm/xe/xe_guc_engine_types.h   |  2 +
 drivers/gpu/drm/xe/xe_guc_submit.c         | 99 +++++++++++++++++++---
 drivers/gpu/drm/xe/xe_trace.h              |  5 ++
 drivers/gpu/drm/xe/xe_vm.c                 | 12 ++-
 drivers/gpu/drm/xe/xe_vm_types.h           |  3 +
 include/drm/gpu_scheduler.h                | 29 +++++--
 23 files changed, 391 insertions(+), 80 deletions(-)

-- 
2.34.1


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

* [Intel-xe] [PATCH v3 1/8] fixup! drm/sched: Convert drm scheduler to use a work queue rather than kthread
  2023-06-07 16:03 [Intel-xe] [PATCH v3 0/8] Scheduler changes for upstreaming Matthew Brost
@ 2023-06-07 16:03 ` Matthew Brost
  2023-06-14  8:29   ` Thomas Hellström
  2023-06-07 16:03 ` [Intel-xe] [PATCH v3 2/8] drm/sched: Move schedule policy to scheduler Matthew Brost
                   ` (13 subsequent siblings)
  14 siblings, 1 reply; 24+ messages in thread
From: Matthew Brost @ 2023-06-07 16:03 UTC (permalink / raw)
  To: intel-xe; +Cc: Rodrigo Vivi

Acked-by: Rodrigo Vivi <rodrigo.vivi@intel.com>
Signed-off-by: Matthew Brost <matthew.brost@intel.com>
---
 drivers/gpu/drm/amd/amdgpu/amdgpu_device.c |  2 +-
 drivers/gpu/drm/etnaviv/etnaviv_sched.c    |  2 +-
 drivers/gpu/drm/lima/lima_sched.c          |  2 +-
 drivers/gpu/drm/msm/msm_ringbuffer.c       |  7 ++++---
 drivers/gpu/drm/panfrost/panfrost_job.c    |  2 +-
 drivers/gpu/drm/scheduler/sched_main.c     |  4 +++-
 drivers/gpu/drm/v3d/v3d_sched.c            | 10 +++++-----
 drivers/gpu/drm/xe/xe_devcoredump_types.h  |  1 +
 drivers/gpu/drm/xe/xe_execlist.c           |  2 +-
 drivers/gpu/drm/xe/xe_guc_submit.c         |  2 +-
 include/drm/gpu_scheduler.h                |  1 +
 11 files changed, 20 insertions(+), 15 deletions(-)

diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
index 64e7584c5dd2..2e776ece4251 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
@@ -2364,7 +2364,7 @@ static int amdgpu_device_init_schedulers(struct amdgpu_device *adev)
 			break;
 		}
 
-		r = drm_sched_init(&ring->sched, &amdgpu_sched_ops,
+		r = drm_sched_init(&ring->sched, &amdgpu_sched_ops, NULL,
 				   ring->num_hw_submission, 0,
 				   timeout, adev->reset_domain->wq,
 				   ring->sched_score, ring->name,
diff --git a/drivers/gpu/drm/etnaviv/etnaviv_sched.c b/drivers/gpu/drm/etnaviv/etnaviv_sched.c
index 1ae87dfd19c4..8486a2923f1b 100644
--- a/drivers/gpu/drm/etnaviv/etnaviv_sched.c
+++ b/drivers/gpu/drm/etnaviv/etnaviv_sched.c
@@ -133,7 +133,7 @@ int etnaviv_sched_init(struct etnaviv_gpu *gpu)
 {
 	int ret;
 
-	ret = drm_sched_init(&gpu->sched, &etnaviv_sched_ops,
+	ret = drm_sched_init(&gpu->sched, &etnaviv_sched_ops, NULL,
 			     etnaviv_hw_jobs_limit, etnaviv_job_hang_limit,
 			     msecs_to_jiffies(500), NULL, NULL,
 			     dev_name(gpu->dev), gpu->dev);
diff --git a/drivers/gpu/drm/lima/lima_sched.c b/drivers/gpu/drm/lima/lima_sched.c
index ff003403fbbc..54f53bece27c 100644
--- a/drivers/gpu/drm/lima/lima_sched.c
+++ b/drivers/gpu/drm/lima/lima_sched.c
@@ -488,7 +488,7 @@ int lima_sched_pipe_init(struct lima_sched_pipe *pipe, const char *name)
 
 	INIT_WORK(&pipe->recover_work, lima_sched_recover_work);
 
-	return drm_sched_init(&pipe->base, &lima_sched_ops, 1,
+	return drm_sched_init(&pipe->base, &lima_sched_ops, NULL, 1,
 			      lima_job_hang_limit,
 			      msecs_to_jiffies(timeout), NULL,
 			      NULL, name, pipe->ldev->dev);
diff --git a/drivers/gpu/drm/msm/msm_ringbuffer.c b/drivers/gpu/drm/msm/msm_ringbuffer.c
index b60199184409..e1cff31f147a 100644
--- a/drivers/gpu/drm/msm/msm_ringbuffer.c
+++ b/drivers/gpu/drm/msm/msm_ringbuffer.c
@@ -93,9 +93,10 @@ struct msm_ringbuffer *msm_ringbuffer_new(struct msm_gpu *gpu, int id,
 	 /* currently managing hangcheck ourselves: */
 	sched_timeout = MAX_SCHEDULE_TIMEOUT;
 
-	ret = drm_sched_init(&ring->sched, &msm_sched_ops,
-			num_hw_submissions, 0, sched_timeout,
-			NULL, NULL, to_msm_bo(ring->bo)->name, gpu->dev->dev);
+	ret = drm_sched_init(&ring->sched, &msm_sched_ops, NULL,
+			     num_hw_submissions, 0, sched_timeout,
+			     NULL, NULL, to_msm_bo(ring->bo)->name,
+			     gpu->dev->dev);
 	if (ret) {
 		goto fail;
 	}
diff --git a/drivers/gpu/drm/panfrost/panfrost_job.c b/drivers/gpu/drm/panfrost/panfrost_job.c
index dbc597ab46fb..f48b07056a16 100644
--- a/drivers/gpu/drm/panfrost/panfrost_job.c
+++ b/drivers/gpu/drm/panfrost/panfrost_job.c
@@ -815,7 +815,7 @@ int panfrost_job_init(struct panfrost_device *pfdev)
 		js->queue[j].fence_context = dma_fence_context_alloc(1);
 
 		ret = drm_sched_init(&js->queue[j].sched,
-				     &panfrost_sched_ops,
+				     &panfrost_sched_ops, NULL,
 				     nentries, 0,
 				     msecs_to_jiffies(JOB_TIMEOUT_MS),
 				     pfdev->reset.wq,
diff --git a/drivers/gpu/drm/scheduler/sched_main.c b/drivers/gpu/drm/scheduler/sched_main.c
index db70a57a3a1a..6bc29d509161 100644
--- a/drivers/gpu/drm/scheduler/sched_main.c
+++ b/drivers/gpu/drm/scheduler/sched_main.c
@@ -1178,6 +1178,7 @@ static void drm_sched_main(struct work_struct *w)
  *
  * @sched: scheduler instance
  * @ops: backend operations for this scheduler
+ * @run_wq: workqueue to use for run work. If NULL, the system_wq is used
  * @hw_submission: number of hw submissions that can be in flight
  * @hang_limit: number of times to allow a job to hang before dropping it
  * @timeout: timeout value in jiffies for the scheduler
@@ -1191,6 +1192,7 @@ static void drm_sched_main(struct work_struct *w)
  */
 int drm_sched_init(struct drm_gpu_scheduler *sched,
 		   const struct drm_sched_backend_ops *ops,
+		   struct workqueue_struct *run_wq,
 		   unsigned hw_submission, unsigned hang_limit,
 		   long timeout, struct workqueue_struct *timeout_wq,
 		   atomic_t *score, const char *name, struct device *dev)
@@ -1199,9 +1201,9 @@ int drm_sched_init(struct drm_gpu_scheduler *sched,
 	sched->ops = ops;
 	sched->hw_submission_limit = hw_submission;
 	sched->name = name;
+	sched->run_wq = run_wq ? : system_wq;
 	sched->timeout = timeout;
 	sched->timeout_wq = timeout_wq ? : system_wq;
-	sched->run_wq = system_wq;	/* FIXME: Let user pass this in */
 	sched->hang_limit = hang_limit;
 	sched->score = score ? score : &sched->_score;
 	sched->dev = dev;
diff --git a/drivers/gpu/drm/v3d/v3d_sched.c b/drivers/gpu/drm/v3d/v3d_sched.c
index 06238e6d7f5c..38e092ea41e6 100644
--- a/drivers/gpu/drm/v3d/v3d_sched.c
+++ b/drivers/gpu/drm/v3d/v3d_sched.c
@@ -388,7 +388,7 @@ v3d_sched_init(struct v3d_dev *v3d)
 	int ret;
 
 	ret = drm_sched_init(&v3d->queue[V3D_BIN].sched,
-			     &v3d_bin_sched_ops,
+			     &v3d_bin_sched_ops, NULL,
 			     hw_jobs_limit, job_hang_limit,
 			     msecs_to_jiffies(hang_limit_ms), NULL,
 			     NULL, "v3d_bin", v3d->drm.dev);
@@ -396,7 +396,7 @@ v3d_sched_init(struct v3d_dev *v3d)
 		return ret;
 
 	ret = drm_sched_init(&v3d->queue[V3D_RENDER].sched,
-			     &v3d_render_sched_ops,
+			     &v3d_render_sched_ops, NULL,
 			     hw_jobs_limit, job_hang_limit,
 			     msecs_to_jiffies(hang_limit_ms), NULL,
 			     NULL, "v3d_render", v3d->drm.dev);
@@ -404,7 +404,7 @@ v3d_sched_init(struct v3d_dev *v3d)
 		goto fail;
 
 	ret = drm_sched_init(&v3d->queue[V3D_TFU].sched,
-			     &v3d_tfu_sched_ops,
+			     &v3d_tfu_sched_ops, NULL,
 			     hw_jobs_limit, job_hang_limit,
 			     msecs_to_jiffies(hang_limit_ms), NULL,
 			     NULL, "v3d_tfu", v3d->drm.dev);
@@ -413,7 +413,7 @@ v3d_sched_init(struct v3d_dev *v3d)
 
 	if (v3d_has_csd(v3d)) {
 		ret = drm_sched_init(&v3d->queue[V3D_CSD].sched,
-				     &v3d_csd_sched_ops,
+				     &v3d_csd_sched_ops, NULL,
 				     hw_jobs_limit, job_hang_limit,
 				     msecs_to_jiffies(hang_limit_ms), NULL,
 				     NULL, "v3d_csd", v3d->drm.dev);
@@ -421,7 +421,7 @@ v3d_sched_init(struct v3d_dev *v3d)
 			goto fail;
 
 		ret = drm_sched_init(&v3d->queue[V3D_CACHE_CLEAN].sched,
-				     &v3d_cache_clean_sched_ops,
+				     &v3d_cache_clean_sched_ops, NULL,
 				     hw_jobs_limit, job_hang_limit,
 				     msecs_to_jiffies(hang_limit_ms), NULL,
 				     NULL, "v3d_cache_clean", v3d->drm.dev);
diff --git a/drivers/gpu/drm/xe/xe_devcoredump_types.h b/drivers/gpu/drm/xe/xe_devcoredump_types.h
index c0d711eb6ab3..cc3ff3ac47ff 100644
--- a/drivers/gpu/drm/xe/xe_devcoredump_types.h
+++ b/drivers/gpu/drm/xe/xe_devcoredump_types.h
@@ -11,6 +11,7 @@
 
 #include "xe_hw_engine_types.h"
 
+struct xe_ct;
 struct xe_device;
 
 /**
diff --git a/drivers/gpu/drm/xe/xe_execlist.c b/drivers/gpu/drm/xe/xe_execlist.c
index 5d2d26e361b9..f0eb8bb277ce 100644
--- a/drivers/gpu/drm/xe/xe_execlist.c
+++ b/drivers/gpu/drm/xe/xe_execlist.c
@@ -336,7 +336,7 @@ static int execlist_engine_init(struct xe_engine *e)
 
 	exl->engine = e;
 
-	err = drm_sched_init(&exl->sched, &drm_sched_ops,
+	err = drm_sched_init(&exl->sched, &drm_sched_ops, NULL,
 			     e->lrc[0].ring.size / MAX_JOB_SIZE_BYTES,
 			     XE_SCHED_HANG_LIMIT, XE_SCHED_JOB_TIMEOUT,
 			     NULL, NULL, e->hwe->name,
diff --git a/drivers/gpu/drm/xe/xe_guc_submit.c b/drivers/gpu/drm/xe/xe_guc_submit.c
index b209e4c2a3a9..5c9a6866bd3d 100644
--- a/drivers/gpu/drm/xe/xe_guc_submit.c
+++ b/drivers/gpu/drm/xe/xe_guc_submit.c
@@ -1064,7 +1064,7 @@ static int guc_engine_init(struct xe_engine *e)
 	init_waitqueue_head(&ge->suspend_wait);
 
 	timeout = xe_vm_no_dma_fences(e->vm) ? MAX_SCHEDULE_TIMEOUT : HZ * 5;
-	err = drm_sched_init(&ge->sched, &drm_sched_ops,
+	err = drm_sched_init(&ge->sched, &drm_sched_ops, NULL,
 			     e->lrc[0].ring.size / MAX_JOB_SIZE_BYTES,
 			     64, timeout, guc_to_gt(guc)->ordered_wq, NULL,
 			     e->name, gt_to_xe(e->gt)->drm.dev);
diff --git a/include/drm/gpu_scheduler.h b/include/drm/gpu_scheduler.h
index 79311df9dd09..419c0446edd7 100644
--- a/include/drm/gpu_scheduler.h
+++ b/include/drm/gpu_scheduler.h
@@ -547,6 +547,7 @@ struct drm_gpu_scheduler {
 
 int drm_sched_init(struct drm_gpu_scheduler *sched,
 		   const struct drm_sched_backend_ops *ops,
+		   struct workqueue_struct *run_wq,
 		   uint32_t hw_submission, unsigned hang_limit,
 		   long timeout, struct workqueue_struct *timeout_wq,
 		   atomic_t *score, const char *name, struct device *dev);
-- 
2.34.1


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

* [Intel-xe] [PATCH v3 2/8] drm/sched: Move schedule policy to scheduler
  2023-06-07 16:03 [Intel-xe] [PATCH v3 0/8] Scheduler changes for upstreaming Matthew Brost
  2023-06-07 16:03 ` [Intel-xe] [PATCH v3 1/8] fixup! drm/sched: Convert drm scheduler to use a work queue rather than kthread Matthew Brost
@ 2023-06-07 16:03 ` Matthew Brost
  2023-06-14  8:34   ` Thomas Hellström
  2023-06-07 16:03 ` [Intel-xe] [PATCH v3 3/8] drm/sched: Add DRM_SCHED_POLICY_SINGLE_ENTITY scheduling policy Matthew Brost
                   ` (12 subsequent siblings)
  14 siblings, 1 reply; 24+ messages in thread
From: Matthew Brost @ 2023-06-07 16:03 UTC (permalink / raw)
  To: intel-xe

Rather than a global modparam for scheduling policy, move the scheduling
policy to scheduler so driver can control each scheduler policy. This is
required as it is possible in certain drivers certain scheduling polices
are not allow, thus the driver must set the policy rather than the
modparam.

v2 (Thomas): Better commit message, s/scdedule/schedule/, remove extra
brackets

Signed-off-by: Matthew Brost <matthew.brost@intel.com>
---
 drivers/gpu/drm/amd/amdgpu/amdgpu_device.c |  1 +
 drivers/gpu/drm/etnaviv/etnaviv_sched.c    |  3 ++-
 drivers/gpu/drm/lima/lima_sched.c          |  3 ++-
 drivers/gpu/drm/msm/msm_ringbuffer.c       |  2 +-
 drivers/gpu/drm/panfrost/panfrost_job.c    |  3 ++-
 drivers/gpu/drm/scheduler/sched_entity.c   | 24 ++++++++++++++++++----
 drivers/gpu/drm/scheduler/sched_main.c     | 21 ++++++++++++++-----
 drivers/gpu/drm/v3d/v3d_sched.c            | 15 +++++++++-----
 drivers/gpu/drm/xe/xe_execlist.c           |  2 +-
 drivers/gpu/drm/xe/xe_guc_submit.c         |  3 ++-
 include/drm/gpu_scheduler.h                | 20 ++++++++++++------
 11 files changed, 71 insertions(+), 26 deletions(-)

diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
index 2e776ece4251..75ab8b9c7b25 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
@@ -2368,6 +2368,7 @@ static int amdgpu_device_init_schedulers(struct amdgpu_device *adev)
 				   ring->num_hw_submission, 0,
 				   timeout, adev->reset_domain->wq,
 				   ring->sched_score, ring->name,
+				   DRM_SCHED_POLICY_DEFAULT,
 				   adev->dev);
 		if (r) {
 			DRM_ERROR("Failed to create scheduler on ring %s.\n",
diff --git a/drivers/gpu/drm/etnaviv/etnaviv_sched.c b/drivers/gpu/drm/etnaviv/etnaviv_sched.c
index 8486a2923f1b..61204a3f8b0b 100644
--- a/drivers/gpu/drm/etnaviv/etnaviv_sched.c
+++ b/drivers/gpu/drm/etnaviv/etnaviv_sched.c
@@ -136,7 +136,8 @@ int etnaviv_sched_init(struct etnaviv_gpu *gpu)
 	ret = drm_sched_init(&gpu->sched, &etnaviv_sched_ops, NULL,
 			     etnaviv_hw_jobs_limit, etnaviv_job_hang_limit,
 			     msecs_to_jiffies(500), NULL, NULL,
-			     dev_name(gpu->dev), gpu->dev);
+			     dev_name(gpu->dev), DRM_SCHED_POLICY_DEFAULT,
+			     gpu->dev);
 	if (ret)
 		return ret;
 
diff --git a/drivers/gpu/drm/lima/lima_sched.c b/drivers/gpu/drm/lima/lima_sched.c
index 54f53bece27c..33042ba6ae93 100644
--- a/drivers/gpu/drm/lima/lima_sched.c
+++ b/drivers/gpu/drm/lima/lima_sched.c
@@ -491,7 +491,8 @@ int lima_sched_pipe_init(struct lima_sched_pipe *pipe, const char *name)
 	return drm_sched_init(&pipe->base, &lima_sched_ops, NULL, 1,
 			      lima_job_hang_limit,
 			      msecs_to_jiffies(timeout), NULL,
-			      NULL, name, pipe->ldev->dev);
+			      NULL, name, DRM_SCHED_POLICY_DEFAULT,
+			      pipe->ldev->dev);
 }
 
 void lima_sched_pipe_fini(struct lima_sched_pipe *pipe)
diff --git a/drivers/gpu/drm/msm/msm_ringbuffer.c b/drivers/gpu/drm/msm/msm_ringbuffer.c
index e1cff31f147a..0d1e7a4414e8 100644
--- a/drivers/gpu/drm/msm/msm_ringbuffer.c
+++ b/drivers/gpu/drm/msm/msm_ringbuffer.c
@@ -96,7 +96,7 @@ struct msm_ringbuffer *msm_ringbuffer_new(struct msm_gpu *gpu, int id,
 	ret = drm_sched_init(&ring->sched, &msm_sched_ops, NULL,
 			     num_hw_submissions, 0, sched_timeout,
 			     NULL, NULL, to_msm_bo(ring->bo)->name,
-			     gpu->dev->dev);
+			     DRM_SCHED_POLICY_DEFAULT, gpu->dev->dev);
 	if (ret) {
 		goto fail;
 	}
diff --git a/drivers/gpu/drm/panfrost/panfrost_job.c b/drivers/gpu/drm/panfrost/panfrost_job.c
index f48b07056a16..effa48b33dce 100644
--- a/drivers/gpu/drm/panfrost/panfrost_job.c
+++ b/drivers/gpu/drm/panfrost/panfrost_job.c
@@ -819,7 +819,8 @@ int panfrost_job_init(struct panfrost_device *pfdev)
 				     nentries, 0,
 				     msecs_to_jiffies(JOB_TIMEOUT_MS),
 				     pfdev->reset.wq,
-				     NULL, "pan_js", pfdev->dev);
+				     NULL, "pan_js", DRM_SCHED_POLICY_DEFAULT,
+				     pfdev->dev);
 		if (ret) {
 			dev_err(pfdev->dev, "Failed to create scheduler: %d.", ret);
 			goto err_sched;
diff --git a/drivers/gpu/drm/scheduler/sched_entity.c b/drivers/gpu/drm/scheduler/sched_entity.c
index cfb433e92005..e1838e328de8 100644
--- a/drivers/gpu/drm/scheduler/sched_entity.c
+++ b/drivers/gpu/drm/scheduler/sched_entity.c
@@ -33,6 +33,20 @@
 #define to_drm_sched_job(sched_job)		\
 		container_of((sched_job), struct drm_sched_job, queue_node)
 
+static bool bad_policies(struct drm_gpu_scheduler **sched_list,
+			 unsigned int num_sched_list)
+{
+	enum drm_sched_policy sched_policy = sched_list[0]->sched_policy;
+	unsigned int i;
+
+	/* All schedule policies must match */
+	for (i = 1; i < num_sched_list; ++i)
+		if (sched_policy != sched_list[i]->sched_policy)
+			return true;
+
+	return false;
+}
+
 /**
  * drm_sched_entity_init - Init a context entity used by scheduler when
  * submit to HW ring.
@@ -62,7 +76,8 @@ int drm_sched_entity_init(struct drm_sched_entity *entity,
 			  unsigned int num_sched_list,
 			  atomic_t *guilty)
 {
-	if (!(entity && sched_list && (num_sched_list == 0 || sched_list[0])))
+	if (!(entity && sched_list && (num_sched_list == 0 || sched_list[0])) ||
+	    bad_policies(sched_list, num_sched_list))
 		return -EINVAL;
 
 	memset(entity, 0, sizeof(struct drm_sched_entity));
@@ -461,7 +476,7 @@ struct drm_sched_job *drm_sched_entity_pop_job(struct drm_sched_entity *entity)
 	 * Update the entity's location in the min heap according to
 	 * the timestamp of the next job, if any.
 	 */
-	if (drm_sched_policy == DRM_SCHED_POLICY_FIFO) {
+	if (entity->rq->sched->sched_policy == DRM_SCHED_POLICY_FIFO) {
 		struct drm_sched_job *next;
 
 		next = to_drm_sched_job(spsc_queue_peek(&entity->job_queue));
@@ -533,7 +548,8 @@ void drm_sched_entity_select_rq(struct drm_sched_entity *entity)
 void drm_sched_entity_push_job(struct drm_sched_job *sched_job)
 {
 	struct drm_sched_entity *entity = sched_job->entity;
-	bool first;
+	bool first, fifo = entity->rq->sched->sched_policy ==
+		DRM_SCHED_POLICY_FIFO;
 	ktime_t submit_ts;
 
 	trace_drm_sched_job(sched_job, entity);
@@ -562,7 +578,7 @@ void drm_sched_entity_push_job(struct drm_sched_job *sched_job)
 		drm_sched_rq_add_entity(entity->rq, entity);
 		spin_unlock(&entity->rq_lock);
 
-		if (drm_sched_policy == DRM_SCHED_POLICY_FIFO)
+		if (fifo)
 			drm_sched_rq_update_fifo(entity, submit_ts);
 
 		drm_sched_wakeup(entity->rq->sched);
diff --git a/drivers/gpu/drm/scheduler/sched_main.c b/drivers/gpu/drm/scheduler/sched_main.c
index 6bc29d509161..ead122e99d00 100644
--- a/drivers/gpu/drm/scheduler/sched_main.c
+++ b/drivers/gpu/drm/scheduler/sched_main.c
@@ -66,14 +66,14 @@
 #define to_drm_sched_job(sched_job)		\
 		container_of((sched_job), struct drm_sched_job, queue_node)
 
-int drm_sched_policy = DRM_SCHED_POLICY_FIFO;
+int default_drm_sched_policy = DRM_SCHED_POLICY_FIFO;
 
 /**
  * DOC: sched_policy (int)
  * Used to override default entities scheduling policy in a run queue.
  */
 MODULE_PARM_DESC(sched_policy, "Specify the scheduling policy for entities on a run-queue, " __stringify(DRM_SCHED_POLICY_RR) " = Round Robin, " __stringify(DRM_SCHED_POLICY_FIFO) " = FIFO (default).");
-module_param_named(sched_policy, drm_sched_policy, int, 0444);
+module_param_named(sched_policy, default_drm_sched_policy, int, 0444);
 
 static __always_inline bool drm_sched_entity_compare_before(struct rb_node *a,
 							    const struct rb_node *b)
@@ -177,7 +177,7 @@ void drm_sched_rq_remove_entity(struct drm_sched_rq *rq,
 	if (rq->current_entity == entity)
 		rq->current_entity = NULL;
 
-	if (drm_sched_policy == DRM_SCHED_POLICY_FIFO)
+	if (rq->sched->sched_policy == DRM_SCHED_POLICY_FIFO)
 		drm_sched_rq_remove_fifo_locked(entity);
 
 	spin_unlock(&rq->lock);
@@ -961,7 +961,7 @@ drm_sched_select_entity(struct drm_gpu_scheduler *sched)
 
 	/* Kernel run queue has higher priority than normal run queue*/
 	for (i = DRM_SCHED_PRIORITY_COUNT - 1; i >= DRM_SCHED_PRIORITY_MIN; i--) {
-		entity = drm_sched_policy == DRM_SCHED_POLICY_FIFO ?
+		entity = sched->sched_policy == DRM_SCHED_POLICY_FIFO ?
 			drm_sched_rq_select_entity_fifo(&sched->sched_rq[i]) :
 			drm_sched_rq_select_entity_rr(&sched->sched_rq[i]);
 		if (entity)
@@ -1186,6 +1186,7 @@ static void drm_sched_main(struct work_struct *w)
  *		used
  * @score: optional score atomic shared with other schedulers
  * @name: name used for debugging
+ * @sched_policy: schedule policy
  * @dev: target &struct device
  *
  * Return 0 on success, otherwise error code.
@@ -1195,9 +1196,15 @@ int drm_sched_init(struct drm_gpu_scheduler *sched,
 		   struct workqueue_struct *run_wq,
 		   unsigned hw_submission, unsigned hang_limit,
 		   long timeout, struct workqueue_struct *timeout_wq,
-		   atomic_t *score, const char *name, struct device *dev)
+		   atomic_t *score, const char *name,
+		   enum drm_sched_policy sched_policy,
+		   struct device *dev)
 {
 	int i;
+
+	if (sched_policy >= DRM_SCHED_POLICY_COUNT)
+		return -EINVAL;
+
 	sched->ops = ops;
 	sched->hw_submission_limit = hw_submission;
 	sched->name = name;
@@ -1207,6 +1214,10 @@ int drm_sched_init(struct drm_gpu_scheduler *sched,
 	sched->hang_limit = hang_limit;
 	sched->score = score ? score : &sched->_score;
 	sched->dev = dev;
+	if (sched_policy == DRM_SCHED_POLICY_DEFAULT)
+		sched->sched_policy = default_drm_sched_policy;
+	else
+		sched->sched_policy = sched_policy;
 	for (i = DRM_SCHED_PRIORITY_MIN; i < DRM_SCHED_PRIORITY_COUNT; i++)
 		drm_sched_rq_init(sched, &sched->sched_rq[i]);
 
diff --git a/drivers/gpu/drm/v3d/v3d_sched.c b/drivers/gpu/drm/v3d/v3d_sched.c
index 38e092ea41e6..5e3fe77fa991 100644
--- a/drivers/gpu/drm/v3d/v3d_sched.c
+++ b/drivers/gpu/drm/v3d/v3d_sched.c
@@ -391,7 +391,8 @@ v3d_sched_init(struct v3d_dev *v3d)
 			     &v3d_bin_sched_ops, NULL,
 			     hw_jobs_limit, job_hang_limit,
 			     msecs_to_jiffies(hang_limit_ms), NULL,
-			     NULL, "v3d_bin", v3d->drm.dev);
+			     NULL, "v3d_bin", DRM_SCHED_POLICY_DEFAULT,
+			     v3d->drm.dev);
 	if (ret)
 		return ret;
 
@@ -399,7 +400,8 @@ v3d_sched_init(struct v3d_dev *v3d)
 			     &v3d_render_sched_ops, NULL,
 			     hw_jobs_limit, job_hang_limit,
 			     msecs_to_jiffies(hang_limit_ms), NULL,
-			     NULL, "v3d_render", v3d->drm.dev);
+			     ULL, "v3d_render", DRM_SCHED_POLICY_DEFAULT,
+			     v3d->drm.dev);
 	if (ret)
 		goto fail;
 
@@ -407,7 +409,8 @@ v3d_sched_init(struct v3d_dev *v3d)
 			     &v3d_tfu_sched_ops, NULL,
 			     hw_jobs_limit, job_hang_limit,
 			     msecs_to_jiffies(hang_limit_ms), NULL,
-			     NULL, "v3d_tfu", v3d->drm.dev);
+			     NULL, "v3d_tfu", DRM_SCHED_POLICY_DEFAULT,
+			     v3d->drm.dev);
 	if (ret)
 		goto fail;
 
@@ -416,7 +419,8 @@ v3d_sched_init(struct v3d_dev *v3d)
 				     &v3d_csd_sched_ops, NULL,
 				     hw_jobs_limit, job_hang_limit,
 				     msecs_to_jiffies(hang_limit_ms), NULL,
-				     NULL, "v3d_csd", v3d->drm.dev);
+				     NULL, "v3d_csd", DRM_SCHED_POLICY_DEFAULT,
+				     v3d->drm.dev);
 		if (ret)
 			goto fail;
 
@@ -424,7 +428,8 @@ v3d_sched_init(struct v3d_dev *v3d)
 				     &v3d_cache_clean_sched_ops, NULL,
 				     hw_jobs_limit, job_hang_limit,
 				     msecs_to_jiffies(hang_limit_ms), NULL,
-				     NULL, "v3d_cache_clean", v3d->drm.dev);
+				     NULL, "v3d_cache_clean",
+				     DRM_SCHED_POLICY_DEFAULT, v3d->drm.dev);
 		if (ret)
 			goto fail;
 	}
diff --git a/drivers/gpu/drm/xe/xe_execlist.c b/drivers/gpu/drm/xe/xe_execlist.c
index f0eb8bb277ce..944dad79a037 100644
--- a/drivers/gpu/drm/xe/xe_execlist.c
+++ b/drivers/gpu/drm/xe/xe_execlist.c
@@ -339,7 +339,7 @@ static int execlist_engine_init(struct xe_engine *e)
 	err = drm_sched_init(&exl->sched, &drm_sched_ops, NULL,
 			     e->lrc[0].ring.size / MAX_JOB_SIZE_BYTES,
 			     XE_SCHED_HANG_LIMIT, XE_SCHED_JOB_TIMEOUT,
-			     NULL, NULL, e->hwe->name,
+			     NULL, NULL, e->hwe->name, DRM_SCHED_POLICY_DEFAULT,
 			     gt_to_xe(e->gt)->drm.dev);
 	if (err)
 		goto err_free;
diff --git a/drivers/gpu/drm/xe/xe_guc_submit.c b/drivers/gpu/drm/xe/xe_guc_submit.c
index 5c9a6866bd3d..c147b17690dd 100644
--- a/drivers/gpu/drm/xe/xe_guc_submit.c
+++ b/drivers/gpu/drm/xe/xe_guc_submit.c
@@ -1067,7 +1067,8 @@ static int guc_engine_init(struct xe_engine *e)
 	err = drm_sched_init(&ge->sched, &drm_sched_ops, NULL,
 			     e->lrc[0].ring.size / MAX_JOB_SIZE_BYTES,
 			     64, timeout, guc_to_gt(guc)->ordered_wq, NULL,
-			     e->name, gt_to_xe(e->gt)->drm.dev);
+			     e->name, DRM_SCHED_POLICY_DEFAULT,
+			     gt_to_xe(e->gt)->drm.dev);
 	if (err)
 		goto err_free;
 
diff --git a/include/drm/gpu_scheduler.h b/include/drm/gpu_scheduler.h
index 419c0446edd7..929d0d567a0b 100644
--- a/include/drm/gpu_scheduler.h
+++ b/include/drm/gpu_scheduler.h
@@ -72,11 +72,15 @@ enum drm_sched_priority {
 	DRM_SCHED_PRIORITY_UNSET = -2
 };
 
-/* Used to chose between FIFO and RR jobs scheduling */
-extern int drm_sched_policy;
-
-#define DRM_SCHED_POLICY_RR    0
-#define DRM_SCHED_POLICY_FIFO  1
+/* Used to chose default scheduling policy*/
+extern int default_drm_sched_policy;
+
+enum drm_sched_policy {
+	DRM_SCHED_POLICY_DEFAULT,
+	DRM_SCHED_POLICY_RR,
+	DRM_SCHED_POLICY_FIFO,
+	DRM_SCHED_POLICY_COUNT,
+};
 
 /**
  * struct drm_sched_entity - A wrapper around a job queue (typically
@@ -513,6 +517,7 @@ struct drm_sched_backend_ops {
  *              guilty and it will no longer be considered for scheduling.
  * @score: score to help loadbalancer pick a idle sched
  * @_score: score used when the driver doesn't provide one
+ * @sched_policy: Schedule policy for scheduler
  * @ready: marks if the underlying HW is ready to work
  * @free_guilty: A hit to time out handler to free the guilty job.
  * @pause_run_wq: pause queuing of @work_run on @run_wq
@@ -539,6 +544,7 @@ struct drm_gpu_scheduler {
 	int				hang_limit;
 	atomic_t                        *score;
 	atomic_t                        _score;
+	enum drm_sched_policy		sched_policy;
 	bool				ready;
 	bool				free_guilty;
 	bool				pause_run_wq;
@@ -550,7 +556,9 @@ int drm_sched_init(struct drm_gpu_scheduler *sched,
 		   struct workqueue_struct *run_wq,
 		   uint32_t hw_submission, unsigned hang_limit,
 		   long timeout, struct workqueue_struct *timeout_wq,
-		   atomic_t *score, const char *name, struct device *dev);
+		   atomic_t *score, const char *name,
+		   enum drm_sched_policy sched_policy,
+		   struct device *dev);
 
 void drm_sched_fini(struct drm_gpu_scheduler *sched);
 int drm_sched_job_init(struct drm_sched_job *job,
-- 
2.34.1


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

* [Intel-xe] [PATCH v3 3/8] drm/sched: Add DRM_SCHED_POLICY_SINGLE_ENTITY scheduling policy
  2023-06-07 16:03 [Intel-xe] [PATCH v3 0/8] Scheduler changes for upstreaming Matthew Brost
  2023-06-07 16:03 ` [Intel-xe] [PATCH v3 1/8] fixup! drm/sched: Convert drm scheduler to use a work queue rather than kthread Matthew Brost
  2023-06-07 16:03 ` [Intel-xe] [PATCH v3 2/8] drm/sched: Move schedule policy to scheduler Matthew Brost
@ 2023-06-07 16:03 ` Matthew Brost
  2023-06-07 16:03 ` [Intel-xe] [PATCH v3 4/8] drm/xe: Use DRM_SCHED_POLICY_SINGLE_ENTITY mode Matthew Brost
                   ` (11 subsequent siblings)
  14 siblings, 0 replies; 24+ messages in thread
From: Matthew Brost @ 2023-06-07 16:03 UTC (permalink / raw)
  To: intel-xe

DRM_SCHED_POLICY_SINGLE_ENTITY creates a 1 to 1 relationship between
scheduler and entity. No priorities or run queue used in this mode.
Intended for devices with firmware schedulers.

Signed-off-by: Matthew Brost <matthew.brost@intel.com>
Reviewed-by: Thomas Hellström <thomas.hellstrom@linux.intel.com>
---
 drivers/gpu/drm/scheduler/sched_entity.c | 69 ++++++++++++++++++------
 drivers/gpu/drm/scheduler/sched_fence.c  |  2 +-
 drivers/gpu/drm/scheduler/sched_main.c   | 63 +++++++++++++++++++---
 include/drm/gpu_scheduler.h              |  8 +++
 4 files changed, 118 insertions(+), 24 deletions(-)

diff --git a/drivers/gpu/drm/scheduler/sched_entity.c b/drivers/gpu/drm/scheduler/sched_entity.c
index e1838e328de8..002a7a248f2c 100644
--- a/drivers/gpu/drm/scheduler/sched_entity.c
+++ b/drivers/gpu/drm/scheduler/sched_entity.c
@@ -83,6 +83,7 @@ int drm_sched_entity_init(struct drm_sched_entity *entity,
 	memset(entity, 0, sizeof(struct drm_sched_entity));
 	INIT_LIST_HEAD(&entity->list);
 	entity->rq = NULL;
+	entity->single_sched = NULL;
 	entity->guilty = guilty;
 	entity->num_sched_list = num_sched_list;
 	entity->priority = priority;
@@ -90,8 +91,17 @@ int drm_sched_entity_init(struct drm_sched_entity *entity,
 	RCU_INIT_POINTER(entity->last_scheduled, NULL);
 	RB_CLEAR_NODE(&entity->rb_tree_node);
 
-	if(num_sched_list)
-		entity->rq = &sched_list[0]->sched_rq[entity->priority];
+	if(num_sched_list) {
+		if (sched_list[0]->sched_policy !=
+		    DRM_SCHED_POLICY_SINGLE_ENTITY) {
+			entity->rq = &sched_list[0]->sched_rq[entity->priority];
+		} else {
+			if (num_sched_list != 1 || sched_list[0]->single_entity)
+				return -EINVAL;
+			sched_list[0]->single_entity = entity;
+			entity->single_sched = sched_list[0];
+		}
+	}
 
 	init_completion(&entity->entity_idle);
 
@@ -124,7 +134,8 @@ void drm_sched_entity_modify_sched(struct drm_sched_entity *entity,
 				    struct drm_gpu_scheduler **sched_list,
 				    unsigned int num_sched_list)
 {
-	WARN_ON(!num_sched_list || !sched_list);
+	WARN_ON(!num_sched_list || !sched_list ||
+		!!entity->single_sched);
 
 	entity->sched_list = sched_list;
 	entity->num_sched_list = num_sched_list;
@@ -215,13 +226,15 @@ static void drm_sched_entity_kill(struct drm_sched_entity *entity)
 {
 	struct drm_sched_job *job;
 	struct dma_fence *prev;
+	bool single_entity = !!entity->single_sched;
 
-	if (!entity->rq)
+	if (!entity->rq && !single_entity)
 		return;
 
 	spin_lock(&entity->rq_lock);
 	entity->stopped = true;
-	drm_sched_rq_remove_entity(entity->rq, entity);
+	if (!single_entity)
+		drm_sched_rq_remove_entity(entity->rq, entity);
 	spin_unlock(&entity->rq_lock);
 
 	/* Make sure this entity is not used by the scheduler at the moment */
@@ -243,6 +256,20 @@ static void drm_sched_entity_kill(struct drm_sched_entity *entity)
 	dma_fence_put(prev);
 }
 
+/**
+ * drm_sched_entity_to_scheduler - Schedule entity to GPU scheduler
+ * @entity: scheduler entity
+ *
+ * Returns GPU scheduler for the entity
+ */
+struct drm_gpu_scheduler *
+drm_sched_entity_to_scheduler(struct drm_sched_entity *entity)
+{
+	bool single_entity = !!entity->single_sched;
+
+	return single_entity ? entity->single_sched : entity->rq->sched;
+}
+
 /**
  * drm_sched_entity_flush - Flush a context entity
  *
@@ -260,11 +287,12 @@ long drm_sched_entity_flush(struct drm_sched_entity *entity, long timeout)
 	struct drm_gpu_scheduler *sched;
 	struct task_struct *last_user;
 	long ret = timeout;
+	bool single_entity = !!entity->single_sched;
 
-	if (!entity->rq)
+	if (!entity->rq && !single_entity)
 		return 0;
 
-	sched = entity->rq->sched;
+	sched = drm_sched_entity_to_scheduler(entity);
 	/**
 	 * The client will not queue more IBs during this fini, consume existing
 	 * queued IBs or discard them on SIGKILL
@@ -357,7 +385,7 @@ static void drm_sched_entity_wakeup(struct dma_fence *f,
 		container_of(cb, struct drm_sched_entity, cb);
 
 	drm_sched_entity_clear_dep(f, cb);
-	drm_sched_wakeup(entity->rq->sched);
+	drm_sched_wakeup(drm_sched_entity_to_scheduler(entity));
 }
 
 /**
@@ -371,6 +399,8 @@ static void drm_sched_entity_wakeup(struct dma_fence *f,
 void drm_sched_entity_set_priority(struct drm_sched_entity *entity,
 				   enum drm_sched_priority priority)
 {
+	WARN_ON(!!entity->single_sched);
+
 	spin_lock(&entity->rq_lock);
 	entity->priority = priority;
 	spin_unlock(&entity->rq_lock);
@@ -383,7 +413,7 @@ EXPORT_SYMBOL(drm_sched_entity_set_priority);
  */
 static bool drm_sched_entity_add_dependency_cb(struct drm_sched_entity *entity)
 {
-	struct drm_gpu_scheduler *sched = entity->rq->sched;
+	struct drm_gpu_scheduler *sched = drm_sched_entity_to_scheduler(entity);
 	struct dma_fence *fence = entity->dependency;
 	struct drm_sched_fence *s_fence;
 
@@ -476,7 +506,8 @@ struct drm_sched_job *drm_sched_entity_pop_job(struct drm_sched_entity *entity)
 	 * Update the entity's location in the min heap according to
 	 * the timestamp of the next job, if any.
 	 */
-	if (entity->rq->sched->sched_policy == DRM_SCHED_POLICY_FIFO) {
+	if (drm_sched_entity_to_scheduler(entity)->sched_policy ==
+	    DRM_SCHED_POLICY_FIFO) {
 		struct drm_sched_job *next;
 
 		next = to_drm_sched_job(spsc_queue_peek(&entity->job_queue));
@@ -499,6 +530,8 @@ void drm_sched_entity_select_rq(struct drm_sched_entity *entity)
 	struct drm_gpu_scheduler *sched;
 	struct drm_sched_rq *rq;
 
+	WARN_ON(!!entity->single_sched);
+
 	/* single possible engine and already selected */
 	if (!entity->sched_list)
 		return;
@@ -548,12 +581,13 @@ void drm_sched_entity_select_rq(struct drm_sched_entity *entity)
 void drm_sched_entity_push_job(struct drm_sched_job *sched_job)
 {
 	struct drm_sched_entity *entity = sched_job->entity;
-	bool first, fifo = entity->rq->sched->sched_policy ==
-		DRM_SCHED_POLICY_FIFO;
+	bool single_entity = !!entity->single_sched;
+	bool first;
 	ktime_t submit_ts;
 
 	trace_drm_sched_job(sched_job, entity);
-	atomic_inc(entity->rq->sched->score);
+	if (!single_entity)
+		atomic_inc(entity->rq->sched->score);
 	WRITE_ONCE(entity->last_user, current->group_leader);
 
 	/*
@@ -566,6 +600,10 @@ void drm_sched_entity_push_job(struct drm_sched_job *sched_job)
 
 	/* first job wakes up scheduler */
 	if (first) {
+		struct drm_gpu_scheduler *sched =
+			drm_sched_entity_to_scheduler(entity);
+		bool fifo = sched->sched_policy == DRM_SCHED_POLICY_FIFO;
+
 		/* Add the entity to the run queue */
 		spin_lock(&entity->rq_lock);
 		if (entity->stopped) {
@@ -575,13 +613,14 @@ void drm_sched_entity_push_job(struct drm_sched_job *sched_job)
 			return;
 		}
 
-		drm_sched_rq_add_entity(entity->rq, entity);
+		if (!single_entity)
+			drm_sched_rq_add_entity(entity->rq, entity);
 		spin_unlock(&entity->rq_lock);
 
 		if (fifo)
 			drm_sched_rq_update_fifo(entity, submit_ts);
 
-		drm_sched_wakeup(entity->rq->sched);
+		drm_sched_wakeup(sched);
 	}
 }
 EXPORT_SYMBOL(drm_sched_entity_push_job);
diff --git a/drivers/gpu/drm/scheduler/sched_fence.c b/drivers/gpu/drm/scheduler/sched_fence.c
index ef120475e7c6..b3b0472dc202 100644
--- a/drivers/gpu/drm/scheduler/sched_fence.c
+++ b/drivers/gpu/drm/scheduler/sched_fence.c
@@ -215,7 +215,7 @@ void drm_sched_fence_init(struct drm_sched_fence *fence,
 {
 	unsigned seq;
 
-	fence->sched = entity->rq->sched;
+	fence->sched = drm_sched_entity_to_scheduler(entity);
 	seq = atomic_inc_return(&entity->fence_seq);
 	dma_fence_init(&fence->scheduled, &drm_sched_fence_ops_scheduled,
 		       &fence->lock, entity->fence_context, seq);
diff --git a/drivers/gpu/drm/scheduler/sched_main.c b/drivers/gpu/drm/scheduler/sched_main.c
index ead122e99d00..6247c39b2f7c 100644
--- a/drivers/gpu/drm/scheduler/sched_main.c
+++ b/drivers/gpu/drm/scheduler/sched_main.c
@@ -32,7 +32,8 @@
  * backend operations to the scheduler like submitting a job to hardware run queue,
  * returning the dependencies of a job etc.
  *
- * The organisation of the scheduler is the following:
+ * The organisation of the scheduler is the following for scheduling policies
+ * DRM_SCHED_POLICY_RR and DRM_SCHED_POLICY_FIFO:
  *
  * 1. Each hw run queue has one scheduler
  * 2. Each scheduler has multiple run queues with different priorities
@@ -41,7 +42,22 @@
  * 4. Entities themselves maintain a queue of jobs that will be scheduled on
  *    the hardware.
  *
- * The jobs in a entity are always scheduled in the order that they were pushed.
+ * The organisation of the scheduler is the following for scheduling policy
+ * DRM_SCHED_POLICY_SINGLE_ENTITY:
+ *
+ * 1. One to one relationship between scheduler and entity
+ * 2. No priorities implemented per scheduler (single job queue)
+ * 3. No run queues in scheduler rather jobs are directly dequeued from entity
+ * 4. The entity maintains a queue of jobs that will be scheduled on the
+ * hardware
+ *
+ * The jobs in a entity are always scheduled in the order that they were pushed
+ * regardless of scheduling policy.
+ *
+ * A policy of DRM_SCHED_POLICY_RR or DRM_SCHED_POLICY_FIFO is expected to used
+ * when the KMD is scheduling directly on the hardware while a scheduling policy
+ * of DRM_SCHED_POLICY_SINGLE_ENTITY is expected to be used when there is a
+ * firmware scheduler.
  *
  * Note that once a job was taken from the entities queue and pushed to the
  * hardware, i.e. the pending queue, the entity must not be referenced anymore
@@ -96,6 +112,8 @@ static inline void drm_sched_rq_remove_fifo_locked(struct drm_sched_entity *enti
 
 void drm_sched_rq_update_fifo(struct drm_sched_entity *entity, ktime_t ts)
 {
+	WARN_ON(!!entity->single_sched);
+
 	/*
 	 * Both locks need to be grabbed, one to protect from entity->rq change
 	 * for entity from within concurrent drm_sched_entity_select_rq and the
@@ -126,6 +144,8 @@ void drm_sched_rq_update_fifo(struct drm_sched_entity *entity, ktime_t ts)
 static void drm_sched_rq_init(struct drm_gpu_scheduler *sched,
 			      struct drm_sched_rq *rq)
 {
+	WARN_ON(sched->sched_policy == DRM_SCHED_POLICY_SINGLE_ENTITY);
+
 	spin_lock_init(&rq->lock);
 	INIT_LIST_HEAD(&rq->entities);
 	rq->rb_tree_root = RB_ROOT_CACHED;
@@ -144,6 +164,8 @@ static void drm_sched_rq_init(struct drm_gpu_scheduler *sched,
 void drm_sched_rq_add_entity(struct drm_sched_rq *rq,
 			     struct drm_sched_entity *entity)
 {
+	WARN_ON(!!entity->single_sched);
+
 	if (!list_empty(&entity->list))
 		return;
 
@@ -166,6 +188,8 @@ void drm_sched_rq_add_entity(struct drm_sched_rq *rq,
 void drm_sched_rq_remove_entity(struct drm_sched_rq *rq,
 				struct drm_sched_entity *entity)
 {
+	WARN_ON(!!entity->single_sched);
+
 	if (list_empty(&entity->list))
 		return;
 
@@ -696,7 +720,7 @@ int drm_sched_job_init(struct drm_sched_job *job,
 		       struct drm_sched_entity *entity,
 		       void *owner)
 {
-	if (!entity->rq)
+	if (!entity->rq && !entity->single_sched)
 		return -ENOENT;
 
 	job->entity = entity;
@@ -729,13 +753,16 @@ void drm_sched_job_arm(struct drm_sched_job *job)
 {
 	struct drm_gpu_scheduler *sched;
 	struct drm_sched_entity *entity = job->entity;
+	bool single_entity = !!entity->single_sched;
 
 	BUG_ON(!entity);
-	drm_sched_entity_select_rq(entity);
-	sched = entity->rq->sched;
+	if (!single_entity)
+		drm_sched_entity_select_rq(entity);
+	sched = drm_sched_entity_to_scheduler(entity);
 
 	job->sched = sched;
-	job->s_priority = entity->rq - sched->sched_rq;
+	if (!single_entity)
+		job->s_priority = entity->rq - sched->sched_rq;
 	job->id = atomic64_inc_return(&sched->job_id_count);
 
 	drm_sched_fence_init(job->s_fence, job->entity);
@@ -959,6 +986,13 @@ drm_sched_select_entity(struct drm_gpu_scheduler *sched)
 	if (!drm_sched_ready(sched))
 		return NULL;
 
+	if (sched->single_entity) {
+		if (drm_sched_entity_is_ready(sched->single_entity))
+			return sched->single_entity;
+
+		return NULL;
+	}
+
 	/* Kernel run queue has higher priority than normal run queue*/
 	for (i = DRM_SCHED_PRIORITY_COUNT - 1; i >= DRM_SCHED_PRIORITY_MIN; i--) {
 		entity = sched->sched_policy == DRM_SCHED_POLICY_FIFO ?
@@ -1206,6 +1240,7 @@ int drm_sched_init(struct drm_gpu_scheduler *sched,
 		return -EINVAL;
 
 	sched->ops = ops;
+	sched->single_entity = NULL;
 	sched->hw_submission_limit = hw_submission;
 	sched->name = name;
 	sched->run_wq = run_wq ? : system_wq;
@@ -1218,7 +1253,9 @@ int drm_sched_init(struct drm_gpu_scheduler *sched,
 		sched->sched_policy = default_drm_sched_policy;
 	else
 		sched->sched_policy = sched_policy;
-	for (i = DRM_SCHED_PRIORITY_MIN; i < DRM_SCHED_PRIORITY_COUNT; i++)
+	for (i = DRM_SCHED_PRIORITY_MIN; sched_policy !=
+	     DRM_SCHED_POLICY_SINGLE_ENTITY && i < DRM_SCHED_PRIORITY_COUNT;
+	     i++)
 		drm_sched_rq_init(sched, &sched->sched_rq[i]);
 
 	init_waitqueue_head(&sched->job_scheduled);
@@ -1251,7 +1288,15 @@ void drm_sched_fini(struct drm_gpu_scheduler *sched)
 
 	drm_sched_run_wq_stop(sched);
 
-	for (i = DRM_SCHED_PRIORITY_COUNT - 1; i >= DRM_SCHED_PRIORITY_MIN; i--) {
+	if (sched->single_entity) {
+		spin_lock(&sched->single_entity->rq_lock);
+		sched->single_entity->stopped = true;
+		spin_unlock(&sched->single_entity->rq_lock);
+	}
+
+	for (i = DRM_SCHED_PRIORITY_COUNT - 1; sched->sched_policy !=
+	     DRM_SCHED_POLICY_SINGLE_ENTITY && i >= DRM_SCHED_PRIORITY_MIN;
+	     i--) {
 		struct drm_sched_rq *rq = &sched->sched_rq[i];
 
 		if (!rq)
@@ -1295,6 +1340,8 @@ void drm_sched_increase_karma(struct drm_sched_job *bad)
 	struct drm_sched_entity *entity;
 	struct drm_gpu_scheduler *sched = bad->sched;
 
+	WARN_ON(sched->sched_policy == DRM_SCHED_POLICY_SINGLE_ENTITY);
+
 	/* don't change @bad's karma if it's from KERNEL RQ,
 	 * because sometimes GPU hang would cause kernel jobs (like VM updating jobs)
 	 * corrupt but keep in mind that kernel jobs always considered good.
diff --git a/include/drm/gpu_scheduler.h b/include/drm/gpu_scheduler.h
index 929d0d567a0b..1a26f501a400 100644
--- a/include/drm/gpu_scheduler.h
+++ b/include/drm/gpu_scheduler.h
@@ -79,6 +79,7 @@ enum drm_sched_policy {
 	DRM_SCHED_POLICY_DEFAULT,
 	DRM_SCHED_POLICY_RR,
 	DRM_SCHED_POLICY_FIFO,
+	DRM_SCHED_POLICY_SINGLE_ENTITY,
 	DRM_SCHED_POLICY_COUNT,
 };
 
@@ -112,6 +113,9 @@ struct drm_sched_entity {
 	 */
 	struct drm_sched_rq		*rq;
 
+	/** @single_sched: Single scheduler */
+	struct drm_gpu_scheduler	*single_sched;
+
 	/**
 	 * @sched_list:
 	 *
@@ -496,6 +500,7 @@ struct drm_sched_backend_ops {
  * struct drm_gpu_scheduler - scheduler instance-specific data
  *
  * @ops: backend operations provided by the driver.
+ * @single_entity: Single entity for the scheduler
  * @hw_submission_limit: the max size of the hardware queue.
  * @timeout: the time after which a job is removed from the scheduler.
  * @name: name of the ring for which this scheduler is being used.
@@ -527,6 +532,7 @@ struct drm_sched_backend_ops {
  */
 struct drm_gpu_scheduler {
 	const struct drm_sched_backend_ops	*ops;
+	struct drm_sched_entity		*single_entity;
 	uint32_t			hw_submission_limit;
 	long				timeout;
 	const char			*name;
@@ -612,6 +618,8 @@ int drm_sched_entity_init(struct drm_sched_entity *entity,
 			  struct drm_gpu_scheduler **sched_list,
 			  unsigned int num_sched_list,
 			  atomic_t *guilty);
+struct drm_gpu_scheduler *
+drm_sched_entity_to_scheduler(struct drm_sched_entity *entity);
 long drm_sched_entity_flush(struct drm_sched_entity *entity, long timeout);
 void drm_sched_entity_fini(struct drm_sched_entity *entity);
 void drm_sched_entity_destroy(struct drm_sched_entity *entity);
-- 
2.34.1


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

* [Intel-xe] [PATCH v3 4/8] drm/xe: Use DRM_SCHED_POLICY_SINGLE_ENTITY mode
  2023-06-07 16:03 [Intel-xe] [PATCH v3 0/8] Scheduler changes for upstreaming Matthew Brost
                   ` (2 preceding siblings ...)
  2023-06-07 16:03 ` [Intel-xe] [PATCH v3 3/8] drm/sched: Add DRM_SCHED_POLICY_SINGLE_ENTITY scheduling policy Matthew Brost
@ 2023-06-07 16:03 ` Matthew Brost
  2023-06-07 16:03 ` [Intel-xe] [PATCH v3 5/8] drm/xe: Long running job update Matthew Brost
                   ` (10 subsequent siblings)
  14 siblings, 0 replies; 24+ messages in thread
From: Matthew Brost @ 2023-06-07 16:03 UTC (permalink / raw)
  To: intel-xe

We create 1 GPU scheduler per entity in Xe, use
DRM_SCHED_POLICY_SINGLE_ENTITY scheduling which is designed for that
paradigm.

Signed-off-by: Matthew Brost <matthew.brost@intel.com>
Reviewed-by: Thomas Hellström <thomas.hellstrom@linux.intel.com>
---
 drivers/gpu/drm/xe/xe_execlist.c   | 3 ++-
 drivers/gpu/drm/xe/xe_guc_submit.c | 3 +--
 2 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/drivers/gpu/drm/xe/xe_execlist.c b/drivers/gpu/drm/xe/xe_execlist.c
index 944dad79a037..46293c9bb6a8 100644
--- a/drivers/gpu/drm/xe/xe_execlist.c
+++ b/drivers/gpu/drm/xe/xe_execlist.c
@@ -339,7 +339,8 @@ static int execlist_engine_init(struct xe_engine *e)
 	err = drm_sched_init(&exl->sched, &drm_sched_ops, NULL,
 			     e->lrc[0].ring.size / MAX_JOB_SIZE_BYTES,
 			     XE_SCHED_HANG_LIMIT, XE_SCHED_JOB_TIMEOUT,
-			     NULL, NULL, e->hwe->name, DRM_SCHED_POLICY_DEFAULT,
+			     NULL, NULL, e->hwe->name,
+			     DRM_SCHED_POLICY_SINGLE_ENTITY,
 			     gt_to_xe(e->gt)->drm.dev);
 	if (err)
 		goto err_free;
diff --git a/drivers/gpu/drm/xe/xe_guc_submit.c b/drivers/gpu/drm/xe/xe_guc_submit.c
index c147b17690dd..a7a0d9f806bd 100644
--- a/drivers/gpu/drm/xe/xe_guc_submit.c
+++ b/drivers/gpu/drm/xe/xe_guc_submit.c
@@ -1067,7 +1067,7 @@ static int guc_engine_init(struct xe_engine *e)
 	err = drm_sched_init(&ge->sched, &drm_sched_ops, NULL,
 			     e->lrc[0].ring.size / MAX_JOB_SIZE_BYTES,
 			     64, timeout, guc_to_gt(guc)->ordered_wq, NULL,
-			     e->name, DRM_SCHED_POLICY_DEFAULT,
+			     e->name, DRM_SCHED_POLICY_SINGLE_ENTITY,
 			     gt_to_xe(e->gt)->drm.dev);
 	if (err)
 		goto err_free;
@@ -1168,7 +1168,6 @@ static int guc_engine_set_priority(struct xe_engine *e,
 	if (!msg)
 		return -ENOMEM;
 
-	drm_sched_entity_set_priority(e->entity, priority);
 	guc_engine_add_msg(e, msg, SET_SCHED_PROPS);
 
 	return 0;
-- 
2.34.1


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

* [Intel-xe] [PATCH v3 5/8] drm/xe: Long running job update
  2023-06-07 16:03 [Intel-xe] [PATCH v3 0/8] Scheduler changes for upstreaming Matthew Brost
                   ` (3 preceding siblings ...)
  2023-06-07 16:03 ` [Intel-xe] [PATCH v3 4/8] drm/xe: Use DRM_SCHED_POLICY_SINGLE_ENTITY mode Matthew Brost
@ 2023-06-07 16:03 ` Matthew Brost
  2023-06-14 11:40   ` Thomas Hellström
  2023-06-07 16:03 ` [Intel-xe] [PATCH v3 6/8] drm/xe: Ensure LR engines are not persistent Matthew Brost
                   ` (9 subsequent siblings)
  14 siblings, 1 reply; 24+ messages in thread
From: Matthew Brost @ 2023-06-07 16:03 UTC (permalink / raw)
  To: intel-xe

For long running (LR) jobs with the DRM scheduler we must return NULL in
run_job which results in signaling the job's finished fence immediately.
This prevents LR jobs from creating infinite dma-fences.

Signaling job's finished fence immediately breaks flow controling ring
with the DRM scheduler, to work around this the ring is flow controlled
and written in the exec IOCTL. Signaling job's finished fence
immediately also breaks the TDR which is used in reset / cleanup entity
paths so we write a new path for LR entities.

v2: Better commit, white space, remove rmb(), better comment next to
emit_job()

Signed-off-by: Matthew Brost <matthew.brost@intel.com>
---
 drivers/gpu/drm/xe/xe_engine.c           | 32 ++++++++
 drivers/gpu/drm/xe/xe_engine.h           |  4 +
 drivers/gpu/drm/xe/xe_exec.c             |  8 ++
 drivers/gpu/drm/xe/xe_guc_engine_types.h |  2 +
 drivers/gpu/drm/xe/xe_guc_submit.c       | 93 +++++++++++++++++++++---
 drivers/gpu/drm/xe/xe_trace.h            |  5 ++
 6 files changed, 135 insertions(+), 9 deletions(-)

diff --git a/drivers/gpu/drm/xe/xe_engine.c b/drivers/gpu/drm/xe/xe_engine.c
index b3036c4a8ec3..eb5f66f07da8 100644
--- a/drivers/gpu/drm/xe/xe_engine.c
+++ b/drivers/gpu/drm/xe/xe_engine.c
@@ -18,6 +18,7 @@
 #include "xe_macros.h"
 #include "xe_migrate.h"
 #include "xe_pm.h"
+#include "xe_ring_ops_types.h"
 #include "xe_trace.h"
 #include "xe_vm.h"
 
@@ -679,6 +680,37 @@ static void engine_kill_compute(struct xe_engine *e)
 	up_write(&e->vm->lock);
 }
 
+/**
+ * xe_engine_is_lr() - Whether an engine is long-running
+ * @e: The engine
+ *
+ * Return: True if the engine is long-running, false otherwise.
+ */
+bool xe_engine_is_lr(struct xe_engine *e)
+{
+	return e->vm && xe_vm_no_dma_fences(e->vm) &&
+		!(e->flags & ENGINE_FLAG_VM);
+}
+
+static s32 xe_engine_num_job_inflight(struct xe_engine *e)
+{
+	return e->lrc->fence_ctx.next_seqno - xe_lrc_seqno(e->lrc) - 1;
+}
+
+/**
+ * xe_engine_ring_full() - Whether an engine's ring is full
+ * @e: The engine
+ *
+ * Return: True if the engine's ring is full, false otherwise.
+ */
+bool xe_engine_ring_full(struct xe_engine *e)
+{
+	struct xe_lrc *lrc = e->lrc;
+	s32 max_job = lrc->ring.size / MAX_JOB_SIZE_BYTES;
+
+	return xe_engine_num_job_inflight(e) >= max_job;
+}
+
 /**
  * xe_engine_is_idle() - Whether an engine is idle.
  * @engine: The engine
diff --git a/drivers/gpu/drm/xe/xe_engine.h b/drivers/gpu/drm/xe/xe_engine.h
index a49cf2ab405e..2e60f6d90226 100644
--- a/drivers/gpu/drm/xe/xe_engine.h
+++ b/drivers/gpu/drm/xe/xe_engine.h
@@ -42,6 +42,10 @@ static inline bool xe_engine_is_parallel(struct xe_engine *engine)
 	return engine->width > 1;
 }
 
+bool xe_engine_is_lr(struct xe_engine *e);
+
+bool xe_engine_ring_full(struct xe_engine *e);
+
 bool xe_engine_is_idle(struct xe_engine *engine);
 
 void xe_engine_kill(struct xe_engine *e);
diff --git a/drivers/gpu/drm/xe/xe_exec.c b/drivers/gpu/drm/xe/xe_exec.c
index e44076ee2e11..9e9523939de8 100644
--- a/drivers/gpu/drm/xe/xe_exec.c
+++ b/drivers/gpu/drm/xe/xe_exec.c
@@ -14,6 +14,7 @@
 #include "xe_device.h"
 #include "xe_engine.h"
 #include "xe_macros.h"
+#include "xe_ring_ops_types.h"
 #include "xe_sched_job.h"
 #include "xe_sync.h"
 #include "xe_vm.h"
@@ -300,6 +301,11 @@ int xe_exec_ioctl(struct drm_device *dev, void *data, struct drm_file *file)
 		goto err_engine_end;
 	}
 
+	if (xe_engine_is_lr(engine) && xe_engine_ring_full(engine)) {
+		err = -EWOULDBLOCK;
+		goto err_engine_end;
+	}
+
 	job = xe_sched_job_create(engine, xe_engine_is_parallel(engine) ?
 				  addresses : &args->address);
 	if (IS_ERR(job)) {
@@ -386,6 +392,8 @@ int xe_exec_ioctl(struct drm_device *dev, void *data, struct drm_file *file)
 		xe_sync_entry_signal(&syncs[i], job,
 				     &job->drm.s_fence->finished);
 
+	if (xe_engine_is_lr(engine))
+		engine->ring_ops->emit_job(job);
 	xe_sched_job_push(job);
 	xe_vm_reactivate_rebind(vm);
 
diff --git a/drivers/gpu/drm/xe/xe_guc_engine_types.h b/drivers/gpu/drm/xe/xe_guc_engine_types.h
index cbfb13026ec1..5d83132034a6 100644
--- a/drivers/gpu/drm/xe/xe_guc_engine_types.h
+++ b/drivers/gpu/drm/xe/xe_guc_engine_types.h
@@ -31,6 +31,8 @@ struct xe_guc_engine {
 	 */
 #define MAX_STATIC_MSG_TYPE	3
 	struct drm_sched_msg static_msgs[MAX_STATIC_MSG_TYPE];
+	/** @lr_tdr: long running TDR worker */
+	struct work_struct lr_tdr;
 	/** @fini_async: do final fini async from this worker */
 	struct work_struct fini_async;
 	/** @resume_time: time of last resume */
diff --git a/drivers/gpu/drm/xe/xe_guc_submit.c b/drivers/gpu/drm/xe/xe_guc_submit.c
index a7a0d9f806bd..7bde687fd188 100644
--- a/drivers/gpu/drm/xe/xe_guc_submit.c
+++ b/drivers/gpu/drm/xe/xe_guc_submit.c
@@ -482,6 +482,14 @@ static void register_engine(struct xe_engine *e)
 		parallel_write(xe, map, wq_desc.wq_status, WQ_STATUS_ACTIVE);
 	}
 
+	/*
+	 * We must keep a reference for LR engines if engine is registered with
+	 * the GuC as jobs signal immediately and can't destroy an engine if the
+	 * GuC has a reference to it.
+	 */
+	if (xe_engine_is_lr(e))
+		xe_engine_get(e);
+
 	set_engine_registered(e);
 	trace_xe_engine_register(e);
 	if (xe_engine_is_parallel(e))
@@ -644,6 +652,7 @@ guc_engine_run_job(struct drm_sched_job *drm_job)
 {
 	struct xe_sched_job *job = to_xe_sched_job(drm_job);
 	struct xe_engine *e = job->engine;
+	bool lr = xe_engine_is_lr(e);
 
 	XE_BUG_ON((engine_destroyed(e) || engine_pending_disable(e)) &&
 		  !engine_banned(e) && !engine_suspended(e));
@@ -653,14 +662,19 @@ guc_engine_run_job(struct drm_sched_job *drm_job)
 	if (!engine_killed_or_banned(e) && !xe_sched_job_is_error(job)) {
 		if (!engine_registered(e))
 			register_engine(e);
-		e->ring_ops->emit_job(job);
+		if (!lr)	/* LR jobs are emitted in the exec IOCTL */
+			e->ring_ops->emit_job(job);
 		submit_engine(e);
 	}
 
-	if (test_and_set_bit(JOB_FLAG_SUBMIT, &job->fence->flags))
+	if (lr) {
+		xe_sched_job_set_error(job, -EOPNOTSUPP);
+		return NULL;
+	} else if (test_and_set_bit(JOB_FLAG_SUBMIT, &job->fence->flags)) {
 		return job->fence;
-	else
+	} else {
 		return dma_fence_get(job->fence);
+	}
 }
 
 static void guc_engine_free_job(struct drm_sched_job *drm_job)
@@ -764,6 +778,56 @@ static void simple_error_capture(struct xe_engine *e)
 }
 #endif
 
+static void xe_guc_engine_trigger_cleanup(struct xe_engine *e)
+{
+	struct xe_guc *guc = engine_to_guc(e);
+
+	if (xe_engine_is_lr(e))
+		queue_work(guc_to_gt(guc)->ordered_wq, &e->guc->lr_tdr);
+	else
+		drm_sched_set_timeout(&e->guc->sched, MIN_SCHED_TIMEOUT);
+}
+
+static void xe_guc_engine_lr_cleanup(struct work_struct *w)
+{
+	struct xe_guc_engine *ge =
+		container_of(w, struct xe_guc_engine, lr_tdr);
+	struct xe_engine *e = ge->engine;
+	struct drm_gpu_scheduler *sched = &ge->sched;
+
+	XE_WARN_ON(!xe_engine_is_lr(e));
+	trace_xe_engine_lr_cleanup(e);
+
+	/* Kill the run_job / process_msg entry points */
+	drm_sched_run_wq_stop(sched);
+
+	/* Engine state now stable, disable scheduling / deregister if needed */
+	if (engine_registered(e)) {
+		struct xe_guc *guc = engine_to_guc(e);
+		int ret;
+
+		set_engine_banned(e);
+		xe_engine_get(e);
+		disable_scheduling_deregister(guc, e);
+
+		/*
+		 * Must wait for scheduling to be disabled before signalling
+		 * any fences, if GT broken the GT reset code should signal us.
+		 */
+		ret = wait_event_timeout(guc->ct.wq,
+					 !engine_pending_disable(e) ||
+					 guc_read_stopped(guc), HZ * 5);
+		if (!ret) {
+			XE_WARN_ON("Schedule disable failed to respond");
+			drm_sched_run_wq_start(sched);
+			xe_gt_reset_async(e->gt);
+			return;
+		}
+	}
+
+	drm_sched_run_wq_start(sched);
+}
+
 static enum drm_gpu_sched_stat
 guc_engine_timedout_job(struct drm_sched_job *drm_job)
 {
@@ -815,7 +879,7 @@ guc_engine_timedout_job(struct drm_sched_job *drm_job)
 			err = -EIO;
 		set_engine_banned(e);
 		xe_engine_get(e);
-		disable_scheduling_deregister(engine_to_guc(e), e);
+		disable_scheduling_deregister(guc, e);
 
 		/*
 		 * Must wait for scheduling to be disabled before signalling
@@ -848,7 +912,7 @@ guc_engine_timedout_job(struct drm_sched_job *drm_job)
 	 */
 	list_add(&drm_job->list, &sched->pending_list);
 	drm_sched_run_wq_start(sched);
-	drm_sched_set_timeout(&e->guc->sched, MIN_SCHED_TIMEOUT);
+	xe_guc_engine_trigger_cleanup(e);
 
 	/* Mark all outstanding jobs as bad, thus completing them */
 	spin_lock(&sched->job_list_lock);
@@ -872,6 +936,8 @@ static void __guc_engine_fini_async(struct work_struct *w)
 
 	trace_xe_engine_destroy(e);
 
+	if (xe_engine_is_lr(e))
+		cancel_work_sync(&ge->lr_tdr);
 	if (e->flags & ENGINE_FLAG_PERSISTENT)
 		xe_device_remove_persistent_engines(gt_to_xe(e->gt), e);
 	release_guc_id(guc, e);
@@ -889,7 +955,7 @@ static void guc_engine_fini_async(struct xe_engine *e)
 	bool kernel = e->flags & ENGINE_FLAG_KERNEL;
 
 	INIT_WORK(&e->guc->fini_async, __guc_engine_fini_async);
-	queue_work(system_unbound_wq, &e->guc->fini_async);
+	queue_work(system_wq, &e->guc->fini_async);
 
 	/* We must block on kernel engines so slabs are empty on driver unload */
 	if (kernel) {
@@ -1078,6 +1144,9 @@ static int guc_engine_init(struct xe_engine *e)
 	if (err)
 		goto err_sched;
 
+	if (xe_engine_is_lr(e))
+		INIT_WORK(&e->guc->lr_tdr, xe_guc_engine_lr_cleanup);
+
 	mutex_lock(&guc->submission_state.lock);
 
 	err = alloc_guc_id(guc, e);
@@ -1129,7 +1198,7 @@ static void guc_engine_kill(struct xe_engine *e)
 {
 	trace_xe_engine_kill(e);
 	set_engine_killed(e);
-	drm_sched_set_timeout(&e->guc->sched, MIN_SCHED_TIMEOUT);
+	xe_guc_engine_trigger_cleanup(e);
 }
 
 static void guc_engine_add_msg(struct xe_engine *e, struct drm_sched_msg *msg,
@@ -1279,6 +1348,9 @@ static void guc_engine_stop(struct xe_guc *guc, struct xe_engine *e)
 	/* Stop scheduling + flush any DRM scheduler operations */
 	drm_sched_run_wq_stop(sched);
 
+	if (engine_registered(e) && xe_engine_is_lr(e))
+		xe_engine_put(e);
+
 	/* Clean up lost G2H + reset engine state */
 	if (engine_destroyed(e) && engine_registered(e)) {
 		if (engine_banned(e))
@@ -1503,6 +1575,9 @@ int xe_guc_deregister_done_handler(struct xe_guc *guc, u32 *msg, u32 len)
 	trace_xe_engine_deregister_done(e);
 
 	clear_engine_registered(e);
+	if (xe_engine_is_lr(e))
+		xe_engine_put(e);
+
 	if (engine_banned(e))
 		xe_engine_put(e);
 	else
@@ -1540,7 +1615,7 @@ int xe_guc_engine_reset_handler(struct xe_guc *guc, u32 *msg, u32 len)
 	 */
 	set_engine_reset(e);
 	if (!engine_banned(e))
-		drm_sched_set_timeout(&e->guc->sched, MIN_SCHED_TIMEOUT);
+		xe_guc_engine_trigger_cleanup(e);
 
 	return 0;
 }
@@ -1567,7 +1642,7 @@ int xe_guc_engine_memory_cat_error_handler(struct xe_guc *guc, u32 *msg,
 	/* Treat the same as engine reset */
 	set_engine_reset(e);
 	if (!engine_banned(e))
-		drm_sched_set_timeout(&e->guc->sched, MIN_SCHED_TIMEOUT);
+		xe_guc_engine_trigger_cleanup(e);
 
 	return 0;
 }
diff --git a/drivers/gpu/drm/xe/xe_trace.h b/drivers/gpu/drm/xe/xe_trace.h
index 2f8eb7ebe9a7..02861c26e145 100644
--- a/drivers/gpu/drm/xe/xe_trace.h
+++ b/drivers/gpu/drm/xe/xe_trace.h
@@ -219,6 +219,11 @@ DEFINE_EVENT(xe_engine, xe_engine_resubmit,
 	     TP_ARGS(e)
 );
 
+DEFINE_EVENT(xe_engine, xe_engine_lr_cleanup,
+	     TP_PROTO(struct xe_engine *e),
+	     TP_ARGS(e)
+);
+
 DECLARE_EVENT_CLASS(xe_sched_job,
 		    TP_PROTO(struct xe_sched_job *job),
 		    TP_ARGS(job),
-- 
2.34.1


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

* [Intel-xe] [PATCH v3 6/8] drm/xe: Ensure LR engines are not persistent
  2023-06-07 16:03 [Intel-xe] [PATCH v3 0/8] Scheduler changes for upstreaming Matthew Brost
                   ` (4 preceding siblings ...)
  2023-06-07 16:03 ` [Intel-xe] [PATCH v3 5/8] drm/xe: Long running job update Matthew Brost
@ 2023-06-07 16:03 ` Matthew Brost
  2023-06-07 16:03 ` [Intel-xe] [PATCH v3 7/8] drm/xe: Only try to lock external BOs in VM bind Matthew Brost
                   ` (8 subsequent siblings)
  14 siblings, 0 replies; 24+ messages in thread
From: Matthew Brost @ 2023-06-07 16:03 UTC (permalink / raw)
  To: intel-xe

With our ref counting scheme long running (LR) engines only close
properly if not persistent, ensure that LR engines are non-persistent.

v2: spell out LR

Signed-off-by: Matthew Brost <matthew.brost@intel.com>
Reviewed-by: Thomas Hellström <thomas.hellstrom@linux.intel.com>
---
 drivers/gpu/drm/xe/xe_engine.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/xe/xe_engine.c b/drivers/gpu/drm/xe/xe_engine.c
index eb5f66f07da8..48e2d1fb7d74 100644
--- a/drivers/gpu/drm/xe/xe_engine.c
+++ b/drivers/gpu/drm/xe/xe_engine.c
@@ -599,7 +599,9 @@ int xe_engine_create_ioctl(struct drm_device *dev, void *data,
 			return -ENOENT;
 
 		e = xe_engine_create(xe, vm, logical_mask,
-				     args->width, hwe, ENGINE_FLAG_PERSISTENT);
+				     args->width, hwe,
+				     xe_vm_no_dma_fences(vm) ? 0 :
+				     ENGINE_FLAG_PERSISTENT);
 		xe_vm_put(vm);
 		if (IS_ERR(e))
 			return PTR_ERR(e);
-- 
2.34.1


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

* [Intel-xe] [PATCH v3 7/8] drm/xe: Only try to lock external BOs in VM bind
  2023-06-07 16:03 [Intel-xe] [PATCH v3 0/8] Scheduler changes for upstreaming Matthew Brost
                   ` (5 preceding siblings ...)
  2023-06-07 16:03 ` [Intel-xe] [PATCH v3 6/8] drm/xe: Ensure LR engines are not persistent Matthew Brost
@ 2023-06-07 16:03 ` Matthew Brost
  2023-06-14 11:46   ` Thomas Hellström
  2023-06-07 16:03 ` [Intel-xe] [PATCH v3 8/8] drm/xe: VM LRU bulk move Matthew Brost
                   ` (7 subsequent siblings)
  14 siblings, 1 reply; 24+ messages in thread
From: Matthew Brost @ 2023-06-07 16:03 UTC (permalink / raw)
  To: intel-xe; +Cc: Rodrigo Vivi

We only need to try to lock a BO if it's external as non-external BOs
share the dma-resv with the already locked VM. Trying to lock
non-external BOs caused an issue (list corruption) in an uncoming patch
which adds bulk LRU move. Since this code isn't needed, remove it.

v2: New commit message, s/mattthew/matthew/

Reviewed-by: Rodrigo Vivi <rodrigo.vivi@intel.com>
Signed-off-by: Matthew Brost <matthew.brost@intel.com>
---
 drivers/gpu/drm/xe/xe_vm.c | 8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)

diff --git a/drivers/gpu/drm/xe/xe_vm.c b/drivers/gpu/drm/xe/xe_vm.c
index d1c380ad7f6b..2780f350ed33 100644
--- a/drivers/gpu/drm/xe/xe_vm.c
+++ b/drivers/gpu/drm/xe/xe_vm.c
@@ -2146,9 +2146,11 @@ static int vm_bind_ioctl(struct xe_vm *vm, struct xe_vma *vma,
 		 */
 		xe_bo_get(vbo);
 
-		tv_bo.bo = &vbo->ttm;
-		tv_bo.num_shared = 1;
-		list_add(&tv_bo.head, &objs);
+		if (!vbo->vm) {
+			tv_bo.bo = &vbo->ttm;
+			tv_bo.num_shared = 1;
+			list_add(&tv_bo.head, &objs);
+		}
 	}
 
 again:
-- 
2.34.1


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

* [Intel-xe] [PATCH v3 8/8] drm/xe: VM LRU bulk move
  2023-06-07 16:03 [Intel-xe] [PATCH v3 0/8] Scheduler changes for upstreaming Matthew Brost
                   ` (6 preceding siblings ...)
  2023-06-07 16:03 ` [Intel-xe] [PATCH v3 7/8] drm/xe: Only try to lock external BOs in VM bind Matthew Brost
@ 2023-06-07 16:03 ` Matthew Brost
  2023-06-14 11:50   ` Thomas Hellström
  2023-06-07 16:15 ` [Intel-xe] ✓ CI.Patch_applied: success for Scheduler changes for upstreaming (rev4) Patchwork
                   ` (6 subsequent siblings)
  14 siblings, 1 reply; 24+ messages in thread
From: Matthew Brost @ 2023-06-07 16:03 UTC (permalink / raw)
  To: intel-xe

Use the TTM LRU bulk move for BOs tied to a VM. Update the bulk moves
LRU position on every exec.

v2: Bulk move for compute VMs, use WARN rather than BUG

Signed-off-by: Matthew Brost <matthew.brost@intel.com>
---
 drivers/gpu/drm/xe/xe_bo.c       | 32 ++++++++++++++++++++++++++++----
 drivers/gpu/drm/xe/xe_bo.h       |  4 ++--
 drivers/gpu/drm/xe/xe_dma_buf.c  |  2 +-
 drivers/gpu/drm/xe/xe_exec.c     |  6 ++++++
 drivers/gpu/drm/xe/xe_vm.c       |  4 ++++
 drivers/gpu/drm/xe/xe_vm_types.h |  3 +++
 6 files changed, 44 insertions(+), 7 deletions(-)

diff --git a/drivers/gpu/drm/xe/xe_bo.c b/drivers/gpu/drm/xe/xe_bo.c
index b94a80a32d86..c996a36e11e9 100644
--- a/drivers/gpu/drm/xe/xe_bo.c
+++ b/drivers/gpu/drm/xe/xe_bo.c
@@ -992,6 +992,23 @@ static void xe_gem_object_free(struct drm_gem_object *obj)
 	ttm_bo_put(container_of(obj, struct ttm_buffer_object, base));
 }
 
+static void xe_gem_object_close(struct drm_gem_object *obj,
+				struct drm_file *file_priv)
+{
+	struct xe_bo *bo = gem_to_xe_bo(obj);
+
+	if (bo->vm && !xe_vm_in_fault_mode(bo->vm)) {
+		struct ww_acquire_ctx ww;
+
+		XE_WARN_ON(!xe_bo_is_user(bo));
+
+		xe_bo_lock(bo, &ww, 0, false);
+		ttm_bo_set_bulk_move(&bo->ttm, NULL);
+		xe_bo_unlock(bo, &ww);
+	}
+}
+
+
 static bool should_migrate_to_system(struct xe_bo *bo)
 {
 	struct xe_device *xe = xe_bo_device(bo);
@@ -1047,6 +1064,7 @@ static const struct vm_operations_struct xe_gem_vm_ops = {
 
 static const struct drm_gem_object_funcs xe_gem_object_funcs = {
 	.free = xe_gem_object_free,
+	.close = xe_gem_object_close,
 	.mmap = drm_gem_ttm_mmap,
 	.export = xe_gem_prime_export,
 	.vm_ops = &xe_gem_vm_ops,
@@ -1088,8 +1106,8 @@ void xe_bo_free(struct xe_bo *bo)
 
 struct xe_bo *__xe_bo_create_locked(struct xe_device *xe, struct xe_bo *bo,
 				    struct xe_tile *tile, struct dma_resv *resv,
-				    size_t size, enum ttm_bo_type type,
-				    u32 flags)
+				    struct ttm_lru_bulk_move *bulk, size_t size,
+				    enum ttm_bo_type type, u32 flags)
 {
 	struct ttm_operation_ctx ctx = {
 		.interruptible = true,
@@ -1156,7 +1174,10 @@ struct xe_bo *__xe_bo_create_locked(struct xe_device *xe, struct xe_bo *bo,
 		return ERR_PTR(err);
 
 	bo->created = true;
-	ttm_bo_move_to_lru_tail_unlocked(&bo->ttm);
+	if (bulk)
+		ttm_bo_set_bulk_move(&bo->ttm, bulk);
+	else
+		ttm_bo_move_to_lru_tail_unlocked(&bo->ttm);
 
 	return bo;
 }
@@ -1226,7 +1247,10 @@ xe_bo_create_locked_range(struct xe_device *xe,
 		}
 	}
 
-	bo = __xe_bo_create_locked(xe, bo, tile, vm ? &vm->resv : NULL, size,
+	bo = __xe_bo_create_locked(xe, bo, tile, vm ? &vm->resv : NULL,
+				   vm && !xe_vm_in_fault_mode(vm) &&
+				   flags & XE_BO_CREATE_USER_BIT ?
+				   &vm->lru_bulk_move : NULL, size,
 				   type, flags);
 	if (IS_ERR(bo))
 		return bo;
diff --git a/drivers/gpu/drm/xe/xe_bo.h b/drivers/gpu/drm/xe/xe_bo.h
index 29eb7474f018..98bea6a26347 100644
--- a/drivers/gpu/drm/xe/xe_bo.h
+++ b/drivers/gpu/drm/xe/xe_bo.h
@@ -82,8 +82,8 @@ void xe_bo_free(struct xe_bo *bo);
 
 struct xe_bo *__xe_bo_create_locked(struct xe_device *xe, struct xe_bo *bo,
 				    struct xe_tile *tile, struct dma_resv *resv,
-				    size_t size, enum ttm_bo_type type,
-				    u32 flags);
+				    struct ttm_lru_bulk_move *bulk, size_t size,
+				    enum ttm_bo_type type, u32 flags);
 struct xe_bo *
 xe_bo_create_locked_range(struct xe_device *xe,
 			  struct xe_tile *tile, struct xe_vm *vm,
diff --git a/drivers/gpu/drm/xe/xe_dma_buf.c b/drivers/gpu/drm/xe/xe_dma_buf.c
index 9b252cc782b7..975dee1f770f 100644
--- a/drivers/gpu/drm/xe/xe_dma_buf.c
+++ b/drivers/gpu/drm/xe/xe_dma_buf.c
@@ -199,7 +199,7 @@ xe_dma_buf_init_obj(struct drm_device *dev, struct xe_bo *storage,
 	int ret;
 
 	dma_resv_lock(resv, NULL);
-	bo = __xe_bo_create_locked(xe, storage, NULL, resv, dma_buf->size,
+	bo = __xe_bo_create_locked(xe, storage, NULL, resv, NULL, dma_buf->size,
 				   ttm_bo_type_sg, XE_BO_CREATE_SYSTEM_BIT);
 	if (IS_ERR(bo)) {
 		ret = PTR_ERR(bo);
diff --git a/drivers/gpu/drm/xe/xe_exec.c b/drivers/gpu/drm/xe/xe_exec.c
index 9e9523939de8..88d2ceaa7316 100644
--- a/drivers/gpu/drm/xe/xe_exec.c
+++ b/drivers/gpu/drm/xe/xe_exec.c
@@ -397,6 +397,12 @@ int xe_exec_ioctl(struct drm_device *dev, void *data, struct drm_file *file)
 	xe_sched_job_push(job);
 	xe_vm_reactivate_rebind(vm);
 
+	if (!err && !xe_vm_no_dma_fences(vm)) {
+		spin_lock(&xe->ttm.lru_lock);
+		ttm_lru_bulk_move_tail(&vm->lru_bulk_move);
+		spin_unlock(&xe->ttm.lru_lock);
+	}
+
 err_repin:
 	if (!xe_vm_no_dma_fences(vm))
 		up_read(&vm->userptr.notifier_lock);
diff --git a/drivers/gpu/drm/xe/xe_vm.c b/drivers/gpu/drm/xe/xe_vm.c
index 2780f350ed33..d03c628d04b5 100644
--- a/drivers/gpu/drm/xe/xe_vm.c
+++ b/drivers/gpu/drm/xe/xe_vm.c
@@ -632,6 +632,10 @@ static void preempt_rebind_work_func(struct work_struct *w)
 
 #undef retry_required
 
+	spin_lock(&vm->xe->ttm.lru_lock);
+	ttm_lru_bulk_move_tail(&vm->lru_bulk_move);
+	spin_unlock(&vm->xe->ttm.lru_lock);
+
 	/* Point of no return. */
 	arm_preempt_fences(vm, &preempt_fences);
 	resume_and_reinstall_preempt_fences(vm);
diff --git a/drivers/gpu/drm/xe/xe_vm_types.h b/drivers/gpu/drm/xe/xe_vm_types.h
index 76af6ac0fa84..fe715bd1a20d 100644
--- a/drivers/gpu/drm/xe/xe_vm_types.h
+++ b/drivers/gpu/drm/xe/xe_vm_types.h
@@ -164,6 +164,9 @@ struct xe_vm {
 	/** Protects @rebind_list and the page-table structures */
 	struct dma_resv resv;
 
+	/** @lru_bulk_move: Bulk LRU move list for this VM's BOs */
+	struct ttm_lru_bulk_move lru_bulk_move;
+
 	u64 size;
 	struct rb_root vmas;
 
-- 
2.34.1


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

* [Intel-xe] ✓ CI.Patch_applied: success for Scheduler changes for upstreaming (rev4)
  2023-06-07 16:03 [Intel-xe] [PATCH v3 0/8] Scheduler changes for upstreaming Matthew Brost
                   ` (7 preceding siblings ...)
  2023-06-07 16:03 ` [Intel-xe] [PATCH v3 8/8] drm/xe: VM LRU bulk move Matthew Brost
@ 2023-06-07 16:15 ` Patchwork
  2023-06-07 16:16 ` [Intel-xe] ✗ CI.checkpatch: warning " Patchwork
                   ` (5 subsequent siblings)
  14 siblings, 0 replies; 24+ messages in thread
From: Patchwork @ 2023-06-07 16:15 UTC (permalink / raw)
  To: Matthew Brost; +Cc: intel-xe

== Series Details ==

Series: Scheduler changes for upstreaming (rev4)
URL   : https://patchwork.freedesktop.org/series/118091/
State : success

== Summary ==

=== Applying kernel patches on branch 'drm-xe-next' with base: ===
Base commit: dc8094ef1 drm/xe/wa: Extend scope of Wa_14015795083
=== git am output follows ===
Applying: fixup! drm/sched: Convert drm scheduler to use a work queue rather than kthread
Applying: drm/sched: Move schedule policy to scheduler
Applying: drm/sched: Add DRM_SCHED_POLICY_SINGLE_ENTITY scheduling policy
Applying: drm/xe: Use DRM_SCHED_POLICY_SINGLE_ENTITY mode
Applying: drm/xe: Long running job update
Applying: drm/xe: Ensure LR engines are not persistent
Applying: drm/xe: Only try to lock external BOs in VM bind
Applying: drm/xe: VM LRU bulk move



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

* [Intel-xe] ✗ CI.checkpatch: warning for Scheduler changes for upstreaming (rev4)
  2023-06-07 16:03 [Intel-xe] [PATCH v3 0/8] Scheduler changes for upstreaming Matthew Brost
                   ` (8 preceding siblings ...)
  2023-06-07 16:15 ` [Intel-xe] ✓ CI.Patch_applied: success for Scheduler changes for upstreaming (rev4) Patchwork
@ 2023-06-07 16:16 ` Patchwork
  2023-06-07 16:17 ` [Intel-xe] ✓ CI.KUnit: success " Patchwork
                   ` (4 subsequent siblings)
  14 siblings, 0 replies; 24+ messages in thread
From: Patchwork @ 2023-06-07 16:16 UTC (permalink / raw)
  To: Matthew Brost; +Cc: intel-xe

== Series Details ==

Series: Scheduler changes for upstreaming (rev4)
URL   : https://patchwork.freedesktop.org/series/118091/
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
c7d32770e3cd31d9fc134ce41f329b10aa33ee15
+ cd /kernel
+ git config --global --add safe.directory /kernel
+ git log -n1
commit 5016ef86fafc2ddbf09bd35d7a72b1702649d2e2
Author: Matthew Brost <matthew.brost@intel.com>
Date:   Wed Jun 7 09:03:34 2023 -0700

    drm/xe: VM LRU bulk move
    
    Use the TTM LRU bulk move for BOs tied to a VM. Update the bulk moves
    LRU position on every exec.
    
    v2: Bulk move for compute VMs, use WARN rather than BUG
    
    Signed-off-by: Matthew Brost <matthew.brost@intel.com>
+ /mt/dim checkpatch dc8094ef1ae1faa7bff0a2a3d510a38ba557302a drm-intel
bc39f78ce fixup! drm/sched: Convert drm scheduler to use a work queue rather than kthread
af688d9e0 drm/sched: Move schedule policy to scheduler
5037911cc drm/sched: Add DRM_SCHED_POLICY_SINGLE_ENTITY scheduling policy
-:35: ERROR:SPACING: space required before the open parenthesis '('
#35: FILE: drivers/gpu/drm/scheduler/sched_entity.c:94:
+	if(num_sched_list) {

total: 1 errors, 0 warnings, 0 checks, 360 lines checked
c85cd2cd2 drm/xe: Use DRM_SCHED_POLICY_SINGLE_ENTITY mode
2763b0bb8 drm/xe: Long running job update
591e828bf drm/xe: Ensure LR engines are not persistent
89ded2108 drm/xe: Only try to lock external BOs in VM bind
5016ef86f drm/xe: VM LRU bulk move
-:37: CHECK:LINE_SPACING: Please don't use multiple blank lines
#37: FILE: drivers/gpu/drm/xe/xe_bo.c:1011:
+
+

total: 0 errors, 0 warnings, 1 checks, 111 lines checked



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

* [Intel-xe] ✓ CI.KUnit: success for Scheduler changes for upstreaming (rev4)
  2023-06-07 16:03 [Intel-xe] [PATCH v3 0/8] Scheduler changes for upstreaming Matthew Brost
                   ` (9 preceding siblings ...)
  2023-06-07 16:16 ` [Intel-xe] ✗ CI.checkpatch: warning " Patchwork
@ 2023-06-07 16:17 ` Patchwork
  2023-06-07 16:21 ` [Intel-xe] ✓ CI.Build: " Patchwork
                   ` (3 subsequent siblings)
  14 siblings, 0 replies; 24+ messages in thread
From: Patchwork @ 2023-06-07 16:17 UTC (permalink / raw)
  To: Matthew Brost; +Cc: intel-xe

== Series Details ==

Series: Scheduler changes for upstreaming (rev4)
URL   : https://patchwork.freedesktop.org/series/118091/
State : success

== Summary ==

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

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

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



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

* [Intel-xe] ✓ CI.Build: success for Scheduler changes for upstreaming (rev4)
  2023-06-07 16:03 [Intel-xe] [PATCH v3 0/8] Scheduler changes for upstreaming Matthew Brost
                   ` (10 preceding siblings ...)
  2023-06-07 16:17 ` [Intel-xe] ✓ CI.KUnit: success " Patchwork
@ 2023-06-07 16:21 ` Patchwork
  2023-06-07 16:21 ` [Intel-xe] ✓ CI.Hooks: " Patchwork
                   ` (2 subsequent siblings)
  14 siblings, 0 replies; 24+ messages in thread
From: Patchwork @ 2023-06-07 16:21 UTC (permalink / raw)
  To: Matthew Brost; +Cc: intel-xe

== Series Details ==

Series: Scheduler changes for upstreaming (rev4)
URL   : https://patchwork.freedesktop.org/series/118091/
State : success

== Summary ==

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



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

* [Intel-xe] ✓ CI.Hooks: success for Scheduler changes for upstreaming (rev4)
  2023-06-07 16:03 [Intel-xe] [PATCH v3 0/8] Scheduler changes for upstreaming Matthew Brost
                   ` (11 preceding siblings ...)
  2023-06-07 16:21 ` [Intel-xe] ✓ CI.Build: " Patchwork
@ 2023-06-07 16:21 ` Patchwork
  2023-06-07 16:22 ` [Intel-xe] ✓ CI.checksparse: " Patchwork
  2023-06-07 16:57 ` [Intel-xe] ○ CI.BAT: info " Patchwork
  14 siblings, 0 replies; 24+ messages in thread
From: Patchwork @ 2023-06-07 16:21 UTC (permalink / raw)
  To: Matthew Brost; +Cc: intel-xe

== Series Details ==

Series: Scheduler changes for upstreaming (rev4)
URL   : https://patchwork.freedesktop.org/series/118091/
State : success

== Summary ==

run-parts: executing /workspace/ci/hooks/00-showenv
/workspace
+ pwd
+ ls -la
total 544
drwxrwxr-x 10 1003 1003   4096 Jun  7 16:21 .
drwxr-xr-x  1 root root   4096 Jun  7 16:21 ..
-rw-rw-r--  1 1003 1003 396889 Jun  7 16:21 build.log
-rw-rw-r--  1 1003 1003   1663 Jun  7 16:16 checkpatch.log
drwxrwxr-x  5 1003 1003   4096 Jun  7 16:14 ci
drwxrwxr-x 10 1003 1003   4096 Jun  7 16:14 docker
drwxrwxr-x  8 1003 1003   4096 Jun  7 16:14 .git
-rw-rw-r--  1 1003 1003    630 Jun  7 16:15 git_apply.log
drwxrwxr-x  3 1003 1003   4096 Jun  7 16:14 .github
-rw-rw-r--  1 1003 1003    233 Jun  7 16:14 .groovylintrc.json
-rw-rw-r--  1 1003 1003     78 Jun  7 16:21 hooks.log
drwxrwxr-x 31 1003 1003   4096 Jun  7 16:20 kernel
-rw-rw-r--  1 1003 1003  68273 Jun  7 16:15 kernel.mbox
-rw-rw-r--  1 1003 1003  25980 Jun  7 16:17 kunit.log
drwxrwxr-x 39 1003 1003   4096 Jun  7 16:14 pipelines
-rw-rw-r--  1 1003 1003    793 Jun  7 16:14 README.adoc
drwxrwxr-x  3 1003 1003   4096 Jun  7 16:14 scripts
drwxrwxr-x  2 1003 1003   4096 Jun  7 16:14 .vscode
+ uname -a
Linux 6b4409e32dd1 5.4.0-149-generic #166-Ubuntu SMP Tue Apr 18 16:51:45 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux
+ export
+ grep -Ei '(^|\W)CI_'
declare -x CI_KERNEL_BUILD_DIR="/workspace/kernel/build64"
declare -x CI_KERNEL_IMAGES_DIR="/workspace/kernel/archive/boot"
declare -x CI_KERNEL_MODULES_DIR="/workspace/kernel/archive"
declare -x CI_KERNEL_SRC_DIR="/workspace/kernel"
declare -x CI_SRC_DIR="/workspace/kernel"
declare -x CI_TOOLS_SRC_DIR="/workspace/ci"
declare -x CI_WORKSPACE_DIR="/workspace"
+ '[' -n /workspace ']'
+ git_args='-C /workspace/kernel'
+ git_log_args=
+ git --no-pager -C /workspace/kernel log --format=oneline --abbrev-commit
5016ef86f drm/xe: VM LRU bulk move
89ded2108 drm/xe: Only try to lock external BOs in VM bind
591e828bf drm/xe: Ensure LR engines are not persistent
2763b0bb8 drm/xe: Long running job update
c85cd2cd2 drm/xe: Use DRM_SCHED_POLICY_SINGLE_ENTITY mode
5037911cc drm/sched: Add DRM_SCHED_POLICY_SINGLE_ENTITY scheduling policy
af688d9e0 drm/sched: Move schedule policy to scheduler
bc39f78ce fixup! drm/sched: Convert drm scheduler to use a work queue rather than kthread
dc8094ef1 drm/xe/wa: Extend scope of Wa_14015795083
run-parts: executing /workspace/ci/hooks/10-build-W1
+ SRC_DIR=/workspace/kernel
+ RESTORE_DISPLAY_CONFIG=0
+ '[' -n /workspace/kernel/build64 ']'
+ BUILD_DIR=/workspace/kernel/build64
+ cd /workspace/kernel
+ grep -q -e '^CONFIG_DRM_XE_DISPLAY=[yY]' /workspace/kernel/build64/.config
+ RESTORE_DISPLAY_CONFIG=1
+ trap cleanup EXIT
+ ./scripts/config --file /workspace/kernel/build64/.config --disable CONFIG_DRM_XE_DISPLAY
++ nproc
+ make -j48 O=/workspace/kernel/build64 modules_prepare
make[1]: Entering directory '/workspace/kernel/build64'
  SYNC    include/config/auto.conf.cmd
  GEN     Makefile
  GEN     Makefile
  UPD     include/config/kernel.release
  UPD     include/generated/compile.h
  UPD     include/generated/utsrelease.h
  DESCEND objtool
  CALL    ../scripts/checksyscalls.sh
  HOSTCC  /workspace/kernel/build64/tools/objtool/fixdep.o
  HOSTLD  /workspace/kernel/build64/tools/objtool/fixdep-in.o
  LINK    /workspace/kernel/build64/tools/objtool/fixdep
  INSTALL libsubcmd_headers
  CC      /workspace/kernel/build64/tools/objtool/libsubcmd/exec-cmd.o
  CC      /workspace/kernel/build64/tools/objtool/libsubcmd/help.o
  CC      /workspace/kernel/build64/tools/objtool/libsubcmd/pager.o
  CC      /workspace/kernel/build64/tools/objtool/libsubcmd/parse-options.o
  CC      /workspace/kernel/build64/tools/objtool/libsubcmd/run-command.o
  CC      /workspace/kernel/build64/tools/objtool/libsubcmd/subcmd-config.o
  CC      /workspace/kernel/build64/tools/objtool/libsubcmd/sigchain.o
  LD      /workspace/kernel/build64/tools/objtool/libsubcmd/libsubcmd-in.o
  AR      /workspace/kernel/build64/tools/objtool/libsubcmd/libsubcmd.a
  CC      /workspace/kernel/build64/tools/objtool/weak.o
  CC      /workspace/kernel/build64/tools/objtool/check.o
  CC      /workspace/kernel/build64/tools/objtool/special.o
  CC      /workspace/kernel/build64/tools/objtool/builtin-check.o
  CC      /workspace/kernel/build64/tools/objtool/elf.o
  CC      /workspace/kernel/build64/tools/objtool/objtool.o
  CC      /workspace/kernel/build64/tools/objtool/orc_gen.o
  CC      /workspace/kernel/build64/tools/objtool/orc_dump.o
  CC      /workspace/kernel/build64/tools/objtool/libstring.o
  CC      /workspace/kernel/build64/tools/objtool/libctype.o
  CC      /workspace/kernel/build64/tools/objtool/str_error_r.o
  CC      /workspace/kernel/build64/tools/objtool/librbtree.o
  CC      /workspace/kernel/build64/tools/objtool/arch/x86/special.o
  CC      /workspace/kernel/build64/tools/objtool/arch/x86/decode.o
  LD      /workspace/kernel/build64/tools/objtool/arch/x86/objtool-in.o
  LD      /workspace/kernel/build64/tools/objtool/objtool-in.o
  LINK    /workspace/kernel/build64/tools/objtool/objtool
make[1]: Leaving directory '/workspace/kernel/build64'
++ nproc
+ make -j48 O=/workspace/kernel/build64 M=drivers/gpu/drm/xe W=1
make[1]: Entering directory '/workspace/kernel/build64'
  CC [M]  drivers/gpu/drm/xe/xe_bb.o
  CC [M]  drivers/gpu/drm/xe/xe_bo.o
  CC [M]  drivers/gpu/drm/xe/xe_bo_evict.o
  CC [M]  drivers/gpu/drm/xe/xe_debugfs.o
  CC [M]  drivers/gpu/drm/xe/xe_devcoredump.o
  CC [M]  drivers/gpu/drm/xe/xe_device.o
  CC [M]  drivers/gpu/drm/xe/xe_dma_buf.o
  CC [M]  drivers/gpu/drm/xe/xe_engine.o
  CC [M]  drivers/gpu/drm/xe/xe_exec.o
  CC [M]  drivers/gpu/drm/xe/xe_execlist.o
  CC [M]  drivers/gpu/drm/xe/xe_force_wake.o
  CC [M]  drivers/gpu/drm/xe/xe_ggtt.o
  CC [M]  drivers/gpu/drm/xe/xe_gt.o
  CC [M]  drivers/gpu/drm/xe/xe_gt_clock.o
  CC [M]  drivers/gpu/drm/xe/xe_gt_debugfs.o
  CC [M]  drivers/gpu/drm/xe/xe_gt_mcr.o
  CC [M]  drivers/gpu/drm/xe/xe_gt_pagefault.o
  CC [M]  drivers/gpu/drm/xe/xe_gt_sysfs.o
  CC [M]  drivers/gpu/drm/xe/xe_gt_tlb_invalidation.o
  CC [M]  drivers/gpu/drm/xe/xe_gt_topology.o
  HOSTCC  drivers/gpu/drm/xe/xe_gen_wa_oob
  CC [M]  drivers/gpu/drm/xe/xe_guc_ads.o
  CC [M]  drivers/gpu/drm/xe/xe_guc_ct.o
  CC [M]  drivers/gpu/drm/xe/xe_guc_debugfs.o
  CC [M]  drivers/gpu/drm/xe/xe_guc_hwconfig.o
  CC [M]  drivers/gpu/drm/xe/xe_guc_log.o
  CC [M]  drivers/gpu/drm/xe/xe_guc_pc.o
  CC [M]  drivers/gpu/drm/xe/xe_guc_submit.o
  CC [M]  drivers/gpu/drm/xe/xe_hw_engine.o
  CC [M]  drivers/gpu/drm/xe/xe_hw_fence.o
  CC [M]  drivers/gpu/drm/xe/xe_huc.o
  CC [M]  drivers/gpu/drm/xe/xe_huc_debugfs.o
  CC [M]  drivers/gpu/drm/xe/xe_irq.o
  CC [M]  drivers/gpu/drm/xe/xe_lrc.o
  CC [M]  drivers/gpu/drm/xe/xe_migrate.o
  CC [M]  drivers/gpu/drm/xe/xe_mmio.o
  CC [M]  drivers/gpu/drm/xe/xe_mocs.o
  CC [M]  drivers/gpu/drm/xe/xe_module.o
  CC [M]  drivers/gpu/drm/xe/xe_pat.o
  CC [M]  drivers/gpu/drm/xe/xe_pci.o
  CC [M]  drivers/gpu/drm/xe/xe_pcode.o
  CC [M]  drivers/gpu/drm/xe/xe_pm.o
  CC [M]  drivers/gpu/drm/xe/xe_preempt_fence.o
  CC [M]  drivers/gpu/drm/xe/xe_pt.o
  CC [M]  drivers/gpu/drm/xe/xe_pt_walk.o
  CC [M]  drivers/gpu/drm/xe/xe_query.o
  CC [M]  drivers/gpu/drm/xe/xe_reg_sr.o
  CC [M]  drivers/gpu/drm/xe/xe_reg_whitelist.o
  CC [M]  drivers/gpu/drm/xe/xe_rtp.o
  CC [M]  drivers/gpu/drm/xe/xe_ring_ops.o
  CC [M]  drivers/gpu/drm/xe/xe_sa.o
  CC [M]  drivers/gpu/drm/xe/xe_sched_job.o
  CC [M]  drivers/gpu/drm/xe/xe_step.o
  CC [M]  drivers/gpu/drm/xe/xe_sync.o
  CC [M]  drivers/gpu/drm/xe/xe_tile.o
  CC [M]  drivers/gpu/drm/xe/xe_trace.o
  CC [M]  drivers/gpu/drm/xe/xe_ttm_sys_mgr.o
  CC [M]  drivers/gpu/drm/xe/xe_ttm_stolen_mgr.o
  CC [M]  drivers/gpu/drm/xe/xe_ttm_vram_mgr.o
  CC [M]  drivers/gpu/drm/xe/xe_tuning.o
  CC [M]  drivers/gpu/drm/xe/xe_uc.o
  CC [M]  drivers/gpu/drm/xe/xe_uc_debugfs.o
  CC [M]  drivers/gpu/drm/xe/xe_uc_fw.o
  CC [M]  drivers/gpu/drm/xe/xe_vm.o
  CC [M]  drivers/gpu/drm/xe/xe_vm_madvise.o
  CC [M]  drivers/gpu/drm/xe/xe_wait_user_fence.o
  CC [M]  drivers/gpu/drm/xe/xe_wopcm.o
  HDRTEST drivers/gpu/drm/xe/abi/guc_klvs_abi.h
  HDRTEST drivers/gpu/drm/xe/abi/guc_errors_abi.h
  CC [M]  drivers/gpu/drm/xe/tests/xe_bo_test.o
  HDRTEST drivers/gpu/drm/xe/abi/guc_actions_slpc_abi.h
  HDRTEST drivers/gpu/drm/xe/abi/guc_communication_mmio_abi.h
  HDRTEST drivers/gpu/drm/xe/abi/guc_actions_abi.h
  HDRTEST drivers/gpu/drm/xe/abi/guc_communication_ctb_abi.h
  HDRTEST drivers/gpu/drm/xe/abi/guc_messages_abi.h
  CC [M]  drivers/gpu/drm/xe/tests/xe_dma_buf_test.o
  HDRTEST drivers/gpu/drm/xe/regs/xe_reg_defs.h
  CC [M]  drivers/gpu/drm/xe/tests/xe_migrate_test.o
  HDRTEST drivers/gpu/drm/xe/regs/xe_guc_regs.h
  HDRTEST drivers/gpu/drm/xe/regs/xe_gt_regs.h
  CC [M]  drivers/gpu/drm/xe/tests/xe_pci_test.o
  HDRTEST drivers/gpu/drm/xe/regs/xe_regs.h
  CC [M]  drivers/gpu/drm/xe/tests/xe_rtp_test.o
  HDRTEST drivers/gpu/drm/xe/regs/xe_gpu_commands.h
  HDRTEST drivers/gpu/drm/xe/regs/xe_lrc_layout.h
  HDRTEST drivers/gpu/drm/xe/regs/xe_engine_regs.h
  HDRTEST drivers/gpu/drm/xe/tests/xe_test.h
  CC [M]  drivers/gpu/drm/xe/tests/xe_wa_test.o
  HDRTEST drivers/gpu/drm/xe/tests/xe_pci_test.h
  HDRTEST drivers/gpu/drm/xe/tests/xe_migrate_test.h
  HDRTEST drivers/gpu/drm/xe/tests/xe_dma_buf_test.h
  HDRTEST drivers/gpu/drm/xe/tests/xe_bo_test.h
  HDRTEST drivers/gpu/drm/xe/xe_bb.h
  HDRTEST drivers/gpu/drm/xe/xe_bb_types.h
  HDRTEST drivers/gpu/drm/xe/xe_bo.h
  HDRTEST drivers/gpu/drm/xe/xe_bo_doc.h
  HDRTEST drivers/gpu/drm/xe/xe_bo_evict.h
  HDRTEST drivers/gpu/drm/xe/xe_bo_types.h
  HDRTEST drivers/gpu/drm/xe/xe_debugfs.h
  HDRTEST drivers/gpu/drm/xe/xe_devcoredump.h
  HDRTEST drivers/gpu/drm/xe/xe_devcoredump_types.h
  HDRTEST drivers/gpu/drm/xe/xe_device.h
  HDRTEST drivers/gpu/drm/xe/xe_device_types.h
  HDRTEST drivers/gpu/drm/xe/xe_dma_buf.h
  HDRTEST drivers/gpu/drm/xe/xe_drv.h
  HDRTEST drivers/gpu/drm/xe/xe_engine.h
  HDRTEST drivers/gpu/drm/xe/xe_engine_types.h
  HDRTEST drivers/gpu/drm/xe/xe_exec.h
  HDRTEST drivers/gpu/drm/xe/xe_execlist.h
  HDRTEST drivers/gpu/drm/xe/xe_execlist_types.h
  HDRTEST drivers/gpu/drm/xe/xe_force_wake.h
  HDRTEST drivers/gpu/drm/xe/xe_force_wake_types.h
  HDRTEST drivers/gpu/drm/xe/xe_ggtt.h
  HDRTEST drivers/gpu/drm/xe/xe_ggtt_types.h
  HDRTEST drivers/gpu/drm/xe/xe_gt.h
  HDRTEST drivers/gpu/drm/xe/xe_gt_clock.h
  HDRTEST drivers/gpu/drm/xe/xe_gt_debugfs.h
  HDRTEST drivers/gpu/drm/xe/xe_gt_mcr.h
  HDRTEST drivers/gpu/drm/xe/xe_gt_pagefault.h
  HDRTEST drivers/gpu/drm/xe/xe_gt_printk.h
  HDRTEST drivers/gpu/drm/xe/xe_gt_sysfs.h
  HDRTEST drivers/gpu/drm/xe/xe_gt_sysfs_types.h
  HDRTEST drivers/gpu/drm/xe/xe_gt_tlb_invalidation.h
  HDRTEST drivers/gpu/drm/xe/xe_gt_tlb_invalidation_types.h
  HDRTEST drivers/gpu/drm/xe/xe_gt_topology.h
  HDRTEST drivers/gpu/drm/xe/xe_gt_types.h
  HDRTEST drivers/gpu/drm/xe/xe_guc.h
  HDRTEST drivers/gpu/drm/xe/xe_guc_ads.h
  HDRTEST drivers/gpu/drm/xe/xe_guc_ads_types.h
  HDRTEST drivers/gpu/drm/xe/xe_guc_ct.h
  HDRTEST drivers/gpu/drm/xe/xe_guc_ct_types.h
  HDRTEST drivers/gpu/drm/xe/xe_guc_debugfs.h
  HDRTEST drivers/gpu/drm/xe/xe_guc_engine_types.h
  HDRTEST drivers/gpu/drm/xe/xe_guc_fwif.h
  HDRTEST drivers/gpu/drm/xe/xe_guc_hwconfig.h
  HDRTEST drivers/gpu/drm/xe/xe_guc_log.h
  HDRTEST drivers/gpu/drm/xe/xe_guc_log_types.h
  HDRTEST drivers/gpu/drm/xe/xe_guc_pc.h
  HDRTEST drivers/gpu/drm/xe/xe_guc_pc_types.h
  HDRTEST drivers/gpu/drm/xe/xe_guc_submit.h
  HDRTEST drivers/gpu/drm/xe/xe_guc_submit_types.h
  HDRTEST drivers/gpu/drm/xe/xe_guc_types.h
  HDRTEST drivers/gpu/drm/xe/xe_huc_debugfs.h
  HDRTEST drivers/gpu/drm/xe/xe_huc.h
  HDRTEST drivers/gpu/drm/xe/xe_huc_types.h
  HDRTEST drivers/gpu/drm/xe/xe_hw_engine.h
  HDRTEST drivers/gpu/drm/xe/xe_hw_engine_types.h
  HDRTEST drivers/gpu/drm/xe/xe_hw_fence.h
  HDRTEST drivers/gpu/drm/xe/xe_hw_fence_types.h
  HDRTEST drivers/gpu/drm/xe/xe_irq.h
  HDRTEST drivers/gpu/drm/xe/xe_lrc.h
  HDRTEST drivers/gpu/drm/xe/xe_lrc_types.h
  HDRTEST drivers/gpu/drm/xe/xe_macros.h
  HDRTEST drivers/gpu/drm/xe/xe_map.h
  HDRTEST drivers/gpu/drm/xe/xe_migrate.h
  HDRTEST drivers/gpu/drm/xe/xe_migrate_doc.h
  HDRTEST drivers/gpu/drm/xe/xe_mmio.h
  HDRTEST drivers/gpu/drm/xe/xe_mocs.h
  HDRTEST drivers/gpu/drm/xe/xe_module.h
  HDRTEST drivers/gpu/drm/xe/xe_pat.h
  HDRTEST drivers/gpu/drm/xe/xe_pci.h
  HDRTEST drivers/gpu/drm/xe/xe_pci_types.h
  HDRTEST drivers/gpu/drm/xe/xe_pcode.h
  HDRTEST drivers/gpu/drm/xe/xe_pcode_api.h
  HDRTEST drivers/gpu/drm/xe/xe_platform_types.h
  HDRTEST drivers/gpu/drm/xe/xe_pm.h
  HDRTEST drivers/gpu/drm/xe/xe_preempt_fence.h
  HDRTEST drivers/gpu/drm/xe/xe_preempt_fence_types.h
  HDRTEST drivers/gpu/drm/xe/xe_pt.h
  HDRTEST drivers/gpu/drm/xe/xe_pt_types.h
  HDRTEST drivers/gpu/drm/xe/xe_pt_walk.h
  HDRTEST drivers/gpu/drm/xe/xe_query.h
  HDRTEST drivers/gpu/drm/xe/xe_reg_sr.h
  HDRTEST drivers/gpu/drm/xe/xe_reg_sr_types.h
  HDRTEST drivers/gpu/drm/xe/xe_reg_whitelist.h
  HDRTEST drivers/gpu/drm/xe/xe_res_cursor.h
  HDRTEST drivers/gpu/drm/xe/xe_ring_ops.h
  HDRTEST drivers/gpu/drm/xe/xe_ring_ops_types.h
  HDRTEST drivers/gpu/drm/xe/xe_rtp.h
  HDRTEST drivers/gpu/drm/xe/xe_rtp_types.h
  HDRTEST drivers/gpu/drm/xe/xe_sa.h
  HDRTEST drivers/gpu/drm/xe/xe_sa_types.h
  HDRTEST drivers/gpu/drm/xe/xe_sched_job.h
  HDRTEST drivers/gpu/drm/xe/xe_sched_job_types.h
  HDRTEST drivers/gpu/drm/xe/xe_step.h
  HDRTEST drivers/gpu/drm/xe/xe_step_types.h
  HDRTEST drivers/gpu/drm/xe/xe_sync.h
  HDRTEST drivers/gpu/drm/xe/xe_sync_types.h
  HDRTEST drivers/gpu/drm/xe/xe_tile.h
  HDRTEST drivers/gpu/drm/xe/xe_trace.h
  HDRTEST drivers/gpu/drm/xe/xe_ttm_stolen_mgr.h
  HDRTEST drivers/gpu/drm/xe/xe_ttm_sys_mgr.h
  HDRTEST drivers/gpu/drm/xe/xe_ttm_vram_mgr.h
  HDRTEST drivers/gpu/drm/xe/xe_ttm_vram_mgr_types.h
  HDRTEST drivers/gpu/drm/xe/xe_tuning.h
  HDRTEST drivers/gpu/drm/xe/xe_uc.h
  HDRTEST drivers/gpu/drm/xe/xe_uc_debugfs.h
  HDRTEST drivers/gpu/drm/xe/xe_uc_fw.h
  HDRTEST drivers/gpu/drm/xe/xe_uc_fw_abi.h
  HDRTEST drivers/gpu/drm/xe/xe_uc_fw_types.h
  HDRTEST drivers/gpu/drm/xe/xe_uc_types.h
  HDRTEST drivers/gpu/drm/xe/xe_vm.h
  HDRTEST drivers/gpu/drm/xe/xe_vm_doc.h
  HDRTEST drivers/gpu/drm/xe/xe_vm_madvise.h
  HDRTEST drivers/gpu/drm/xe/xe_vm_types.h
  HDRTEST drivers/gpu/drm/xe/xe_wa.h
  HDRTEST drivers/gpu/drm/xe/xe_wait_user_fence.h
  HDRTEST drivers/gpu/drm/xe/xe_wopcm.h
  HDRTEST drivers/gpu/drm/xe/xe_wopcm_types.h
  GEN     xe_wa_oob.c xe_wa_oob.h
  GEN     xe_wa_oob.c xe_wa_oob.h
  CC [M]  drivers/gpu/drm/xe/xe_guc.o
  CC [M]  drivers/gpu/drm/xe/xe_wa.o
  LD [M]  drivers/gpu/drm/xe/xe.o
  MODPOST drivers/gpu/drm/xe/Module.symvers
  CC [M]  drivers/gpu/drm/xe/xe.mod.o
  CC [M]  drivers/gpu/drm/xe/tests/xe_bo_test.mod.o
  CC [M]  drivers/gpu/drm/xe/tests/xe_dma_buf_test.mod.o
  CC [M]  drivers/gpu/drm/xe/tests/xe_migrate_test.mod.o
  CC [M]  drivers/gpu/drm/xe/tests/xe_pci_test.mod.o
  CC [M]  drivers/gpu/drm/xe/tests/xe_rtp_test.mod.o
  CC [M]  drivers/gpu/drm/xe/tests/xe_wa_test.mod.o
  LD [M]  drivers/gpu/drm/xe/tests/xe_pci_test.ko
  LD [M]  drivers/gpu/drm/xe/tests/xe_rtp_test.ko
  LD [M]  drivers/gpu/drm/xe/tests/xe_wa_test.ko
  LD [M]  drivers/gpu/drm/xe/tests/xe_migrate_test.ko
  LD [M]  drivers/gpu/drm/xe/tests/xe_bo_test.ko
  LD [M]  drivers/gpu/drm/xe/tests/xe_dma_buf_test.ko
  LD [M]  drivers/gpu/drm/xe/xe.ko
make[1]: Leaving directory '/workspace/kernel/build64'
+ cleanup
+ '[' 1 -eq 1 ']'
+ ./scripts/config --file /workspace/kernel/build64/.config --enable CONFIG_DRM_XE_DISPLAY
run-parts: executing /workspace/ci/hooks/20-kernel-doc
+ SRC_DIR=/workspace/kernel
+ cd /workspace/kernel
+ find drivers/gpu/drm/xe/ -name '*.[ch]' -not -path 'drivers/gpu/drm/xe/display/*'
+ xargs ./scripts/kernel-doc -Werror -none
All hooks done



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

* [Intel-xe] ✓ CI.checksparse: success for Scheduler changes for upstreaming (rev4)
  2023-06-07 16:03 [Intel-xe] [PATCH v3 0/8] Scheduler changes for upstreaming Matthew Brost
                   ` (12 preceding siblings ...)
  2023-06-07 16:21 ` [Intel-xe] ✓ CI.Hooks: " Patchwork
@ 2023-06-07 16:22 ` Patchwork
  2023-06-07 16:57 ` [Intel-xe] ○ CI.BAT: info " Patchwork
  14 siblings, 0 replies; 24+ messages in thread
From: Patchwork @ 2023-06-07 16:22 UTC (permalink / raw)
  To: Matthew Brost; +Cc: intel-xe

== Series Details ==

Series: Scheduler changes for upstreaming (rev4)
URL   : https://patchwork.freedesktop.org/series/118091/
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 dc8094ef1ae1faa7bff0a2a3d510a38ba557302a
Sparse version: 0.6.1 (Ubuntu: 0.6.1-2build1)
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] 24+ messages in thread

* [Intel-xe] ○ CI.BAT: info for Scheduler changes for upstreaming (rev4)
  2023-06-07 16:03 [Intel-xe] [PATCH v3 0/8] Scheduler changes for upstreaming Matthew Brost
                   ` (13 preceding siblings ...)
  2023-06-07 16:22 ` [Intel-xe] ✓ CI.checksparse: " Patchwork
@ 2023-06-07 16:57 ` Patchwork
  14 siblings, 0 replies; 24+ messages in thread
From: Patchwork @ 2023-06-07 16:57 UTC (permalink / raw)
  To: Matthew Brost; +Cc: intel-xe

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

== Series Details ==

Series: Scheduler changes for upstreaming (rev4)
URL   : https://patchwork.freedesktop.org/series/118091/
State : info

== Summary ==

Participating hosts:
bat-atsm-2
bat-dg2-oem2
bat-adlp-7
Missing hosts results[0]:
Results: [xe-pw-118091v4](https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-118091v4/index.html)



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

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

* Re: [Intel-xe] [PATCH v3 1/8] fixup! drm/sched: Convert drm scheduler to use a work queue rather than kthread
  2023-06-07 16:03 ` [Intel-xe] [PATCH v3 1/8] fixup! drm/sched: Convert drm scheduler to use a work queue rather than kthread Matthew Brost
@ 2023-06-14  8:29   ` Thomas Hellström
  2023-06-15  3:26     ` Matthew Brost
  0 siblings, 1 reply; 24+ messages in thread
From: Thomas Hellström @ 2023-06-14  8:29 UTC (permalink / raw)
  To: Matthew Brost, intel-xe; +Cc: Rodrigo Vivi

On 6/7/23 18:03, Matthew Brost wrote:
> Acked-by: Rodrigo Vivi <rodrigo.vivi@intel.com>
> Signed-off-by: Matthew Brost <matthew.brost@intel.com>

Could we have a description what this fixup is doing and why?

/Thomas



> ---
>   drivers/gpu/drm/amd/amdgpu/amdgpu_device.c |  2 +-
>   drivers/gpu/drm/etnaviv/etnaviv_sched.c    |  2 +-
>   drivers/gpu/drm/lima/lima_sched.c          |  2 +-
>   drivers/gpu/drm/msm/msm_ringbuffer.c       |  7 ++++---
>   drivers/gpu/drm/panfrost/panfrost_job.c    |  2 +-
>   drivers/gpu/drm/scheduler/sched_main.c     |  4 +++-
>   drivers/gpu/drm/v3d/v3d_sched.c            | 10 +++++-----
>   drivers/gpu/drm/xe/xe_devcoredump_types.h  |  1 +
>   drivers/gpu/drm/xe/xe_execlist.c           |  2 +-
>   drivers/gpu/drm/xe/xe_guc_submit.c         |  2 +-
>   include/drm/gpu_scheduler.h                |  1 +
>   11 files changed, 20 insertions(+), 15 deletions(-)
>
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
> index 64e7584c5dd2..2e776ece4251 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
> @@ -2364,7 +2364,7 @@ static int amdgpu_device_init_schedulers(struct amdgpu_device *adev)
>   			break;
>   		}
>   
> -		r = drm_sched_init(&ring->sched, &amdgpu_sched_ops,
> +		r = drm_sched_init(&ring->sched, &amdgpu_sched_ops, NULL,
>   				   ring->num_hw_submission, 0,
>   				   timeout, adev->reset_domain->wq,
>   				   ring->sched_score, ring->name,
> diff --git a/drivers/gpu/drm/etnaviv/etnaviv_sched.c b/drivers/gpu/drm/etnaviv/etnaviv_sched.c
> index 1ae87dfd19c4..8486a2923f1b 100644
> --- a/drivers/gpu/drm/etnaviv/etnaviv_sched.c
> +++ b/drivers/gpu/drm/etnaviv/etnaviv_sched.c
> @@ -133,7 +133,7 @@ int etnaviv_sched_init(struct etnaviv_gpu *gpu)
>   {
>   	int ret;
>   
> -	ret = drm_sched_init(&gpu->sched, &etnaviv_sched_ops,
> +	ret = drm_sched_init(&gpu->sched, &etnaviv_sched_ops, NULL,
>   			     etnaviv_hw_jobs_limit, etnaviv_job_hang_limit,
>   			     msecs_to_jiffies(500), NULL, NULL,
>   			     dev_name(gpu->dev), gpu->dev);
> diff --git a/drivers/gpu/drm/lima/lima_sched.c b/drivers/gpu/drm/lima/lima_sched.c
> index ff003403fbbc..54f53bece27c 100644
> --- a/drivers/gpu/drm/lima/lima_sched.c
> +++ b/drivers/gpu/drm/lima/lima_sched.c
> @@ -488,7 +488,7 @@ int lima_sched_pipe_init(struct lima_sched_pipe *pipe, const char *name)
>   
>   	INIT_WORK(&pipe->recover_work, lima_sched_recover_work);
>   
> -	return drm_sched_init(&pipe->base, &lima_sched_ops, 1,
> +	return drm_sched_init(&pipe->base, &lima_sched_ops, NULL, 1,
>   			      lima_job_hang_limit,
>   			      msecs_to_jiffies(timeout), NULL,
>   			      NULL, name, pipe->ldev->dev);
> diff --git a/drivers/gpu/drm/msm/msm_ringbuffer.c b/drivers/gpu/drm/msm/msm_ringbuffer.c
> index b60199184409..e1cff31f147a 100644
> --- a/drivers/gpu/drm/msm/msm_ringbuffer.c
> +++ b/drivers/gpu/drm/msm/msm_ringbuffer.c
> @@ -93,9 +93,10 @@ struct msm_ringbuffer *msm_ringbuffer_new(struct msm_gpu *gpu, int id,
>   	 /* currently managing hangcheck ourselves: */
>   	sched_timeout = MAX_SCHEDULE_TIMEOUT;
>   
> -	ret = drm_sched_init(&ring->sched, &msm_sched_ops,
> -			num_hw_submissions, 0, sched_timeout,
> -			NULL, NULL, to_msm_bo(ring->bo)->name, gpu->dev->dev);
> +	ret = drm_sched_init(&ring->sched, &msm_sched_ops, NULL,
> +			     num_hw_submissions, 0, sched_timeout,
> +			     NULL, NULL, to_msm_bo(ring->bo)->name,
> +			     gpu->dev->dev);
>   	if (ret) {
>   		goto fail;
>   	}
> diff --git a/drivers/gpu/drm/panfrost/panfrost_job.c b/drivers/gpu/drm/panfrost/panfrost_job.c
> index dbc597ab46fb..f48b07056a16 100644
> --- a/drivers/gpu/drm/panfrost/panfrost_job.c
> +++ b/drivers/gpu/drm/panfrost/panfrost_job.c
> @@ -815,7 +815,7 @@ int panfrost_job_init(struct panfrost_device *pfdev)
>   		js->queue[j].fence_context = dma_fence_context_alloc(1);
>   
>   		ret = drm_sched_init(&js->queue[j].sched,
> -				     &panfrost_sched_ops,
> +				     &panfrost_sched_ops, NULL,
>   				     nentries, 0,
>   				     msecs_to_jiffies(JOB_TIMEOUT_MS),
>   				     pfdev->reset.wq,
> diff --git a/drivers/gpu/drm/scheduler/sched_main.c b/drivers/gpu/drm/scheduler/sched_main.c
> index db70a57a3a1a..6bc29d509161 100644
> --- a/drivers/gpu/drm/scheduler/sched_main.c
> +++ b/drivers/gpu/drm/scheduler/sched_main.c
> @@ -1178,6 +1178,7 @@ static void drm_sched_main(struct work_struct *w)
>    *
>    * @sched: scheduler instance
>    * @ops: backend operations for this scheduler
> + * @run_wq: workqueue to use for run work. If NULL, the system_wq is used
>    * @hw_submission: number of hw submissions that can be in flight
>    * @hang_limit: number of times to allow a job to hang before dropping it
>    * @timeout: timeout value in jiffies for the scheduler
> @@ -1191,6 +1192,7 @@ static void drm_sched_main(struct work_struct *w)
>    */
>   int drm_sched_init(struct drm_gpu_scheduler *sched,
>   		   const struct drm_sched_backend_ops *ops,
> +		   struct workqueue_struct *run_wq,
>   		   unsigned hw_submission, unsigned hang_limit,
>   		   long timeout, struct workqueue_struct *timeout_wq,
>   		   atomic_t *score, const char *name, struct device *dev)
> @@ -1199,9 +1201,9 @@ int drm_sched_init(struct drm_gpu_scheduler *sched,
>   	sched->ops = ops;
>   	sched->hw_submission_limit = hw_submission;
>   	sched->name = name;
> +	sched->run_wq = run_wq ? : system_wq;
>   	sched->timeout = timeout;
>   	sched->timeout_wq = timeout_wq ? : system_wq;
> -	sched->run_wq = system_wq;	/* FIXME: Let user pass this in */
>   	sched->hang_limit = hang_limit;
>   	sched->score = score ? score : &sched->_score;
>   	sched->dev = dev;
> diff --git a/drivers/gpu/drm/v3d/v3d_sched.c b/drivers/gpu/drm/v3d/v3d_sched.c
> index 06238e6d7f5c..38e092ea41e6 100644
> --- a/drivers/gpu/drm/v3d/v3d_sched.c
> +++ b/drivers/gpu/drm/v3d/v3d_sched.c
> @@ -388,7 +388,7 @@ v3d_sched_init(struct v3d_dev *v3d)
>   	int ret;
>   
>   	ret = drm_sched_init(&v3d->queue[V3D_BIN].sched,
> -			     &v3d_bin_sched_ops,
> +			     &v3d_bin_sched_ops, NULL,
>   			     hw_jobs_limit, job_hang_limit,
>   			     msecs_to_jiffies(hang_limit_ms), NULL,
>   			     NULL, "v3d_bin", v3d->drm.dev);
> @@ -396,7 +396,7 @@ v3d_sched_init(struct v3d_dev *v3d)
>   		return ret;
>   
>   	ret = drm_sched_init(&v3d->queue[V3D_RENDER].sched,
> -			     &v3d_render_sched_ops,
> +			     &v3d_render_sched_ops, NULL,
>   			     hw_jobs_limit, job_hang_limit,
>   			     msecs_to_jiffies(hang_limit_ms), NULL,
>   			     NULL, "v3d_render", v3d->drm.dev);
> @@ -404,7 +404,7 @@ v3d_sched_init(struct v3d_dev *v3d)
>   		goto fail;
>   
>   	ret = drm_sched_init(&v3d->queue[V3D_TFU].sched,
> -			     &v3d_tfu_sched_ops,
> +			     &v3d_tfu_sched_ops, NULL,
>   			     hw_jobs_limit, job_hang_limit,
>   			     msecs_to_jiffies(hang_limit_ms), NULL,
>   			     NULL, "v3d_tfu", v3d->drm.dev);
> @@ -413,7 +413,7 @@ v3d_sched_init(struct v3d_dev *v3d)
>   
>   	if (v3d_has_csd(v3d)) {
>   		ret = drm_sched_init(&v3d->queue[V3D_CSD].sched,
> -				     &v3d_csd_sched_ops,
> +				     &v3d_csd_sched_ops, NULL,
>   				     hw_jobs_limit, job_hang_limit,
>   				     msecs_to_jiffies(hang_limit_ms), NULL,
>   				     NULL, "v3d_csd", v3d->drm.dev);
> @@ -421,7 +421,7 @@ v3d_sched_init(struct v3d_dev *v3d)
>   			goto fail;
>   
>   		ret = drm_sched_init(&v3d->queue[V3D_CACHE_CLEAN].sched,
> -				     &v3d_cache_clean_sched_ops,
> +				     &v3d_cache_clean_sched_ops, NULL,
>   				     hw_jobs_limit, job_hang_limit,
>   				     msecs_to_jiffies(hang_limit_ms), NULL,
>   				     NULL, "v3d_cache_clean", v3d->drm.dev);
> diff --git a/drivers/gpu/drm/xe/xe_devcoredump_types.h b/drivers/gpu/drm/xe/xe_devcoredump_types.h
> index c0d711eb6ab3..cc3ff3ac47ff 100644
> --- a/drivers/gpu/drm/xe/xe_devcoredump_types.h
> +++ b/drivers/gpu/drm/xe/xe_devcoredump_types.h
> @@ -11,6 +11,7 @@
>   
>   #include "xe_hw_engine_types.h"
>   
> +struct xe_ct;
>   struct xe_device;
>   
>   /**
> diff --git a/drivers/gpu/drm/xe/xe_execlist.c b/drivers/gpu/drm/xe/xe_execlist.c
> index 5d2d26e361b9..f0eb8bb277ce 100644
> --- a/drivers/gpu/drm/xe/xe_execlist.c
> +++ b/drivers/gpu/drm/xe/xe_execlist.c
> @@ -336,7 +336,7 @@ static int execlist_engine_init(struct xe_engine *e)
>   
>   	exl->engine = e;
>   
> -	err = drm_sched_init(&exl->sched, &drm_sched_ops,
> +	err = drm_sched_init(&exl->sched, &drm_sched_ops, NULL,
>   			     e->lrc[0].ring.size / MAX_JOB_SIZE_BYTES,
>   			     XE_SCHED_HANG_LIMIT, XE_SCHED_JOB_TIMEOUT,
>   			     NULL, NULL, e->hwe->name,
> diff --git a/drivers/gpu/drm/xe/xe_guc_submit.c b/drivers/gpu/drm/xe/xe_guc_submit.c
> index b209e4c2a3a9..5c9a6866bd3d 100644
> --- a/drivers/gpu/drm/xe/xe_guc_submit.c
> +++ b/drivers/gpu/drm/xe/xe_guc_submit.c
> @@ -1064,7 +1064,7 @@ static int guc_engine_init(struct xe_engine *e)
>   	init_waitqueue_head(&ge->suspend_wait);
>   
>   	timeout = xe_vm_no_dma_fences(e->vm) ? MAX_SCHEDULE_TIMEOUT : HZ * 5;
> -	err = drm_sched_init(&ge->sched, &drm_sched_ops,
> +	err = drm_sched_init(&ge->sched, &drm_sched_ops, NULL,
>   			     e->lrc[0].ring.size / MAX_JOB_SIZE_BYTES,
>   			     64, timeout, guc_to_gt(guc)->ordered_wq, NULL,
>   			     e->name, gt_to_xe(e->gt)->drm.dev);
> diff --git a/include/drm/gpu_scheduler.h b/include/drm/gpu_scheduler.h
> index 79311df9dd09..419c0446edd7 100644
> --- a/include/drm/gpu_scheduler.h
> +++ b/include/drm/gpu_scheduler.h
> @@ -547,6 +547,7 @@ struct drm_gpu_scheduler {
>   
>   int drm_sched_init(struct drm_gpu_scheduler *sched,
>   		   const struct drm_sched_backend_ops *ops,
> +		   struct workqueue_struct *run_wq,
>   		   uint32_t hw_submission, unsigned hang_limit,
>   		   long timeout, struct workqueue_struct *timeout_wq,
>   		   atomic_t *score, const char *name, struct device *dev);

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

* Re: [Intel-xe] [PATCH v3 2/8] drm/sched: Move schedule policy to scheduler
  2023-06-07 16:03 ` [Intel-xe] [PATCH v3 2/8] drm/sched: Move schedule policy to scheduler Matthew Brost
@ 2023-06-14  8:34   ` Thomas Hellström
  2023-06-15  3:27     ` Matthew Brost
  0 siblings, 1 reply; 24+ messages in thread
From: Thomas Hellström @ 2023-06-14  8:34 UTC (permalink / raw)
  To: Matthew Brost, intel-xe


On 6/7/23 18:03, Matthew Brost wrote:
> Rather than a global modparam for scheduling policy, move the scheduling
> policy to scheduler so driver can control each scheduler policy. This is
> required as it is possible in certain drivers certain scheduling polices
> are not allow, thus the driver must set the policy rather than the
s/allow/allowed/
> modparam.
>
> v2 (Thomas): Better commit message, s/scdedule/schedule/, remove extra
> brackets
>
> Signed-off-by: Matthew Brost <matthew.brost@intel.com>
> ---
>   drivers/gpu/drm/amd/amdgpu/amdgpu_device.c |  1 +
>   drivers/gpu/drm/etnaviv/etnaviv_sched.c    |  3 ++-
>   drivers/gpu/drm/lima/lima_sched.c          |  3 ++-
>   drivers/gpu/drm/msm/msm_ringbuffer.c       |  2 +-
>   drivers/gpu/drm/panfrost/panfrost_job.c    |  3 ++-
>   drivers/gpu/drm/scheduler/sched_entity.c   | 24 ++++++++++++++++++----
>   drivers/gpu/drm/scheduler/sched_main.c     | 21 ++++++++++++++-----
>   drivers/gpu/drm/v3d/v3d_sched.c            | 15 +++++++++-----
>   drivers/gpu/drm/xe/xe_execlist.c           |  2 +-
>   drivers/gpu/drm/xe/xe_guc_submit.c         |  3 ++-
>   include/drm/gpu_scheduler.h                | 20 ++++++++++++------
>   11 files changed, 71 insertions(+), 26 deletions(-)
>
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
> index 2e776ece4251..75ab8b9c7b25 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
> @@ -2368,6 +2368,7 @@ static int amdgpu_device_init_schedulers(struct amdgpu_device *adev)
>   				   ring->num_hw_submission, 0,
>   				   timeout, adev->reset_domain->wq,
>   				   ring->sched_score, ring->name,
> +				   DRM_SCHED_POLICY_DEFAULT,
>   				   adev->dev);
>   		if (r) {
>   			DRM_ERROR("Failed to create scheduler on ring %s.\n",
> diff --git a/drivers/gpu/drm/etnaviv/etnaviv_sched.c b/drivers/gpu/drm/etnaviv/etnaviv_sched.c
> index 8486a2923f1b..61204a3f8b0b 100644
> --- a/drivers/gpu/drm/etnaviv/etnaviv_sched.c
> +++ b/drivers/gpu/drm/etnaviv/etnaviv_sched.c
> @@ -136,7 +136,8 @@ int etnaviv_sched_init(struct etnaviv_gpu *gpu)
>   	ret = drm_sched_init(&gpu->sched, &etnaviv_sched_ops, NULL,
>   			     etnaviv_hw_jobs_limit, etnaviv_job_hang_limit,
>   			     msecs_to_jiffies(500), NULL, NULL,
> -			     dev_name(gpu->dev), gpu->dev);
> +			     dev_name(gpu->dev), DRM_SCHED_POLICY_DEFAULT,
> +			     gpu->dev);
>   	if (ret)
>   		return ret;
>   
> diff --git a/drivers/gpu/drm/lima/lima_sched.c b/drivers/gpu/drm/lima/lima_sched.c
> index 54f53bece27c..33042ba6ae93 100644
> --- a/drivers/gpu/drm/lima/lima_sched.c
> +++ b/drivers/gpu/drm/lima/lima_sched.c
> @@ -491,7 +491,8 @@ int lima_sched_pipe_init(struct lima_sched_pipe *pipe, const char *name)
>   	return drm_sched_init(&pipe->base, &lima_sched_ops, NULL, 1,
>   			      lima_job_hang_limit,
>   			      msecs_to_jiffies(timeout), NULL,
> -			      NULL, name, pipe->ldev->dev);
> +			      NULL, name, DRM_SCHED_POLICY_DEFAULT,
> +			      pipe->ldev->dev);
>   }
>   
>   void lima_sched_pipe_fini(struct lima_sched_pipe *pipe)
> diff --git a/drivers/gpu/drm/msm/msm_ringbuffer.c b/drivers/gpu/drm/msm/msm_ringbuffer.c
> index e1cff31f147a..0d1e7a4414e8 100644
> --- a/drivers/gpu/drm/msm/msm_ringbuffer.c
> +++ b/drivers/gpu/drm/msm/msm_ringbuffer.c
> @@ -96,7 +96,7 @@ struct msm_ringbuffer *msm_ringbuffer_new(struct msm_gpu *gpu, int id,
>   	ret = drm_sched_init(&ring->sched, &msm_sched_ops, NULL,
>   			     num_hw_submissions, 0, sched_timeout,
>   			     NULL, NULL, to_msm_bo(ring->bo)->name,
> -			     gpu->dev->dev);
> +			     DRM_SCHED_POLICY_DEFAULT, gpu->dev->dev);
>   	if (ret) {
>   		goto fail;
>   	}
> diff --git a/drivers/gpu/drm/panfrost/panfrost_job.c b/drivers/gpu/drm/panfrost/panfrost_job.c
> index f48b07056a16..effa48b33dce 100644
> --- a/drivers/gpu/drm/panfrost/panfrost_job.c
> +++ b/drivers/gpu/drm/panfrost/panfrost_job.c
> @@ -819,7 +819,8 @@ int panfrost_job_init(struct panfrost_device *pfdev)
>   				     nentries, 0,
>   				     msecs_to_jiffies(JOB_TIMEOUT_MS),
>   				     pfdev->reset.wq,
> -				     NULL, "pan_js", pfdev->dev);
> +				     NULL, "pan_js", DRM_SCHED_POLICY_DEFAULT,
> +				     pfdev->dev);
>   		if (ret) {
>   			dev_err(pfdev->dev, "Failed to create scheduler: %d.", ret);
>   			goto err_sched;
> diff --git a/drivers/gpu/drm/scheduler/sched_entity.c b/drivers/gpu/drm/scheduler/sched_entity.c
> index cfb433e92005..e1838e328de8 100644
> --- a/drivers/gpu/drm/scheduler/sched_entity.c
> +++ b/drivers/gpu/drm/scheduler/sched_entity.c
> @@ -33,6 +33,20 @@
>   #define to_drm_sched_job(sched_job)		\
>   		container_of((sched_job), struct drm_sched_job, queue_node)
>   
> +static bool bad_policies(struct drm_gpu_scheduler **sched_list,
> +			 unsigned int num_sched_list)
> +{
> +	enum drm_sched_policy sched_policy = sched_list[0]->sched_policy;
> +	unsigned int i;
> +
> +	/* All schedule policies must match */
> +	for (i = 1; i < num_sched_list; ++i)
> +		if (sched_policy != sched_list[i]->sched_policy)
> +			return true;
> +
> +	return false;
> +}
> +
>   /**
>    * drm_sched_entity_init - Init a context entity used by scheduler when
>    * submit to HW ring.
> @@ -62,7 +76,8 @@ int drm_sched_entity_init(struct drm_sched_entity *entity,
>   			  unsigned int num_sched_list,
>   			  atomic_t *guilty)
>   {
> -	if (!(entity && sched_list && (num_sched_list == 0 || sched_list[0])))
> +	if (!(entity && sched_list && (num_sched_list == 0 || sched_list[0])) ||
> +	    bad_policies(sched_list, num_sched_list))
>   		return -EINVAL;
>   
>   	memset(entity, 0, sizeof(struct drm_sched_entity));
> @@ -461,7 +476,7 @@ struct drm_sched_job *drm_sched_entity_pop_job(struct drm_sched_entity *entity)
>   	 * Update the entity's location in the min heap according to
>   	 * the timestamp of the next job, if any.
>   	 */
> -	if (drm_sched_policy == DRM_SCHED_POLICY_FIFO) {
> +	if (entity->rq->sched->sched_policy == DRM_SCHED_POLICY_FIFO) {
>   		struct drm_sched_job *next;
>   
>   		next = to_drm_sched_job(spsc_queue_peek(&entity->job_queue));
> @@ -533,7 +548,8 @@ void drm_sched_entity_select_rq(struct drm_sched_entity *entity)
>   void drm_sched_entity_push_job(struct drm_sched_job *sched_job)
>   {
>   	struct drm_sched_entity *entity = sched_job->entity;
> -	bool first;
> +	bool first, fifo = entity->rq->sched->sched_policy ==
> +		DRM_SCHED_POLICY_FIFO;
>   	ktime_t submit_ts;
>   
>   	trace_drm_sched_job(sched_job, entity);
> @@ -562,7 +578,7 @@ void drm_sched_entity_push_job(struct drm_sched_job *sched_job)
>   		drm_sched_rq_add_entity(entity->rq, entity);
>   		spin_unlock(&entity->rq_lock);
>   
> -		if (drm_sched_policy == DRM_SCHED_POLICY_FIFO)
> +		if (fifo)
>   			drm_sched_rq_update_fifo(entity, submit_ts);
>   
>   		drm_sched_wakeup(entity->rq->sched);
> diff --git a/drivers/gpu/drm/scheduler/sched_main.c b/drivers/gpu/drm/scheduler/sched_main.c
> index 6bc29d509161..ead122e99d00 100644
> --- a/drivers/gpu/drm/scheduler/sched_main.c
> +++ b/drivers/gpu/drm/scheduler/sched_main.c
> @@ -66,14 +66,14 @@
>   #define to_drm_sched_job(sched_job)		\
>   		container_of((sched_job), struct drm_sched_job, queue_node)
>   
> -int drm_sched_policy = DRM_SCHED_POLICY_FIFO;
> +int default_drm_sched_policy = DRM_SCHED_POLICY_FIFO;
>   
>   /**
>    * DOC: sched_policy (int)
>    * Used to override default entities scheduling policy in a run queue.
>    */
>   MODULE_PARM_DESC(sched_policy, "Specify the scheduling policy for entities on a run-queue, " __stringify(DRM_SCHED_POLICY_RR) " = Round Robin, " __stringify(DRM_SCHED_POLICY_FIFO) " = FIFO (default).");
Does the description above need updating to "Specify the default 
scheduling..."?
> -module_param_named(sched_policy, drm_sched_policy, int, 0444);
> +module_param_named(sched_policy, default_drm_sched_policy, int, 0444);
>   
>   static __always_inline bool drm_sched_entity_compare_before(struct rb_node *a,
>   							    const struct rb_node *b)
> @@ -177,7 +177,7 @@ void drm_sched_rq_remove_entity(struct drm_sched_rq *rq,
>   	if (rq->current_entity == entity)
>   		rq->current_entity = NULL;
>   
> -	if (drm_sched_policy == DRM_SCHED_POLICY_FIFO)
> +	if (rq->sched->sched_policy == DRM_SCHED_POLICY_FIFO)
>   		drm_sched_rq_remove_fifo_locked(entity);
>   
>   	spin_unlock(&rq->lock);
> @@ -961,7 +961,7 @@ drm_sched_select_entity(struct drm_gpu_scheduler *sched)
>   
>   	/* Kernel run queue has higher priority than normal run queue*/
>   	for (i = DRM_SCHED_PRIORITY_COUNT - 1; i >= DRM_SCHED_PRIORITY_MIN; i--) {
> -		entity = drm_sched_policy == DRM_SCHED_POLICY_FIFO ?
> +		entity = sched->sched_policy == DRM_SCHED_POLICY_FIFO ?
>   			drm_sched_rq_select_entity_fifo(&sched->sched_rq[i]) :
>   			drm_sched_rq_select_entity_rr(&sched->sched_rq[i]);
>   		if (entity)
> @@ -1186,6 +1186,7 @@ static void drm_sched_main(struct work_struct *w)
>    *		used
>    * @score: optional score atomic shared with other schedulers
>    * @name: name used for debugging
> + * @sched_policy: schedule policy
>    * @dev: target &struct device
>    *
>    * Return 0 on success, otherwise error code.
> @@ -1195,9 +1196,15 @@ int drm_sched_init(struct drm_gpu_scheduler *sched,
>   		   struct workqueue_struct *run_wq,
>   		   unsigned hw_submission, unsigned hang_limit,
>   		   long timeout, struct workqueue_struct *timeout_wq,
> -		   atomic_t *score, const char *name, struct device *dev)
> +		   atomic_t *score, const char *name,
> +		   enum drm_sched_policy sched_policy,
> +		   struct device *dev)
>   {
>   	int i;
> +
> +	if (sched_policy >= DRM_SCHED_POLICY_COUNT)
> +		return -EINVAL;
> +
>   	sched->ops = ops;
>   	sched->hw_submission_limit = hw_submission;
>   	sched->name = name;
> @@ -1207,6 +1214,10 @@ int drm_sched_init(struct drm_gpu_scheduler *sched,
>   	sched->hang_limit = hang_limit;
>   	sched->score = score ? score : &sched->_score;
>   	sched->dev = dev;
> +	if (sched_policy == DRM_SCHED_POLICY_DEFAULT)
> +		sched->sched_policy = default_drm_sched_policy;
> +	else
> +		sched->sched_policy = sched_policy;
>   	for (i = DRM_SCHED_PRIORITY_MIN; i < DRM_SCHED_PRIORITY_COUNT; i++)
>   		drm_sched_rq_init(sched, &sched->sched_rq[i]);
>   
> diff --git a/drivers/gpu/drm/v3d/v3d_sched.c b/drivers/gpu/drm/v3d/v3d_sched.c
> index 38e092ea41e6..5e3fe77fa991 100644
> --- a/drivers/gpu/drm/v3d/v3d_sched.c
> +++ b/drivers/gpu/drm/v3d/v3d_sched.c
> @@ -391,7 +391,8 @@ v3d_sched_init(struct v3d_dev *v3d)
>   			     &v3d_bin_sched_ops, NULL,
>   			     hw_jobs_limit, job_hang_limit,
>   			     msecs_to_jiffies(hang_limit_ms), NULL,
> -			     NULL, "v3d_bin", v3d->drm.dev);
> +			     NULL, "v3d_bin", DRM_SCHED_POLICY_DEFAULT,
> +			     v3d->drm.dev);
>   	if (ret)
>   		return ret;
>   
> @@ -399,7 +400,8 @@ v3d_sched_init(struct v3d_dev *v3d)
>   			     &v3d_render_sched_ops, NULL,
>   			     hw_jobs_limit, job_hang_limit,
>   			     msecs_to_jiffies(hang_limit_ms), NULL,
> -			     NULL, "v3d_render", v3d->drm.dev);
> +			     ULL, "v3d_render", DRM_SCHED_POLICY_DEFAULT,
> +			     v3d->drm.dev);
>   	if (ret)
>   		goto fail;
>   
> @@ -407,7 +409,8 @@ v3d_sched_init(struct v3d_dev *v3d)
>   			     &v3d_tfu_sched_ops, NULL,
>   			     hw_jobs_limit, job_hang_limit,
>   			     msecs_to_jiffies(hang_limit_ms), NULL,
> -			     NULL, "v3d_tfu", v3d->drm.dev);
> +			     NULL, "v3d_tfu", DRM_SCHED_POLICY_DEFAULT,
> +			     v3d->drm.dev);
>   	if (ret)
>   		goto fail;
>   
> @@ -416,7 +419,8 @@ v3d_sched_init(struct v3d_dev *v3d)
>   				     &v3d_csd_sched_ops, NULL,
>   				     hw_jobs_limit, job_hang_limit,
>   				     msecs_to_jiffies(hang_limit_ms), NULL,
> -				     NULL, "v3d_csd", v3d->drm.dev);
> +				     NULL, "v3d_csd", DRM_SCHED_POLICY_DEFAULT,
> +				     v3d->drm.dev);
>   		if (ret)
>   			goto fail;
>   
> @@ -424,7 +428,8 @@ v3d_sched_init(struct v3d_dev *v3d)
>   				     &v3d_cache_clean_sched_ops, NULL,
>   				     hw_jobs_limit, job_hang_limit,
>   				     msecs_to_jiffies(hang_limit_ms), NULL,
> -				     NULL, "v3d_cache_clean", v3d->drm.dev);
> +				     NULL, "v3d_cache_clean",
> +				     DRM_SCHED_POLICY_DEFAULT, v3d->drm.dev);
>   		if (ret)
>   			goto fail;
>   	}
> diff --git a/drivers/gpu/drm/xe/xe_execlist.c b/drivers/gpu/drm/xe/xe_execlist.c
> index f0eb8bb277ce..944dad79a037 100644
> --- a/drivers/gpu/drm/xe/xe_execlist.c
> +++ b/drivers/gpu/drm/xe/xe_execlist.c
> @@ -339,7 +339,7 @@ static int execlist_engine_init(struct xe_engine *e)
>   	err = drm_sched_init(&exl->sched, &drm_sched_ops, NULL,
>   			     e->lrc[0].ring.size / MAX_JOB_SIZE_BYTES,
>   			     XE_SCHED_HANG_LIMIT, XE_SCHED_JOB_TIMEOUT,
> -			     NULL, NULL, e->hwe->name,
> +			     NULL, NULL, e->hwe->name, DRM_SCHED_POLICY_DEFAULT,
>   			     gt_to_xe(e->gt)->drm.dev);
>   	if (err)
>   		goto err_free;
> diff --git a/drivers/gpu/drm/xe/xe_guc_submit.c b/drivers/gpu/drm/xe/xe_guc_submit.c
> index 5c9a6866bd3d..c147b17690dd 100644
> --- a/drivers/gpu/drm/xe/xe_guc_submit.c
> +++ b/drivers/gpu/drm/xe/xe_guc_submit.c
> @@ -1067,7 +1067,8 @@ static int guc_engine_init(struct xe_engine *e)
>   	err = drm_sched_init(&ge->sched, &drm_sched_ops, NULL,
>   			     e->lrc[0].ring.size / MAX_JOB_SIZE_BYTES,
>   			     64, timeout, guc_to_gt(guc)->ordered_wq, NULL,
> -			     e->name, gt_to_xe(e->gt)->drm.dev);
> +			     e->name, DRM_SCHED_POLICY_DEFAULT,
> +			     gt_to_xe(e->gt)->drm.dev);
>   	if (err)
>   		goto err_free;
>   
> diff --git a/include/drm/gpu_scheduler.h b/include/drm/gpu_scheduler.h
> index 419c0446edd7..929d0d567a0b 100644
> --- a/include/drm/gpu_scheduler.h
> +++ b/include/drm/gpu_scheduler.h
> @@ -72,11 +72,15 @@ enum drm_sched_priority {
>   	DRM_SCHED_PRIORITY_UNSET = -2
>   };
>   
> -/* Used to chose between FIFO and RR jobs scheduling */
> -extern int drm_sched_policy;
> -
> -#define DRM_SCHED_POLICY_RR    0
> -#define DRM_SCHED_POLICY_FIFO  1
> +/* Used to chose default scheduling policy*/
> +extern int default_drm_sched_policy;
> +
> +enum drm_sched_policy {
> +	DRM_SCHED_POLICY_DEFAULT,
> +	DRM_SCHED_POLICY_RR,
> +	DRM_SCHED_POLICY_FIFO,
> +	DRM_SCHED_POLICY_COUNT,
> +};
>   
>   /**
>    * struct drm_sched_entity - A wrapper around a job queue (typically
> @@ -513,6 +517,7 @@ struct drm_sched_backend_ops {
>    *              guilty and it will no longer be considered for scheduling.
>    * @score: score to help loadbalancer pick a idle sched
>    * @_score: score used when the driver doesn't provide one
> + * @sched_policy: Schedule policy for scheduler
>    * @ready: marks if the underlying HW is ready to work
>    * @free_guilty: A hit to time out handler to free the guilty job.
>    * @pause_run_wq: pause queuing of @work_run on @run_wq
> @@ -539,6 +544,7 @@ struct drm_gpu_scheduler {
>   	int				hang_limit;
>   	atomic_t                        *score;
>   	atomic_t                        _score;
> +	enum drm_sched_policy		sched_policy;
>   	bool				ready;
>   	bool				free_guilty;
>   	bool				pause_run_wq;
> @@ -550,7 +556,9 @@ int drm_sched_init(struct drm_gpu_scheduler *sched,
>   		   struct workqueue_struct *run_wq,
>   		   uint32_t hw_submission, unsigned hang_limit,
>   		   long timeout, struct workqueue_struct *timeout_wq,
> -		   atomic_t *score, const char *name, struct device *dev);
> +		   atomic_t *score, const char *name,
> +		   enum drm_sched_policy sched_policy,
> +		   struct device *dev);
>   
>   void drm_sched_fini(struct drm_gpu_scheduler *sched);
>   int drm_sched_job_init(struct drm_sched_job *job,

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

* Re: [Intel-xe] [PATCH v3 5/8] drm/xe: Long running job update
  2023-06-07 16:03 ` [Intel-xe] [PATCH v3 5/8] drm/xe: Long running job update Matthew Brost
@ 2023-06-14 11:40   ` Thomas Hellström
  2023-06-15  3:22     ` Matthew Brost
  0 siblings, 1 reply; 24+ messages in thread
From: Thomas Hellström @ 2023-06-14 11:40 UTC (permalink / raw)
  To: intel-xe


On 6/7/23 18:03, Matthew Brost wrote:
Some commit message nits:
> For long running (LR) jobs with the DRM scheduler we must return NULL in
> run_job which results in signaling the job's finished fence immediately.
> This prevents LR jobs from creating infinite dma-fences.
>
> Signaling job's finished fence immediately breaks flow controling ring
s/controling/controlling/
> with the DRM scheduler, to work around this the ring is flow controlled
> and written in the exec IOCTL.
Imperative: To work around this, flow control...
>   Signaling job's finished fence
> immediately also breaks the TDR which is used in reset / cleanup entity
> paths so we write a new path for LR entities.
so write
>
> v2: Better commit, white space, remove rmb(), better comment next to
> emit_job()
>
> Signed-off-by: Matthew Brost <matthew.brost@intel.com>
> ---
>   drivers/gpu/drm/xe/xe_engine.c           | 32 ++++++++
>   drivers/gpu/drm/xe/xe_engine.h           |  4 +
>   drivers/gpu/drm/xe/xe_exec.c             |  8 ++
>   drivers/gpu/drm/xe/xe_guc_engine_types.h |  2 +
>   drivers/gpu/drm/xe/xe_guc_submit.c       | 93 +++++++++++++++++++++---
>   drivers/gpu/drm/xe/xe_trace.h            |  5 ++
>   6 files changed, 135 insertions(+), 9 deletions(-)
>
> diff --git a/drivers/gpu/drm/xe/xe_engine.c b/drivers/gpu/drm/xe/xe_engine.c
> index b3036c4a8ec3..eb5f66f07da8 100644
> --- a/drivers/gpu/drm/xe/xe_engine.c
> +++ b/drivers/gpu/drm/xe/xe_engine.c
> @@ -18,6 +18,7 @@
>   #include "xe_macros.h"
>   #include "xe_migrate.h"
>   #include "xe_pm.h"
> +#include "xe_ring_ops_types.h"
>   #include "xe_trace.h"
>   #include "xe_vm.h"
>   
> @@ -679,6 +680,37 @@ static void engine_kill_compute(struct xe_engine *e)
>   	up_write(&e->vm->lock);
>   }
>   
> +/**
> + * xe_engine_is_lr() - Whether an engine is long-running
> + * @e: The engine
> + *
> + * Return: True if the engine is long-running, false otherwise.
> + */
> +bool xe_engine_is_lr(struct xe_engine *e)
> +{
> +	return e->vm && xe_vm_no_dma_fences(e->vm) &&
> +		!(e->flags & ENGINE_FLAG_VM);
> +}
> +
> +static s32 xe_engine_num_job_inflight(struct xe_engine *e)
> +{
> +	return e->lrc->fence_ctx.next_seqno - xe_lrc_seqno(e->lrc) - 1;
> +}
> +
> +/**
> + * xe_engine_ring_full() - Whether an engine's ring is full
> + * @e: The engine
> + *
> + * Return: True if the engine's ring is full, false otherwise.
> + */
> +bool xe_engine_ring_full(struct xe_engine *e)
> +{
> +	struct xe_lrc *lrc = e->lrc;
> +	s32 max_job = lrc->ring.size / MAX_JOB_SIZE_BYTES;
> +
> +	return xe_engine_num_job_inflight(e) >= max_job;
> +}
> +
>   /**
>    * xe_engine_is_idle() - Whether an engine is idle.
>    * @engine: The engine
> diff --git a/drivers/gpu/drm/xe/xe_engine.h b/drivers/gpu/drm/xe/xe_engine.h
> index a49cf2ab405e..2e60f6d90226 100644
> --- a/drivers/gpu/drm/xe/xe_engine.h
> +++ b/drivers/gpu/drm/xe/xe_engine.h
> @@ -42,6 +42,10 @@ static inline bool xe_engine_is_parallel(struct xe_engine *engine)
>   	return engine->width > 1;
>   }
>   
> +bool xe_engine_is_lr(struct xe_engine *e);
> +
> +bool xe_engine_ring_full(struct xe_engine *e);
> +
>   bool xe_engine_is_idle(struct xe_engine *engine);
>   
>   void xe_engine_kill(struct xe_engine *e);
> diff --git a/drivers/gpu/drm/xe/xe_exec.c b/drivers/gpu/drm/xe/xe_exec.c
> index e44076ee2e11..9e9523939de8 100644
> --- a/drivers/gpu/drm/xe/xe_exec.c
> +++ b/drivers/gpu/drm/xe/xe_exec.c
> @@ -14,6 +14,7 @@
>   #include "xe_device.h"
>   #include "xe_engine.h"
>   #include "xe_macros.h"
> +#include "xe_ring_ops_types.h"
>   #include "xe_sched_job.h"
>   #include "xe_sync.h"
>   #include "xe_vm.h"
> @@ -300,6 +301,11 @@ int xe_exec_ioctl(struct drm_device *dev, void *data, struct drm_file *file)
>   		goto err_engine_end;
>   	}
>   
> +	if (xe_engine_is_lr(engine) && xe_engine_ring_full(engine)) {
> +		err = -EWOULDBLOCK;
> +		goto err_engine_end;
> +	}
> +
>   	job = xe_sched_job_create(engine, xe_engine_is_parallel(engine) ?
>   				  addresses : &args->address);
>   	if (IS_ERR(job)) {
> @@ -386,6 +392,8 @@ int xe_exec_ioctl(struct drm_device *dev, void *data, struct drm_file *file)
>   		xe_sync_entry_signal(&syncs[i], job,
>   				     &job->drm.s_fence->finished);
>   
> +	if (xe_engine_is_lr(engine))
> +		engine->ring_ops->emit_job(job);
>   	xe_sched_job_push(job);
>   	xe_vm_reactivate_rebind(vm);
>   
> diff --git a/drivers/gpu/drm/xe/xe_guc_engine_types.h b/drivers/gpu/drm/xe/xe_guc_engine_types.h
> index cbfb13026ec1..5d83132034a6 100644
> --- a/drivers/gpu/drm/xe/xe_guc_engine_types.h
> +++ b/drivers/gpu/drm/xe/xe_guc_engine_types.h
> @@ -31,6 +31,8 @@ struct xe_guc_engine {
>   	 */
>   #define MAX_STATIC_MSG_TYPE	3
>   	struct drm_sched_msg static_msgs[MAX_STATIC_MSG_TYPE];
> +	/** @lr_tdr: long running TDR worker */
> +	struct work_struct lr_tdr;
>   	/** @fini_async: do final fini async from this worker */
>   	struct work_struct fini_async;
>   	/** @resume_time: time of last resume */
> diff --git a/drivers/gpu/drm/xe/xe_guc_submit.c b/drivers/gpu/drm/xe/xe_guc_submit.c
> index a7a0d9f806bd..7bde687fd188 100644
> --- a/drivers/gpu/drm/xe/xe_guc_submit.c
> +++ b/drivers/gpu/drm/xe/xe_guc_submit.c
> @@ -482,6 +482,14 @@ static void register_engine(struct xe_engine *e)
>   		parallel_write(xe, map, wq_desc.wq_status, WQ_STATUS_ACTIVE);
>   	}
>   
> +	/*
> +	 * We must keep a reference for LR engines if engine is registered with
> +	 * the GuC as jobs signal immediately and can't destroy an engine if the
> +	 * GuC has a reference to it.
> +	 */
> +	if (xe_engine_is_lr(e))
> +		xe_engine_get(e);
> +
>   	set_engine_registered(e);
>   	trace_xe_engine_register(e);
>   	if (xe_engine_is_parallel(e))
> @@ -644,6 +652,7 @@ guc_engine_run_job(struct drm_sched_job *drm_job)
>   {
>   	struct xe_sched_job *job = to_xe_sched_job(drm_job);
>   	struct xe_engine *e = job->engine;
> +	bool lr = xe_engine_is_lr(e);
>   
>   	XE_BUG_ON((engine_destroyed(e) || engine_pending_disable(e)) &&
>   		  !engine_banned(e) && !engine_suspended(e));
> @@ -653,14 +662,19 @@ guc_engine_run_job(struct drm_sched_job *drm_job)
>   	if (!engine_killed_or_banned(e) && !xe_sched_job_is_error(job)) {
>   		if (!engine_registered(e))
>   			register_engine(e);
> -		e->ring_ops->emit_job(job);
> +		if (!lr)	/* LR jobs are emitted in the exec IOCTL */
> +			e->ring_ops->emit_job(job);
>   		submit_engine(e);
>   	}
>   
> -	if (test_and_set_bit(JOB_FLAG_SUBMIT, &job->fence->flags))
> +	if (lr) {
> +		xe_sched_job_set_error(job, -EOPNOTSUPP);
> +		return NULL;
> +	} else if (test_and_set_bit(JOB_FLAG_SUBMIT, &job->fence->flags)) {
>   		return job->fence;
> -	else
> +	} else {
>   		return dma_fence_get(job->fence);
> +	}
>   }
>   
>   static void guc_engine_free_job(struct drm_sched_job *drm_job)
> @@ -764,6 +778,56 @@ static void simple_error_capture(struct xe_engine *e)
>   }
>   #endif
>   
> +static void xe_guc_engine_trigger_cleanup(struct xe_engine *e)
> +{
> +	struct xe_guc *guc = engine_to_guc(e);
> +
> +	if (xe_engine_is_lr(e))
> +		queue_work(guc_to_gt(guc)->ordered_wq, &e->guc->lr_tdr);
> +	else
> +		drm_sched_set_timeout(&e->guc->sched, MIN_SCHED_TIMEOUT);
> +}
> +
> +static void xe_guc_engine_lr_cleanup(struct work_struct *w)
> +{
> +	struct xe_guc_engine *ge =
> +		container_of(w, struct xe_guc_engine, lr_tdr);
> +	struct xe_engine *e = ge->engine;
> +	struct drm_gpu_scheduler *sched = &ge->sched;
> +
> +	XE_WARN_ON(!xe_engine_is_lr(e));
> +	trace_xe_engine_lr_cleanup(e);
> +
> +	/* Kill the run_job / process_msg entry points */
> +	drm_sched_run_wq_stop(sched);
> +
> +	/* Engine state now stable, disable scheduling / deregister if needed */
> +	if (engine_registered(e)) {
> +		struct xe_guc *guc = engine_to_guc(e);
> +		int ret;
> +
> +		set_engine_banned(e);
> +		xe_engine_get(e);
> +		disable_scheduling_deregister(guc, e);
> +
> +		/*
> +		 * Must wait for scheduling to be disabled before signalling
> +		 * any fences, if GT broken the GT reset code should signal us.
> +		 */
> +		ret = wait_event_timeout(guc->ct.wq,
> +					 !engine_pending_disable(e) ||
> +					 guc_read_stopped(guc), HZ * 5);
> +		if (!ret) {
> +			XE_WARN_ON("Schedule disable failed to respond");
> +			drm_sched_run_wq_start(sched);
> +			xe_gt_reset_async(e->gt);
> +			return;
> +		}
> +	}
> +
> +	drm_sched_run_wq_start(sched);
> +}
> +
>   static enum drm_gpu_sched_stat
>   guc_engine_timedout_job(struct drm_sched_job *drm_job)
>   {
> @@ -815,7 +879,7 @@ guc_engine_timedout_job(struct drm_sched_job *drm_job)
>   			err = -EIO;
>   		set_engine_banned(e);
>   		xe_engine_get(e);
> -		disable_scheduling_deregister(engine_to_guc(e), e);
> +		disable_scheduling_deregister(guc, e);
>   
>   		/*
>   		 * Must wait for scheduling to be disabled before signalling
> @@ -848,7 +912,7 @@ guc_engine_timedout_job(struct drm_sched_job *drm_job)
>   	 */
>   	list_add(&drm_job->list, &sched->pending_list);
>   	drm_sched_run_wq_start(sched);
> -	drm_sched_set_timeout(&e->guc->sched, MIN_SCHED_TIMEOUT);
> +	xe_guc_engine_trigger_cleanup(e);
>   
>   	/* Mark all outstanding jobs as bad, thus completing them */
>   	spin_lock(&sched->job_list_lock);
> @@ -872,6 +936,8 @@ static void __guc_engine_fini_async(struct work_struct *w)
>   
>   	trace_xe_engine_destroy(e);
>   
> +	if (xe_engine_is_lr(e))
> +		cancel_work_sync(&ge->lr_tdr);
>   	if (e->flags & ENGINE_FLAG_PERSISTENT)
>   		xe_device_remove_persistent_engines(gt_to_xe(e->gt), e);
>   	release_guc_id(guc, e);
> @@ -889,7 +955,7 @@ static void guc_engine_fini_async(struct xe_engine *e)
>   	bool kernel = e->flags & ENGINE_FLAG_KERNEL;
>   
>   	INIT_WORK(&e->guc->fini_async, __guc_engine_fini_async);
> -	queue_work(system_unbound_wq, &e->guc->fini_async);
> +	queue_work(system_wq, &e->guc->fini_async);
>   
>   	/* We must block on kernel engines so slabs are empty on driver unload */
>   	if (kernel) {
> @@ -1078,6 +1144,9 @@ static int guc_engine_init(struct xe_engine *e)
>   	if (err)
>   		goto err_sched;
>   
> +	if (xe_engine_is_lr(e))
> +		INIT_WORK(&e->guc->lr_tdr, xe_guc_engine_lr_cleanup);
> +
>   	mutex_lock(&guc->submission_state.lock);
>   
>   	err = alloc_guc_id(guc, e);
> @@ -1129,7 +1198,7 @@ static void guc_engine_kill(struct xe_engine *e)
>   {
>   	trace_xe_engine_kill(e);
>   	set_engine_killed(e);
> -	drm_sched_set_timeout(&e->guc->sched, MIN_SCHED_TIMEOUT);
> +	xe_guc_engine_trigger_cleanup(e);
>   }
>   
>   static void guc_engine_add_msg(struct xe_engine *e, struct drm_sched_msg *msg,
> @@ -1279,6 +1348,9 @@ static void guc_engine_stop(struct xe_guc *guc, struct xe_engine *e)
>   	/* Stop scheduling + flush any DRM scheduler operations */
>   	drm_sched_run_wq_stop(sched);
>   
> +	if (engine_registered(e) && xe_engine_is_lr(e))
> +		xe_engine_put(e);
> +
>   	/* Clean up lost G2H + reset engine state */
>   	if (engine_destroyed(e) && engine_registered(e)) {
>   		if (engine_banned(e))
> @@ -1503,6 +1575,9 @@ int xe_guc_deregister_done_handler(struct xe_guc *guc, u32 *msg, u32 len)
>   	trace_xe_engine_deregister_done(e);
>   
>   	clear_engine_registered(e);
> +	if (xe_engine_is_lr(e))
> +		xe_engine_put(e);
> +

This looks suspicious. We're putting the reference of "e", but continue 
to dereference "e" afterwards. If this is intentional, could you add a 
comment as to which pointer's reference we put? Typically wen you put 
the reference of a pointer you don't use it afterwards unless it is 
obvious that you're only caching the value from the pointer that carries 
the reference?


>   	if (engine_banned(e))
>   		xe_engine_put(e);
>   	else
> @@ -1540,7 +1615,7 @@ int xe_guc_engine_reset_handler(struct xe_guc *guc, u32 *msg, u32 len)
>   	 */
>   	set_engine_reset(e);
>   	if (!engine_banned(e))
> -		drm_sched_set_timeout(&e->guc->sched, MIN_SCHED_TIMEOUT);
> +		xe_guc_engine_trigger_cleanup(e);
>   
>   	return 0;
>   }
> @@ -1567,7 +1642,7 @@ int xe_guc_engine_memory_cat_error_handler(struct xe_guc *guc, u32 *msg,
>   	/* Treat the same as engine reset */
>   	set_engine_reset(e);
>   	if (!engine_banned(e))
> -		drm_sched_set_timeout(&e->guc->sched, MIN_SCHED_TIMEOUT);
> +		xe_guc_engine_trigger_cleanup(e);
>   
>   	return 0;
>   }
> diff --git a/drivers/gpu/drm/xe/xe_trace.h b/drivers/gpu/drm/xe/xe_trace.h
> index 2f8eb7ebe9a7..02861c26e145 100644
> --- a/drivers/gpu/drm/xe/xe_trace.h
> +++ b/drivers/gpu/drm/xe/xe_trace.h
> @@ -219,6 +219,11 @@ DEFINE_EVENT(xe_engine, xe_engine_resubmit,
>   	     TP_ARGS(e)
>   );
>   
> +DEFINE_EVENT(xe_engine, xe_engine_lr_cleanup,
> +	     TP_PROTO(struct xe_engine *e),
> +	     TP_ARGS(e)
> +);
> +
>   DECLARE_EVENT_CLASS(xe_sched_job,
>   		    TP_PROTO(struct xe_sched_job *job),
>   		    TP_ARGS(job),

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

* Re: [Intel-xe] [PATCH v3 7/8] drm/xe: Only try to lock external BOs in VM bind
  2023-06-07 16:03 ` [Intel-xe] [PATCH v3 7/8] drm/xe: Only try to lock external BOs in VM bind Matthew Brost
@ 2023-06-14 11:46   ` Thomas Hellström
  0 siblings, 0 replies; 24+ messages in thread
From: Thomas Hellström @ 2023-06-14 11:46 UTC (permalink / raw)
  To: Matthew Brost, intel-xe; +Cc: Rodrigo Vivi


On 6/7/23 18:03, Matthew Brost wrote:
> We only need to try to lock a BO if it's external as non-external BOs
> share the dma-resv with the already locked VM. Trying to lock
> non-external BOs caused an issue (list corruption) in an uncoming patch
s/uncoming/upcoming/ ?
> which adds bulk LRU move. Since this code isn't needed, remove it.

I'm still curious as to why the list corruption happens. But since this 
patch shouldn't introduce any regressions and the code will probably 
change with drm_exec,

with the above typo fixed,

Reviewed-by: Thomas Hellström <thomas.hellstrom@linux.intel.com>

>
> v2: New commit message, s/mattthew/matthew/
>
> Reviewed-by: Rodrigo Vivi <rodrigo.vivi@intel.com>
> Signed-off-by: Matthew Brost <matthew.brost@intel.com>
> ---
>   drivers/gpu/drm/xe/xe_vm.c | 8 +++++---
>   1 file changed, 5 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/gpu/drm/xe/xe_vm.c b/drivers/gpu/drm/xe/xe_vm.c
> index d1c380ad7f6b..2780f350ed33 100644
> --- a/drivers/gpu/drm/xe/xe_vm.c
> +++ b/drivers/gpu/drm/xe/xe_vm.c
> @@ -2146,9 +2146,11 @@ static int vm_bind_ioctl(struct xe_vm *vm, struct xe_vma *vma,
>   		 */
>   		xe_bo_get(vbo);
>   
> -		tv_bo.bo = &vbo->ttm;
> -		tv_bo.num_shared = 1;
> -		list_add(&tv_bo.head, &objs);
> +		if (!vbo->vm) {
> +			tv_bo.bo = &vbo->ttm;
> +			tv_bo.num_shared = 1;
> +			list_add(&tv_bo.head, &objs);
> +		}
>   	}
>   
>   again:

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

* Re: [Intel-xe] [PATCH v3 8/8] drm/xe: VM LRU bulk move
  2023-06-07 16:03 ` [Intel-xe] [PATCH v3 8/8] drm/xe: VM LRU bulk move Matthew Brost
@ 2023-06-14 11:50   ` Thomas Hellström
  0 siblings, 0 replies; 24+ messages in thread
From: Thomas Hellström @ 2023-06-14 11:50 UTC (permalink / raw)
  To: Matthew Brost, intel-xe


On 6/7/23 18:03, Matthew Brost wrote:
> Use the TTM LRU bulk move for BOs tied to a VM. Update the bulk moves
> LRU position on every exec.
>
> v2: Bulk move for compute VMs, use WARN rather than BUG
> Signed-off-by: Matthew Brost <matthew.brost@intel.com>
Reviewed-by: Thomas Hellström <thomas.hellstrom@linux.intel.com>
> ---
>   drivers/gpu/drm/xe/xe_bo.c       | 32 ++++++++++++++++++++++++++++----
>   drivers/gpu/drm/xe/xe_bo.h       |  4 ++--
>   drivers/gpu/drm/xe/xe_dma_buf.c  |  2 +-
>   drivers/gpu/drm/xe/xe_exec.c     |  6 ++++++
>   drivers/gpu/drm/xe/xe_vm.c       |  4 ++++
>   drivers/gpu/drm/xe/xe_vm_types.h |  3 +++
>   6 files changed, 44 insertions(+), 7 deletions(-)
>
> diff --git a/drivers/gpu/drm/xe/xe_bo.c b/drivers/gpu/drm/xe/xe_bo.c
> index b94a80a32d86..c996a36e11e9 100644
> --- a/drivers/gpu/drm/xe/xe_bo.c
> +++ b/drivers/gpu/drm/xe/xe_bo.c
> @@ -992,6 +992,23 @@ static void xe_gem_object_free(struct drm_gem_object *obj)
>   	ttm_bo_put(container_of(obj, struct ttm_buffer_object, base));
>   }
>   
> +static void xe_gem_object_close(struct drm_gem_object *obj,
> +				struct drm_file *file_priv)
> +{
> +	struct xe_bo *bo = gem_to_xe_bo(obj);
> +
> +	if (bo->vm && !xe_vm_in_fault_mode(bo->vm)) {
> +		struct ww_acquire_ctx ww;
> +
> +		XE_WARN_ON(!xe_bo_is_user(bo));
> +
> +		xe_bo_lock(bo, &ww, 0, false);
> +		ttm_bo_set_bulk_move(&bo->ttm, NULL);
> +		xe_bo_unlock(bo, &ww);
> +	}
> +}
> +
> +
>   static bool should_migrate_to_system(struct xe_bo *bo)
>   {
>   	struct xe_device *xe = xe_bo_device(bo);
> @@ -1047,6 +1064,7 @@ static const struct vm_operations_struct xe_gem_vm_ops = {
>   
>   static const struct drm_gem_object_funcs xe_gem_object_funcs = {
>   	.free = xe_gem_object_free,
> +	.close = xe_gem_object_close,
>   	.mmap = drm_gem_ttm_mmap,
>   	.export = xe_gem_prime_export,
>   	.vm_ops = &xe_gem_vm_ops,
> @@ -1088,8 +1106,8 @@ void xe_bo_free(struct xe_bo *bo)
>   
>   struct xe_bo *__xe_bo_create_locked(struct xe_device *xe, struct xe_bo *bo,
>   				    struct xe_tile *tile, struct dma_resv *resv,
> -				    size_t size, enum ttm_bo_type type,
> -				    u32 flags)
> +				    struct ttm_lru_bulk_move *bulk, size_t size,
> +				    enum ttm_bo_type type, u32 flags)
>   {
>   	struct ttm_operation_ctx ctx = {
>   		.interruptible = true,
> @@ -1156,7 +1174,10 @@ struct xe_bo *__xe_bo_create_locked(struct xe_device *xe, struct xe_bo *bo,
>   		return ERR_PTR(err);
>   
>   	bo->created = true;
> -	ttm_bo_move_to_lru_tail_unlocked(&bo->ttm);
> +	if (bulk)
> +		ttm_bo_set_bulk_move(&bo->ttm, bulk);
> +	else
> +		ttm_bo_move_to_lru_tail_unlocked(&bo->ttm);
>   
>   	return bo;
>   }
> @@ -1226,7 +1247,10 @@ xe_bo_create_locked_range(struct xe_device *xe,
>   		}
>   	}
>   
> -	bo = __xe_bo_create_locked(xe, bo, tile, vm ? &vm->resv : NULL, size,
> +	bo = __xe_bo_create_locked(xe, bo, tile, vm ? &vm->resv : NULL,
> +				   vm && !xe_vm_in_fault_mode(vm) &&
> +				   flags & XE_BO_CREATE_USER_BIT ?
> +				   &vm->lru_bulk_move : NULL, size,
>   				   type, flags);
>   	if (IS_ERR(bo))
>   		return bo;
> diff --git a/drivers/gpu/drm/xe/xe_bo.h b/drivers/gpu/drm/xe/xe_bo.h
> index 29eb7474f018..98bea6a26347 100644
> --- a/drivers/gpu/drm/xe/xe_bo.h
> +++ b/drivers/gpu/drm/xe/xe_bo.h
> @@ -82,8 +82,8 @@ void xe_bo_free(struct xe_bo *bo);
>   
>   struct xe_bo *__xe_bo_create_locked(struct xe_device *xe, struct xe_bo *bo,
>   				    struct xe_tile *tile, struct dma_resv *resv,
> -				    size_t size, enum ttm_bo_type type,
> -				    u32 flags);
> +				    struct ttm_lru_bulk_move *bulk, size_t size,
> +				    enum ttm_bo_type type, u32 flags);
>   struct xe_bo *
>   xe_bo_create_locked_range(struct xe_device *xe,
>   			  struct xe_tile *tile, struct xe_vm *vm,
> diff --git a/drivers/gpu/drm/xe/xe_dma_buf.c b/drivers/gpu/drm/xe/xe_dma_buf.c
> index 9b252cc782b7..975dee1f770f 100644
> --- a/drivers/gpu/drm/xe/xe_dma_buf.c
> +++ b/drivers/gpu/drm/xe/xe_dma_buf.c
> @@ -199,7 +199,7 @@ xe_dma_buf_init_obj(struct drm_device *dev, struct xe_bo *storage,
>   	int ret;
>   
>   	dma_resv_lock(resv, NULL);
> -	bo = __xe_bo_create_locked(xe, storage, NULL, resv, dma_buf->size,
> +	bo = __xe_bo_create_locked(xe, storage, NULL, resv, NULL, dma_buf->size,
>   				   ttm_bo_type_sg, XE_BO_CREATE_SYSTEM_BIT);
>   	if (IS_ERR(bo)) {
>   		ret = PTR_ERR(bo);
> diff --git a/drivers/gpu/drm/xe/xe_exec.c b/drivers/gpu/drm/xe/xe_exec.c
> index 9e9523939de8..88d2ceaa7316 100644
> --- a/drivers/gpu/drm/xe/xe_exec.c
> +++ b/drivers/gpu/drm/xe/xe_exec.c
> @@ -397,6 +397,12 @@ int xe_exec_ioctl(struct drm_device *dev, void *data, struct drm_file *file)
>   	xe_sched_job_push(job);
>   	xe_vm_reactivate_rebind(vm);
>   
> +	if (!err && !xe_vm_no_dma_fences(vm)) {
> +		spin_lock(&xe->ttm.lru_lock);
> +		ttm_lru_bulk_move_tail(&vm->lru_bulk_move);
> +		spin_unlock(&xe->ttm.lru_lock);
> +	}
> +
>   err_repin:
>   	if (!xe_vm_no_dma_fences(vm))
>   		up_read(&vm->userptr.notifier_lock);
> diff --git a/drivers/gpu/drm/xe/xe_vm.c b/drivers/gpu/drm/xe/xe_vm.c
> index 2780f350ed33..d03c628d04b5 100644
> --- a/drivers/gpu/drm/xe/xe_vm.c
> +++ b/drivers/gpu/drm/xe/xe_vm.c
> @@ -632,6 +632,10 @@ static void preempt_rebind_work_func(struct work_struct *w)
>   
>   #undef retry_required
>   
> +	spin_lock(&vm->xe->ttm.lru_lock);
> +	ttm_lru_bulk_move_tail(&vm->lru_bulk_move);
> +	spin_unlock(&vm->xe->ttm.lru_lock);
> +
>   	/* Point of no return. */
>   	arm_preempt_fences(vm, &preempt_fences);
>   	resume_and_reinstall_preempt_fences(vm);
> diff --git a/drivers/gpu/drm/xe/xe_vm_types.h b/drivers/gpu/drm/xe/xe_vm_types.h
> index 76af6ac0fa84..fe715bd1a20d 100644
> --- a/drivers/gpu/drm/xe/xe_vm_types.h
> +++ b/drivers/gpu/drm/xe/xe_vm_types.h
> @@ -164,6 +164,9 @@ struct xe_vm {
>   	/** Protects @rebind_list and the page-table structures */
>   	struct dma_resv resv;
>   
> +	/** @lru_bulk_move: Bulk LRU move list for this VM's BOs */
> +	struct ttm_lru_bulk_move lru_bulk_move;
> +
>   	u64 size;
>   	struct rb_root vmas;
>   

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

* Re: [Intel-xe] [PATCH v3 5/8] drm/xe: Long running job update
  2023-06-14 11:40   ` Thomas Hellström
@ 2023-06-15  3:22     ` Matthew Brost
  0 siblings, 0 replies; 24+ messages in thread
From: Matthew Brost @ 2023-06-15  3:22 UTC (permalink / raw)
  To: Thomas Hellström; +Cc: intel-xe

On Wed, Jun 14, 2023 at 01:40:31PM +0200, Thomas Hellström wrote:
> 
> On 6/7/23 18:03, Matthew Brost wrote:
> Some commit message nits:
> > For long running (LR) jobs with the DRM scheduler we must return NULL in
> > run_job which results in signaling the job's finished fence immediately.
> > This prevents LR jobs from creating infinite dma-fences.
> > 
> > Signaling job's finished fence immediately breaks flow controling ring
> s/controling/controlling/
> > with the DRM scheduler, to work around this the ring is flow controlled
> > and written in the exec IOCTL.
> Imperative: To work around this, flow control...
> >   Signaling job's finished fence
> > immediately also breaks the TDR which is used in reset / cleanup entity
> > paths so we write a new path for LR entities.
> so write

Will fix all of this.

> > 
> > v2: Better commit, white space, remove rmb(), better comment next to
> > emit_job()
> > 
> > Signed-off-by: Matthew Brost <matthew.brost@intel.com>
> > ---
> >   drivers/gpu/drm/xe/xe_engine.c           | 32 ++++++++
> >   drivers/gpu/drm/xe/xe_engine.h           |  4 +
> >   drivers/gpu/drm/xe/xe_exec.c             |  8 ++
> >   drivers/gpu/drm/xe/xe_guc_engine_types.h |  2 +
> >   drivers/gpu/drm/xe/xe_guc_submit.c       | 93 +++++++++++++++++++++---
> >   drivers/gpu/drm/xe/xe_trace.h            |  5 ++
> >   6 files changed, 135 insertions(+), 9 deletions(-)
> > 
> > diff --git a/drivers/gpu/drm/xe/xe_engine.c b/drivers/gpu/drm/xe/xe_engine.c
> > index b3036c4a8ec3..eb5f66f07da8 100644
> > --- a/drivers/gpu/drm/xe/xe_engine.c
> > +++ b/drivers/gpu/drm/xe/xe_engine.c
> > @@ -18,6 +18,7 @@
> >   #include "xe_macros.h"
> >   #include "xe_migrate.h"
> >   #include "xe_pm.h"
> > +#include "xe_ring_ops_types.h"
> >   #include "xe_trace.h"
> >   #include "xe_vm.h"
> > @@ -679,6 +680,37 @@ static void engine_kill_compute(struct xe_engine *e)
> >   	up_write(&e->vm->lock);
> >   }
> > +/**
> > + * xe_engine_is_lr() - Whether an engine is long-running
> > + * @e: The engine
> > + *
> > + * Return: True if the engine is long-running, false otherwise.
> > + */
> > +bool xe_engine_is_lr(struct xe_engine *e)
> > +{
> > +	return e->vm && xe_vm_no_dma_fences(e->vm) &&
> > +		!(e->flags & ENGINE_FLAG_VM);
> > +}
> > +
> > +static s32 xe_engine_num_job_inflight(struct xe_engine *e)
> > +{
> > +	return e->lrc->fence_ctx.next_seqno - xe_lrc_seqno(e->lrc) - 1;
> > +}
> > +
> > +/**
> > + * xe_engine_ring_full() - Whether an engine's ring is full
> > + * @e: The engine
> > + *
> > + * Return: True if the engine's ring is full, false otherwise.
> > + */
> > +bool xe_engine_ring_full(struct xe_engine *e)
> > +{
> > +	struct xe_lrc *lrc = e->lrc;
> > +	s32 max_job = lrc->ring.size / MAX_JOB_SIZE_BYTES;
> > +
> > +	return xe_engine_num_job_inflight(e) >= max_job;
> > +}
> > +
> >   /**
> >    * xe_engine_is_idle() - Whether an engine is idle.
> >    * @engine: The engine
> > diff --git a/drivers/gpu/drm/xe/xe_engine.h b/drivers/gpu/drm/xe/xe_engine.h
> > index a49cf2ab405e..2e60f6d90226 100644
> > --- a/drivers/gpu/drm/xe/xe_engine.h
> > +++ b/drivers/gpu/drm/xe/xe_engine.h
> > @@ -42,6 +42,10 @@ static inline bool xe_engine_is_parallel(struct xe_engine *engine)
> >   	return engine->width > 1;
> >   }
> > +bool xe_engine_is_lr(struct xe_engine *e);
> > +
> > +bool xe_engine_ring_full(struct xe_engine *e);
> > +
> >   bool xe_engine_is_idle(struct xe_engine *engine);
> >   void xe_engine_kill(struct xe_engine *e);
> > diff --git a/drivers/gpu/drm/xe/xe_exec.c b/drivers/gpu/drm/xe/xe_exec.c
> > index e44076ee2e11..9e9523939de8 100644
> > --- a/drivers/gpu/drm/xe/xe_exec.c
> > +++ b/drivers/gpu/drm/xe/xe_exec.c
> > @@ -14,6 +14,7 @@
> >   #include "xe_device.h"
> >   #include "xe_engine.h"
> >   #include "xe_macros.h"
> > +#include "xe_ring_ops_types.h"
> >   #include "xe_sched_job.h"
> >   #include "xe_sync.h"
> >   #include "xe_vm.h"
> > @@ -300,6 +301,11 @@ int xe_exec_ioctl(struct drm_device *dev, void *data, struct drm_file *file)
> >   		goto err_engine_end;
> >   	}
> > +	if (xe_engine_is_lr(engine) && xe_engine_ring_full(engine)) {
> > +		err = -EWOULDBLOCK;
> > +		goto err_engine_end;
> > +	}
> > +
> >   	job = xe_sched_job_create(engine, xe_engine_is_parallel(engine) ?
> >   				  addresses : &args->address);
> >   	if (IS_ERR(job)) {
> > @@ -386,6 +392,8 @@ int xe_exec_ioctl(struct drm_device *dev, void *data, struct drm_file *file)
> >   		xe_sync_entry_signal(&syncs[i], job,
> >   				     &job->drm.s_fence->finished);
> > +	if (xe_engine_is_lr(engine))
> > +		engine->ring_ops->emit_job(job);
> >   	xe_sched_job_push(job);
> >   	xe_vm_reactivate_rebind(vm);
> > diff --git a/drivers/gpu/drm/xe/xe_guc_engine_types.h b/drivers/gpu/drm/xe/xe_guc_engine_types.h
> > index cbfb13026ec1..5d83132034a6 100644
> > --- a/drivers/gpu/drm/xe/xe_guc_engine_types.h
> > +++ b/drivers/gpu/drm/xe/xe_guc_engine_types.h
> > @@ -31,6 +31,8 @@ struct xe_guc_engine {
> >   	 */
> >   #define MAX_STATIC_MSG_TYPE	3
> >   	struct drm_sched_msg static_msgs[MAX_STATIC_MSG_TYPE];
> > +	/** @lr_tdr: long running TDR worker */
> > +	struct work_struct lr_tdr;
> >   	/** @fini_async: do final fini async from this worker */
> >   	struct work_struct fini_async;
> >   	/** @resume_time: time of last resume */
> > diff --git a/drivers/gpu/drm/xe/xe_guc_submit.c b/drivers/gpu/drm/xe/xe_guc_submit.c
> > index a7a0d9f806bd..7bde687fd188 100644
> > --- a/drivers/gpu/drm/xe/xe_guc_submit.c
> > +++ b/drivers/gpu/drm/xe/xe_guc_submit.c
> > @@ -482,6 +482,14 @@ static void register_engine(struct xe_engine *e)
> >   		parallel_write(xe, map, wq_desc.wq_status, WQ_STATUS_ACTIVE);
> >   	}
> > +	/*
> > +	 * We must keep a reference for LR engines if engine is registered with
> > +	 * the GuC as jobs signal immediately and can't destroy an engine if the
> > +	 * GuC has a reference to it.
> > +	 */
> > +	if (xe_engine_is_lr(e))
> > +		xe_engine_get(e);
> > +
> >   	set_engine_registered(e);
> >   	trace_xe_engine_register(e);
> >   	if (xe_engine_is_parallel(e))
> > @@ -644,6 +652,7 @@ guc_engine_run_job(struct drm_sched_job *drm_job)
> >   {
> >   	struct xe_sched_job *job = to_xe_sched_job(drm_job);
> >   	struct xe_engine *e = job->engine;
> > +	bool lr = xe_engine_is_lr(e);
> >   	XE_BUG_ON((engine_destroyed(e) || engine_pending_disable(e)) &&
> >   		  !engine_banned(e) && !engine_suspended(e));
> > @@ -653,14 +662,19 @@ guc_engine_run_job(struct drm_sched_job *drm_job)
> >   	if (!engine_killed_or_banned(e) && !xe_sched_job_is_error(job)) {
> >   		if (!engine_registered(e))
> >   			register_engine(e);
> > -		e->ring_ops->emit_job(job);
> > +		if (!lr)	/* LR jobs are emitted in the exec IOCTL */
> > +			e->ring_ops->emit_job(job);
> >   		submit_engine(e);
> >   	}
> > -	if (test_and_set_bit(JOB_FLAG_SUBMIT, &job->fence->flags))
> > +	if (lr) {
> > +		xe_sched_job_set_error(job, -EOPNOTSUPP);
> > +		return NULL;
> > +	} else if (test_and_set_bit(JOB_FLAG_SUBMIT, &job->fence->flags)) {
> >   		return job->fence;
> > -	else
> > +	} else {
> >   		return dma_fence_get(job->fence);
> > +	}
> >   }
> >   static void guc_engine_free_job(struct drm_sched_job *drm_job)
> > @@ -764,6 +778,56 @@ static void simple_error_capture(struct xe_engine *e)
> >   }
> >   #endif
> > +static void xe_guc_engine_trigger_cleanup(struct xe_engine *e)
> > +{
> > +	struct xe_guc *guc = engine_to_guc(e);
> > +
> > +	if (xe_engine_is_lr(e))
> > +		queue_work(guc_to_gt(guc)->ordered_wq, &e->guc->lr_tdr);
> > +	else
> > +		drm_sched_set_timeout(&e->guc->sched, MIN_SCHED_TIMEOUT);
> > +}
> > +
> > +static void xe_guc_engine_lr_cleanup(struct work_struct *w)
> > +{
> > +	struct xe_guc_engine *ge =
> > +		container_of(w, struct xe_guc_engine, lr_tdr);
> > +	struct xe_engine *e = ge->engine;
> > +	struct drm_gpu_scheduler *sched = &ge->sched;
> > +
> > +	XE_WARN_ON(!xe_engine_is_lr(e));
> > +	trace_xe_engine_lr_cleanup(e);
> > +
> > +	/* Kill the run_job / process_msg entry points */
> > +	drm_sched_run_wq_stop(sched);
> > +
> > +	/* Engine state now stable, disable scheduling / deregister if needed */
> > +	if (engine_registered(e)) {
> > +		struct xe_guc *guc = engine_to_guc(e);
> > +		int ret;
> > +
> > +		set_engine_banned(e);
> > +		xe_engine_get(e);
> > +		disable_scheduling_deregister(guc, e);
> > +
> > +		/*
> > +		 * Must wait for scheduling to be disabled before signalling
> > +		 * any fences, if GT broken the GT reset code should signal us.
> > +		 */
> > +		ret = wait_event_timeout(guc->ct.wq,
> > +					 !engine_pending_disable(e) ||
> > +					 guc_read_stopped(guc), HZ * 5);
> > +		if (!ret) {
> > +			XE_WARN_ON("Schedule disable failed to respond");
> > +			drm_sched_run_wq_start(sched);
> > +			xe_gt_reset_async(e->gt);
> > +			return;
> > +		}
> > +	}
> > +
> > +	drm_sched_run_wq_start(sched);
> > +}
> > +
> >   static enum drm_gpu_sched_stat
> >   guc_engine_timedout_job(struct drm_sched_job *drm_job)
> >   {
> > @@ -815,7 +879,7 @@ guc_engine_timedout_job(struct drm_sched_job *drm_job)
> >   			err = -EIO;
> >   		set_engine_banned(e);
> >   		xe_engine_get(e);
> > -		disable_scheduling_deregister(engine_to_guc(e), e);
> > +		disable_scheduling_deregister(guc, e);
> >   		/*
> >   		 * Must wait for scheduling to be disabled before signalling
> > @@ -848,7 +912,7 @@ guc_engine_timedout_job(struct drm_sched_job *drm_job)
> >   	 */
> >   	list_add(&drm_job->list, &sched->pending_list);
> >   	drm_sched_run_wq_start(sched);
> > -	drm_sched_set_timeout(&e->guc->sched, MIN_SCHED_TIMEOUT);
> > +	xe_guc_engine_trigger_cleanup(e);
> >   	/* Mark all outstanding jobs as bad, thus completing them */
> >   	spin_lock(&sched->job_list_lock);
> > @@ -872,6 +936,8 @@ static void __guc_engine_fini_async(struct work_struct *w)
> >   	trace_xe_engine_destroy(e);
> > +	if (xe_engine_is_lr(e))
> > +		cancel_work_sync(&ge->lr_tdr);
> >   	if (e->flags & ENGINE_FLAG_PERSISTENT)
> >   		xe_device_remove_persistent_engines(gt_to_xe(e->gt), e);
> >   	release_guc_id(guc, e);
> > @@ -889,7 +955,7 @@ static void guc_engine_fini_async(struct xe_engine *e)
> >   	bool kernel = e->flags & ENGINE_FLAG_KERNEL;
> >   	INIT_WORK(&e->guc->fini_async, __guc_engine_fini_async);
> > -	queue_work(system_unbound_wq, &e->guc->fini_async);
> > +	queue_work(system_wq, &e->guc->fini_async);
> >   	/* We must block on kernel engines so slabs are empty on driver unload */
> >   	if (kernel) {
> > @@ -1078,6 +1144,9 @@ static int guc_engine_init(struct xe_engine *e)
> >   	if (err)
> >   		goto err_sched;
> > +	if (xe_engine_is_lr(e))
> > +		INIT_WORK(&e->guc->lr_tdr, xe_guc_engine_lr_cleanup);
> > +
> >   	mutex_lock(&guc->submission_state.lock);
> >   	err = alloc_guc_id(guc, e);
> > @@ -1129,7 +1198,7 @@ static void guc_engine_kill(struct xe_engine *e)
> >   {
> >   	trace_xe_engine_kill(e);
> >   	set_engine_killed(e);
> > -	drm_sched_set_timeout(&e->guc->sched, MIN_SCHED_TIMEOUT);
> > +	xe_guc_engine_trigger_cleanup(e);
> >   }
> >   static void guc_engine_add_msg(struct xe_engine *e, struct drm_sched_msg *msg,
> > @@ -1279,6 +1348,9 @@ static void guc_engine_stop(struct xe_guc *guc, struct xe_engine *e)
> >   	/* Stop scheduling + flush any DRM scheduler operations */
> >   	drm_sched_run_wq_stop(sched);
> > +	if (engine_registered(e) && xe_engine_is_lr(e))
> > +		xe_engine_put(e);
> > +
> >   	/* Clean up lost G2H + reset engine state */
> >   	if (engine_destroyed(e) && engine_registered(e)) {
> >   		if (engine_banned(e))
> > @@ -1503,6 +1575,9 @@ int xe_guc_deregister_done_handler(struct xe_guc *guc, u32 *msg, u32 len)
> >   	trace_xe_engine_deregister_done(e);
> >   	clear_engine_registered(e);
> > +	if (xe_engine_is_lr(e))
> > +		xe_engine_put(e);
> > +
> 
> This looks suspicious. We're putting the reference of "e", but continue to
> dereference "e" afterwards. If this is intentional, could you add a comment
> as to which pointer's reference we put? Typically wen you put the reference
> of a pointer you don't use it afterwards unless it is obvious that you're
> only caching the value from the pointer that carries the reference?
> 

This is goofy and does indeed work as if a engine is LR here is will
also always be banned. Let me change the reference counting here so the
code can change to:

if (xe_engine_is_lr(e) || engine_banned(e))
	xe_engine_put(e);
else
	...

This will affect a few other code paths too.

Matt

> 
> >   	if (engine_banned(e))
> >   		xe_engine_put(e);
> >   	else
> > @@ -1540,7 +1615,7 @@ int xe_guc_engine_reset_handler(struct xe_guc *guc, u32 *msg, u32 len)
> >   	 */
> >   	set_engine_reset(e);
> >   	if (!engine_banned(e))
> > -		drm_sched_set_timeout(&e->guc->sched, MIN_SCHED_TIMEOUT);
> > +		xe_guc_engine_trigger_cleanup(e);
> >   	return 0;
> >   }
> > @@ -1567,7 +1642,7 @@ int xe_guc_engine_memory_cat_error_handler(struct xe_guc *guc, u32 *msg,
> >   	/* Treat the same as engine reset */
> >   	set_engine_reset(e);
> >   	if (!engine_banned(e))
> > -		drm_sched_set_timeout(&e->guc->sched, MIN_SCHED_TIMEOUT);
> > +		xe_guc_engine_trigger_cleanup(e);
> >   	return 0;
> >   }
> > diff --git a/drivers/gpu/drm/xe/xe_trace.h b/drivers/gpu/drm/xe/xe_trace.h
> > index 2f8eb7ebe9a7..02861c26e145 100644
> > --- a/drivers/gpu/drm/xe/xe_trace.h
> > +++ b/drivers/gpu/drm/xe/xe_trace.h
> > @@ -219,6 +219,11 @@ DEFINE_EVENT(xe_engine, xe_engine_resubmit,
> >   	     TP_ARGS(e)
> >   );
> > +DEFINE_EVENT(xe_engine, xe_engine_lr_cleanup,
> > +	     TP_PROTO(struct xe_engine *e),
> > +	     TP_ARGS(e)
> > +);
> > +
> >   DECLARE_EVENT_CLASS(xe_sched_job,
> >   		    TP_PROTO(struct xe_sched_job *job),
> >   		    TP_ARGS(job),

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

* Re: [Intel-xe] [PATCH v3 1/8] fixup! drm/sched: Convert drm scheduler to use a work queue rather than kthread
  2023-06-14  8:29   ` Thomas Hellström
@ 2023-06-15  3:26     ` Matthew Brost
  0 siblings, 0 replies; 24+ messages in thread
From: Matthew Brost @ 2023-06-15  3:26 UTC (permalink / raw)
  To: Thomas Hellström; +Cc: intel-xe, Rodrigo Vivi

On Wed, Jun 14, 2023 at 10:29:19AM +0200, Thomas Hellström wrote:
> On 6/7/23 18:03, Matthew Brost wrote:
> > Acked-by: Rodrigo Vivi <rodrigo.vivi@intel.com>
> > Signed-off-by: Matthew Brost <matthew.brost@intel.com>
> 
> Could we have a description what this fixup is doing and why?
> 
> /Thomas
> 

Idk if that affects the auto-squash, it just created this patch when I
ran the command Rodrigo gave me but yea can add a comment.

Matt

> 
> 
> > ---
> >   drivers/gpu/drm/amd/amdgpu/amdgpu_device.c |  2 +-
> >   drivers/gpu/drm/etnaviv/etnaviv_sched.c    |  2 +-
> >   drivers/gpu/drm/lima/lima_sched.c          |  2 +-
> >   drivers/gpu/drm/msm/msm_ringbuffer.c       |  7 ++++---
> >   drivers/gpu/drm/panfrost/panfrost_job.c    |  2 +-
> >   drivers/gpu/drm/scheduler/sched_main.c     |  4 +++-
> >   drivers/gpu/drm/v3d/v3d_sched.c            | 10 +++++-----
> >   drivers/gpu/drm/xe/xe_devcoredump_types.h  |  1 +
> >   drivers/gpu/drm/xe/xe_execlist.c           |  2 +-
> >   drivers/gpu/drm/xe/xe_guc_submit.c         |  2 +-
> >   include/drm/gpu_scheduler.h                |  1 +
> >   11 files changed, 20 insertions(+), 15 deletions(-)
> > 
> > diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
> > index 64e7584c5dd2..2e776ece4251 100644
> > --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
> > +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
> > @@ -2364,7 +2364,7 @@ static int amdgpu_device_init_schedulers(struct amdgpu_device *adev)
> >   			break;
> >   		}
> > -		r = drm_sched_init(&ring->sched, &amdgpu_sched_ops,
> > +		r = drm_sched_init(&ring->sched, &amdgpu_sched_ops, NULL,
> >   				   ring->num_hw_submission, 0,
> >   				   timeout, adev->reset_domain->wq,
> >   				   ring->sched_score, ring->name,
> > diff --git a/drivers/gpu/drm/etnaviv/etnaviv_sched.c b/drivers/gpu/drm/etnaviv/etnaviv_sched.c
> > index 1ae87dfd19c4..8486a2923f1b 100644
> > --- a/drivers/gpu/drm/etnaviv/etnaviv_sched.c
> > +++ b/drivers/gpu/drm/etnaviv/etnaviv_sched.c
> > @@ -133,7 +133,7 @@ int etnaviv_sched_init(struct etnaviv_gpu *gpu)
> >   {
> >   	int ret;
> > -	ret = drm_sched_init(&gpu->sched, &etnaviv_sched_ops,
> > +	ret = drm_sched_init(&gpu->sched, &etnaviv_sched_ops, NULL,
> >   			     etnaviv_hw_jobs_limit, etnaviv_job_hang_limit,
> >   			     msecs_to_jiffies(500), NULL, NULL,
> >   			     dev_name(gpu->dev), gpu->dev);
> > diff --git a/drivers/gpu/drm/lima/lima_sched.c b/drivers/gpu/drm/lima/lima_sched.c
> > index ff003403fbbc..54f53bece27c 100644
> > --- a/drivers/gpu/drm/lima/lima_sched.c
> > +++ b/drivers/gpu/drm/lima/lima_sched.c
> > @@ -488,7 +488,7 @@ int lima_sched_pipe_init(struct lima_sched_pipe *pipe, const char *name)
> >   	INIT_WORK(&pipe->recover_work, lima_sched_recover_work);
> > -	return drm_sched_init(&pipe->base, &lima_sched_ops, 1,
> > +	return drm_sched_init(&pipe->base, &lima_sched_ops, NULL, 1,
> >   			      lima_job_hang_limit,
> >   			      msecs_to_jiffies(timeout), NULL,
> >   			      NULL, name, pipe->ldev->dev);
> > diff --git a/drivers/gpu/drm/msm/msm_ringbuffer.c b/drivers/gpu/drm/msm/msm_ringbuffer.c
> > index b60199184409..e1cff31f147a 100644
> > --- a/drivers/gpu/drm/msm/msm_ringbuffer.c
> > +++ b/drivers/gpu/drm/msm/msm_ringbuffer.c
> > @@ -93,9 +93,10 @@ struct msm_ringbuffer *msm_ringbuffer_new(struct msm_gpu *gpu, int id,
> >   	 /* currently managing hangcheck ourselves: */
> >   	sched_timeout = MAX_SCHEDULE_TIMEOUT;
> > -	ret = drm_sched_init(&ring->sched, &msm_sched_ops,
> > -			num_hw_submissions, 0, sched_timeout,
> > -			NULL, NULL, to_msm_bo(ring->bo)->name, gpu->dev->dev);
> > +	ret = drm_sched_init(&ring->sched, &msm_sched_ops, NULL,
> > +			     num_hw_submissions, 0, sched_timeout,
> > +			     NULL, NULL, to_msm_bo(ring->bo)->name,
> > +			     gpu->dev->dev);
> >   	if (ret) {
> >   		goto fail;
> >   	}
> > diff --git a/drivers/gpu/drm/panfrost/panfrost_job.c b/drivers/gpu/drm/panfrost/panfrost_job.c
> > index dbc597ab46fb..f48b07056a16 100644
> > --- a/drivers/gpu/drm/panfrost/panfrost_job.c
> > +++ b/drivers/gpu/drm/panfrost/panfrost_job.c
> > @@ -815,7 +815,7 @@ int panfrost_job_init(struct panfrost_device *pfdev)
> >   		js->queue[j].fence_context = dma_fence_context_alloc(1);
> >   		ret = drm_sched_init(&js->queue[j].sched,
> > -				     &panfrost_sched_ops,
> > +				     &panfrost_sched_ops, NULL,
> >   				     nentries, 0,
> >   				     msecs_to_jiffies(JOB_TIMEOUT_MS),
> >   				     pfdev->reset.wq,
> > diff --git a/drivers/gpu/drm/scheduler/sched_main.c b/drivers/gpu/drm/scheduler/sched_main.c
> > index db70a57a3a1a..6bc29d509161 100644
> > --- a/drivers/gpu/drm/scheduler/sched_main.c
> > +++ b/drivers/gpu/drm/scheduler/sched_main.c
> > @@ -1178,6 +1178,7 @@ static void drm_sched_main(struct work_struct *w)
> >    *
> >    * @sched: scheduler instance
> >    * @ops: backend operations for this scheduler
> > + * @run_wq: workqueue to use for run work. If NULL, the system_wq is used
> >    * @hw_submission: number of hw submissions that can be in flight
> >    * @hang_limit: number of times to allow a job to hang before dropping it
> >    * @timeout: timeout value in jiffies for the scheduler
> > @@ -1191,6 +1192,7 @@ static void drm_sched_main(struct work_struct *w)
> >    */
> >   int drm_sched_init(struct drm_gpu_scheduler *sched,
> >   		   const struct drm_sched_backend_ops *ops,
> > +		   struct workqueue_struct *run_wq,
> >   		   unsigned hw_submission, unsigned hang_limit,
> >   		   long timeout, struct workqueue_struct *timeout_wq,
> >   		   atomic_t *score, const char *name, struct device *dev)
> > @@ -1199,9 +1201,9 @@ int drm_sched_init(struct drm_gpu_scheduler *sched,
> >   	sched->ops = ops;
> >   	sched->hw_submission_limit = hw_submission;
> >   	sched->name = name;
> > +	sched->run_wq = run_wq ? : system_wq;
> >   	sched->timeout = timeout;
> >   	sched->timeout_wq = timeout_wq ? : system_wq;
> > -	sched->run_wq = system_wq;	/* FIXME: Let user pass this in */
> >   	sched->hang_limit = hang_limit;
> >   	sched->score = score ? score : &sched->_score;
> >   	sched->dev = dev;
> > diff --git a/drivers/gpu/drm/v3d/v3d_sched.c b/drivers/gpu/drm/v3d/v3d_sched.c
> > index 06238e6d7f5c..38e092ea41e6 100644
> > --- a/drivers/gpu/drm/v3d/v3d_sched.c
> > +++ b/drivers/gpu/drm/v3d/v3d_sched.c
> > @@ -388,7 +388,7 @@ v3d_sched_init(struct v3d_dev *v3d)
> >   	int ret;
> >   	ret = drm_sched_init(&v3d->queue[V3D_BIN].sched,
> > -			     &v3d_bin_sched_ops,
> > +			     &v3d_bin_sched_ops, NULL,
> >   			     hw_jobs_limit, job_hang_limit,
> >   			     msecs_to_jiffies(hang_limit_ms), NULL,
> >   			     NULL, "v3d_bin", v3d->drm.dev);
> > @@ -396,7 +396,7 @@ v3d_sched_init(struct v3d_dev *v3d)
> >   		return ret;
> >   	ret = drm_sched_init(&v3d->queue[V3D_RENDER].sched,
> > -			     &v3d_render_sched_ops,
> > +			     &v3d_render_sched_ops, NULL,
> >   			     hw_jobs_limit, job_hang_limit,
> >   			     msecs_to_jiffies(hang_limit_ms), NULL,
> >   			     NULL, "v3d_render", v3d->drm.dev);
> > @@ -404,7 +404,7 @@ v3d_sched_init(struct v3d_dev *v3d)
> >   		goto fail;
> >   	ret = drm_sched_init(&v3d->queue[V3D_TFU].sched,
> > -			     &v3d_tfu_sched_ops,
> > +			     &v3d_tfu_sched_ops, NULL,
> >   			     hw_jobs_limit, job_hang_limit,
> >   			     msecs_to_jiffies(hang_limit_ms), NULL,
> >   			     NULL, "v3d_tfu", v3d->drm.dev);
> > @@ -413,7 +413,7 @@ v3d_sched_init(struct v3d_dev *v3d)
> >   	if (v3d_has_csd(v3d)) {
> >   		ret = drm_sched_init(&v3d->queue[V3D_CSD].sched,
> > -				     &v3d_csd_sched_ops,
> > +				     &v3d_csd_sched_ops, NULL,
> >   				     hw_jobs_limit, job_hang_limit,
> >   				     msecs_to_jiffies(hang_limit_ms), NULL,
> >   				     NULL, "v3d_csd", v3d->drm.dev);
> > @@ -421,7 +421,7 @@ v3d_sched_init(struct v3d_dev *v3d)
> >   			goto fail;
> >   		ret = drm_sched_init(&v3d->queue[V3D_CACHE_CLEAN].sched,
> > -				     &v3d_cache_clean_sched_ops,
> > +				     &v3d_cache_clean_sched_ops, NULL,
> >   				     hw_jobs_limit, job_hang_limit,
> >   				     msecs_to_jiffies(hang_limit_ms), NULL,
> >   				     NULL, "v3d_cache_clean", v3d->drm.dev);
> > diff --git a/drivers/gpu/drm/xe/xe_devcoredump_types.h b/drivers/gpu/drm/xe/xe_devcoredump_types.h
> > index c0d711eb6ab3..cc3ff3ac47ff 100644
> > --- a/drivers/gpu/drm/xe/xe_devcoredump_types.h
> > +++ b/drivers/gpu/drm/xe/xe_devcoredump_types.h
> > @@ -11,6 +11,7 @@
> >   #include "xe_hw_engine_types.h"
> > +struct xe_ct;
> >   struct xe_device;
> >   /**
> > diff --git a/drivers/gpu/drm/xe/xe_execlist.c b/drivers/gpu/drm/xe/xe_execlist.c
> > index 5d2d26e361b9..f0eb8bb277ce 100644
> > --- a/drivers/gpu/drm/xe/xe_execlist.c
> > +++ b/drivers/gpu/drm/xe/xe_execlist.c
> > @@ -336,7 +336,7 @@ static int execlist_engine_init(struct xe_engine *e)
> >   	exl->engine = e;
> > -	err = drm_sched_init(&exl->sched, &drm_sched_ops,
> > +	err = drm_sched_init(&exl->sched, &drm_sched_ops, NULL,
> >   			     e->lrc[0].ring.size / MAX_JOB_SIZE_BYTES,
> >   			     XE_SCHED_HANG_LIMIT, XE_SCHED_JOB_TIMEOUT,
> >   			     NULL, NULL, e->hwe->name,
> > diff --git a/drivers/gpu/drm/xe/xe_guc_submit.c b/drivers/gpu/drm/xe/xe_guc_submit.c
> > index b209e4c2a3a9..5c9a6866bd3d 100644
> > --- a/drivers/gpu/drm/xe/xe_guc_submit.c
> > +++ b/drivers/gpu/drm/xe/xe_guc_submit.c
> > @@ -1064,7 +1064,7 @@ static int guc_engine_init(struct xe_engine *e)
> >   	init_waitqueue_head(&ge->suspend_wait);
> >   	timeout = xe_vm_no_dma_fences(e->vm) ? MAX_SCHEDULE_TIMEOUT : HZ * 5;
> > -	err = drm_sched_init(&ge->sched, &drm_sched_ops,
> > +	err = drm_sched_init(&ge->sched, &drm_sched_ops, NULL,
> >   			     e->lrc[0].ring.size / MAX_JOB_SIZE_BYTES,
> >   			     64, timeout, guc_to_gt(guc)->ordered_wq, NULL,
> >   			     e->name, gt_to_xe(e->gt)->drm.dev);
> > diff --git a/include/drm/gpu_scheduler.h b/include/drm/gpu_scheduler.h
> > index 79311df9dd09..419c0446edd7 100644
> > --- a/include/drm/gpu_scheduler.h
> > +++ b/include/drm/gpu_scheduler.h
> > @@ -547,6 +547,7 @@ struct drm_gpu_scheduler {
> >   int drm_sched_init(struct drm_gpu_scheduler *sched,
> >   		   const struct drm_sched_backend_ops *ops,
> > +		   struct workqueue_struct *run_wq,
> >   		   uint32_t hw_submission, unsigned hang_limit,
> >   		   long timeout, struct workqueue_struct *timeout_wq,
> >   		   atomic_t *score, const char *name, struct device *dev);

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

* Re: [Intel-xe] [PATCH v3 2/8] drm/sched: Move schedule policy to scheduler
  2023-06-14  8:34   ` Thomas Hellström
@ 2023-06-15  3:27     ` Matthew Brost
  0 siblings, 0 replies; 24+ messages in thread
From: Matthew Brost @ 2023-06-15  3:27 UTC (permalink / raw)
  To: Thomas Hellström; +Cc: intel-xe

On Wed, Jun 14, 2023 at 10:34:35AM +0200, Thomas Hellström wrote:
> 
> On 6/7/23 18:03, Matthew Brost wrote:
> > Rather than a global modparam for scheduling policy, move the scheduling
> > policy to scheduler so driver can control each scheduler policy. This is
> > required as it is possible in certain drivers certain scheduling polices
> > are not allow, thus the driver must set the policy rather than the
> s/allow/allowed/

Will fix.

> > modparam.
> > 
> > v2 (Thomas): Better commit message, s/scdedule/schedule/, remove extra
> > brackets
> > 
> > Signed-off-by: Matthew Brost <matthew.brost@intel.com>
> > ---
> >   drivers/gpu/drm/amd/amdgpu/amdgpu_device.c |  1 +
> >   drivers/gpu/drm/etnaviv/etnaviv_sched.c    |  3 ++-
> >   drivers/gpu/drm/lima/lima_sched.c          |  3 ++-
> >   drivers/gpu/drm/msm/msm_ringbuffer.c       |  2 +-
> >   drivers/gpu/drm/panfrost/panfrost_job.c    |  3 ++-
> >   drivers/gpu/drm/scheduler/sched_entity.c   | 24 ++++++++++++++++++----
> >   drivers/gpu/drm/scheduler/sched_main.c     | 21 ++++++++++++++-----
> >   drivers/gpu/drm/v3d/v3d_sched.c            | 15 +++++++++-----
> >   drivers/gpu/drm/xe/xe_execlist.c           |  2 +-
> >   drivers/gpu/drm/xe/xe_guc_submit.c         |  3 ++-
> >   include/drm/gpu_scheduler.h                | 20 ++++++++++++------
> >   11 files changed, 71 insertions(+), 26 deletions(-)
> > 
> > diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
> > index 2e776ece4251..75ab8b9c7b25 100644
> > --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
> > +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
> > @@ -2368,6 +2368,7 @@ static int amdgpu_device_init_schedulers(struct amdgpu_device *adev)
> >   				   ring->num_hw_submission, 0,
> >   				   timeout, adev->reset_domain->wq,
> >   				   ring->sched_score, ring->name,
> > +				   DRM_SCHED_POLICY_DEFAULT,
> >   				   adev->dev);
> >   		if (r) {
> >   			DRM_ERROR("Failed to create scheduler on ring %s.\n",
> > diff --git a/drivers/gpu/drm/etnaviv/etnaviv_sched.c b/drivers/gpu/drm/etnaviv/etnaviv_sched.c
> > index 8486a2923f1b..61204a3f8b0b 100644
> > --- a/drivers/gpu/drm/etnaviv/etnaviv_sched.c
> > +++ b/drivers/gpu/drm/etnaviv/etnaviv_sched.c
> > @@ -136,7 +136,8 @@ int etnaviv_sched_init(struct etnaviv_gpu *gpu)
> >   	ret = drm_sched_init(&gpu->sched, &etnaviv_sched_ops, NULL,
> >   			     etnaviv_hw_jobs_limit, etnaviv_job_hang_limit,
> >   			     msecs_to_jiffies(500), NULL, NULL,
> > -			     dev_name(gpu->dev), gpu->dev);
> > +			     dev_name(gpu->dev), DRM_SCHED_POLICY_DEFAULT,
> > +			     gpu->dev);
> >   	if (ret)
> >   		return ret;
> > diff --git a/drivers/gpu/drm/lima/lima_sched.c b/drivers/gpu/drm/lima/lima_sched.c
> > index 54f53bece27c..33042ba6ae93 100644
> > --- a/drivers/gpu/drm/lima/lima_sched.c
> > +++ b/drivers/gpu/drm/lima/lima_sched.c
> > @@ -491,7 +491,8 @@ int lima_sched_pipe_init(struct lima_sched_pipe *pipe, const char *name)
> >   	return drm_sched_init(&pipe->base, &lima_sched_ops, NULL, 1,
> >   			      lima_job_hang_limit,
> >   			      msecs_to_jiffies(timeout), NULL,
> > -			      NULL, name, pipe->ldev->dev);
> > +			      NULL, name, DRM_SCHED_POLICY_DEFAULT,
> > +			      pipe->ldev->dev);
> >   }
> >   void lima_sched_pipe_fini(struct lima_sched_pipe *pipe)
> > diff --git a/drivers/gpu/drm/msm/msm_ringbuffer.c b/drivers/gpu/drm/msm/msm_ringbuffer.c
> > index e1cff31f147a..0d1e7a4414e8 100644
> > --- a/drivers/gpu/drm/msm/msm_ringbuffer.c
> > +++ b/drivers/gpu/drm/msm/msm_ringbuffer.c
> > @@ -96,7 +96,7 @@ struct msm_ringbuffer *msm_ringbuffer_new(struct msm_gpu *gpu, int id,
> >   	ret = drm_sched_init(&ring->sched, &msm_sched_ops, NULL,
> >   			     num_hw_submissions, 0, sched_timeout,
> >   			     NULL, NULL, to_msm_bo(ring->bo)->name,
> > -			     gpu->dev->dev);
> > +			     DRM_SCHED_POLICY_DEFAULT, gpu->dev->dev);
> >   	if (ret) {
> >   		goto fail;
> >   	}
> > diff --git a/drivers/gpu/drm/panfrost/panfrost_job.c b/drivers/gpu/drm/panfrost/panfrost_job.c
> > index f48b07056a16..effa48b33dce 100644
> > --- a/drivers/gpu/drm/panfrost/panfrost_job.c
> > +++ b/drivers/gpu/drm/panfrost/panfrost_job.c
> > @@ -819,7 +819,8 @@ int panfrost_job_init(struct panfrost_device *pfdev)
> >   				     nentries, 0,
> >   				     msecs_to_jiffies(JOB_TIMEOUT_MS),
> >   				     pfdev->reset.wq,
> > -				     NULL, "pan_js", pfdev->dev);
> > +				     NULL, "pan_js", DRM_SCHED_POLICY_DEFAULT,
> > +				     pfdev->dev);
> >   		if (ret) {
> >   			dev_err(pfdev->dev, "Failed to create scheduler: %d.", ret);
> >   			goto err_sched;
> > diff --git a/drivers/gpu/drm/scheduler/sched_entity.c b/drivers/gpu/drm/scheduler/sched_entity.c
> > index cfb433e92005..e1838e328de8 100644
> > --- a/drivers/gpu/drm/scheduler/sched_entity.c
> > +++ b/drivers/gpu/drm/scheduler/sched_entity.c
> > @@ -33,6 +33,20 @@
> >   #define to_drm_sched_job(sched_job)		\
> >   		container_of((sched_job), struct drm_sched_job, queue_node)
> > +static bool bad_policies(struct drm_gpu_scheduler **sched_list,
> > +			 unsigned int num_sched_list)
> > +{
> > +	enum drm_sched_policy sched_policy = sched_list[0]->sched_policy;
> > +	unsigned int i;
> > +
> > +	/* All schedule policies must match */
> > +	for (i = 1; i < num_sched_list; ++i)
> > +		if (sched_policy != sched_list[i]->sched_policy)
> > +			return true;
> > +
> > +	return false;
> > +}
> > +
> >   /**
> >    * drm_sched_entity_init - Init a context entity used by scheduler when
> >    * submit to HW ring.
> > @@ -62,7 +76,8 @@ int drm_sched_entity_init(struct drm_sched_entity *entity,
> >   			  unsigned int num_sched_list,
> >   			  atomic_t *guilty)
> >   {
> > -	if (!(entity && sched_list && (num_sched_list == 0 || sched_list[0])))
> > +	if (!(entity && sched_list && (num_sched_list == 0 || sched_list[0])) ||
> > +	    bad_policies(sched_list, num_sched_list))
> >   		return -EINVAL;
> >   	memset(entity, 0, sizeof(struct drm_sched_entity));
> > @@ -461,7 +476,7 @@ struct drm_sched_job *drm_sched_entity_pop_job(struct drm_sched_entity *entity)
> >   	 * Update the entity's location in the min heap according to
> >   	 * the timestamp of the next job, if any.
> >   	 */
> > -	if (drm_sched_policy == DRM_SCHED_POLICY_FIFO) {
> > +	if (entity->rq->sched->sched_policy == DRM_SCHED_POLICY_FIFO) {
> >   		struct drm_sched_job *next;
> >   		next = to_drm_sched_job(spsc_queue_peek(&entity->job_queue));
> > @@ -533,7 +548,8 @@ void drm_sched_entity_select_rq(struct drm_sched_entity *entity)
> >   void drm_sched_entity_push_job(struct drm_sched_job *sched_job)
> >   {
> >   	struct drm_sched_entity *entity = sched_job->entity;
> > -	bool first;
> > +	bool first, fifo = entity->rq->sched->sched_policy ==
> > +		DRM_SCHED_POLICY_FIFO;
> >   	ktime_t submit_ts;
> >   	trace_drm_sched_job(sched_job, entity);
> > @@ -562,7 +578,7 @@ void drm_sched_entity_push_job(struct drm_sched_job *sched_job)
> >   		drm_sched_rq_add_entity(entity->rq, entity);
> >   		spin_unlock(&entity->rq_lock);
> > -		if (drm_sched_policy == DRM_SCHED_POLICY_FIFO)
> > +		if (fifo)
> >   			drm_sched_rq_update_fifo(entity, submit_ts);
> >   		drm_sched_wakeup(entity->rq->sched);
> > diff --git a/drivers/gpu/drm/scheduler/sched_main.c b/drivers/gpu/drm/scheduler/sched_main.c
> > index 6bc29d509161..ead122e99d00 100644
> > --- a/drivers/gpu/drm/scheduler/sched_main.c
> > +++ b/drivers/gpu/drm/scheduler/sched_main.c
> > @@ -66,14 +66,14 @@
> >   #define to_drm_sched_job(sched_job)		\
> >   		container_of((sched_job), struct drm_sched_job, queue_node)
> > -int drm_sched_policy = DRM_SCHED_POLICY_FIFO;
> > +int default_drm_sched_policy = DRM_SCHED_POLICY_FIFO;
> >   /**
> >    * DOC: sched_policy (int)
> >    * Used to override default entities scheduling policy in a run queue.
> >    */
> >   MODULE_PARM_DESC(sched_policy, "Specify the scheduling policy for entities on a run-queue, " __stringify(DRM_SCHED_POLICY_RR) " = Round Robin, " __stringify(DRM_SCHED_POLICY_FIFO) " = FIFO (default).");
> Does the description above need updating to "Specify the default
> scheduling..."?

Yep, will update.

Matt

> > -module_param_named(sched_policy, drm_sched_policy, int, 0444);
> > +module_param_named(sched_policy, default_drm_sched_policy, int, 0444);
> >   static __always_inline bool drm_sched_entity_compare_before(struct rb_node *a,
> >   							    const struct rb_node *b)
> > @@ -177,7 +177,7 @@ void drm_sched_rq_remove_entity(struct drm_sched_rq *rq,
> >   	if (rq->current_entity == entity)
> >   		rq->current_entity = NULL;
> > -	if (drm_sched_policy == DRM_SCHED_POLICY_FIFO)
> > +	if (rq->sched->sched_policy == DRM_SCHED_POLICY_FIFO)
> >   		drm_sched_rq_remove_fifo_locked(entity);
> >   	spin_unlock(&rq->lock);
> > @@ -961,7 +961,7 @@ drm_sched_select_entity(struct drm_gpu_scheduler *sched)
> >   	/* Kernel run queue has higher priority than normal run queue*/
> >   	for (i = DRM_SCHED_PRIORITY_COUNT - 1; i >= DRM_SCHED_PRIORITY_MIN; i--) {
> > -		entity = drm_sched_policy == DRM_SCHED_POLICY_FIFO ?
> > +		entity = sched->sched_policy == DRM_SCHED_POLICY_FIFO ?
> >   			drm_sched_rq_select_entity_fifo(&sched->sched_rq[i]) :
> >   			drm_sched_rq_select_entity_rr(&sched->sched_rq[i]);
> >   		if (entity)
> > @@ -1186,6 +1186,7 @@ static void drm_sched_main(struct work_struct *w)
> >    *		used
> >    * @score: optional score atomic shared with other schedulers
> >    * @name: name used for debugging
> > + * @sched_policy: schedule policy
> >    * @dev: target &struct device
> >    *
> >    * Return 0 on success, otherwise error code.
> > @@ -1195,9 +1196,15 @@ int drm_sched_init(struct drm_gpu_scheduler *sched,
> >   		   struct workqueue_struct *run_wq,
> >   		   unsigned hw_submission, unsigned hang_limit,
> >   		   long timeout, struct workqueue_struct *timeout_wq,
> > -		   atomic_t *score, const char *name, struct device *dev)
> > +		   atomic_t *score, const char *name,
> > +		   enum drm_sched_policy sched_policy,
> > +		   struct device *dev)
> >   {
> >   	int i;
> > +
> > +	if (sched_policy >= DRM_SCHED_POLICY_COUNT)
> > +		return -EINVAL;
> > +
> >   	sched->ops = ops;
> >   	sched->hw_submission_limit = hw_submission;
> >   	sched->name = name;
> > @@ -1207,6 +1214,10 @@ int drm_sched_init(struct drm_gpu_scheduler *sched,
> >   	sched->hang_limit = hang_limit;
> >   	sched->score = score ? score : &sched->_score;
> >   	sched->dev = dev;
> > +	if (sched_policy == DRM_SCHED_POLICY_DEFAULT)
> > +		sched->sched_policy = default_drm_sched_policy;
> > +	else
> > +		sched->sched_policy = sched_policy;
> >   	for (i = DRM_SCHED_PRIORITY_MIN; i < DRM_SCHED_PRIORITY_COUNT; i++)
> >   		drm_sched_rq_init(sched, &sched->sched_rq[i]);
> > diff --git a/drivers/gpu/drm/v3d/v3d_sched.c b/drivers/gpu/drm/v3d/v3d_sched.c
> > index 38e092ea41e6..5e3fe77fa991 100644
> > --- a/drivers/gpu/drm/v3d/v3d_sched.c
> > +++ b/drivers/gpu/drm/v3d/v3d_sched.c
> > @@ -391,7 +391,8 @@ v3d_sched_init(struct v3d_dev *v3d)
> >   			     &v3d_bin_sched_ops, NULL,
> >   			     hw_jobs_limit, job_hang_limit,
> >   			     msecs_to_jiffies(hang_limit_ms), NULL,
> > -			     NULL, "v3d_bin", v3d->drm.dev);
> > +			     NULL, "v3d_bin", DRM_SCHED_POLICY_DEFAULT,
> > +			     v3d->drm.dev);
> >   	if (ret)
> >   		return ret;
> > @@ -399,7 +400,8 @@ v3d_sched_init(struct v3d_dev *v3d)
> >   			     &v3d_render_sched_ops, NULL,
> >   			     hw_jobs_limit, job_hang_limit,
> >   			     msecs_to_jiffies(hang_limit_ms), NULL,
> > -			     NULL, "v3d_render", v3d->drm.dev);
> > +			     ULL, "v3d_render", DRM_SCHED_POLICY_DEFAULT,
> > +			     v3d->drm.dev);
> >   	if (ret)
> >   		goto fail;
> > @@ -407,7 +409,8 @@ v3d_sched_init(struct v3d_dev *v3d)
> >   			     &v3d_tfu_sched_ops, NULL,
> >   			     hw_jobs_limit, job_hang_limit,
> >   			     msecs_to_jiffies(hang_limit_ms), NULL,
> > -			     NULL, "v3d_tfu", v3d->drm.dev);
> > +			     NULL, "v3d_tfu", DRM_SCHED_POLICY_DEFAULT,
> > +			     v3d->drm.dev);
> >   	if (ret)
> >   		goto fail;
> > @@ -416,7 +419,8 @@ v3d_sched_init(struct v3d_dev *v3d)
> >   				     &v3d_csd_sched_ops, NULL,
> >   				     hw_jobs_limit, job_hang_limit,
> >   				     msecs_to_jiffies(hang_limit_ms), NULL,
> > -				     NULL, "v3d_csd", v3d->drm.dev);
> > +				     NULL, "v3d_csd", DRM_SCHED_POLICY_DEFAULT,
> > +				     v3d->drm.dev);
> >   		if (ret)
> >   			goto fail;
> > @@ -424,7 +428,8 @@ v3d_sched_init(struct v3d_dev *v3d)
> >   				     &v3d_cache_clean_sched_ops, NULL,
> >   				     hw_jobs_limit, job_hang_limit,
> >   				     msecs_to_jiffies(hang_limit_ms), NULL,
> > -				     NULL, "v3d_cache_clean", v3d->drm.dev);
> > +				     NULL, "v3d_cache_clean",
> > +				     DRM_SCHED_POLICY_DEFAULT, v3d->drm.dev);
> >   		if (ret)
> >   			goto fail;
> >   	}
> > diff --git a/drivers/gpu/drm/xe/xe_execlist.c b/drivers/gpu/drm/xe/xe_execlist.c
> > index f0eb8bb277ce..944dad79a037 100644
> > --- a/drivers/gpu/drm/xe/xe_execlist.c
> > +++ b/drivers/gpu/drm/xe/xe_execlist.c
> > @@ -339,7 +339,7 @@ static int execlist_engine_init(struct xe_engine *e)
> >   	err = drm_sched_init(&exl->sched, &drm_sched_ops, NULL,
> >   			     e->lrc[0].ring.size / MAX_JOB_SIZE_BYTES,
> >   			     XE_SCHED_HANG_LIMIT, XE_SCHED_JOB_TIMEOUT,
> > -			     NULL, NULL, e->hwe->name,
> > +			     NULL, NULL, e->hwe->name, DRM_SCHED_POLICY_DEFAULT,
> >   			     gt_to_xe(e->gt)->drm.dev);
> >   	if (err)
> >   		goto err_free;
> > diff --git a/drivers/gpu/drm/xe/xe_guc_submit.c b/drivers/gpu/drm/xe/xe_guc_submit.c
> > index 5c9a6866bd3d..c147b17690dd 100644
> > --- a/drivers/gpu/drm/xe/xe_guc_submit.c
> > +++ b/drivers/gpu/drm/xe/xe_guc_submit.c
> > @@ -1067,7 +1067,8 @@ static int guc_engine_init(struct xe_engine *e)
> >   	err = drm_sched_init(&ge->sched, &drm_sched_ops, NULL,
> >   			     e->lrc[0].ring.size / MAX_JOB_SIZE_BYTES,
> >   			     64, timeout, guc_to_gt(guc)->ordered_wq, NULL,
> > -			     e->name, gt_to_xe(e->gt)->drm.dev);
> > +			     e->name, DRM_SCHED_POLICY_DEFAULT,
> > +			     gt_to_xe(e->gt)->drm.dev);
> >   	if (err)
> >   		goto err_free;
> > diff --git a/include/drm/gpu_scheduler.h b/include/drm/gpu_scheduler.h
> > index 419c0446edd7..929d0d567a0b 100644
> > --- a/include/drm/gpu_scheduler.h
> > +++ b/include/drm/gpu_scheduler.h
> > @@ -72,11 +72,15 @@ enum drm_sched_priority {
> >   	DRM_SCHED_PRIORITY_UNSET = -2
> >   };
> > -/* Used to chose between FIFO and RR jobs scheduling */
> > -extern int drm_sched_policy;
> > -
> > -#define DRM_SCHED_POLICY_RR    0
> > -#define DRM_SCHED_POLICY_FIFO  1
> > +/* Used to chose default scheduling policy*/
> > +extern int default_drm_sched_policy;
> > +
> > +enum drm_sched_policy {
> > +	DRM_SCHED_POLICY_DEFAULT,
> > +	DRM_SCHED_POLICY_RR,
> > +	DRM_SCHED_POLICY_FIFO,
> > +	DRM_SCHED_POLICY_COUNT,
> > +};
> >   /**
> >    * struct drm_sched_entity - A wrapper around a job queue (typically
> > @@ -513,6 +517,7 @@ struct drm_sched_backend_ops {
> >    *              guilty and it will no longer be considered for scheduling.
> >    * @score: score to help loadbalancer pick a idle sched
> >    * @_score: score used when the driver doesn't provide one
> > + * @sched_policy: Schedule policy for scheduler
> >    * @ready: marks if the underlying HW is ready to work
> >    * @free_guilty: A hit to time out handler to free the guilty job.
> >    * @pause_run_wq: pause queuing of @work_run on @run_wq
> > @@ -539,6 +544,7 @@ struct drm_gpu_scheduler {
> >   	int				hang_limit;
> >   	atomic_t                        *score;
> >   	atomic_t                        _score;
> > +	enum drm_sched_policy		sched_policy;
> >   	bool				ready;
> >   	bool				free_guilty;
> >   	bool				pause_run_wq;
> > @@ -550,7 +556,9 @@ int drm_sched_init(struct drm_gpu_scheduler *sched,
> >   		   struct workqueue_struct *run_wq,
> >   		   uint32_t hw_submission, unsigned hang_limit,
> >   		   long timeout, struct workqueue_struct *timeout_wq,
> > -		   atomic_t *score, const char *name, struct device *dev);
> > +		   atomic_t *score, const char *name,
> > +		   enum drm_sched_policy sched_policy,
> > +		   struct device *dev);
> >   void drm_sched_fini(struct drm_gpu_scheduler *sched);
> >   int drm_sched_job_init(struct drm_sched_job *job,

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

end of thread, other threads:[~2023-06-15  3:28 UTC | newest]

Thread overview: 24+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-06-07 16:03 [Intel-xe] [PATCH v3 0/8] Scheduler changes for upstreaming Matthew Brost
2023-06-07 16:03 ` [Intel-xe] [PATCH v3 1/8] fixup! drm/sched: Convert drm scheduler to use a work queue rather than kthread Matthew Brost
2023-06-14  8:29   ` Thomas Hellström
2023-06-15  3:26     ` Matthew Brost
2023-06-07 16:03 ` [Intel-xe] [PATCH v3 2/8] drm/sched: Move schedule policy to scheduler Matthew Brost
2023-06-14  8:34   ` Thomas Hellström
2023-06-15  3:27     ` Matthew Brost
2023-06-07 16:03 ` [Intel-xe] [PATCH v3 3/8] drm/sched: Add DRM_SCHED_POLICY_SINGLE_ENTITY scheduling policy Matthew Brost
2023-06-07 16:03 ` [Intel-xe] [PATCH v3 4/8] drm/xe: Use DRM_SCHED_POLICY_SINGLE_ENTITY mode Matthew Brost
2023-06-07 16:03 ` [Intel-xe] [PATCH v3 5/8] drm/xe: Long running job update Matthew Brost
2023-06-14 11:40   ` Thomas Hellström
2023-06-15  3:22     ` Matthew Brost
2023-06-07 16:03 ` [Intel-xe] [PATCH v3 6/8] drm/xe: Ensure LR engines are not persistent Matthew Brost
2023-06-07 16:03 ` [Intel-xe] [PATCH v3 7/8] drm/xe: Only try to lock external BOs in VM bind Matthew Brost
2023-06-14 11:46   ` Thomas Hellström
2023-06-07 16:03 ` [Intel-xe] [PATCH v3 8/8] drm/xe: VM LRU bulk move Matthew Brost
2023-06-14 11:50   ` Thomas Hellström
2023-06-07 16:15 ` [Intel-xe] ✓ CI.Patch_applied: success for Scheduler changes for upstreaming (rev4) Patchwork
2023-06-07 16:16 ` [Intel-xe] ✗ CI.checkpatch: warning " Patchwork
2023-06-07 16:17 ` [Intel-xe] ✓ CI.KUnit: success " Patchwork
2023-06-07 16:21 ` [Intel-xe] ✓ CI.Build: " Patchwork
2023-06-07 16:21 ` [Intel-xe] ✓ CI.Hooks: " Patchwork
2023-06-07 16:22 ` [Intel-xe] ✓ CI.checksparse: " Patchwork
2023-06-07 16:57 ` [Intel-xe] ○ CI.BAT: info " Patchwork

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.