public inbox for igt-dev@lists.freedesktop.org
 help / color / mirror / Atom feed
* [igt-dev] [PATCH 1/9] lib/amdgpu: add SPDX-License-Identifier: MIT
@ 2022-11-11 21:52 vitaly.prosyak
  2022-11-11 21:52 ` [igt-dev] [PATCH 2/9] lib/amdgpu: add predefined constants for PM4 and SDMA vitaly.prosyak
                   ` (10 more replies)
  0 siblings, 11 replies; 13+ messages in thread
From: vitaly.prosyak @ 2022-11-11 21:52 UTC (permalink / raw)
  To: igt-dev; +Cc: Pierre-eric Pelloux-prayer, marek.olsak, christian.koenig

From: Vitaly Prosyak <vitaly.prosyak@amd.com>

Signed-off-by: Vitaly Prosyak <vitaly.prosyak@amd.com>
Reviewed-by: Pierre-eric Pelloux-prayer <Pierre-eric.Pelloux-prayer@amd.com>
---
 lib/amdgpu/amd_PM4.h                | 2 +-
 lib/amdgpu/amd_command_submission.c | 2 +-
 lib/amdgpu/amd_command_submission.h | 2 +-
 lib/amdgpu/amd_compute.c            | 2 +-
 lib/amdgpu/amd_compute.h            | 2 +-
 lib/amdgpu/amd_dispatch.c           | 2 +-
 lib/amdgpu/amd_dispatch.h           | 2 +-
 lib/amdgpu/amd_dispatch_helpers.c   | 2 +-
 lib/amdgpu/amd_dispatch_helpers.h   | 2 +-
 lib/amdgpu/amd_family.h             | 2 +-
 lib/amdgpu/amd_gfx.c                | 2 +-
 lib/amdgpu/amd_gfx.h                | 2 +-
 lib/amdgpu/amd_gfx_v8_0.c           | 2 +-
 lib/amdgpu/amd_gfx_v8_0.h           | 2 +-
 lib/amdgpu/amd_gfx_v9_0.c           | 2 +-
 lib/amdgpu/amd_gfx_v9_0.h           | 2 +-
 lib/amdgpu/amd_ip_blocks.c          | 2 +-
 lib/amdgpu/amd_ip_blocks.h          | 2 +-
 lib/amdgpu/amd_memory.c             | 2 +-
 lib/amdgpu/amd_memory.h             | 2 +-
 lib/amdgpu/amd_registers.h          | 2 +-
 lib/amdgpu/amd_sdma.h               | 2 +-
 lib/amdgpu/amd_shaders.c            | 2 +-
 lib/amdgpu/amd_shaders.h            | 2 +-
 lib/amdgpu/amd_shared_dispatch.h    | 2 +-
 lib/amdgpu/amdgpu_asic_addr.h       | 2 +-
 tests/amdgpu/amd_basic.c            | 2 +-
 tests/amdgpu/amd_deadlock.c         | 2 +-
 28 files changed, 28 insertions(+), 28 deletions(-)

diff --git a/lib/amdgpu/amd_PM4.h b/lib/amdgpu/amd_PM4.h
index 0588b4258..ec4de1f62 100644
--- a/lib/amdgpu/amd_PM4.h
+++ b/lib/amdgpu/amd_PM4.h
@@ -1,4 +1,4 @@
-/*
+/* SPDX-License-Identifier: MIT
  * Copyright 2014 Advanced Micro Devices, Inc.
  * Copyright 2022 Advanced Micro Devices, Inc.
  *
diff --git a/lib/amdgpu/amd_command_submission.c b/lib/amdgpu/amd_command_submission.c
index 16939653b..de393209b 100644
--- a/lib/amdgpu/amd_command_submission.c
+++ b/lib/amdgpu/amd_command_submission.c
@@ -1,4 +1,4 @@
-/*
+/* SPDX-License-Identifier: MIT
  * Copyright 2014 Advanced Micro Devices, Inc.
  * Copyright 2022 Advanced Micro Devices, Inc.
  *
diff --git a/lib/amdgpu/amd_command_submission.h b/lib/amdgpu/amd_command_submission.h
index 0df7c2c1c..0c1ba9bb4 100644
--- a/lib/amdgpu/amd_command_submission.h
+++ b/lib/amdgpu/amd_command_submission.h
@@ -1,4 +1,4 @@
-/*
+/* SPDX-License-Identifier: MIT
  * Copyright 2012 Advanced Micro Devices, Inc.
  * Copyright 2022 Advanced Micro Devices, Inc.
  *
diff --git a/lib/amdgpu/amd_compute.c b/lib/amdgpu/amd_compute.c
index 5a7fa27e4..6e61f1820 100644
--- a/lib/amdgpu/amd_compute.c
+++ b/lib/amdgpu/amd_compute.c
@@ -1,4 +1,4 @@
-/*
+/* SPDX-License-Identifier: MIT
  * Copyright 2014 Advanced Micro Devices, Inc.
  * Copyright 2022 Advanced Micro Devices, Inc.
  *
diff --git a/lib/amdgpu/amd_compute.h b/lib/amdgpu/amd_compute.h
index 01eee6063..f27be5f17 100644
--- a/lib/amdgpu/amd_compute.h
+++ b/lib/amdgpu/amd_compute.h
@@ -1,4 +1,4 @@
-/*
+/* SPDX-License-Identifier: MIT
  * Copyright 2014 Advanced Micro Devices, Inc.
  * Copyright 2022 Advanced Micro Devices, Inc.
  *
diff --git a/lib/amdgpu/amd_dispatch.c b/lib/amdgpu/amd_dispatch.c
index cf773c309..863786c59 100644
--- a/lib/amdgpu/amd_dispatch.c
+++ b/lib/amdgpu/amd_dispatch.c
@@ -1,4 +1,4 @@
-/*
+/* SPDX-License-Identifier: MIT
  * Copyright 2014 Advanced Micro Devices, Inc.
  * Copyright 2022 Advanced Micro Devices, Inc.
  *  *
diff --git a/lib/amdgpu/amd_dispatch.h b/lib/amdgpu/amd_dispatch.h
index 1905a5562..c500b5b3f 100644
--- a/lib/amdgpu/amd_dispatch.h
+++ b/lib/amdgpu/amd_dispatch.h
@@ -1,4 +1,4 @@
-/*
+/* SPDX-License-Identifier: MIT
  * Copyright 2022 Advanced Micro Devices, Inc.
  *
  * Permission is hereby granted, free of charge, to any person obtaining a
diff --git a/lib/amdgpu/amd_dispatch_helpers.c b/lib/amdgpu/amd_dispatch_helpers.c
index 3eddae968..8f06d841d 100644
--- a/lib/amdgpu/amd_dispatch_helpers.c
+++ b/lib/amdgpu/amd_dispatch_helpers.c
@@ -1,4 +1,4 @@
-/*
+/* SPDX-License-Identifier: MIT
  * Copyright 2014 Advanced Micro Devices, Inc.
  * Copyright 2022 Advanced Micro Devices, Inc.
  *  *
diff --git a/lib/amdgpu/amd_dispatch_helpers.h b/lib/amdgpu/amd_dispatch_helpers.h
index bea0c4248..a129e8e07 100644
--- a/lib/amdgpu/amd_dispatch_helpers.h
+++ b/lib/amdgpu/amd_dispatch_helpers.h
@@ -1,4 +1,4 @@
-/*
+/* SPDX-License-Identifier: MIT
  * Copyright 2022 Advanced Micro Devices, Inc.
  *
  * Permission is hereby granted, free of charge, to any person obtaining a
diff --git a/lib/amdgpu/amd_family.h b/lib/amdgpu/amd_family.h
index 206824837..25c2c7db9 100644
--- a/lib/amdgpu/amd_family.h
+++ b/lib/amdgpu/amd_family.h
@@ -1,4 +1,4 @@
-/*
+/* SPDX-License-Identifier: MIT
  * Copyright 2008 Corbin Simpson <MostAwesomeDude@gmail.com>
  * Copyright 2010 Marek Olšák <maraeo@gmail.com>
  * Copyright 2022 Advanced Micro Devices, Inc.
diff --git a/lib/amdgpu/amd_gfx.c b/lib/amdgpu/amd_gfx.c
index a89ff7536..f133e2459 100644
--- a/lib/amdgpu/amd_gfx.c
+++ b/lib/amdgpu/amd_gfx.c
@@ -1,4 +1,4 @@
-/*
+/* SPDX-License-Identifier: MIT
  * Copyright 2014 Advanced Micro Devices, Inc.
  * Copyright 2022 Advanced Micro Devices, Inc.
  *  *
diff --git a/lib/amdgpu/amd_gfx.h b/lib/amdgpu/amd_gfx.h
index d9da85943..90addf5bc 100644
--- a/lib/amdgpu/amd_gfx.h
+++ b/lib/amdgpu/amd_gfx.h
@@ -1,4 +1,4 @@
-/*
+/* SPDX-License-Identifier: MIT
  * Copyright 2014 Advanced Micro Devices, Inc.
  * Copyright 2022 Advanced Micro Devices, Inc.
  *
diff --git a/lib/amdgpu/amd_gfx_v8_0.c b/lib/amdgpu/amd_gfx_v8_0.c
index 987d7053a..374a923ad 100644
--- a/lib/amdgpu/amd_gfx_v8_0.c
+++ b/lib/amdgpu/amd_gfx_v8_0.c
@@ -1,4 +1,4 @@
-/*
+/* SPDX-License-Identifier: MIT
  * Copyright 2022 Advanced Micro Devices, Inc.
  *  *
  * Permission is hereby granted, free of charge, to any person obtaining a
diff --git a/lib/amdgpu/amd_gfx_v8_0.h b/lib/amdgpu/amd_gfx_v8_0.h
index 52ed418cb..baf2e2e9c 100644
--- a/lib/amdgpu/amd_gfx_v8_0.h
+++ b/lib/amdgpu/amd_gfx_v8_0.h
@@ -1,4 +1,4 @@
-/*
+/* SPDX-License-Identifier: MIT
  * Copyright 2014 Advanced Micro Devices, Inc.
  * Copyright 2022 Advanced Micro Devices, Inc.
  *
diff --git a/lib/amdgpu/amd_gfx_v9_0.c b/lib/amdgpu/amd_gfx_v9_0.c
index 175411795..5cb436b7b 100644
--- a/lib/amdgpu/amd_gfx_v9_0.c
+++ b/lib/amdgpu/amd_gfx_v9_0.c
@@ -1,4 +1,4 @@
-/*
+/* SPDX-License-Identifier: MIT
  * Copyright 2022 Advanced Micro Devices, Inc.
  *  *
  * Permission is hereby granted, free of charge, to any person obtaining a
diff --git a/lib/amdgpu/amd_gfx_v9_0.h b/lib/amdgpu/amd_gfx_v9_0.h
index e44a7d944..bcdbf754c 100644
--- a/lib/amdgpu/amd_gfx_v9_0.h
+++ b/lib/amdgpu/amd_gfx_v9_0.h
@@ -1,4 +1,4 @@
-/*
+/* SPDX-License-Identifier: MIT
  * Copyright 2022 Advanced Micro Devices, Inc.
  *
  * Permission is hereby granted, free of charge, to any person obtaining a
diff --git a/lib/amdgpu/amd_ip_blocks.c b/lib/amdgpu/amd_ip_blocks.c
index 3e11b34d3..3d7c54a11 100644
--- a/lib/amdgpu/amd_ip_blocks.c
+++ b/lib/amdgpu/amd_ip_blocks.c
@@ -1,4 +1,4 @@
-/*
+/* SPDX-License-Identifier: MIT
  * Copyright 2014 Advanced Micro Devices, Inc.
  * Copyright 2022 Advanced Micro Devices, Inc.
  *
diff --git a/lib/amdgpu/amd_ip_blocks.h b/lib/amdgpu/amd_ip_blocks.h
index 9c24eba2a..908aacde0 100644
--- a/lib/amdgpu/amd_ip_blocks.h
+++ b/lib/amdgpu/amd_ip_blocks.h
@@ -1,4 +1,4 @@
-/*
+/* SPDX-License-Identifier: MIT
  * Copyright 2014 Advanced Micro Devices, Inc.
  * Copyright 2022 Advanced Micro Devices, Inc.
  *
diff --git a/lib/amdgpu/amd_memory.c b/lib/amdgpu/amd_memory.c
index 344551fcc..101dbaf13 100644
--- a/lib/amdgpu/amd_memory.c
+++ b/lib/amdgpu/amd_memory.c
@@ -1,4 +1,4 @@
-/*
+/* SPDX-License-Identifier: MIT
  * Copyright 2014 Advanced Micro Devices, Inc.
  * Copyright 2022 Advanced Micro Devices, Inc.
  *
diff --git a/lib/amdgpu/amd_memory.h b/lib/amdgpu/amd_memory.h
index 80bf979f4..bc3652e8e 100644
--- a/lib/amdgpu/amd_memory.h
+++ b/lib/amdgpu/amd_memory.h
@@ -1,4 +1,4 @@
-/*
+/* SPDX-License-Identifier: MIT
  * Copyright 2014 Advanced Micro Devices, Inc.
  * Copyright 2022 Advanced Micro Devices, Inc.
  *
diff --git a/lib/amdgpu/amd_registers.h b/lib/amdgpu/amd_registers.h
index a01c9a84f..ff62b8931 100644
--- a/lib/amdgpu/amd_registers.h
+++ b/lib/amdgpu/amd_registers.h
@@ -1,4 +1,4 @@
-/*
+/* SPDX-License-Identifier: MIT
  * Copyright 2022 Advanced Micro Devices, Inc.
  *
  * Permission is hereby granted, free of charge, to any person obtaining a
diff --git a/lib/amdgpu/amd_sdma.h b/lib/amdgpu/amd_sdma.h
index b8ed93aa6..630535bb1 100644
--- a/lib/amdgpu/amd_sdma.h
+++ b/lib/amdgpu/amd_sdma.h
@@ -1,4 +1,4 @@
-/*
+/* SPDX-License-Identifier: MIT
  * Copyright 2014 Advanced Micro Devices, Inc.
  * Copyright 2022 Advanced Micro Devices, Inc.
  *
diff --git a/lib/amdgpu/amd_shaders.c b/lib/amdgpu/amd_shaders.c
index 5505e504e..7672f67c0 100644
--- a/lib/amdgpu/amd_shaders.c
+++ b/lib/amdgpu/amd_shaders.c
@@ -1,4 +1,4 @@
-/*
+/* SPDX-License-Identifier: MIT
  * Copyright 2014 Advanced Micro Devices, Inc.
  * Copyright 2022 Advanced Micro Devices, Inc.
  *  *
diff --git a/lib/amdgpu/amd_shaders.h b/lib/amdgpu/amd_shaders.h
index 22fc474fc..80a319a3a 100644
--- a/lib/amdgpu/amd_shaders.h
+++ b/lib/amdgpu/amd_shaders.h
@@ -1,4 +1,4 @@
-/*
+/* SPDX-License-Identifier: MIT
  * Copyright 2014 Advanced Micro Devices, Inc.
  * Copyright 2022 Advanced Micro Devices, Inc.
  *
diff --git a/lib/amdgpu/amd_shared_dispatch.h b/lib/amdgpu/amd_shared_dispatch.h
index 0dc5792f9..4ab31b8f8 100644
--- a/lib/amdgpu/amd_shared_dispatch.h
+++ b/lib/amdgpu/amd_shared_dispatch.h
@@ -1,4 +1,4 @@
-/*
+/* SPDX-License-Identifier: MIT
  * Copyright 2022 Advanced Micro Devices, Inc.
  *
  * Permission is hereby granted, free of charge, to any person obtaining a
diff --git a/lib/amdgpu/amdgpu_asic_addr.h b/lib/amdgpu/amdgpu_asic_addr.h
index d147efb86..dfae4935b 100644
--- a/lib/amdgpu/amdgpu_asic_addr.h
+++ b/lib/amdgpu/amdgpu_asic_addr.h
@@ -1,6 +1,6 @@
 /**
 ***********************************************************************************************************************
-*
+* SPDX-License-Identifier: MIT
 * Copyright © 2007-2021 Advanced Micro Devices, Inc.
 * Copyright 2022 Advanced Micro Devices, Inc.
 * All Rights Reserved.
diff --git a/tests/amdgpu/amd_basic.c b/tests/amdgpu/amd_basic.c
index 9be034975..1d5c1f3fb 100644
--- a/tests/amdgpu/amd_basic.c
+++ b/tests/amdgpu/amd_basic.c
@@ -1,4 +1,4 @@
-/*
+/* SPDX-License-Identifier: MIT
  * Copyright 2014 Advanced Micro Devices, Inc.
  * Copyright 2022 Advanced Micro Devices, Inc.
  *
diff --git a/tests/amdgpu/amd_deadlock.c b/tests/amdgpu/amd_deadlock.c
index e1b508fcf..109aaac18 100644
--- a/tests/amdgpu/amd_deadlock.c
+++ b/tests/amdgpu/amd_deadlock.c
@@ -1,4 +1,4 @@
-/*
+/* SPDX-License-Identifier: MIT
  * Copyright 2014 Advanced Micro Devices, Inc.
  * Copyright 2022 Advanced Micro Devices, Inc.
  *
-- 
2.25.1

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

* [igt-dev] [PATCH 2/9] lib/amdgpu: add predefined constants for PM4 and SDMA
  2022-11-11 21:52 [igt-dev] [PATCH 1/9] lib/amdgpu: add SPDX-License-Identifier: MIT vitaly.prosyak
@ 2022-11-11 21:52 ` vitaly.prosyak
  2022-11-11 21:52 ` [igt-dev] [PATCH 3/9] lib/amdgpu: add amdgpu_bo_alloc_and_map_raw helper vitaly.prosyak
                   ` (9 subsequent siblings)
  10 siblings, 0 replies; 13+ messages in thread
From: vitaly.prosyak @ 2022-11-11 21:52 UTC (permalink / raw)
  To: igt-dev; +Cc: Pierre-eric Pelloux-prayer, marek.olsak, christian.koenig

From: Vitaly Prosyak <vitaly.prosyak@amd.com>

Signed-off-by: Vitaly Prosyak <vitaly.prosyak@amd.com>
Reviewed-by: Pierre-eric Pelloux-prayer <Pierre-eric.Pelloux-prayer@amd.com>
---
 lib/amdgpu/amd_PM4.h  | 43 +++++++++++++++++++++++++++++++++++++++++++
 lib/amdgpu/amd_sdma.h |  3 +++
 2 files changed, 46 insertions(+)

diff --git a/lib/amdgpu/amd_PM4.h b/lib/amdgpu/amd_PM4.h
index ec4de1f62..7672da034 100644
--- a/lib/amdgpu/amd_PM4.h
+++ b/lib/amdgpu/amd_PM4.h
@@ -169,4 +169,47 @@
 #define PACKET3_SET_UCONFIG_REG			0x79
 #define PACKET3_DRAW_INDEX_AUTO			0x2D
 
+#define	PACKET3_WAIT_REG_MEM				0x3C
+#define		WAIT_REG_MEM_FUNCTION(x)                ((x) << 0)
+		/* 0 - always
+		 * 1 - <
+		 * 2 - <=
+		 * 3 - ==
+		 * 4 - !=
+		 * 5 - >=
+		 * 6 - >
+		 */
+#define		WAIT_REG_MEM_MEM_SPACE(x)               ((x) << 4)
+		/* 0 - reg
+		 * 1 - mem
+		 */
+#define		WAIT_REG_MEM_OPERATION(x)               ((x) << 6)
+		/* 0 - wait_reg_mem
+		 * 1 - wr_wait_wr_reg
+		 */
+#define		WAIT_REG_MEM_ENGINE(x)                  ((x) << 8)
+		/* 0 - me
+		 * 1 - pfp
+		 */
+
+#define	PACKET3_WRITE_DATA				0x37
+#define		WRITE_DATA_DST_SEL(x)                   ((x) << 8)
+		/* 0 - register
+		 * 1 - memory (sync - via GRBM)
+		 * 2 - gl2
+		 * 3 - gds
+		 * 4 - reserved
+		 * 5 - memory (async - direct)
+		 */
+#define		WR_ONE_ADDR                             (1 << 16)
+#define		WR_CONFIRM                              (1 << 20)
+#define		WRITE_DATA_CACHE_POLICY(x)              ((x) << 25)
+		/* 0 - LRU
+		 * 1 - Stream
+		 */
+#define		WRITE_DATA_ENGINE_SEL(x)                ((x) << 30)
+		/* 0 - me
+		 * 1 - pfp
+		 * 2 - ce
+		 */
 #endif
diff --git a/lib/amdgpu/amd_sdma.h b/lib/amdgpu/amd_sdma.h
index 630535bb1..102df1024 100644
--- a/lib/amdgpu/amd_sdma.h
+++ b/lib/amdgpu/amd_sdma.h
@@ -35,6 +35,9 @@
 	/* 0 = byte fill
 	 * 2 = DW fill
 	 */
+
+#define SDMA_OP_POLL_REGMEM  8
+
 #define SDMA_PACKET(op, sub_op, e)	((((e) & 0xFFFF) << 16) |	\
 					(((sub_op) & 0xFF) << 8) |	\
 					(((op) & 0xFF) << 0))
-- 
2.25.1

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

* [igt-dev] [PATCH 3/9] lib/amdgpu: add amdgpu_bo_alloc_and_map_raw helper
  2022-11-11 21:52 [igt-dev] [PATCH 1/9] lib/amdgpu: add SPDX-License-Identifier: MIT vitaly.prosyak
  2022-11-11 21:52 ` [igt-dev] [PATCH 2/9] lib/amdgpu: add predefined constants for PM4 and SDMA vitaly.prosyak
@ 2022-11-11 21:52 ` vitaly.prosyak
  2022-11-11 21:52 ` [igt-dev] [PATCH 4/9] lib/amdgpu: add deadlock helper vitaly.prosyak
                   ` (8 subsequent siblings)
  10 siblings, 0 replies; 13+ messages in thread
From: vitaly.prosyak @ 2022-11-11 21:52 UTC (permalink / raw)
  To: igt-dev; +Cc: Pierre-eric Pelloux-prayer, marek.olsak, christian.koenig

From: Vitaly Prosyak <vitaly.prosyak@amd.com>

Signed-off-by: Vitaly Prosyak <vitaly.prosyak@amd.com>
Reviewed-by: Pierre-eric Pelloux-prayer <Pierre-eric.Pelloux-prayer@amd.com>
---
 lib/amdgpu/amd_memory.c | 58 +++++++++++++++++++++++++++++++++++++++++
 lib/amdgpu/amd_memory.h |  6 +++++
 2 files changed, 64 insertions(+)

diff --git a/lib/amdgpu/amd_memory.c b/lib/amdgpu/amd_memory.c
index 101dbaf13..0aa400ac8 100644
--- a/lib/amdgpu/amd_memory.c
+++ b/lib/amdgpu/amd_memory.c
@@ -193,6 +193,64 @@ error_va_alloc:
 	return r;
 }
 
+int
+amdgpu_bo_alloc_and_map_raw(amdgpu_device_handle dev, unsigned size,
+			unsigned alignment, unsigned heap, uint64_t alloc_flags,
+			uint64_t mapping_flags, amdgpu_bo_handle *bo, void **cpu,
+			uint64_t *mc_address, amdgpu_va_handle *va_handle)
+{
+	struct amdgpu_bo_alloc_request request = {};
+	amdgpu_bo_handle buf_handle;
+	amdgpu_va_handle handle;
+	uint64_t vmc_addr;
+	int r;
+
+	request.alloc_size = size;
+	request.phys_alignment = alignment;
+	request.preferred_heap = heap;
+	request.flags = alloc_flags;
+
+	r = amdgpu_bo_alloc(dev, &request, &buf_handle);
+	if (r)
+		return r;
+
+	r = amdgpu_va_range_alloc(dev,
+				  amdgpu_gpu_va_range_general,
+				  size, alignment, 0, &vmc_addr,
+				  &handle, 0);
+	if (r)
+		goto error_va_alloc;
+
+	r = amdgpu_bo_va_op_raw(dev, buf_handle, 0,  ALIGN(size, getpagesize()), vmc_addr,
+				   AMDGPU_VM_PAGE_READABLE |
+				   AMDGPU_VM_PAGE_WRITEABLE |
+				   AMDGPU_VM_PAGE_EXECUTABLE |
+				   mapping_flags,
+				   AMDGPU_VA_OP_MAP);
+	if (r)
+		goto error_va_map;
+
+	r = amdgpu_bo_cpu_map(buf_handle, cpu);
+	if (r)
+		goto error_cpu_map;
+
+	*bo = buf_handle;
+	*mc_address = vmc_addr;
+	*va_handle = handle;
+
+	return 0;
+
+ error_cpu_map:
+	amdgpu_bo_cpu_unmap(buf_handle);
+
+ error_va_map:
+	amdgpu_bo_va_op(buf_handle, 0, size, vmc_addr, 0, AMDGPU_VA_OP_UNMAP);
+
+ error_va_alloc:
+	amdgpu_bo_free(buf_handle);
+	return r;
+}
+
 /**
  *
  * @param bo
diff --git a/lib/amdgpu/amd_memory.h b/lib/amdgpu/amd_memory.h
index bc3652e8e..77fd099b0 100644
--- a/lib/amdgpu/amd_memory.h
+++ b/lib/amdgpu/amd_memory.h
@@ -55,6 +55,12 @@ amdgpu_bo_alloc_and_map(amdgpu_device_handle dev, unsigned size,
 			amdgpu_bo_handle *bo, void **cpu, uint64_t *mc_address,
 			amdgpu_va_handle *va_handle);
 
+int
+amdgpu_bo_alloc_and_map_raw(amdgpu_device_handle dev, unsigned size,
+			unsigned alignment, unsigned heap, uint64_t alloc_flags,
+			uint64_t mapping_flags, amdgpu_bo_handle *bo, void **cpu,
+			uint64_t *mc_address, amdgpu_va_handle *va_handle);
+
 void
 amdgpu_bo_unmap_and_free(amdgpu_bo_handle bo, amdgpu_va_handle va_handle,
 			 uint64_t mc_addr, uint64_t size);
-- 
2.25.1

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

* [igt-dev] [PATCH 4/9] lib/amdgpu: add deadlock helper
  2022-11-11 21:52 [igt-dev] [PATCH 1/9] lib/amdgpu: add SPDX-License-Identifier: MIT vitaly.prosyak
  2022-11-11 21:52 ` [igt-dev] [PATCH 2/9] lib/amdgpu: add predefined constants for PM4 and SDMA vitaly.prosyak
  2022-11-11 21:52 ` [igt-dev] [PATCH 3/9] lib/amdgpu: add amdgpu_bo_alloc_and_map_raw helper vitaly.prosyak
@ 2022-11-11 21:52 ` vitaly.prosyak
  2022-11-11 21:52 ` [igt-dev] [PATCH 5/9] tests/amdgpu: add GPU reset tests for gfx, compute and sdma vitaly.prosyak
                   ` (7 subsequent siblings)
  10 siblings, 0 replies; 13+ messages in thread
From: vitaly.prosyak @ 2022-11-11 21:52 UTC (permalink / raw)
  To: igt-dev; +Cc: Pierre-eric Pelloux-prayer, marek.olsak, christian.koenig

From: Vitaly Prosyak <vitaly.prosyak@amd.com>

Add wait_memory_helper to submit the jobs where wait for the register
in memory to be modified, but we change the value after we request the
fence of the job status to create a condition that GPU hung is detected
and GPU reset is executed.
The helper function is flexible and could be used for gfx, compute and
sdma.

Signed-off-by: Vitaly Prosyak <vitaly.prosyak@amd.com>
Reviewed-by: Pierre-eric Pelloux-prayer <Pierre-eric.Pelloux-prayer@amd.com>
---
 lib/amdgpu/amd_deadlock_helpers.c | 190 ++++++++++++++++++++++++++++++
 lib/amdgpu/amd_deadlock_helpers.h |  31 +++++
 lib/meson.build                   |   3 +-
 3 files changed, 223 insertions(+), 1 deletion(-)
 create mode 100644 lib/amdgpu/amd_deadlock_helpers.c
 create mode 100644 lib/amdgpu/amd_deadlock_helpers.h

diff --git a/lib/amdgpu/amd_deadlock_helpers.c b/lib/amdgpu/amd_deadlock_helpers.c
new file mode 100644
index 000000000..98fb23e0e
--- /dev/null
+++ b/lib/amdgpu/amd_deadlock_helpers.c
@@ -0,0 +1,190 @@
+/*
+ * SPDX-License-Identifier: MIT
+ * Copyright 2022 Advanced Micro Devices, Inc.
+ *  *
+ * Permission is hereby granted, free of charge, to any person obtaining a
+ * copy of this software and associated documentation files (the "Software"),
+ * to deal in the Software without restriction, including without limitation
+ * the rights to use, copy, modify, merge, publish, distribute, sublicense,
+ * and/or sell copies of the Software, and to permit persons to whom the
+ * Software is furnished to do so, subject to the following conditions:
+ *
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
+ * THE COPYRIGHT HOLDER(S) OR AUTHOR(S) BE LIABLE FOR ANY CLAIM, DAMAGES OR
+ * OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
+ * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
+ * OTHER DEALINGS IN THE SOFTWARE.
+ *
+ *
+ */
+#include <amdgpu.h>
+#include "amdgpu_drm.h"
+#include "amd_PM4.h"
+#include "amd_sdma.h"
+#include <unistd.h>
+#include <pthread.h>
+#include <signal.h>
+#include "amd_memory.h"
+#include "amd_deadlock_helpers.h"
+#include "amd_ip_blocks.h"
+
+#define MAX_JOB_COUNT 200
+
+#define MEMORY_OFFSET 256 /* wait for this memory to change */
+struct thread_param {
+	sigset_t set_ready; /* thread is ready and signal to change memory */
+	pthread_t main_thread;
+	uint32_t *ib_result_cpu;
+};
+
+static int
+use_uc_mtype = 1;
+
+static void*
+write_mem_address(void *data)
+{
+	int sig ,r;
+	struct thread_param *param = data;
+
+	/* send ready signal to main thread */
+	pthread_kill(param->main_thread, SIGUSR1);
+
+	/* wait until job is submitted */
+	r = sigwait(&param->set_ready, &sig);
+	igt_assert_eq(r, 0);
+	igt_assert_eq(sig, SIGUSR2);
+	param->ib_result_cpu[MEMORY_OFFSET] = 0x1;
+	return 0;
+}
+
+void
+amdgpu_wait_memory_helper(amdgpu_device_handle device_handle, unsigned ip_type)
+{
+	amdgpu_context_handle context_handle;
+	amdgpu_bo_handle ib_result_handle;
+	void *ib_result_cpu;
+	uint32_t *ib_result_cpu2;
+	uint64_t ib_result_mc_address;
+	struct amdgpu_cs_request ibs_request;
+	struct amdgpu_cs_ib_info ib_info;
+	struct amdgpu_cs_fence fence_status;
+	uint32_t expired;
+	int r;
+	amdgpu_bo_list_handle bo_list;
+	amdgpu_va_handle va_handle;
+	int bo_cmd_size = 4096;
+	int sig = 0;
+	pthread_t stress_thread = {0};
+	struct thread_param param = {0};
+	int job_count = 0;
+	struct amdgpu_cmd_base * base_cmd = get_cmd_base();
+
+	r = amdgpu_cs_ctx_create(device_handle, &context_handle);
+	igt_assert_eq(r, 0);
+
+	r = amdgpu_bo_alloc_and_map_raw(device_handle, bo_cmd_size, bo_cmd_size,
+			AMDGPU_GEM_DOMAIN_GTT, 0, use_uc_mtype ? AMDGPU_VM_MTYPE_UC : 0,
+						    &ib_result_handle, &ib_result_cpu,
+						    &ib_result_mc_address, &va_handle);
+	igt_assert_eq(r, 0);
+
+	r = amdgpu_get_bo_list(device_handle, ib_result_handle, NULL, &bo_list);
+	igt_assert_eq(r, 0);
+
+	base_cmd->attach_buf(base_cmd, ib_result_cpu, bo_cmd_size);
+
+	if (ip_type == AMDGPU_HW_IP_DMA) {
+		base_cmd->emit(base_cmd, SDMA_PKT_HEADER_OP(SDMA_OP_POLL_REGMEM) |
+					(0 << 26) | /* WAIT_REG_MEM */(4 << 28) | /* != */(1 << 31)
+					/* memory */);
+	} else {
+		base_cmd->emit(base_cmd, PACKET3(PACKET3_WAIT_REG_MEM, 5));
+		base_cmd->emit(base_cmd, (WAIT_REG_MEM_MEM_SPACE(1)  /* memory */|
+							  WAIT_REG_MEM_FUNCTION(4) /* != */|
+							  WAIT_REG_MEM_ENGINE(0)/* me */));
+	}
+
+	base_cmd->emit(base_cmd, (ib_result_mc_address + MEMORY_OFFSET * 4) & 0xfffffffc);
+	base_cmd->emit(base_cmd, ((ib_result_mc_address + MEMORY_OFFSET * 4) >> 32) & 0xffffffff);
+
+	base_cmd->emit(base_cmd, 0);/* reference value */
+	base_cmd->emit(base_cmd, 0xffffffff); /* and mask */
+	base_cmd->emit(base_cmd, 0x00000004);/* poll interval */
+	base_cmd->emit_repeat(base_cmd, 0xffff1000, 16 - base_cmd->cdw);
+
+	ib_result_cpu2 = ib_result_cpu;
+	ib_result_cpu2[MEMORY_OFFSET] = 0x0; /* the memory we wait on to change */
+
+	memset(&ib_info, 0, sizeof(struct amdgpu_cs_ib_info));
+	ib_info.ib_mc_address = ib_result_mc_address;
+	ib_info.size = base_cmd->cdw;
+
+	memset(&ibs_request, 0, sizeof(struct amdgpu_cs_request));
+	ibs_request.ip_type = ip_type;
+	ibs_request.ring = 0;
+	ibs_request.number_of_ibs = 1;
+	ibs_request.ibs = &ib_info;
+	ibs_request.resources = bo_list;
+	ibs_request.fence_info.handle = NULL;
+
+	/* setup thread parameters and signals of readiness */
+	sigemptyset(&param.set_ready);
+	sigaddset(&param.set_ready, SIGUSR1);
+	sigaddset(&param.set_ready, SIGUSR2);
+	r = pthread_sigmask(SIG_BLOCK, &param.set_ready, NULL);
+	param.ib_result_cpu = ib_result_cpu;
+	param.main_thread = pthread_self();
+
+	r = pthread_create(&stress_thread, NULL, &write_mem_address, &param);
+	igt_assert_eq(r, 0);
+
+	/* wait until thread is ready */
+	r = sigwait(&param.set_ready, &sig);
+	igt_assert_eq(r, 0);
+	igt_assert_eq(sig, SIGUSR1);
+	/* thread is ready, now submit jobs */
+	do {
+		/* kernel error failed to initialize parse */
+		/* GPU hung is detected becouse we wait for register value*/
+		/* submit jobs until it is cancelled , it is about 33 jobs for gfx */
+		/* before GPU hung */
+		r = amdgpu_cs_submit(context_handle, 0, &ibs_request, 1);
+		job_count++;
+	} while( r == 0 && job_count < MAX_JOB_COUNT);
+
+	if (r != 0 && r != -ECANCELED)
+		igt_assert(0);
+
+
+
+	memset(&fence_status, 0, sizeof(struct amdgpu_cs_fence));
+	fence_status.context = context_handle;
+	fence_status.ip_type = ip_type;
+	fence_status.ip_instance = 0;
+	fence_status.ring = 0;
+	fence_status.fence = ibs_request.seq_no;
+
+	r = amdgpu_cs_query_fence_status(&fence_status,
+			AMDGPU_TIMEOUT_INFINITE ,0, &expired);
+	if (r != 0 && r != -ECANCELED)
+		igt_assert(0);
+
+	/* send signal to modify the memory we wait for */
+	pthread_kill(stress_thread, SIGUSR2);
+
+	pthread_join(stress_thread, NULL);
+
+	amdgpu_bo_list_destroy(bo_list);
+
+	amdgpu_bo_unmap_and_free(ib_result_handle, va_handle,
+							 ib_result_mc_address, 4096);
+
+	amdgpu_cs_ctx_free(context_handle);
+	free_cmd_base(base_cmd);
+}
+
diff --git a/lib/amdgpu/amd_deadlock_helpers.h b/lib/amdgpu/amd_deadlock_helpers.h
new file mode 100644
index 000000000..3fc45da36
--- /dev/null
+++ b/lib/amdgpu/amd_deadlock_helpers.h
@@ -0,0 +1,31 @@
+/* SPDX-License-Identifier: MIT
+ * Copyright 2022 Advanced Micro Devices, Inc.
+ *
+ * Permission is hereby granted, free of charge, to any person obtaining a
+ * copy of this software and associated documentation files (the "Software"),
+ * to deal in the Software without restriction, including without limitation
+ * the rights to use, copy, modify, merge, publish, distribute, sublicense,
+ * and/or sell copies of the Software, and to permit persons to whom the
+ * Software is furnished to do so, subject to the following conditions:
+ *
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
+ * THE COPYRIGHT HOLDER(S) OR AUTHOR(S) BE LIABLE FOR ANY CLAIM, DAMAGES OR
+ * OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
+ * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
+ * OTHER DEALINGS IN THE SOFTWARE.
+ *
+ *
+ */
+#ifndef __AMD_DEADLOCK_HELPERS_H__
+#define __AMD_DEADLOCK_HELPERS_H__
+
+void
+amdgpu_wait_memory_helper(amdgpu_device_handle device_handle, unsigned ip_type);
+
+#endif
+
diff --git a/lib/meson.build b/lib/meson.build
index ac7126fbf..3f758e98c 100644
--- a/lib/meson.build
+++ b/lib/meson.build
@@ -140,7 +140,8 @@ if libdrm_amdgpu.found()
 		'amdgpu/amd_gfx_v8_0.c',
 		'amdgpu/amd_gfx_v9_0.c',
 		'amdgpu/amd_dispatch_helpers.c',
-		'amdgpu/amd_dispatch.c'
+		'amdgpu/amd_dispatch.c',
+		'amdgpu/amd_deadlock_helpers.c'
 	]
 endif
 
-- 
2.25.1

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

* [igt-dev] [PATCH 5/9] tests/amdgpu: add GPU reset tests for gfx, compute and sdma.
  2022-11-11 21:52 [igt-dev] [PATCH 1/9] lib/amdgpu: add SPDX-License-Identifier: MIT vitaly.prosyak
                   ` (2 preceding siblings ...)
  2022-11-11 21:52 ` [igt-dev] [PATCH 4/9] lib/amdgpu: add deadlock helper vitaly.prosyak
@ 2022-11-11 21:52 ` vitaly.prosyak
  2022-11-11 21:52 ` [igt-dev] [PATCH 6/9] lib/amdgpu: add memory and reg. access helper function vitaly.prosyak
                   ` (6 subsequent siblings)
  10 siblings, 0 replies; 13+ messages in thread
From: vitaly.prosyak @ 2022-11-11 21:52 UTC (permalink / raw)
  To: igt-dev; +Cc: Pierre-eric Pelloux-prayer, marek.olsak, christian.koenig

From: Vitaly Prosyak <vitaly.prosyak@amd.com>

Use the shared amdgpu_wait_memory_helper.
The GPU reset is occurred due to the wait for the register
in memory to be changed is not executed on time.

Signed-off-by: Vitaly Prosyak <vitaly.prosyak@amd.com>
Reviewed-by: Pierre-eric Pelloux-prayer <Pierre-eric.Pelloux-prayer@amd.com>
---
 tests/amdgpu/amd_deadlock.c | 27 +++++++++++++++++++++++++++
 1 file changed, 27 insertions(+)

diff --git a/tests/amdgpu/amd_deadlock.c b/tests/amdgpu/amd_deadlock.c
index 109aaac18..d4de20114 100644
--- a/tests/amdgpu/amd_deadlock.c
+++ b/tests/amdgpu/amd_deadlock.c
@@ -26,6 +26,7 @@
 #include "lib/amdgpu/amd_memory.h"
 #include "lib/amdgpu/amd_command_submission.h"
 #include "lib/amdgpu/amd_dispatch.h"
+#include "lib/amdgpu/amd_deadlock_helpers.h"
 
 static void
 amdgpu_dispatch_hang_slow_gfx(amdgpu_device_handle device_handle)
@@ -39,6 +40,24 @@ amdgpu_dispatch_hang_slow_compute(amdgpu_device_handle device_handle)
 	amdgpu_dispatch_hang_slow_helper(device_handle, AMDGPU_HW_IP_COMPUTE);
 }
 
+static void
+amdgpu_deadlock_gfx(amdgpu_device_handle device_handle)
+{
+	amdgpu_wait_memory_helper(device_handle, AMDGPU_HW_IP_GFX);
+}
+
+static void
+amdgpu_deadlock_compute(amdgpu_device_handle device_handle)
+{
+	amdgpu_wait_memory_helper(device_handle, AMDGPU_HW_IP_COMPUTE);
+}
+
+static void
+amdgpu_deadlock_sdma(amdgpu_device_handle device_handle)
+{
+	amdgpu_wait_memory_helper(device_handle, AMDGPU_HW_IP_DMA);
+}
+
 igt_main
 {
 	amdgpu_device_handle device;
@@ -64,6 +83,14 @@ igt_main
 		igt_assert_eq(r, 0);
 
 	}
+	igt_subtest("amdgpu_deadlock_sdma")
+	amdgpu_deadlock_sdma(device);
+
+	igt_subtest("amdgpu_deadlock_gfx")
+	amdgpu_deadlock_gfx(device);
+
+	igt_subtest("amdgpu_deadlock_compute")
+	amdgpu_deadlock_compute(device);
 
 	igt_subtest("dispatch_hang_slow_compute")
 	amdgpu_dispatch_hang_slow_compute(device);
-- 
2.25.1

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

* [igt-dev] [PATCH 6/9] lib/amdgpu: add memory and reg. access helper function
  2022-11-11 21:52 [igt-dev] [PATCH 1/9] lib/amdgpu: add SPDX-License-Identifier: MIT vitaly.prosyak
                   ` (3 preceding siblings ...)
  2022-11-11 21:52 ` [igt-dev] [PATCH 5/9] tests/amdgpu: add GPU reset tests for gfx, compute and sdma vitaly.prosyak
@ 2022-11-11 21:52 ` vitaly.prosyak
  2022-11-11 21:52 ` [igt-dev] [PATCH 7/9] tests/amdgpu: add tests for invalid memory and register access vitaly.prosyak
                   ` (5 subsequent siblings)
  10 siblings, 0 replies; 13+ messages in thread
From: vitaly.prosyak @ 2022-11-11 21:52 UTC (permalink / raw)
  To: igt-dev; +Cc: Pierre-eric Pelloux-prayer, marek.olsak, christian.koenig

From: Vitaly Prosyak <vitaly.prosyak@amd.com>

The helper functions access to invalid memory or register
to trigger GPU reset.

Signed-off-by: Vitaly Prosyak <vitaly.prosyak@amd.com>
Reviewed-by: Pierre-eric Pelloux-prayer <Pierre-eric.Pelloux-prayer@amd.com>
---
 lib/amdgpu/amd_PM4.h              |  3 ++
 lib/amdgpu/amd_deadlock_helpers.c | 76 +++++++++++++++++++++++++++++++
 lib/amdgpu/amd_deadlock_helpers.h |  3 ++
 3 files changed, 82 insertions(+)

diff --git a/lib/amdgpu/amd_PM4.h b/lib/amdgpu/amd_PM4.h
index 7672da034..32a04c1ac 100644
--- a/lib/amdgpu/amd_PM4.h
+++ b/lib/amdgpu/amd_PM4.h
@@ -212,4 +212,7 @@
 		 * 1 - pfp
 		 * 2 - ce
 		 */
+/* GMC registers */
+#define mmVM_CONTEXT0_PAGE_TABLE_BASE_ADDR                   0x54f
+
 #endif
diff --git a/lib/amdgpu/amd_deadlock_helpers.c b/lib/amdgpu/amd_deadlock_helpers.c
index 98fb23e0e..5ffa39318 100644
--- a/lib/amdgpu/amd_deadlock_helpers.c
+++ b/lib/amdgpu/amd_deadlock_helpers.c
@@ -188,3 +188,79 @@ amdgpu_wait_memory_helper(amdgpu_device_handle device_handle, unsigned ip_type)
 	free_cmd_base(base_cmd);
 }
 
+void
+bad_access_helper(amdgpu_device_handle device_handle, int reg_access, unsigned ip_type)
+{
+	amdgpu_context_handle context_handle;
+	amdgpu_bo_handle ib_result_handle;
+	void *ib_result_cpu;
+	uint64_t ib_result_mc_address;
+	struct amdgpu_cs_request ibs_request;
+	struct amdgpu_cs_ib_info ib_info;
+	struct amdgpu_cs_fence fence_status;
+	uint32_t expired;
+	const unsigned bo_cmd_size = 4096;
+	const unsigned alignment = 4096;
+	int r;
+	amdgpu_bo_list_handle bo_list;
+	amdgpu_va_handle va_handle;
+	struct amdgpu_cmd_base * base_cmd;
+	r = amdgpu_cs_ctx_create(device_handle, &context_handle);
+	igt_assert_eq(r, 0);
+
+	r = amdgpu_bo_alloc_and_map_raw(device_handle, bo_cmd_size, alignment,
+									AMDGPU_GEM_DOMAIN_GTT, 0, 0,
+									&ib_result_handle, &ib_result_cpu,
+									&ib_result_mc_address, &va_handle);
+	igt_assert_eq(r, 0);
+	base_cmd = get_cmd_base();
+	base_cmd->attach_buf(base_cmd, ib_result_cpu, bo_cmd_size);
+
+	r = amdgpu_get_bo_list(device_handle, ib_result_handle, NULL, &bo_list);
+	igt_assert_eq(r, 0);
+
+	base_cmd->emit(base_cmd, PACKET3(PACKET3_WRITE_DATA, 3));
+	base_cmd->emit(base_cmd, (reg_access ? WRITE_DATA_DST_SEL(0) :
+										   WRITE_DATA_DST_SEL(5))| WR_CONFIRM);
+
+	base_cmd->emit(base_cmd, reg_access ? mmVM_CONTEXT0_PAGE_TABLE_BASE_ADDR :
+					0xdeadbee0);
+	base_cmd->emit(base_cmd, 0 );
+	base_cmd->emit(base_cmd, 0xdeadbeef );
+	base_cmd->emit_repeat(base_cmd, 0xffff1000, 16 - base_cmd->cdw);
+
+	memset(&ib_info, 0, sizeof(struct amdgpu_cs_ib_info));
+	ib_info.ib_mc_address = ib_result_mc_address;
+	ib_info.size = base_cmd->cdw;
+
+	memset(&ibs_request, 0, sizeof(struct amdgpu_cs_request));
+	ibs_request.ip_type = ip_type;
+	ibs_request.ring = 0;
+	ibs_request.number_of_ibs = 1;
+	ibs_request.ibs = &ib_info;
+	ibs_request.resources = bo_list;
+	ibs_request.fence_info.handle = NULL;
+
+	r = amdgpu_cs_submit(context_handle, 0,&ibs_request, 1);
+	if (r != 0 && r != -ECANCELED)
+		igt_assert(0);
+
+
+	memset(&fence_status, 0, sizeof(struct amdgpu_cs_fence));
+	fence_status.context = context_handle;
+	fence_status.ip_type = ip_type;
+	fence_status.ip_instance = 0;
+	fence_status.ring = 0;
+	fence_status.fence = ibs_request.seq_no;
+
+	r = amdgpu_cs_query_fence_status(&fence_status,
+			AMDGPU_TIMEOUT_INFINITE,0, &expired);
+	if (r != 0 && r != -ECANCELED)
+		igt_assert(0);
+
+	amdgpu_bo_list_destroy(bo_list);
+	amdgpu_bo_unmap_and_free(ib_result_handle, va_handle,
+					 ib_result_mc_address, 4096);
+	free_cmd_base(base_cmd);
+	amdgpu_cs_ctx_free(context_handle);
+}
diff --git a/lib/amdgpu/amd_deadlock_helpers.h b/lib/amdgpu/amd_deadlock_helpers.h
index 3fc45da36..cc8eba7f7 100644
--- a/lib/amdgpu/amd_deadlock_helpers.h
+++ b/lib/amdgpu/amd_deadlock_helpers.h
@@ -27,5 +27,8 @@
 void
 amdgpu_wait_memory_helper(amdgpu_device_handle device_handle, unsigned ip_type);
 
+void
+bad_access_helper(amdgpu_device_handle device_handle, int reg_access, unsigned ip_type);
+
 #endif
 
-- 
2.25.1

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

* [igt-dev] [PATCH 7/9] tests/amdgpu: add tests for invalid memory and register access
  2022-11-11 21:52 [igt-dev] [PATCH 1/9] lib/amdgpu: add SPDX-License-Identifier: MIT vitaly.prosyak
                   ` (4 preceding siblings ...)
  2022-11-11 21:52 ` [igt-dev] [PATCH 6/9] lib/amdgpu: add memory and reg. access helper function vitaly.prosyak
@ 2022-11-11 21:52 ` vitaly.prosyak
  2022-11-11 21:52 ` [igt-dev] [PATCH 8/9] tests/amdgpu: reuse predefined const GFX_COMPUTE_NOP vitaly.prosyak
                   ` (4 subsequent siblings)
  10 siblings, 0 replies; 13+ messages in thread
From: vitaly.prosyak @ 2022-11-11 21:52 UTC (permalink / raw)
  To: igt-dev; +Cc: Pierre-eric Pelloux-prayer, marek.olsak, christian.koenig

From: Vitaly Prosyak <vitaly.prosyak@amd.com>

Signed-off-by: Vitaly Prosyak <vitaly.prosyak@amd.com>
Reviewed-by: Pierre-eric Pelloux-prayer <Pierre-eric.Pelloux-prayer@amd.com>
---
 tests/amdgpu/amd_deadlock.c | 18 ++++++++++++++++++
 1 file changed, 18 insertions(+)

diff --git a/tests/amdgpu/amd_deadlock.c b/tests/amdgpu/amd_deadlock.c
index d4de20114..df650c921 100644
--- a/tests/amdgpu/amd_deadlock.c
+++ b/tests/amdgpu/amd_deadlock.c
@@ -58,6 +58,18 @@ amdgpu_deadlock_sdma(amdgpu_device_handle device_handle)
 	amdgpu_wait_memory_helper(device_handle, AMDGPU_HW_IP_DMA);
 }
 
+static void
+amdgpu_gfx_illegal_reg_access(amdgpu_device_handle device_handle)
+{
+	bad_access_helper(device_handle, 1, AMDGPU_HW_IP_GFX);
+}
+
+static void
+amdgpu_gfx_illegal_mem_access(amdgpu_device_handle device_handle)
+{
+	bad_access_helper(device_handle, 0, AMDGPU_HW_IP_GFX);
+}
+
 igt_main
 {
 	amdgpu_device_handle device;
@@ -86,6 +98,12 @@ igt_main
 	igt_subtest("amdgpu_deadlock_sdma")
 	amdgpu_deadlock_sdma(device);
 
+	igt_subtest("amdgpu_gfx_illegal_reg_access")
+	amdgpu_gfx_illegal_reg_access(device);
+
+	igt_subtest("amdgpu_gfx_illegal_mem_access")
+	amdgpu_gfx_illegal_mem_access(device);
+
 	igt_subtest("amdgpu_deadlock_gfx")
 	amdgpu_deadlock_gfx(device);
 
-- 
2.25.1

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

* [igt-dev] [PATCH 8/9] tests/amdgpu: reuse predefined const GFX_COMPUTE_NOP
  2022-11-11 21:52 [igt-dev] [PATCH 1/9] lib/amdgpu: add SPDX-License-Identifier: MIT vitaly.prosyak
                   ` (5 preceding siblings ...)
  2022-11-11 21:52 ` [igt-dev] [PATCH 7/9] tests/amdgpu: add tests for invalid memory and register access vitaly.prosyak
@ 2022-11-11 21:52 ` vitaly.prosyak
  2022-11-11 21:52 ` [igt-dev] [PATCH 9/9] tests/amdgpu: PCI unplug 4 tests for different scenario vitaly.prosyak
                   ` (3 subsequent siblings)
  10 siblings, 0 replies; 13+ messages in thread
From: vitaly.prosyak @ 2022-11-11 21:52 UTC (permalink / raw)
  To: igt-dev; +Cc: Pierre-eric Pelloux-prayer, marek.olsak, christian.koenig

From: Vitaly Prosyak <vitaly.prosyak@amd.com>

Signed-off-by: Vitaly Prosyak <vitaly.prosyak@amd.com>
Reviewed-by: Pierre-eric Pelloux-prayer <Pierre-eric.Pelloux-prayer@amd.com>
---
 lib/amdgpu/amd_PM4.h              | 1 +
 lib/amdgpu/amd_deadlock_helpers.c | 4 ++--
 lib/amdgpu/amd_dispatch.c         | 6 +++---
 lib/amdgpu/amd_sdma.h             | 2 ++
 tests/amdgpu/amd_basic.c          | 3 ---
 tests/amdgpu/amd_cs_nop.c         | 4 ++--
 tests/amdgpu/amd_prime.c          | 5 ++---
 7 files changed, 12 insertions(+), 13 deletions(-)

diff --git a/lib/amdgpu/amd_PM4.h b/lib/amdgpu/amd_PM4.h
index 32a04c1ac..dd483baee 100644
--- a/lib/amdgpu/amd_PM4.h
+++ b/lib/amdgpu/amd_PM4.h
@@ -215,4 +215,5 @@
 /* GMC registers */
 #define mmVM_CONTEXT0_PAGE_TABLE_BASE_ADDR                   0x54f
 
+#define GFX_COMPUTE_NOP  0xffff1000
 #endif
diff --git a/lib/amdgpu/amd_deadlock_helpers.c b/lib/amdgpu/amd_deadlock_helpers.c
index 5ffa39318..bef70893c 100644
--- a/lib/amdgpu/amd_deadlock_helpers.c
+++ b/lib/amdgpu/amd_deadlock_helpers.c
@@ -115,7 +115,7 @@ amdgpu_wait_memory_helper(amdgpu_device_handle device_handle, unsigned ip_type)
 	base_cmd->emit(base_cmd, 0);/* reference value */
 	base_cmd->emit(base_cmd, 0xffffffff); /* and mask */
 	base_cmd->emit(base_cmd, 0x00000004);/* poll interval */
-	base_cmd->emit_repeat(base_cmd, 0xffff1000, 16 - base_cmd->cdw);
+	base_cmd->emit_repeat(base_cmd, GFX_COMPUTE_NOP, 16 - base_cmd->cdw);
 
 	ib_result_cpu2 = ib_result_cpu;
 	ib_result_cpu2[MEMORY_OFFSET] = 0x0; /* the memory we wait on to change */
@@ -227,7 +227,7 @@ bad_access_helper(amdgpu_device_handle device_handle, int reg_access, unsigned i
 					0xdeadbee0);
 	base_cmd->emit(base_cmd, 0 );
 	base_cmd->emit(base_cmd, 0xdeadbeef );
-	base_cmd->emit_repeat(base_cmd, 0xffff1000, 16 - base_cmd->cdw);
+	base_cmd->emit_repeat(base_cmd, GFX_COMPUTE_NOP, 16 - base_cmd->cdw);
 
 	memset(&ib_info, 0, sizeof(struct amdgpu_cs_ib_info));
 	ib_info.ib_mc_address = ib_result_mc_address;
diff --git a/lib/amdgpu/amd_dispatch.c b/lib/amdgpu/amd_dispatch.c
index 863786c59..ddc6def17 100644
--- a/lib/amdgpu/amd_dispatch.c
+++ b/lib/amdgpu/amd_dispatch.c
@@ -125,7 +125,7 @@ amdgpu_memset_dispatch_test(amdgpu_device_handle device_handle,
 	base_cmd->emit(base_cmd, 1);
 	base_cmd->emit(base_cmd, 1);
 
-	base_cmd->emit_aligned(base_cmd, 7, 0xffff1000);
+	base_cmd->emit_aligned(base_cmd, 7, GFX_COMPUTE_NOP);
 	resources[0] = bo_dst;
 	resources[1] = bo_shader;
 	resources[2] = bo_cmd;
@@ -278,7 +278,7 @@ amdgpu_memcpy_dispatch_test(amdgpu_device_handle device_handle,
 	base_cmd->emit(base_cmd, 1);
 	base_cmd->emit(base_cmd, 1);
 
-	base_cmd->emit_aligned(base_cmd, 7, 0xffff1000); /* type3 nop packet */
+	base_cmd->emit_aligned(base_cmd, 7, GFX_COMPUTE_NOP); /* type3 nop packet */
 
 	resources[0] = bo_shader;
 	resources[1] = bo_src;
@@ -448,7 +448,7 @@ amdgpu_memcpy_dispatch_hang_slow_test(amdgpu_device_handle device_handle,
 	base_cmd->emit(base_cmd, 1);
 	base_cmd->emit(base_cmd, 1);
 
-	base_cmd->emit_aligned(base_cmd, 7, 0xffff1000); /* type3 nop packet */
+	base_cmd->emit_aligned(base_cmd, 7, GFX_COMPUTE_NOP); /* type3 nop packet */
 
 	resources[0] = bo_shader;
 	resources[1] = bo_src;
diff --git a/lib/amdgpu/amd_sdma.h b/lib/amdgpu/amd_sdma.h
index 102df1024..3e568e47a 100644
--- a/lib/amdgpu/amd_sdma.h
+++ b/lib/amdgpu/amd_sdma.h
@@ -102,4 +102,6 @@
 		 */
 #              define PACKET3_DMA_DATA_SI_CP_SYNC     (1 << 31)
 
+#define SDMA_NOP  0x0
+
 #endif
diff --git a/tests/amdgpu/amd_basic.c b/tests/amdgpu/amd_basic.c
index 1d5c1f3fb..38525a85e 100644
--- a/tests/amdgpu/amd_basic.c
+++ b/tests/amdgpu/amd_basic.c
@@ -34,9 +34,6 @@
 
 #define BUFFER_SIZE (8 * 1024)
 
-#define GFX_COMPUTE_NOP  0xffff1000
-
-
 /**
  * MEM ALLOC TEST
  * @param device
diff --git a/tests/amdgpu/amd_cs_nop.c b/tests/amdgpu/amd_cs_nop.c
index 46f4b7c65..ea3f6aae8 100644
--- a/tests/amdgpu/amd_cs_nop.c
+++ b/tests/amdgpu/amd_cs_nop.c
@@ -26,9 +26,9 @@
 
 #include <amdgpu.h>
 #include <amdgpu_drm.h>
+#include "lib/amdgpu/amd_PM4.h"
+
 
-#define GFX_COMPUTE_NOP  0xffff1000
-#define SDMA_NOP  0x0
 
 static int
 amdgpu_bo_alloc_and_map(amdgpu_device_handle dev, unsigned size,
diff --git a/tests/amdgpu/amd_prime.c b/tests/amdgpu/amd_prime.c
index 248fbc354..62924f15b 100644
--- a/tests/amdgpu/amd_prime.c
+++ b/tests/amdgpu/amd_prime.c
@@ -30,9 +30,8 @@
 #include "i915/gem_create.h"
 #include "igt.h"
 #include "igt_vgem.h"
-
-#define GFX_COMPUTE_NOP  0xffff1000
-#define SDMA_NOP  0x0
+#include "lib/amdgpu/amd_sdma.h"
+#include "lib/amdgpu/amd_PM4.h"
 
 static int
 amdgpu_bo_alloc_and_map(amdgpu_device_handle dev, unsigned size,
-- 
2.25.1

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

* [igt-dev] [PATCH 9/9] tests/amdgpu: PCI unplug 4 tests for different scenario.
  2022-11-11 21:52 [igt-dev] [PATCH 1/9] lib/amdgpu: add SPDX-License-Identifier: MIT vitaly.prosyak
                   ` (6 preceding siblings ...)
  2022-11-11 21:52 ` [igt-dev] [PATCH 8/9] tests/amdgpu: reuse predefined const GFX_COMPUTE_NOP vitaly.prosyak
@ 2022-11-11 21:52 ` vitaly.prosyak
  2022-11-11 22:27 ` [igt-dev] ✓ Fi.CI.BAT: success for series starting with [1/9] lib/amdgpu: add SPDX-License-Identifier: MIT Patchwork
                   ` (2 subsequent siblings)
  10 siblings, 0 replies; 13+ messages in thread
From: vitaly.prosyak @ 2022-11-11 21:52 UTC (permalink / raw)
  To: igt-dev; +Cc: Pierre-eric Pelloux-prayer, marek.olsak, christian.koenig

From: Vitaly Prosyak <vitaly.prosyak@amd.com>

1. A simple test with basic unplug and rescan.
2. Test with command submission using a worker thread
3. Test with an exported buffer object
4. Test with an exported fence to another device.
   More then one GPUs are required.

Signed-off-by: Vitaly Prosyak <vitaly.prosyak@amd.com>
Reviewed-by: Pierre-eric Pelloux-prayer <Pierre-eric.Pelloux-prayer@amd.com>
---
 lib/amdgpu/amd_pci_unplug.c   | 535 ++++++++++++++++++++++++++++++++++
 lib/amdgpu/amd_pci_unplug.h   |  65 +++++
 lib/amdgpu/xalloc.h           |  57 ++++
 lib/meson.build               |   4 +-
 tests/amdgpu/amd_pci_unplug.c |  58 ++++
 tests/amdgpu/meson.build      |   1 +
 6 files changed, 719 insertions(+), 1 deletion(-)
 create mode 100644 lib/amdgpu/amd_pci_unplug.c
 create mode 100644 lib/amdgpu/amd_pci_unplug.h
 create mode 100644 lib/amdgpu/xalloc.h
 create mode 100644 tests/amdgpu/amd_pci_unplug.c

diff --git a/lib/amdgpu/amd_pci_unplug.c b/lib/amdgpu/amd_pci_unplug.c
new file mode 100644
index 000000000..28b3ae393
--- /dev/null
+++ b/lib/amdgpu/amd_pci_unplug.c
@@ -0,0 +1,535 @@
+/* SPDX-License-Identifier: MIT
+ * Copyright 2022 Advanced Micro Devices, Inc.
+ *
+ * Permission is hereby granted, free of charge, to any person obtaining a
+ * copy of this software and associated documentation files (the "Software"),
+ * to deal in the Software without restriction, including without limitation
+ * the rights to use, copy, modify, merge, publish, distribute, sublicense,
+ * and/or sell copies of the Software, and to permit persons to whom the
+ * Software is furnished to do so, subject to the following conditions:
+ *
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
+ * THE COPYRIGHT HOLDER(S) OR AUTHOR(S) BE LIABLE FOR ANY CLAIM, DAMAGES OR
+ * OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
+ * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
+ * OTHER DEALINGS IN THE SOFTWARE.
+ *
+*/
+#include <linux/limits.h>
+#include <sys/types.h>
+#include <fcntl.h>
+#include <sys/stat.h>
+#include <pthread.h>
+#include <sys/sysmacros.h>
+#include <amdgpu.h>
+#include <amdgpu_drm.h>
+#include "amd_PM4.h"
+#include "amd_pci_unplug.h"
+#include "amd_memory.h"
+#include "igt.h"
+#include "xalloc.h"
+#include "amd_ip_blocks.h"
+
+static int
+amdgpu_open_devices(bool open_render_node, int  max_cards_supported, int drm_amdgpu_fds[])
+{
+	drmDevicePtr devices[MAX_CARDS_SUPPORTED];
+	int i;
+	int drm_node;
+	int amd_index = 0;
+	int drm_count;
+	int fd;
+	drmVersionPtr version;
+
+	for (i = 0; i < max_cards_supported && i < MAX_CARDS_SUPPORTED; i++)
+		drm_amdgpu_fds[i] = -1;
+
+	drm_count = drmGetDevices2(0, devices, MAX_CARDS_SUPPORTED);
+
+	if (drm_count < 0) {
+		fprintf(stderr, "drmGetDevices2() returned an error %d\n", drm_count);
+		return 0;
+	}
+
+	for (i = 0; i < drm_count; i++) {
+		/* If this is not PCI device, skip*/
+		if (devices[i]->bustype != DRM_BUS_PCI)
+			continue;
+
+		/* If this is not AMD GPU vender ID, skip*/
+		if (devices[i]->deviceinfo.pci->vendor_id != 0x1002)
+			continue;
+
+		if (open_render_node)
+			drm_node = DRM_NODE_RENDER;
+		else
+			drm_node = DRM_NODE_PRIMARY;
+
+		fd = -1;
+		if (devices[i]->available_nodes & 1 << drm_node)
+			fd = open(
+				devices[i]->nodes[drm_node],
+				O_RDWR | O_CLOEXEC);
+
+		/* This node is not available. */
+		if (fd < 0) continue;
+
+		version = drmGetVersion(fd);
+		if (!version) {
+			fprintf(stderr, "Warning: Cannot get version for %s." "Error is %s\n",
+				devices[i]->nodes[drm_node], strerror(errno));
+			close(fd);
+			continue;
+		}
+
+		if (strcmp(version->name, "amdgpu")) {
+			/* This is not AMDGPU driver, skip.*/
+			drmFreeVersion(version);
+			close(fd);
+			continue;
+		}
+
+		drmFreeVersion(version);
+
+		drm_amdgpu_fds[amd_index] = fd;
+		amd_index++;
+	}
+
+	drmFreeDevices(devices, drm_count);
+	return amd_index;
+}
+static bool
+amdgpu_node_is_drm(int maj, int min)
+{
+	char path[64];
+	struct stat sbuf;
+
+	snprintf(path, sizeof(path), "/sys/dev/char/%d:%d/device/drm", maj, min);
+	return stat(path, &sbuf) == 0;
+}
+
+static char *
+amdgpu_get_device_from_fd(int fd)
+{
+	struct stat sbuf;
+	char path[PATH_MAX + 1];
+	unsigned int maj, min;
+
+	if (fstat(fd, &sbuf))
+		return NULL;
+
+	maj = major(sbuf.st_rdev);
+	min = minor(sbuf.st_rdev);
+
+	if (!amdgpu_node_is_drm(maj, min) || !S_ISCHR(sbuf.st_mode))
+		return NULL;
+
+	snprintf(path, sizeof(path), "/sys/dev/char/%d:%d/device", maj, min);
+	return strdup(path);
+}
+
+static int
+amdgpu_hotunplug_trigger(const char *pathname)
+{
+	int len;
+	int fd= -1;
+
+	fd = open(pathname, O_WRONLY);
+	if (fd <= 0 )
+		goto release;
+
+	len = write(fd, "1", 1);
+
+	close(fd);
+
+release:
+	return len;
+}
+
+static bool
+amdgpu_hotunplug_setup_test(bool render_mode, const struct amd_pci_unplug_setup *setup,
+							struct amd_pci_unplug *unplug)
+{
+	char *tmp_str = NULL;
+	bool ret = false;
+	int r;
+	uint32_t  major_version, minor_version;
+
+	unplug->num_devices = amdgpu_open_devices(render_mode, MAX_CARDS_SUPPORTED,
+											  unplug->drm_amdgpu_fds);
+	if (unplug->num_devices == 0 )
+		goto release;
+
+	if (setup->open_device && setup->open_device2 && unplug->num_devices < 2) {
+		/*Not enough board for the test*/
+		printf("SKIP ... more than 1 GPU is required for this test\n");
+		goto release;
+	}
+
+	tmp_str = amdgpu_get_device_from_fd(unplug->drm_amdgpu_fds[0]);
+	abort_oom_if_null(tmp_str);
+	unplug->sysfs_remove = realloc(tmp_str, strlen(tmp_str) * 2);
+	abort_oom_if_null(unplug->sysfs_remove );
+	strcat(unplug->sysfs_remove, "/remove");
+
+	r = amdgpu_device_initialize(unplug->drm_amdgpu_fds[0], &major_version,
+									 &minor_version, &unplug->device_handle);
+	if (r != 0)
+		goto release;
+
+	if (minor_version < setup->minor_version_req)
+		goto release;
+
+	if (!setup->open_device) {
+			/* device handle is not always required for test */
+			/* but for drm version is required always */
+		amdgpu_device_deinitialize(unplug->device_handle);
+		unplug->device_handle = NULL;
+	}
+		/* TODO launch another process */
+	if (setup->open_device2) {
+		r = amdgpu_device_initialize(unplug->drm_amdgpu_fds[1], &major_version,
+						   &minor_version, &unplug->device_handle2);
+		if (r != 0)
+			goto release;
+		if (minor_version < setup->minor_version_req)
+			goto release;
+	}
+	ret = true;
+release:
+	return ret;
+}
+
+static void
+amdgpu_hotunplug_teardown_test(struct amd_pci_unplug *unplug)
+{
+	int i;
+	if (unplug->device_handle) {
+		amdgpu_device_deinitialize(unplug->device_handle);
+		unplug->device_handle = NULL;
+	}
+	if (unplug->device_handle2) {
+		amdgpu_device_deinitialize(unplug->device_handle2);
+		unplug->device_handle2 = NULL;
+	}
+	for (i = 0; i < unplug->num_devices; i++) {
+		if (unplug->drm_amdgpu_fds[i] >= 0 ) {
+			close(unplug->drm_amdgpu_fds[i]);
+			unplug->drm_amdgpu_fds[i] = -1;
+		}
+	}
+	if (unplug->sysfs_remove) {
+		free(unplug->sysfs_remove);
+		unplug->sysfs_remove = NULL;
+	}
+}
+
+static int
+amdgpu_hotunplug_remove(struct amd_pci_unplug *unplug)
+{
+	int r = amdgpu_hotunplug_trigger(unplug->sysfs_remove);
+	return r;
+}
+
+static int
+amdgpu_hotunplug_rescan(void)
+{
+	int r = amdgpu_hotunplug_trigger("/sys/bus/pci/rescan");
+	return r;
+}
+
+static int
+amdgpu_cs_sync(amdgpu_context_handle context, unsigned int ip_type,	int ring,
+				unsigned int seqno)
+{
+	struct amdgpu_cs_fence fence = {
+		.context = context,
+		.ip_type = ip_type,
+		.ring = ring,
+		.fence = seqno,
+	};
+	uint32_t expired;
+	int ret;
+
+	ret = amdgpu_cs_query_fence_status(&fence,
+					   AMDGPU_TIMEOUT_INFINITE,
+					   0, &expired);
+	return ret;
+}
+
+static void *
+amdgpu_nop_cs(void *handle)
+{
+	amdgpu_bo_handle ib_result_handle;
+	void *ib_result_cpu;
+	uint64_t ib_result_mc_address;
+	int r;
+	amdgpu_bo_list_handle bo_list;
+	amdgpu_va_handle va_handle;
+	amdgpu_context_handle context;
+	struct amdgpu_cs_request ibs_request;
+	struct amdgpu_cs_ib_info ib_info;
+	int bo_cmd_size = 4096;
+	struct amd_pci_unplug * unplug = handle;
+	amdgpu_device_handle device_handle = unplug->device_handle;
+
+	struct amdgpu_cmd_base * base_cmd = get_cmd_base();
+	r = amdgpu_cs_ctx_create(device_handle, &context);
+	igt_assert_eq(r, 0);
+
+	r = amdgpu_bo_alloc_and_map(device_handle, bo_cmd_size, 4096,
+				    AMDGPU_GEM_DOMAIN_GTT, 0,
+				    &ib_result_handle, &ib_result_cpu,
+				    &ib_result_mc_address, &va_handle);
+	igt_assert_eq(r, 0);
+
+	memset(ib_result_cpu, 0, bo_cmd_size);
+	base_cmd->attach_buf(base_cmd, ib_result_cpu, bo_cmd_size);
+	base_cmd->emit_repeat(base_cmd, GFX_COMPUTE_NOP , 16);
+
+	r = amdgpu_bo_list_create(device_handle, 1, &ib_result_handle, NULL, &bo_list);
+	igt_assert_eq(r, 0);
+
+	memset(&ib_info, 0, sizeof(struct amdgpu_cs_ib_info));
+	ib_info.ib_mc_address = ib_result_mc_address;
+	ib_info.size = base_cmd->cdw;
+
+	memset(&ibs_request, 0, sizeof(struct amdgpu_cs_request));
+	ibs_request.ip_type = AMDGPU_HW_IP_GFX;
+	ibs_request.ring = 0;
+	ibs_request.number_of_ibs = 1;
+	ibs_request.ibs = &ib_info;
+	ibs_request.resources = bo_list;
+
+	while (unplug->do_cs)
+		amdgpu_cs_submit(context, 0, &ibs_request, 1);
+
+	amdgpu_cs_sync(context, AMDGPU_HW_IP_GFX, 0, ibs_request.seq_no);
+	amdgpu_bo_list_destroy(bo_list);
+	amdgpu_bo_unmap_and_free(ib_result_handle, va_handle, ib_result_mc_address,
+							4096);
+
+	amdgpu_cs_ctx_free(context);
+	free_cmd_base(base_cmd);
+
+	return NULL;
+}
+
+static pthread_t*
+amdgpu_create_cs_thread(struct amd_pci_unplug * unplug)
+{
+	int r;
+	pthread_t *thread = malloc(sizeof(*thread));
+	if (!thread)
+		return NULL;
+
+	unplug->do_cs = true;
+
+	r = pthread_create(thread, NULL, &amdgpu_nop_cs, unplug);
+	igt_assert_eq(r, 0);
+
+	/* Give thread enough time to start*/
+	usleep(1000000);
+	return thread;
+}
+
+static void
+amdgpu_wait_cs_thread(struct amd_pci_unplug * unplug, pthread_t *thread)
+{
+	unplug->do_cs = false;
+
+	pthread_join(*thread, NULL);
+	free(thread);
+}
+
+static void
+amdgpu_hotunplug_test(bool render_mode, const struct amd_pci_unplug_setup *setup,
+					  struct amd_pci_unplug * unplug,  bool with_cs)
+{
+	int r;
+	pthread_t *thread = NULL;
+
+	r = amdgpu_hotunplug_setup_test(render_mode, setup, unplug);
+	igt_assert_eq(r , 1);
+
+	if (with_cs)
+		thread = amdgpu_create_cs_thread(unplug);
+
+	r = amdgpu_hotunplug_remove(unplug);
+	igt_assert_eq(r > 0, 1);
+
+	if (with_cs)
+		amdgpu_wait_cs_thread(unplug, thread);
+
+	amdgpu_hotunplug_teardown_test(unplug);
+
+	r = amdgpu_hotunplug_rescan();
+	igt_assert_eq(r > 0, 1);
+}
+
+void
+amdgpu_hotunplug_simple(struct amd_pci_unplug_setup *setup,
+						struct amd_pci_unplug *unplug)
+{
+	memset(unplug, 0, sizeof(*unplug));
+	amdgpu_hotunplug_test(true, setup, unplug, false);
+}
+
+ void
+ amdgpu_hotunplug_with_cs(struct amd_pci_unplug_setup *setup,
+ 						 struct amd_pci_unplug *unplug)
+{
+	memset(unplug, 0, sizeof(*unplug));
+	setup->open_device = true;
+	amdgpu_hotunplug_test(true, setup, unplug, true);
+}
+
+void
+amdgpu_hotunplug_with_exported_bo(struct amd_pci_unplug_setup *setup,
+								  struct amd_pci_unplug *unplug)
+{
+	int r;
+	uint32_t dma_buf_fd;
+	unsigned int *ptr;
+	amdgpu_bo_handle bo_handle;
+
+	struct amdgpu_bo_alloc_request request = {
+		.alloc_size = 4096,
+		.phys_alignment = 4096,
+		.preferred_heap = AMDGPU_GEM_DOMAIN_GTT,
+		.flags = 0,
+	};
+	memset(unplug, 0, sizeof(*unplug));
+	setup->open_device = true;
+
+	r = amdgpu_hotunplug_setup_test(true, setup, unplug);
+	igt_assert_eq(r , 1);
+
+	r = amdgpu_bo_alloc(unplug->device_handle, &request, &bo_handle);
+	igt_assert_eq(r, 0);
+
+	r = amdgpu_bo_export(bo_handle, amdgpu_bo_handle_type_dma_buf_fd, &dma_buf_fd);
+	igt_assert_eq(r, 0);
+
+	ptr = mmap(NULL, 4096, PROT_READ | PROT_WRITE, MAP_SHARED, dma_buf_fd, 0);
+
+	r = amdgpu_hotunplug_remove(unplug);
+	igt_assert_eq(r > 0, 1);
+
+	amdgpu_bo_free(bo_handle);
+
+	amdgpu_hotunplug_teardown_test(unplug);
+
+	*ptr = 0xdeafbeef;
+
+	munmap(ptr, 4096);
+	close (dma_buf_fd);
+
+	r = amdgpu_hotunplug_rescan();
+	igt_assert_eq(r > 0, 1);
+}
+
+void
+amdgpu_hotunplug_with_exported_fence(struct amd_pci_unplug_setup *setup,
+									 struct amd_pci_unplug *unplug)
+{
+	amdgpu_bo_handle ib_result_handle;
+	void *ib_result_cpu;
+	uint64_t ib_result_mc_address;
+	uint32_t sync_obj_handle, sync_obj_handle2;
+	int r;
+	amdgpu_bo_list_handle bo_list;
+	amdgpu_va_handle va_handle;
+	amdgpu_context_handle context;
+	struct amdgpu_cs_request ibs_request;
+	struct amdgpu_cs_ib_info ib_info;
+	struct amdgpu_cs_fence fence_status = {0};
+	int shared_fd;
+	int bo_cmd_size = 4096;
+	struct amdgpu_cmd_base * base_cmd = get_cmd_base();
+
+	memset(unplug, 0, sizeof(*unplug));
+	setup->open_device = true;
+	setup->open_device2 = true;
+
+
+	r = amdgpu_hotunplug_setup_test(true, setup, unplug);
+	if( r != 1) {
+		goto release;
+	}
+
+	r = amdgpu_cs_ctx_create(unplug->device_handle, &context);
+	igt_assert_eq(r, 0);
+
+	r = amdgpu_bo_alloc_and_map(unplug->device_handle, bo_cmd_size, 4096,
+				    AMDGPU_GEM_DOMAIN_GTT, 0,
+				    &ib_result_handle, &ib_result_cpu,
+				    &ib_result_mc_address, &va_handle);
+	igt_assert_eq(r, 0);
+	memset(ib_result_cpu, 0, bo_cmd_size);
+	base_cmd->attach_buf(base_cmd, ib_result_cpu, bo_cmd_size);
+	base_cmd->emit_repeat(base_cmd, GFX_COMPUTE_NOP , 16);
+
+	r = amdgpu_bo_list_create(unplug->device_handle, 1, &ib_result_handle, NULL,
+							  &bo_list);
+	igt_assert_eq(r, 0);
+
+	memset(&ib_info, 0, sizeof(struct amdgpu_cs_ib_info));
+	ib_info.ib_mc_address = ib_result_mc_address;
+	ib_info.size = base_cmd->cdw;
+
+	memset(&ibs_request, 0, sizeof(struct amdgpu_cs_request));
+	ibs_request.ip_type = AMDGPU_HW_IP_GFX;
+	ibs_request.ring = 0;
+	ibs_request.number_of_ibs = 1;
+	ibs_request.ibs = &ib_info;
+	ibs_request.resources = bo_list;
+
+	r = amdgpu_cs_submit(context, 0, &ibs_request, 1);
+	igt_assert_eq(r, 0);
+
+	fence_status.context = context;
+	fence_status.ip_type = AMDGPU_HW_IP_GFX;
+	fence_status.ip_instance = 0;
+	fence_status.fence = ibs_request.seq_no;
+
+	amdgpu_cs_fence_to_handle(unplug->device_handle, &fence_status,
+						AMDGPU_FENCE_TO_HANDLE_GET_SYNCOBJ, &sync_obj_handle);
+	igt_assert_eq(r, 0);
+
+	r = amdgpu_cs_export_syncobj(unplug->device_handle, sync_obj_handle, &shared_fd);
+	igt_assert_eq(r, 0);
+
+	r = amdgpu_cs_import_syncobj(unplug->device_handle2, shared_fd, &sync_obj_handle2);
+	igt_assert_eq(r, 0);
+
+	r = amdgpu_cs_destroy_syncobj(unplug->device_handle, sync_obj_handle);
+	igt_assert_eq(r, 0);
+
+	amdgpu_bo_list_destroy(bo_list);
+	amdgpu_bo_unmap_and_free(ib_result_handle, va_handle, ib_result_mc_address,
+							 4096);
+
+	amdgpu_cs_ctx_free(context);
+
+	r = amdgpu_hotunplug_remove(unplug);
+	igt_assert_eq(r > 0, 1);
+
+	r = amdgpu_cs_syncobj_wait(unplug->device_handle2, &sync_obj_handle2, 1, 100000000, 0, NULL);
+	igt_assert_eq(r, 0);
+
+	r = amdgpu_cs_destroy_syncobj(unplug->device_handle2, sync_obj_handle2);
+	igt_assert_eq(r, 0);
+
+	amdgpu_hotunplug_teardown_test(unplug);
+
+	r = amdgpu_hotunplug_rescan();
+	igt_assert_eq(r > 0, 1);
+release:
+	free_cmd_base(base_cmd);
+}
diff --git a/lib/amdgpu/amd_pci_unplug.h b/lib/amdgpu/amd_pci_unplug.h
new file mode 100644
index 000000000..509b6ec4c
--- /dev/null
+++ b/lib/amdgpu/amd_pci_unplug.h
@@ -0,0 +1,65 @@
+/* SPDX-License-Identifier: MIT
+ * Copyright 2022 Advanced Micro Devices, Inc.
+ *
+ * Permission is hereby granted, free of charge, to any person obtaining a
+ * copy of this software and associated documentation files (the "Software"),
+ * to deal in the Software without restriction, including without limitation
+ * the rights to use, copy, modify, merge, publish, distribute, sublicense,
+ * and/or sell copies of the Software, and to permit persons to whom the
+ * Software is furnished to do so, subject to the following conditions:
+ *
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
+ * THE COPYRIGHT HOLDER(S) OR AUTHOR(S) BE LIABLE FOR ANY CLAIM, DAMAGES OR
+ * OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
+ * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
+ * OTHER DEALINGS IN THE SOFTWARE.
+ *
+ *
+ */
+#ifndef AMD_PCI_UNPLUG_H
+#define AMD_PCI_UNPLUG_H
+
+#include <amdgpu.h>
+#include <amdgpu_drm.h>
+
+#define MAX_CARDS_SUPPORTED 4
+
+struct amd_pci_unplug_setup {
+	uint32_t  major_version_req;
+	uint32_t  minor_version_req;
+	bool open_device;
+	bool open_device2;
+};
+
+struct amd_pci_unplug {
+	char *sysfs_remove ;
+	int drm_amdgpu_fds[MAX_CARDS_SUPPORTED];
+	int num_devices;
+	amdgpu_device_handle device_handle;
+	amdgpu_device_handle device_handle2;
+	volatile bool do_cs;
+};
+
+void
+amdgpu_hotunplug_simple(struct amd_pci_unplug_setup *setup,
+						struct amd_pci_unplug *unplug);
+
+void
+amdgpu_hotunplug_with_cs(struct amd_pci_unplug_setup *setup,
+						 struct amd_pci_unplug *unplug);
+
+void
+amdgpu_hotunplug_with_exported_bo(struct amd_pci_unplug_setup *setup,
+								  struct amd_pci_unplug *unplug);
+
+void
+amdgpu_hotunplug_with_exported_fence(struct amd_pci_unplug_setup *setup,
+									 struct amd_pci_unplug *unplug);
+
+
+#endif
diff --git a/lib/amdgpu/xalloc.h b/lib/amdgpu/xalloc.h
new file mode 100644
index 000000000..840b065f6
--- /dev/null
+++ b/lib/amdgpu/xalloc.h
@@ -0,0 +1,57 @@
+/*
+ * Copyright © 2008 Kristian Høgsberg
+ * Copyright 2022 Collabora, Ltd.
+ *
+ * Permission is hereby granted, free of charge, to any person obtaining
+ * a copy of this software and associated documentation files (the
+ * "Software"), to deal in the Software without restriction, including
+ * without limitation the rights to use, copy, modify, merge, publish,
+ * distribute, sublicense, and/or sell copies of the Software, and to
+ * permit persons to whom the Software is furnished to do so, subject to
+ * the following conditions:
+ *
+ * The above copyright notice and this permission notice (including the
+ * next paragraph) shall be included in all copies or substantial
+ * portions of the Software.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+ * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+ * NONINFRINGEMENT.  IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
+ * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
+ * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
+ * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+ * SOFTWARE.
+ */
+
+#ifndef WESTON_XALLOC_H
+#define WESTON_XALLOC_H
+
+#include <errno.h>
+#include <stdlib.h>
+#include <unistd.h>
+#include <string.h>
+
+static inline void *
+abort_oom_if_null(void *p)
+{
+	static const char oommsg[] = ": out of memory\n";
+	size_t written __attribute__((unused));
+
+	if (p)
+		return p;
+
+	written = write(STDERR_FILENO, program_invocation_short_name,
+		        strlen(program_invocation_short_name));
+	written = write(STDERR_FILENO, oommsg, strlen(oommsg));
+
+	abort();
+}
+
+#define xmalloc(s) (abort_oom_if_null(malloc(s)))
+#define xzalloc(s) (abort_oom_if_null(calloc(1, s)))
+#define xcalloc(n, s) (abort_oom_if_null(calloc(n, s)))
+#define xstrdup(s) (abort_oom_if_null(strdup(s)))
+#define xrealloc(p, s) (abort_oom_if_null(realloc(p, s)))
+
+#endif /* WESTON_XALLOC_H */
diff --git a/lib/meson.build b/lib/meson.build
index 3f758e98c..cef2d0ff3 100644
--- a/lib/meson.build
+++ b/lib/meson.build
@@ -141,7 +141,9 @@ if libdrm_amdgpu.found()
 		'amdgpu/amd_gfx_v9_0.c',
 		'amdgpu/amd_dispatch_helpers.c',
 		'amdgpu/amd_dispatch.c',
-		'amdgpu/amd_deadlock_helpers.c'
+		'amdgpu/amd_deadlock_helpers.c',
+		'amdgpu/amd_pci_unplug.c',
+		'amdgpu/xalloc.h'
 	]
 endif
 
diff --git a/tests/amdgpu/amd_pci_unplug.c b/tests/amdgpu/amd_pci_unplug.c
new file mode 100644
index 000000000..4c055b99f
--- /dev/null
+++ b/tests/amdgpu/amd_pci_unplug.c
@@ -0,0 +1,58 @@
+/* SPDX-License-Identifier: MIT
+ * Copyright © 2017 Intel Corporation
+ *
+ * Permission is hereby granted, free of charge, to any person obtaining a
+ * copy of this software and associated documentation files (the "Software"),
+ * to deal in the Software without restriction, including without limitation
+ * the rights to use, copy, modify, merge, publish, distribute, sublicense,
+ * and/or sell copies of the Software, and to permit persons to whom the
+ * Software is furnished to do so, subject to the following conditions:
+ *
+ * The above copyright notice and this permission notice (including the next
+ * paragraph) shall be included in all copies or substantial portions of the
+ * Software.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
+ * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+ * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
+ * IN THE SOFTWARE.
+ */
+
+#include "igt.h"
+#include "drmtest.h"
+
+#include <amdgpu.h>
+#include <amdgpu_drm.h>
+#include "lib/amdgpu/amd_PM4.h"
+#include "lib/amdgpu/amd_pci_unplug.h"
+#include "lib/amdgpu/amd_ip_blocks.h"
+
+
+igt_main
+{
+
+	struct amd_pci_unplug_setup setup = {0};
+	struct amd_pci_unplug unplug = {0};
+
+	igt_fixture {
+		setup.minor_version_req = 46;
+	}
+
+	igt_subtest("amdgpu_hotunplug_simple")
+		amdgpu_hotunplug_simple(&setup, &unplug);
+
+	igt_subtest("amdgpu_hotunplug_with_cs")
+		amdgpu_hotunplug_with_cs(&setup, &unplug);
+
+		/*TODO about second GPU*/
+	igt_subtest("amdgpu_hotunplug_with_exported_bo")
+		amdgpu_hotunplug_with_exported_bo(&setup, &unplug);
+
+	igt_subtest("amdgpu_hotunplug_with_exported_fence")
+		amdgpu_hotunplug_with_exported_fence(&setup, &unplug);
+
+	igt_fixture { }
+}
diff --git a/tests/amdgpu/meson.build b/tests/amdgpu/meson.build
index 36b83ab1c..48b916925 100644
--- a/tests/amdgpu/meson.build
+++ b/tests/amdgpu/meson.build
@@ -7,6 +7,7 @@ if libdrm_amdgpu.found()
 			  'amd_basic',
 			  'amd_bypass',
 			  'amd_deadlock',
+			  'amd_pci_unplug',
 			  'amd_color',
 			  'amd_cs_nop',
 			  'amd_hotplug',
-- 
2.25.1

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

* [igt-dev] ✓ Fi.CI.BAT: success for series starting with [1/9] lib/amdgpu: add SPDX-License-Identifier: MIT
  2022-11-11 21:52 [igt-dev] [PATCH 1/9] lib/amdgpu: add SPDX-License-Identifier: MIT vitaly.prosyak
                   ` (7 preceding siblings ...)
  2022-11-11 21:52 ` [igt-dev] [PATCH 9/9] tests/amdgpu: PCI unplug 4 tests for different scenario vitaly.prosyak
@ 2022-11-11 22:27 ` Patchwork
  2022-11-12 14:38 ` [igt-dev] ✓ Fi.CI.IGT: " Patchwork
  2022-11-12 18:28 ` [igt-dev] [PATCH 1/9] " Christian König
  10 siblings, 0 replies; 13+ messages in thread
From: Patchwork @ 2022-11-11 22:27 UTC (permalink / raw)
  To: vitaly.prosyak; +Cc: igt-dev

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

== Series Details ==

Series: series starting with [1/9] lib/amdgpu: add SPDX-License-Identifier: MIT
URL   : https://patchwork.freedesktop.org/series/110829/
State : success

== Summary ==

CI Bug Log - changes from CI_DRM_12371 -> IGTPW_8090
====================================================

Summary
-------

  **SUCCESS**

  No regressions found.

  External URL: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8090/index.html

Participating hosts (41 -> 39)
------------------------------

  Missing    (2): fi-ctg-p8600 fi-kbl-x1275 

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

  Here are the changes found in IGTPW_8090 that come from known issues:

### IGT changes ###

#### Issues hit ####

  * igt@kms_chamelium@common-hpd-after-suspend:
    - fi-rkl-11600:       NOTRUN -> [SKIP][1] ([fdo#111827])
   [1]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8090/fi-rkl-11600/igt@kms_chamelium@common-hpd-after-suspend.html

  * igt@kms_cursor_legacy@basic-busy-flip-before-cursor@atomic-transitions:
    - fi-bsw-kefka:       [PASS][2] -> [FAIL][3] ([i915#6298])
   [2]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12371/fi-bsw-kefka/igt@kms_cursor_legacy@basic-busy-flip-before-cursor@atomic-transitions.html
   [3]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8090/fi-bsw-kefka/igt@kms_cursor_legacy@basic-busy-flip-before-cursor@atomic-transitions.html

  * igt@kms_pipe_crc_basic@suspend-read-crc@pipe-b-hdmi-a-2:
    - fi-icl-u2:          [PASS][4] -> [DMESG-WARN][5] ([i915#2867])
   [4]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12371/fi-icl-u2/igt@kms_pipe_crc_basic@suspend-read-crc@pipe-b-hdmi-a-2.html
   [5]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8090/fi-icl-u2/igt@kms_pipe_crc_basic@suspend-read-crc@pipe-b-hdmi-a-2.html

  
#### Possible fixes ####

  * igt@fbdev@read:
    - {bat-rpls-2}:       [SKIP][6] ([i915#2582]) -> [PASS][7] +4 similar issues
   [6]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12371/bat-rpls-2/igt@fbdev@read.html
   [7]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8090/bat-rpls-2/igt@fbdev@read.html

  * igt@gem_exec_suspend@basic-s0@smem:
    - {bat-rplp-1}:       [DMESG-WARN][8] ([i915#2867]) -> [PASS][9]
   [8]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12371/bat-rplp-1/igt@gem_exec_suspend@basic-s0@smem.html
   [9]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8090/bat-rplp-1/igt@gem_exec_suspend@basic-s0@smem.html

  * igt@i915_module_load@load:
    - {bat-dg2-8}:        [FAIL][10] ([i915#7328]) -> [PASS][11]
   [10]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12371/bat-dg2-8/igt@i915_module_load@load.html
   [11]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8090/bat-dg2-8/igt@i915_module_load@load.html

  * igt@i915_suspend@basic-s3-without-i915:
    - fi-rkl-11600:       [INCOMPLETE][12] ([i915#4817]) -> [PASS][13]
   [12]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12371/fi-rkl-11600/igt@i915_suspend@basic-s3-without-i915.html
   [13]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8090/fi-rkl-11600/igt@i915_suspend@basic-s3-without-i915.html
    - {bat-kbl-2}:        [INCOMPLETE][14] ([i915#4817]) -> [PASS][15]
   [14]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12371/bat-kbl-2/igt@i915_suspend@basic-s3-without-i915.html
   [15]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8090/bat-kbl-2/igt@i915_suspend@basic-s3-without-i915.html

  * igt@kms_frontbuffer_tracking@basic:
    - {bat-rpls-2}:       [SKIP][16] ([i915#1849]) -> [PASS][17]
   [16]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12371/bat-rpls-2/igt@kms_frontbuffer_tracking@basic.html
   [17]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8090/bat-rpls-2/igt@kms_frontbuffer_tracking@basic.html

  * igt@prime_vgem@basic-fence-flip:
    - {bat-rpls-2}:       [SKIP][18] ([fdo#109295] / [i915#1845] / [i915#3708]) -> [PASS][19]
   [18]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12371/bat-rpls-2/igt@prime_vgem@basic-fence-flip.html
   [19]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8090/bat-rpls-2/igt@prime_vgem@basic-fence-flip.html

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

  [fdo#109271]: https://bugs.freedesktop.org/show_bug.cgi?id=109271
  [fdo#109285]: https://bugs.freedesktop.org/show_bug.cgi?id=109285
  [fdo#109295]: https://bugs.freedesktop.org/show_bug.cgi?id=109295
  [fdo#111827]: https://bugs.freedesktop.org/show_bug.cgi?id=111827
  [i915#1072]: https://gitlab.freedesktop.org/drm/intel/issues/1072
  [i915#1155]: https://gitlab.freedesktop.org/drm/intel/issues/1155
  [i915#1845]: https://gitlab.freedesktop.org/drm/intel/issues/1845
  [i915#1849]: https://gitlab.freedesktop.org/drm/intel/issues/1849
  [i915#2582]: https://gitlab.freedesktop.org/drm/intel/issues/2582
  [i915#2867]: https://gitlab.freedesktop.org/drm/intel/issues/2867
  [i915#3291]: https://gitlab.freedesktop.org/drm/intel/issues/3291
  [i915#3555]: https://gitlab.freedesktop.org/drm/intel/issues/3555
  [i915#3708]: https://gitlab.freedesktop.org/drm/intel/issues/3708
  [i915#4077]: https://gitlab.freedesktop.org/drm/intel/issues/4077
  [i915#4079]: https://gitlab.freedesktop.org/drm/intel/issues/4079
  [i915#4083]: https://gitlab.freedesktop.org/drm/intel/issues/4083
  [i915#4103]: https://gitlab.freedesktop.org/drm/intel/issues/4103
  [i915#4212]: https://gitlab.freedesktop.org/drm/intel/issues/4212
  [i915#4215]: https://gitlab.freedesktop.org/drm/intel/issues/4215
  [i915#4312]: https://gitlab.freedesktop.org/drm/intel/issues/4312
  [i915#4579]: https://gitlab.freedesktop.org/drm/intel/issues/4579
  [i915#4817]: https://gitlab.freedesktop.org/drm/intel/issues/4817
  [i915#4873]: https://gitlab.freedesktop.org/drm/intel/issues/4873
  [i915#4983]: https://gitlab.freedesktop.org/drm/intel/issues/4983
  [i915#5190]: https://gitlab.freedesktop.org/drm/intel/issues/5190
  [i915#5274]: https://gitlab.freedesktop.org/drm/intel/issues/5274
  [i915#5354]: https://gitlab.freedesktop.org/drm/intel/issues/5354
  [i915#6257]: https://gitlab.freedesktop.org/drm/intel/issues/6257
  [i915#6298]: https://gitlab.freedesktop.org/drm/intel/issues/6298
  [i915#6434]: https://gitlab.freedesktop.org/drm/intel/issues/6434
  [i915#6621]: https://gitlab.freedesktop.org/drm/intel/issues/6621
  [i915#6645]: https://gitlab.freedesktop.org/drm/intel/issues/6645
  [i915#7328]: https://gitlab.freedesktop.org/drm/intel/issues/7328
  [i915#7498]: https://gitlab.freedesktop.org/drm/intel/issues/7498


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

  * CI: CI-20190529 -> None
  * IGT: IGT_7051 -> IGTPW_8090

  CI-20190529: 20190529
  CI_DRM_12371: 3abfcf048c08ca9c7bbaba0c57c699453fd37a2e @ git://anongit.freedesktop.org/gfx-ci/linux
  IGTPW_8090: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8090/index.html
  IGT_7051: 7da9f813cdacb80d4471fc6ddb493bae9c46913d @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git


Testlist changes
----------------

-igt@v3d_create_bo@create-bo-0
-igt@v3d_create_bo@create-bo-4096
-igt@v3d_create_bo@create-bo-zeroed
-igt@v3d_perfmon@create-perfmon-0
-igt@v3d_perfmon@create-perfmon-exceed
-igt@v3d_perfmon@create-perfmon-invalid-counters
-igt@v3d_perfmon@create-single-perfmon
-igt@v3d_perfmon@create-two-perfmon
-igt@v3d_perfmon@destroy-invalid-perfmon
-igt@v3d_perfmon@destroy-valid-perfmon
-igt@v3d_perfmon@get-values-invalid-pad
-igt@v3d_perfmon@get-values-invalid-perfmon
-igt@v3d_perfmon@get-values-invalid-pointer
-igt@v3d_perfmon@get-values-valid-perfmon

== Logs ==

For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8090/index.html

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

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

* [igt-dev] ✓ Fi.CI.IGT: success for series starting with [1/9] lib/amdgpu: add SPDX-License-Identifier: MIT
  2022-11-11 21:52 [igt-dev] [PATCH 1/9] lib/amdgpu: add SPDX-License-Identifier: MIT vitaly.prosyak
                   ` (8 preceding siblings ...)
  2022-11-11 22:27 ` [igt-dev] ✓ Fi.CI.BAT: success for series starting with [1/9] lib/amdgpu: add SPDX-License-Identifier: MIT Patchwork
@ 2022-11-12 14:38 ` Patchwork
  2022-11-12 18:28 ` [igt-dev] [PATCH 1/9] " Christian König
  10 siblings, 0 replies; 13+ messages in thread
From: Patchwork @ 2022-11-12 14:38 UTC (permalink / raw)
  To: vitaly.prosyak; +Cc: igt-dev

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

== Series Details ==

Series: series starting with [1/9] lib/amdgpu: add SPDX-License-Identifier: MIT
URL   : https://patchwork.freedesktop.org/series/110829/
State : success

== Summary ==

CI Bug Log - changes from CI_DRM_12371_full -> IGTPW_8090_full
====================================================

Summary
-------

  **SUCCESS**

  No regressions found.

  External URL: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8090/index.html

Participating hosts (11 -> 8)
------------------------------

  Missing    (3): pig-skl-6260u pig-kbl-iris pig-glk-j5005 

Possible new issues
-------------------

  Here are the unknown changes that may have been introduced in IGTPW_8090_full:

### IGT changes ###

#### Suppressed ####

  The following results come from untrusted machines, tests, or statuses.
  They do not affect the overall result.

  * igt@kms_invalid_mode@int-max-clock:
    - {shard-rkl}:        NOTRUN -> [SKIP][1]
   [1]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8090/shard-rkl-4/igt@kms_invalid_mode@int-max-clock.html

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

  Here are the changes found in IGTPW_8090_full that come from known issues:

### IGT changes ###

#### Issues hit ####

  * igt@gem_ctx_persistence@processes:
    - shard-snb:          NOTRUN -> [SKIP][2] ([fdo#109271] / [i915#1099]) +1 similar issue
   [2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8090/shard-snb7/igt@gem_ctx_persistence@processes.html

  * igt@gem_exec_balancer@parallel-balancer:
    - shard-iclb:         [PASS][3] -> [SKIP][4] ([i915#4525])
   [3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12371/shard-iclb1/igt@gem_exec_balancer@parallel-balancer.html
   [4]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8090/shard-iclb6/igt@gem_exec_balancer@parallel-balancer.html

  * igt@gem_exec_fair@basic-deadline:
    - shard-apl:          NOTRUN -> [FAIL][5] ([i915#2846])
   [5]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8090/shard-apl1/igt@gem_exec_fair@basic-deadline.html
    - shard-glk:          [PASS][6] -> [FAIL][7] ([i915#2846])
   [6]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12371/shard-glk3/igt@gem_exec_fair@basic-deadline.html
   [7]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8090/shard-glk8/igt@gem_exec_fair@basic-deadline.html

  * igt@gem_exec_flush@basic-batch-kernel-default-cmd:
    - shard-iclb:         NOTRUN -> [SKIP][8] ([fdo#109313])
   [8]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8090/shard-iclb3/igt@gem_exec_flush@basic-batch-kernel-default-cmd.html
    - shard-tglb:         NOTRUN -> [SKIP][9] ([fdo#109313])
   [9]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8090/shard-tglb1/igt@gem_exec_flush@basic-batch-kernel-default-cmd.html

  * igt@gem_huc_copy@huc-copy:
    - shard-apl:          NOTRUN -> [SKIP][10] ([fdo#109271] / [i915#2190])
   [10]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8090/shard-apl8/igt@gem_huc_copy@huc-copy.html
    - shard-glk:          NOTRUN -> [SKIP][11] ([fdo#109271] / [i915#2190])
   [11]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8090/shard-glk6/igt@gem_huc_copy@huc-copy.html

  * igt@gem_lmem_swapping@heavy-verify-multi-ccs:
    - shard-tglb:         NOTRUN -> [SKIP][12] ([i915#4613]) +1 similar issue
   [12]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8090/shard-tglb1/igt@gem_lmem_swapping@heavy-verify-multi-ccs.html

  * igt@gem_lmem_swapping@verify-ccs:
    - shard-apl:          NOTRUN -> [SKIP][13] ([fdo#109271] / [i915#4613])
   [13]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8090/shard-apl7/igt@gem_lmem_swapping@verify-ccs.html

  * igt@gem_mmap_offset@close-race:
    - shard-glk:          [PASS][14] -> [DMESG-WARN][15] ([i915#118])
   [14]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12371/shard-glk6/igt@gem_mmap_offset@close-race.html
   [15]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8090/shard-glk8/igt@gem_mmap_offset@close-race.html

  * igt@gem_render_copy@yf-tiled-to-vebox-yf-tiled:
    - shard-iclb:         NOTRUN -> [SKIP][16] ([i915#768])
   [16]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8090/shard-iclb8/igt@gem_render_copy@yf-tiled-to-vebox-yf-tiled.html

  * igt@gem_vm_create@invalid-create:
    - shard-snb:          NOTRUN -> [SKIP][17] ([fdo#109271]) +52 similar issues
   [17]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8090/shard-snb5/igt@gem_vm_create@invalid-create.html

  * igt@i915_pm_dc@dc6-dpms:
    - shard-iclb:         [PASS][18] -> [FAIL][19] ([i915#3989] / [i915#454])
   [18]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12371/shard-iclb8/igt@i915_pm_dc@dc6-dpms.html
   [19]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8090/shard-iclb3/igt@i915_pm_dc@dc6-dpms.html

  * igt@i915_pm_rc6_residency@rc6-fence:
    - shard-tglb:         [PASS][20] -> [WARN][21] ([i915#2681])
   [20]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12371/shard-tglb2/igt@i915_pm_rc6_residency@rc6-fence.html
   [21]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8090/shard-tglb5/igt@i915_pm_rc6_residency@rc6-fence.html

  * igt@kms_atomic_transition@plane-all-modeset-transition-fencing@pipe-b-hdmi-a-2:
    - shard-glk:          NOTRUN -> [INCOMPLETE][22] ([i915#5584])
   [22]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8090/shard-glk8/igt@kms_atomic_transition@plane-all-modeset-transition-fencing@pipe-b-hdmi-a-2.html

  * igt@kms_big_fb@4-tiled-max-hw-stride-32bpp-rotate-180-async-flip:
    - shard-tglb:         NOTRUN -> [SKIP][23] ([i915#5286])
   [23]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8090/shard-tglb3/igt@kms_big_fb@4-tiled-max-hw-stride-32bpp-rotate-180-async-flip.html

  * igt@kms_big_fb@linear-8bpp-rotate-270:
    - shard-tglb:         NOTRUN -> [SKIP][24] ([fdo#111614])
   [24]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8090/shard-tglb2/igt@kms_big_fb@linear-8bpp-rotate-270.html
    - shard-iclb:         NOTRUN -> [SKIP][25] ([fdo#110725] / [fdo#111614])
   [25]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8090/shard-iclb5/igt@kms_big_fb@linear-8bpp-rotate-270.html

  * igt@kms_big_fb@yf-tiled-max-hw-stride-32bpp-rotate-0:
    - shard-tglb:         NOTRUN -> [SKIP][26] ([fdo#111615]) +1 similar issue
   [26]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8090/shard-tglb2/igt@kms_big_fb@yf-tiled-max-hw-stride-32bpp-rotate-0.html

  * igt@kms_big_fb@yf-tiled-max-hw-stride-64bpp-rotate-180-hflip:
    - shard-iclb:         NOTRUN -> [SKIP][27] ([fdo#110723])
   [27]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8090/shard-iclb5/igt@kms_big_fb@yf-tiled-max-hw-stride-64bpp-rotate-180-hflip.html

  * igt@kms_ccs@pipe-a-bad-pixel-format-y_tiled_gen12_rc_ccs_cc:
    - shard-iclb:         NOTRUN -> [SKIP][28] ([fdo#109278] / [i915#3886]) +3 similar issues
   [28]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8090/shard-iclb6/igt@kms_ccs@pipe-a-bad-pixel-format-y_tiled_gen12_rc_ccs_cc.html

  * igt@kms_ccs@pipe-a-missing-ccs-buffer-yf_tiled_ccs:
    - shard-tglb:         NOTRUN -> [SKIP][29] ([fdo#111615] / [i915#3689])
   [29]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8090/shard-tglb3/igt@kms_ccs@pipe-a-missing-ccs-buffer-yf_tiled_ccs.html

  * igt@kms_ccs@pipe-b-ccs-on-another-bo-y_tiled_gen12_rc_ccs_cc:
    - shard-apl:          NOTRUN -> [SKIP][30] ([fdo#109271] / [i915#3886]) +6 similar issues
   [30]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8090/shard-apl2/igt@kms_ccs@pipe-b-ccs-on-another-bo-y_tiled_gen12_rc_ccs_cc.html

  * igt@kms_ccs@pipe-b-crc-sprite-planes-basic-y_tiled_gen12_mc_ccs:
    - shard-tglb:         NOTRUN -> [SKIP][31] ([i915#3689] / [i915#3886]) +1 similar issue
   [31]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8090/shard-tglb8/igt@kms_ccs@pipe-b-crc-sprite-planes-basic-y_tiled_gen12_mc_ccs.html

  * igt@kms_ccs@pipe-b-missing-ccs-buffer-y_tiled_gen12_rc_ccs:
    - shard-iclb:         NOTRUN -> [SKIP][32] ([fdo#109278]) +2 similar issues
   [32]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8090/shard-iclb8/igt@kms_ccs@pipe-b-missing-ccs-buffer-y_tiled_gen12_rc_ccs.html

  * igt@kms_ccs@pipe-c-crc-primary-basic-y_tiled_ccs:
    - shard-tglb:         NOTRUN -> [SKIP][33] ([i915#3689]) +3 similar issues
   [33]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8090/shard-tglb7/igt@kms_ccs@pipe-c-crc-primary-basic-y_tiled_ccs.html

  * igt@kms_ccs@pipe-c-random-ccs-data-4_tiled_dg2_rc_ccs_cc:
    - shard-tglb:         NOTRUN -> [SKIP][34] ([i915#6095])
   [34]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8090/shard-tglb2/igt@kms_ccs@pipe-c-random-ccs-data-4_tiled_dg2_rc_ccs_cc.html

  * igt@kms_ccs@pipe-c-random-ccs-data-y_tiled_gen12_rc_ccs_cc:
    - shard-glk:          NOTRUN -> [SKIP][35] ([fdo#109271] / [i915#3886]) +5 similar issues
   [35]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8090/shard-glk5/igt@kms_ccs@pipe-c-random-ccs-data-y_tiled_gen12_rc_ccs_cc.html

  * igt@kms_chamelium@dp-crc-single:
    - shard-glk:          NOTRUN -> [SKIP][36] ([fdo#109271] / [fdo#111827]) +2 similar issues
   [36]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8090/shard-glk6/igt@kms_chamelium@dp-crc-single.html

  * igt@kms_chamelium@dp-hpd-after-suspend:
    - shard-tglb:         NOTRUN -> [SKIP][37] ([fdo#109284] / [fdo#111827]) +1 similar issue
   [37]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8090/shard-tglb1/igt@kms_chamelium@dp-hpd-after-suspend.html

  * igt@kms_chamelium@vga-hpd-after-suspend:
    - shard-apl:          NOTRUN -> [SKIP][38] ([fdo#109271] / [fdo#111827]) +4 similar issues
   [38]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8090/shard-apl8/igt@kms_chamelium@vga-hpd-after-suspend.html

  * igt@kms_content_protection@content_type_change:
    - shard-tglb:         NOTRUN -> [SKIP][39] ([i915#7118]) +1 similar issue
   [39]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8090/shard-tglb7/igt@kms_content_protection@content_type_change.html
    - shard-iclb:         NOTRUN -> [SKIP][40] ([i915#7118])
   [40]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8090/shard-iclb2/igt@kms_content_protection@content_type_change.html

  * igt@kms_cursor_crc@cursor-offscreen-max-size:
    - shard-tglb:         NOTRUN -> [SKIP][41] ([i915#3555])
   [41]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8090/shard-tglb6/igt@kms_cursor_crc@cursor-offscreen-max-size.html

  * igt@kms_cursor_legacy@cursorb-vs-flipb@atomic:
    - shard-tglb:         NOTRUN -> [SKIP][42] ([fdo#109274] / [fdo#111825]) +7 similar issues
   [42]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8090/shard-tglb3/igt@kms_cursor_legacy@cursorb-vs-flipb@atomic.html

  * igt@kms_cursor_legacy@cursorb-vs-flipb@legacy:
    - shard-iclb:         NOTRUN -> [SKIP][43] ([fdo#109274]) +6 similar issues
   [43]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8090/shard-iclb2/igt@kms_cursor_legacy@cursorb-vs-flipb@legacy.html

  * igt@kms_flip@2x-flip-vs-absolute-wf_vblank:
    - shard-tglb:         NOTRUN -> [SKIP][44] ([fdo#109274] / [fdo#111825] / [i915#3637]) +1 similar issue
   [44]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8090/shard-tglb6/igt@kms_flip@2x-flip-vs-absolute-wf_vblank.html

  * igt@kms_flip_scaled_crc@flip-32bpp-xtile-to-64bpp-xtile-downscaling@pipe-a-default-mode:
    - shard-iclb:         NOTRUN -> [SKIP][45] ([i915#3555])
   [45]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8090/shard-iclb2/igt@kms_flip_scaled_crc@flip-32bpp-xtile-to-64bpp-xtile-downscaling@pipe-a-default-mode.html

  * igt@kms_flip_scaled_crc@flip-32bpp-ytile-to-32bpp-ytileccs-downscaling@pipe-a-default-mode:
    - shard-iclb:         [PASS][46] -> [SKIP][47] ([i915#3555])
   [46]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12371/shard-iclb3/igt@kms_flip_scaled_crc@flip-32bpp-ytile-to-32bpp-ytileccs-downscaling@pipe-a-default-mode.html
   [47]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8090/shard-iclb2/igt@kms_flip_scaled_crc@flip-32bpp-ytile-to-32bpp-ytileccs-downscaling@pipe-a-default-mode.html

  * igt@kms_flip_scaled_crc@flip-64bpp-4tile-to-32bpp-4tile-downscaling@pipe-a-valid-mode:
    - shard-tglb:         NOTRUN -> [SKIP][48] ([i915#2587] / [i915#2672]) +2 similar issues
   [48]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8090/shard-tglb1/igt@kms_flip_scaled_crc@flip-64bpp-4tile-to-32bpp-4tile-downscaling@pipe-a-valid-mode.html

  * igt@kms_flip_scaled_crc@flip-64bpp-4tile-to-32bpp-4tiledg2rcccs-upscaling@pipe-a-default-mode:
    - shard-iclb:         NOTRUN -> [SKIP][49] ([i915#2672]) +3 similar issues
   [49]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8090/shard-iclb3/igt@kms_flip_scaled_crc@flip-64bpp-4tile-to-32bpp-4tiledg2rcccs-upscaling@pipe-a-default-mode.html

  * igt@kms_flip_scaled_crc@flip-64bpp-yftile-to-16bpp-yftile-upscaling@pipe-a-valid-mode:
    - shard-iclb:         NOTRUN -> [SKIP][50] ([i915#2587] / [i915#2672]) +2 similar issues
   [50]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8090/shard-iclb7/igt@kms_flip_scaled_crc@flip-64bpp-yftile-to-16bpp-yftile-upscaling@pipe-a-valid-mode.html

  * igt@kms_flip_scaled_crc@flip-64bpp-ytile-to-32bpp-ytilegen12rcccs-upscaling@pipe-a-valid-mode:
    - shard-iclb:         NOTRUN -> [SKIP][51] ([i915#2672] / [i915#3555]) +1 similar issue
   [51]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8090/shard-iclb7/igt@kms_flip_scaled_crc@flip-64bpp-ytile-to-32bpp-ytilegen12rcccs-upscaling@pipe-a-valid-mode.html

  * igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-spr-indfb-move:
    - shard-tglb:         NOTRUN -> [SKIP][52] ([i915#6497]) +4 similar issues
   [52]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8090/shard-tglb3/igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-spr-indfb-move.html

  * igt@kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-spr-indfb-draw-blt:
    - shard-tglb:         NOTRUN -> [SKIP][53] ([fdo#109280] / [fdo#111825]) +7 similar issues
   [53]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8090/shard-tglb7/igt@kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-spr-indfb-draw-blt.html

  * igt@kms_frontbuffer_tracking@psr-2p-scndscrn-indfb-pgflip-blt:
    - shard-iclb:         NOTRUN -> [SKIP][54] ([fdo#109280]) +2 similar issues
   [54]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8090/shard-iclb2/igt@kms_frontbuffer_tracking@psr-2p-scndscrn-indfb-pgflip-blt.html

  * igt@kms_frontbuffer_tracking@psr-2p-scndscrn-spr-indfb-draw-render:
    - shard-apl:          NOTRUN -> [SKIP][55] ([fdo#109271]) +118 similar issues
   [55]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8090/shard-apl8/igt@kms_frontbuffer_tracking@psr-2p-scndscrn-spr-indfb-draw-render.html

  * igt@kms_plane@plane-panning-bottom-right-suspend@pipe-b-planes:
    - shard-apl:          [PASS][56] -> [DMESG-WARN][57] ([i915#180]) +1 similar issue
   [56]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12371/shard-apl1/igt@kms_plane@plane-panning-bottom-right-suspend@pipe-b-planes.html
   [57]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8090/shard-apl3/igt@kms_plane@plane-panning-bottom-right-suspend@pipe-b-planes.html

  * igt@kms_plane_alpha_blend@constant-alpha-max@pipe-b-dp-1:
    - shard-apl:          NOTRUN -> [FAIL][58] ([i915#4573]) +2 similar issues
   [58]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8090/shard-apl3/igt@kms_plane_alpha_blend@constant-alpha-max@pipe-b-dp-1.html

  * igt@kms_plane_alpha_blend@constant-alpha-max@pipe-c-hdmi-a-1:
    - shard-glk:          NOTRUN -> [FAIL][59] ([i915#4573]) +2 similar issues
   [59]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8090/shard-glk2/igt@kms_plane_alpha_blend@constant-alpha-max@pipe-c-hdmi-a-1.html

  * igt@kms_plane_scaling@plane-downscale-with-rotation-factor-0-5@pipe-b-edp-1:
    - shard-iclb:         NOTRUN -> [SKIP][60] ([i915#5176]) +2 similar issues
   [60]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8090/shard-iclb3/igt@kms_plane_scaling@plane-downscale-with-rotation-factor-0-5@pipe-b-edp-1.html

  * igt@kms_plane_scaling@plane-downscale-with-rotation-factor-0-5@pipe-b-hdmi-a-2:
    - shard-glk:          NOTRUN -> [SKIP][61] ([fdo#109271]) +55 similar issues
   [61]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8090/shard-glk9/igt@kms_plane_scaling@plane-downscale-with-rotation-factor-0-5@pipe-b-hdmi-a-2.html

  * igt@kms_plane_scaling@plane-downscale-with-rotation-factor-0-5@pipe-d-edp-1:
    - shard-tglb:         NOTRUN -> [SKIP][62] ([i915#5176]) +3 similar issues
   [62]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8090/shard-tglb8/igt@kms_plane_scaling@plane-downscale-with-rotation-factor-0-5@pipe-d-edp-1.html

  * igt@kms_plane_scaling@planes-upscale-20x20-downscale-factor-0-5@pipe-b-edp-1:
    - shard-iclb:         [PASS][63] -> [SKIP][64] ([i915#5235]) +2 similar issues
   [63]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12371/shard-iclb6/igt@kms_plane_scaling@planes-upscale-20x20-downscale-factor-0-5@pipe-b-edp-1.html
   [64]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8090/shard-iclb2/igt@kms_plane_scaling@planes-upscale-20x20-downscale-factor-0-5@pipe-b-edp-1.html

  * igt@kms_psr2_sf@cursor-plane-move-continuous-sf:
    - shard-apl:          NOTRUN -> [SKIP][65] ([fdo#109271] / [i915#658]) +1 similar issue
   [65]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8090/shard-apl2/igt@kms_psr2_sf@cursor-plane-move-continuous-sf.html

  * igt@kms_psr2_sf@overlay-plane-move-continuous-exceed-sf:
    - shard-iclb:         NOTRUN -> [SKIP][66] ([i915#658])
   [66]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8090/shard-iclb7/igt@kms_psr2_sf@overlay-plane-move-continuous-exceed-sf.html
    - shard-tglb:         NOTRUN -> [SKIP][67] ([i915#2920])
   [67]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8090/shard-tglb2/igt@kms_psr2_sf@overlay-plane-move-continuous-exceed-sf.html
    - shard-glk:          NOTRUN -> [SKIP][68] ([fdo#109271] / [i915#658])
   [68]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8090/shard-glk8/igt@kms_psr2_sf@overlay-plane-move-continuous-exceed-sf.html

  * igt@kms_psr@psr2_cursor_render:
    - shard-tglb:         NOTRUN -> [FAIL][69] ([i915#132] / [i915#3467])
   [69]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8090/shard-tglb5/igt@kms_psr@psr2_cursor_render.html
    - shard-iclb:         NOTRUN -> [SKIP][70] ([fdo#109441])
   [70]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8090/shard-iclb6/igt@kms_psr@psr2_cursor_render.html

  * igt@kms_psr@psr2_primary_page_flip:
    - shard-iclb:         [PASS][71] -> [SKIP][72] ([fdo#109441]) +3 similar issues
   [71]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12371/shard-iclb2/igt@kms_psr@psr2_primary_page_flip.html
   [72]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8090/shard-iclb8/igt@kms_psr@psr2_primary_page_flip.html

  * igt@kms_rotation_crc@primary-yf-tiled-reflect-x-0:
    - shard-tglb:         NOTRUN -> [SKIP][73] ([fdo#111615] / [i915#5289])
   [73]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8090/shard-tglb8/igt@kms_rotation_crc@primary-yf-tiled-reflect-x-0.html

  * igt@kms_writeback@writeback-check-output:
    - shard-tglb:         NOTRUN -> [SKIP][74] ([i915#2437])
   [74]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8090/shard-tglb5/igt@kms_writeback@writeback-check-output.html

  * igt@sysfs_clients@create:
    - shard-apl:          NOTRUN -> [SKIP][75] ([fdo#109271] / [i915#2994]) +1 similar issue
   [75]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8090/shard-apl6/igt@sysfs_clients@create.html

  
#### Possible fixes ####

  * igt@fbdev@info:
    - {shard-rkl}:        [SKIP][76] ([i915#2582]) -> [PASS][77]
   [76]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12371/shard-rkl-5/igt@fbdev@info.html
   [77]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8090/shard-rkl-1/igt@fbdev@info.html

  * igt@gem_ctx_exec@basic-nohangcheck:
    - shard-tglb:         [FAIL][78] ([i915#6268]) -> [PASS][79]
   [78]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12371/shard-tglb1/igt@gem_ctx_exec@basic-nohangcheck.html
   [79]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8090/shard-tglb3/igt@gem_ctx_exec@basic-nohangcheck.html

  * igt@gem_eio@unwedge-stress:
    - {shard-dg1}:        [FAIL][80] ([i915#5784]) -> [PASS][81] +1 similar issue
   [80]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12371/shard-dg1-13/igt@gem_eio@unwedge-stress.html
   [81]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8090/shard-dg1-17/igt@gem_eio@unwedge-stress.html

  * igt@gem_exec_balancer@parallel-contexts:
    - shard-iclb:         [SKIP][82] ([i915#4525]) -> [PASS][83] +2 similar issues
   [82]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12371/shard-iclb5/igt@gem_exec_balancer@parallel-contexts.html
   [83]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8090/shard-iclb2/igt@gem_exec_balancer@parallel-contexts.html

  * igt@gem_exec_fair@basic-flow@rcs0:
    - {shard-rkl}:        [FAIL][84] ([i915#2842]) -> [PASS][85]
   [84]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12371/shard-rkl-1/igt@gem_exec_fair@basic-flow@rcs0.html
   [85]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8090/shard-rkl-6/igt@gem_exec_fair@basic-flow@rcs0.html

  * igt@gem_exec_fair@basic-none@vecs0:
    - shard-glk:          [FAIL][86] ([i915#2842]) -> [PASS][87]
   [86]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12371/shard-glk9/igt@gem_exec_fair@basic-none@vecs0.html
   [87]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8090/shard-glk2/igt@gem_exec_fair@basic-none@vecs0.html

  * igt@gem_exec_reloc@basic-write-read:
    - {shard-rkl}:        [SKIP][88] ([i915#3281]) -> [PASS][89] +2 similar issues
   [88]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12371/shard-rkl-4/igt@gem_exec_reloc@basic-write-read.html
   [89]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8090/shard-rkl-5/igt@gem_exec_reloc@basic-write-read.html

  * igt@gem_huc_copy@huc-copy:
    - shard-tglb:         [SKIP][90] ([i915#2190]) -> [PASS][91]
   [90]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12371/shard-tglb6/igt@gem_huc_copy@huc-copy.html
   [91]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8090/shard-tglb2/igt@gem_huc_copy@huc-copy.html

  * igt@gem_partial_pwrite_pread@reads:
    - {shard-rkl}:        [SKIP][92] ([i915#3282]) -> [PASS][93] +1 similar issue
   [92]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12371/shard-rkl-3/igt@gem_partial_pwrite_pread@reads.html
   [93]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8090/shard-rkl-5/igt@gem_partial_pwrite_pread@reads.html

  * igt@gen9_exec_parse@allowed-single:
    - shard-apl:          [DMESG-WARN][94] ([i915#5566] / [i915#716]) -> [PASS][95]
   [94]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12371/shard-apl6/igt@gen9_exec_parse@allowed-single.html
   [95]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8090/shard-apl8/igt@gen9_exec_parse@allowed-single.html
    - shard-glk:          [DMESG-WARN][96] ([i915#5566] / [i915#716]) -> [PASS][97]
   [96]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12371/shard-glk6/igt@gen9_exec_parse@allowed-single.html
   [97]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8090/shard-glk5/igt@gen9_exec_parse@allowed-single.html

  * igt@gen9_exec_parse@basic-rejected-ctx-param:
    - {shard-rkl}:        [SKIP][98] ([i915#2527]) -> [PASS][99]
   [98]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12371/shard-rkl-1/igt@gen9_exec_parse@basic-rejected-ctx-param.html
   [99]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8090/shard-rkl-5/igt@gen9_exec_parse@basic-rejected-ctx-param.html

  * igt@i915_pm_dc@dc9-dpms:
    - shard-apl:          [FAIL][100] ([i915#4275]) -> [PASS][101]
   [100]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12371/shard-apl8/igt@i915_pm_dc@dc9-dpms.html
   [101]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8090/shard-apl8/igt@i915_pm_dc@dc9-dpms.html

  * igt@i915_pm_rc6_residency@rc6-idle@vecs0:
    - {shard-dg1}:        [FAIL][102] ([i915#3591]) -> [PASS][103]
   [102]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12371/shard-dg1-12/igt@i915_pm_rc6_residency@rc6-idle@vecs0.html
   [103]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8090/shard-dg1-13/igt@i915_pm_rc6_residency@rc6-idle@vecs0.html

  * igt@i915_pm_rpm@modeset-lpsp-stress:
    - {shard-rkl}:        [SKIP][104] ([i915#1397]) -> [PASS][105]
   [104]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12371/shard-rkl-1/igt@i915_pm_rpm@modeset-lpsp-stress.html
   [105]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8090/shard-rkl-6/igt@i915_pm_rpm@modeset-lpsp-stress.html

  * igt@i915_pm_rpm@system-suspend-devices:
    - {shard-rkl}:        [FAIL][106] ([i915#7478]) -> [PASS][107]
   [106]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12371/shard-rkl-4/igt@i915_pm_rpm@system-suspend-devices.html
   [107]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8090/shard-rkl-6/igt@i915_pm_rpm@system-suspend-devices.html

  * igt@kms_atomic_transition@plane-all-modeset-transition-fencing@pipe-b-hdmi-a-1:
    - shard-glk:          [INCOMPLETE][108] ([i915#5584]) -> [PASS][109]
   [108]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12371/shard-glk1/igt@kms_atomic_transition@plane-all-modeset-transition-fencing@pipe-b-hdmi-a-1.html
   [109]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8090/shard-glk8/igt@kms_atomic_transition@plane-all-modeset-transition-fencing@pipe-b-hdmi-a-1.html

  * igt@kms_cursor_legacy@2x-long-flip-vs-cursor-legacy:
    - shard-glk:          [FAIL][110] ([i915#72]) -> [PASS][111]
   [110]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12371/shard-glk9/igt@kms_cursor_legacy@2x-long-flip-vs-cursor-legacy.html
   [111]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8090/shard-glk2/igt@kms_cursor_legacy@2x-long-flip-vs-cursor-legacy.html

  * igt@kms_cursor_legacy@flip-vs-cursor@atomic-transitions-varying-size:
    - shard-glk:          [FAIL][112] ([i915#2346]) -> [PASS][113]
   [112]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12371/shard-glk5/igt@kms_cursor_legacy@flip-vs-cursor@atomic-transitions-varying-size.html
   [113]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8090/shard-glk5/igt@kms_cursor_legacy@flip-vs-cursor@atomic-transitions-varying-size.html

  * igt@kms_flip@flip-vs-suspend-interruptible@d-hdmi-a4:
    - {shard-dg1}:        [FAIL][114] ([fdo#103375]) -> [PASS][115]
   [114]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12371/shard-dg1-17/igt@kms_flip@flip-vs-suspend-interruptible@d-hdmi-a4.html
   [115]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8090/shard-dg1-18/igt@kms_flip@flip-vs-suspend-interruptible@d-hdmi-a4.html

  * igt@kms_frontbuffer_tracking@fbc-badstride:
    - {shard-rkl}:        [SKIP][116] ([i915#1849] / [i915#4098]) -> [PASS][117] +6 similar issues
   [116]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12371/shard-rkl-1/igt@kms_frontbuffer_tracking@fbc-badstride.html
   [117]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8090/shard-rkl-6/igt@kms_frontbuffer_tracking@fbc-badstride.html

  * igt@kms_plane@plane-position-covered@pipe-a-planes:
    - {shard-rkl}:        [SKIP][118] ([i915#3558]) -> [PASS][119] +1 similar issue
   [118]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12371/shard-rkl-3/igt@kms_plane@plane-position-covered@pipe-a-planes.html
   [119]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8090/shard-rkl-6/igt@kms_plane@plane-position-covered@pipe-a-planes.html

  * igt@kms_plane_scaling@planes-upscale-factor-0-25-downscale-factor-0-5@pipe-a-edp-1:
    - shard-iclb:         [SKIP][120] ([i915#5235]) -> [PASS][121] +2 similar issues
   [120]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12371/shard-iclb2/igt@kms_plane_scaling@planes-upscale-factor-0-25-downscale-factor-0-5@pipe-a-edp-1.html
   [121]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8090/shard-iclb3/igt@kms_plane_scaling@planes-upscale-factor-0-25-downscale-factor-0-5@pipe-a-edp-1.html

  * igt@kms_psr@psr2_sprite_blt:
    - shard-iclb:         [SKIP][122] ([fdo#109441]) -> [PASS][123] +2 similar issues
   [122]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12371/shard-iclb6/igt@kms_psr@psr2_sprite_blt.html
   [123]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8090/shard-iclb2/igt@kms_psr@psr2_sprite_blt.html

  * igt@kms_psr@suspend:
    - {shard-rkl}:        [SKIP][124] ([i915#1072]) -> [PASS][125]
   [124]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12371/shard-rkl-5/igt@kms_psr@suspend.html
   [125]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8090/shard-rkl-6/igt@kms_psr@suspend.html

  * igt@kms_psr_stress_test@invalidate-primary-flip-overlay:
    - shard-tglb:         [SKIP][126] ([i915#5519]) -> [PASS][127]
   [126]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12371/shard-tglb8/igt@kms_psr_stress_test@invalidate-primary-flip-overlay.html
   [127]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8090/shard-tglb6/igt@kms_psr_stress_test@invalidate-primary-flip-overlay.html

  * igt@kms_vblank@pipe-b-query-idle:
    - {shard-rkl}:        [SKIP][128] ([i915#1845] / [i915#4098]) -> [PASS][129] +17 similar issues
   [128]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12371/shard-rkl-1/igt@kms_vblank@pipe-b-query-idle.html
   [129]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8090/shard-rkl-6/igt@kms_vblank@pipe-b-query-idle.html

  * igt@perf_pmu@busy-idle@vcs1:
    - {shard-dg1}:        [FAIL][130] ([i915#4349]) -> [PASS][131] +1 similar issue
   [130]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12371/shard-dg1-15/igt@perf_pmu@busy-idle@vcs1.html
   [131]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8090/shard-dg1-18/igt@perf_pmu@busy-idle@vcs1.html

  * igt@prime_vgem@basic-fence-flip:
    - {shard-rkl}:        [SKIP][132] ([fdo#109295] / [i915#3708] / [i915#4098]) -> [PASS][133]
   [132]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12371/shard-rkl-4/igt@prime_vgem@basic-fence-flip.html
   [133]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8090/shard-rkl-6/igt@prime_vgem@basic-fence-flip.html

  
#### Warnings ####

  * igt@gem_exec_balancer@parallel-ordering:
    - shard-iclb:         [SKIP][134] ([i915#4525]) -> [FAIL][135] ([i915#6117])
   [134]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12371/shard-iclb3/igt@gem_exec_balancer@parallel-ordering.html
   [135]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8090/shard-iclb1/igt@gem_exec_balancer@parallel-ordering.html

  * igt@gem_pread@exhaustion:
    - shard-apl:          [INCOMPLETE][136] ([i915#7248]) -> [WARN][137] ([i915#2658])
   [136]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12371/shard-apl8/igt@gem_pread@exhaustion.html
   [137]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8090/shard-apl7/igt@gem_pread@exhaustion.html
    - shard-tglb:         [INCOMPLETE][138] ([i915#7248]) -> [WARN][139] ([i915#2658])
   [138]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12371/shard-tglb5/igt@gem_pread@exhaustion.html
   [139]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8090/shard-tglb1/igt@gem_pread@exhaustion.html
    - shard-glk:          [INCOMPLETE][140] ([i915#7248]) -> [WARN][141] ([i915#2658])
   [140]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12371/shard-glk2/igt@gem_pread@exhaustion.html
   [141]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8090/shard-glk2/igt@gem_pread@exhaustion.html

  * igt@gem_pwrite@basic-exhaustion:
    - shard-apl:          [INCOMPLETE][142] ([i915#7248]) -> [FAIL][143] ([i915#7279])
   [142]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12371/shard-apl3/igt@gem_pwrite@basic-exhaustion.html
   [143]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8090/shard-apl3/igt@gem_pwrite@basic-exhaustion.html
    - shard-tglb:         [WARN][144] ([i915#2658]) -> [INCOMPLETE][145] ([i915#7248])
   [144]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12371/shard-tglb8/igt@gem_pwrite@basic-exhaustion.html
   [145]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8090/shard-tglb1/igt@gem_pwrite@basic-exhaustion.html

  * igt@kms_plane_alpha_blend@alpha-basic@pipe-c-dp-1:
    - shard-apl:          [FAIL][146] ([i915#4573]) -> [DMESG-FAIL][147] ([IGT#6]) +1 similar issue
   [146]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12371/shard-apl6/igt@kms_plane_alpha_blend@alpha-basic@pipe-c-dp-1.html
   [147]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8090/shard-apl2/igt@kms_plane_alpha_blend@alpha-basic@pipe-c-dp-1.html

  * igt@kms_psr2_sf@cursor-plane-move-continuous-exceed-sf:
    - shard-iclb:         [SKIP][148] ([i915#2920]) -> [SKIP][149] ([i915#658]) +1 similar issue
   [148]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12371/shard-iclb2/igt@kms_psr2_sf@cursor-plane-move-continuous-exceed-sf.html
   [149]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8090/shard-iclb7/igt@kms_psr2_sf@cursor-plane-move-continuous-exceed-sf.html

  * igt@kms_psr2_sf@overlay-plane-move-continuous-sf:
    - shard-iclb:         [SKIP][150] ([i915#658]) -> [SKIP][151] ([i915#2920]) +1 similar issue
   [150]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12371/shard-iclb6/igt@kms_psr2_sf@overlay-plane-move-continuous-sf.html
   [151]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8090/shard-iclb2/igt@kms_psr2_sf@overlay-plane-move-continuous-sf.html

  * igt@kms_psr2_sf@overlay-primary-update-sf-dmg-area:
    - shard-iclb:         [SKIP][152] ([fdo#111068] / [i915#658]) -> [SKIP][153] ([i915#2920])
   [152]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12371/shard-iclb7/igt@kms_psr2_sf@overlay-primary-update-sf-dmg-area.html
   [153]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8090/shard-iclb2/igt@kms_psr2_sf@overlay-primary-update-sf-dmg-area.html

  * igt@runner@aborted:
    - shard-apl:          ([FAIL][154], [FAIL][155], [FAIL][156]) ([fdo#109271] / [i915#3002] / [i915#4312]) -> ([FAIL][157], [FAIL][158], [FAIL][159]) ([i915#3002] / [i915#4312])
   [154]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12371/shard-apl3/igt@runner@aborted.html
   [155]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12371/shard-apl6/igt@runner@aborted.html
   [156]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12371/shard-apl6/igt@runner@aborted.html
   [157]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8090/shard-apl3/igt@runner@aborted.html
   [158]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8090/shard-apl1/igt@runner@aborted.html
   [159]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8090/shard-apl6/igt@runner@aborted.html

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

  [IGT#6]: https://gitlab.freedesktop.org/drm/igt-gpu-tools/issues/6
  [fdo#103375]: https://bugs.freedesktop.org/show_bug.cgi?id=103375
  [fdo#109271]: https://bugs.freedesktop.org/show_bug.cgi?id=109271
  [fdo#109274]: https://bugs.freedesktop.org/show_bug.cgi?id=109274
  [fdo#109278]: https://bugs.freedesktop.org/show_bug.cgi?id=109278
  [fdo#109280]: https://bugs.freedesktop.org/show_bug.cgi?id=109280
  [fdo#109283]: https://bugs.freedesktop.org/show_bug.cgi?id=109283
  [fdo#109284]: https://bugs.freedesktop.org/show_bug.cgi?id=109284
  [fdo#109289]: https://bugs.freedesktop.org/show_bug.cgi?id=109289
  [fdo#109295]: https://bugs.freedesktop.org/show_bug.cgi?id=109295
  [fdo#109307]: https://bugs.freedesktop.org/show_bug.cgi?id=109307
  [fdo#109312]: https://bugs.freedesktop.org/show_bug.cgi?id=109312
  [fdo#109313]: https://bugs.freedesktop.org/show_bug.cgi?id=109313
  [fdo#109441]: https://bugs.freedesktop.org/show_bug.cgi?id=109441
  [fdo#109506]: https://bugs.freedesktop.org/show_bug.cgi?id=109506
  [fdo#110189]: https://bugs.freedesktop.org/show_bug.cgi?id=110189
  [fdo#110723]: https://bugs.freedesktop.org/show_bug.cgi?id=110723
  [fdo#110725]: https://bugs.freedesktop.org/show_bug.cgi?id=110725
  [fdo#111068]: https://bugs.freedesktop.org/show_bug.cgi?id=111068
  [fdo#111614]: https://bugs.freedesktop.org/show_bug.cgi?id=111614
  [fdo#111615]: https://bugs.freedesktop.org/show_bug.cgi?id=111615
  [fdo#111825]: https://bugs.freedesktop.org/show_bug.cgi?id=111825
  [fdo#111827]: https://bugs.freedesktop.org/show_bug.cgi?id=111827
  [fdo#112054]: https://bugs.freedesktop.org/show_bug.cgi?id=112054
  [fdo#112283]: https://bugs.freedesktop.org/show_bug.cgi?id=112283
  [i915#1072]: https://gitlab.freedesktop.org/drm/intel/issues/1072
  [i915#1099]: https://gitlab.freedesktop.org/drm/intel/issues/1099
  [i915#1155]: https://gitlab.freedesktop.org/drm/intel/issues/1155
  [i915#118]: https://gitlab.freedesktop.org/drm/intel/issues/118
  [i915#132]: https://gitlab.freedesktop.org/drm/intel/issues/132
  [i915#1397]: https://gitlab.freedesktop.org/drm/intel/issues/1397
  [i915#1769]: https://gitlab.freedesktop.org/drm/intel/issues/1769
  [i915#180]: https://gitlab.freedesktop.org/drm/intel/issues/180
  [i915#1825]: https://gitlab.freedesktop.org/drm/intel/issues/1825
  [i915#1839]: https://gitlab.freedesktop.org/drm/intel/issues/1839
  [i915#1845]: https://gitlab.freedesktop.org/drm/intel/issues/1845
  [i915#1849]: https://gitlab.freedesktop.org/drm/intel/issues/1849
  [i915#2190]: https://gitlab.freedesktop.org/drm/intel/issues/2190
  [i915#2232]: https://gitlab.freedesktop.org/drm/intel/issues/2232
  [i915#2346]: https://gitlab.freedesktop.org/drm/intel/issues/2346
  [i915#2436]: https://gitlab.freedesktop.org/drm/intel/issues/2436
  [i915#2437]: https://gitlab.freedesktop.org/drm/intel/issues/2437
  [i915#2527]: https://gitlab.freedesktop.org/drm/intel/issues/2527
  [i915#2532]: https://gitlab.freedesktop.org/drm/intel/issues/2532
  [i915#2582]: https://gitlab.freedesktop.org/drm/intel/issues/2582
  [i915#2587]: https://gitlab.freedesktop.org/drm/intel/issues/2587
  [i915#2658]: https://gitlab.freedesktop.org/drm/intel/issues/2658
  [i915#2672]: https://gitlab.freedesktop.org/drm/intel/issues/2672
  [i915#2681]: https://gitlab.freedesktop.org/drm/intel/issues/2681
  [i915#2705]: https://gitlab.freedesktop.org/drm/intel/issues/2705
  [i915#280]: https://gitlab.freedesktop.org/drm/intel/issues/280
  [i915#2842]: https://gitlab.freedesktop.org/drm/intel/issues/2842
  [i915#2846]: https://gitlab.freedesktop.org/drm/intel/issues/2846
  [i915#2920]: https://gitlab.freedesktop.org/drm/intel/issues/2920
  [i915#2994]: https://gitlab.freedesktop.org/drm/intel/issues/2994
  [i915#3002]: https://gitlab.freedesktop.org/drm/intel/issues/3002
  [i915#3116]: https://gitlab.freedesktop.org/drm/intel/issues/3116
  [i915#3281]: https://gitlab.freedesktop.org/drm/intel/issues/3281
  [i915#3282]: https://gitlab.freedesktop.org/drm/intel/issues/3282
  [i915#3291]: https://gitlab.freedesktop.org/drm/intel/issues/3291
  [i915#3297]: https://gitlab.freedesktop.org/drm/intel/issues/3297
  [i915#3299]: https://gitlab.freedesktop.org/drm/intel/issues/3299
  [i915#3359]: https://gitlab.freedesktop.org/drm/intel/issues/3359
  [i915#3458]: https://gitlab.freedesktop.org/drm/intel/issues/3458
  [i915#3467]: https://gitlab.freedesktop.org/drm/intel/issues/3467
  [i915#3469]: https://gitlab.freedesktop.org/drm/intel/issues/3469
  [i915#3539]: https://gitlab.freedesktop.org/drm/intel/issues/3539
  [i915#3546]: https://gitlab.freedesktop.org/drm/intel/issues/3546
  [i915#3555]: https://gitlab.freedesktop.org/drm/intel/issues/3555
  [i915#3558]: https://gitlab.freedesktop.org/drm/intel/issues/3558
  [i915#3591]: https://gitlab.freedesktop.org/drm/intel/issues/3591
  [i915#3637]: https://gitlab.freedesktop.org/drm/intel/issues/3637
  [i915#3638]: https://gitlab.freedesktop.org/drm/intel/issues/3638
  [i915#3639]: https://gitlab.freedesktop.org/drm/intel/issues/3639
  [i915#3689]: https://gitlab.freedesktop.org/drm/intel/issues/3689
  [i915#3708]: https://gitlab.freedesktop.org/drm/intel/issues/3708
  [i915#3734]: https://gitlab.freedesktop.org/drm/intel/issues/3734
  [i915#3840]: https://gitlab.freedesktop.org/drm/intel/issues/3840
  [i915#3886]: https://gitlab.freedesktop.org/drm/intel/issues/3886
  [i915#3955]: https://gitlab.freedesktop.org/drm/intel/issues/3955
  [i915#3989]: https://gitlab.freedesktop.org/drm/intel/issues/3989
  [i915#4070]: https://gitlab.freedesktop.org/drm/intel/issues/4070
  [i915#4077]: https://gitlab.freedesktop.org/drm/intel/issues/4077
  [i915#4078]: https://gitlab.freedesktop.org/drm/intel/issues/4078
  [i915#4079]: https://gitlab.freedesktop.org/drm/intel/issues/4079
  [i915#4083]: https://gitlab.freedesktop.org/drm/intel/issues/4083
  [i915#4098]: https://gitlab.freedesktop.org/drm/intel/issues/4098
  [i915#4103]: https://gitlab.freedesktop.org/drm/intel/issues/4103
  [i915#4212]: https://gitlab.freedesktop.org/drm/intel/issues/4212
  [i915#4213]: https://gitlab.freedesktop.org/drm/intel/issues/4213
  [i915#4270]: https://gitlab.freedesktop.org/drm/intel/issues/4270
  [i915#4275]: https://gitlab.freedesktop.org/drm/intel/issues/4275
  [i915#4312]: https://gitlab.freedesktop.org/drm/intel/issues/4312
  [i915#4349]: https://gitlab.freedesktop.org/drm/intel/issues/4349
  [i915#4525]: https://gitlab.freedesktop.org/drm/intel/issues/4525
  [i915#4538]: https://gitlab.freedesktop.org/drm/intel/issues/4538
  [i915#454]: https://gitlab.freedesktop.org/drm/intel/issues/454
  [i915#4573]: https://gitlab.freedesktop.org/drm/intel/issues/4573
  [i915#4613]: https://gitlab.freedesktop.org/drm/intel/issues/4613
  [i915#4771]: https://gitlab.freedesktop.org/drm/intel/issues/4771
  [i915#4812]: https://gitlab.freedesktop.org/drm/intel/issues/4812
  [i915#4833]: https://gitlab.freedesktop.org/drm/intel/issues/4833
  [i915#4852]: https://gitlab.freedesktop.org/drm/intel/issues/4852
  [i915#4855]: https://gitlab.freedesktop.org/drm/intel/issues/4855
  [i915#4860]: https://gitlab.freedesktop.org/drm/intel/issues/4860
  [i915#4877]: https://gitlab.freedesktop.org/drm/intel/issues/4877
  [i915#4880]: https://gitlab.freedesktop.org/drm/intel/issues/4880
  [i915#4881]: https://gitlab.freedesktop.org/drm/intel/issues/4881
  [i915#4885]: https://gitlab.freedesktop.org/drm/intel/issues/4885
  [i915#5176]: https://gitlab.freedesktop.org/drm/intel/issues/5176
  [i915#5235]: https://gitlab.freedesktop.org/drm/intel/issues/5235
  [i915#5286]: https://gitlab.freedesktop.org/drm/intel/issues/5286
  [i915#5288]: https://gitlab.freedesktop.org/drm/intel/issues/5288
  [i915#5289]: https://gitlab.freedesktop.org/drm/intel/issues/5289
  [i915#5325]: https://gitlab.freedesktop.org/drm/intel/issues/5325
  [i915#5327]: https://gitlab.freedesktop.org/drm/intel/issues/5327
  [i915#533]: https://gitlab.freedesktop.org/drm/intel/issues/533
  [i915#5519]: https://gitlab.freedesktop.org/drm/intel/issues/5519
  [i915#5563]: https://gitlab.freedesktop.org/drm/intel/issues/5563
  [i915#5566]: https://gitlab.freedesktop.org/drm/intel/issues/5566
  [i915#5584]: https://gitlab.freedesktop.org/drm/intel/issues/5584
  [i915#5784]: https://gitlab.freedesktop.org/drm/intel/issues/5784
  [i915#6095]: https://gitlab.freedesktop.org/drm/intel/issues/6095
  [i915#6117]: https://gitlab.freedesktop.org/drm/intel/issues/6117
  [i915#6230]: https://gitlab.freedesktop.org/drm/intel/issues/6230
  [i915#6248]: https://gitlab.freedesktop.org/drm/intel/issues/6248
  [i915#6252]: https://gitlab.freedesktop.org/drm/intel/issues/6252
  [i915#6268]: https://gitlab.freedesktop.org/drm/intel/issues/6268
  [i915#6301]: https://gitlab.freedesktop.org/drm/intel/issues/6301
  [i915#6335]: https://gitlab.freedesktop.org/drm/intel/issues/6335
  [i915#6344]: https://gitlab.freedesktop.org/drm/intel/issues/6344
  [i915#6412]: https://gitlab.freedesktop.org/drm/intel/issues/6412
  [i915#6433]: https://gitlab.freedesktop.org/drm/intel/issues/6433
  [i915#6497]: https://gitlab.freedesktop.org/drm/intel/issues/6497
  [i915#6524]: https://gitlab.freedesktop.org/drm/intel/issues/6524
  [i915#658]: https://gitlab.freedesktop.org/drm/intel/issues/658
  [i915#6621]: https://gitlab.freedesktop.org/drm/intel/issues/6621
  [i915#6768]: https://gitlab.freedesktop.org/drm/intel/issues/6768
  [i915#7037]: https://gitlab.freedesktop.org/drm/intel/issues/7037
  [i915#7116]: https://gitlab.freedesktop.org/drm/intel/issues/7116
  [i915#7118]: https://gitlab.freedesktop.org/drm/intel/issues/7118
  [i915#716]: https://gitlab.freedesktop.org/drm/intel/issues/716
  [i915#72]: https://gitlab.freedesktop.org/drm/intel/issues/72
  [i915#7248]: https://gitlab.freedesktop.org/drm/intel/issues/7248
  [i915#7276]: https://gitlab.freedesktop.org/drm/intel/issues/7276
  [i915#7279]: https://gitlab.freedesktop.org/drm/intel/issues/7279
  [i915#7468]: https://gitlab.freedesktop.org/drm/intel/issues/7468
  [i915#7478]: https://gitlab.freedesktop.org/drm/intel/issues/7478
  [i915#768]: https://gitlab.freedesktop.org/drm/intel/issues/768


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

  * CI: CI-20190529 -> None
  * IGT: IGT_7051 -> IGTPW_8090
  * Piglit: piglit_4509 -> None

  CI-20190529: 20190529
  CI_DRM_12371: 3abfcf048c08ca9c7bbaba0c57c699453fd37a2e @ git://anongit.freedesktop.org/gfx-ci/linux
  IGTPW_8090: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8090/index.html
  IGT_7051: 7da9f813cdacb80d4471fc6ddb493bae9c46913d @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git
  piglit_4509: fdc5a4ca11124ab8413c7988896eec4c97336694 @ git://anongit.freedesktop.org/piglit

== Logs ==

For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8090/index.html

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

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

* Re: [igt-dev] [PATCH 1/9] lib/amdgpu: add SPDX-License-Identifier: MIT
  2022-11-11 21:52 [igt-dev] [PATCH 1/9] lib/amdgpu: add SPDX-License-Identifier: MIT vitaly.prosyak
                   ` (9 preceding siblings ...)
  2022-11-12 14:38 ` [igt-dev] ✓ Fi.CI.IGT: " Patchwork
@ 2022-11-12 18:28 ` Christian König
  2022-11-12 18:30   ` vitaly prosyak
  10 siblings, 1 reply; 13+ messages in thread
From: Christian König @ 2022-11-12 18:28 UTC (permalink / raw)
  To: vitaly.prosyak, igt-dev; +Cc: pierre-eric.pelloux-prayer, marek.olsak

Am 11.11.22 um 22:52 schrieb vitaly.prosyak@amd.com:
> From: Vitaly Prosyak <vitaly.prosyak@amd.com>
>
> Signed-off-by: Vitaly Prosyak <vitaly.prosyak@amd.com>
> Reviewed-by: Pierre-eric Pelloux-prayer <Pierre-eric.Pelloux-prayer@amd.com>

Acked-by: Christian König <christian.koenig@amd.com> for the entire series.

> ---
>   lib/amdgpu/amd_PM4.h                | 2 +-
>   lib/amdgpu/amd_command_submission.c | 2 +-
>   lib/amdgpu/amd_command_submission.h | 2 +-
>   lib/amdgpu/amd_compute.c            | 2 +-
>   lib/amdgpu/amd_compute.h            | 2 +-
>   lib/amdgpu/amd_dispatch.c           | 2 +-
>   lib/amdgpu/amd_dispatch.h           | 2 +-
>   lib/amdgpu/amd_dispatch_helpers.c   | 2 +-
>   lib/amdgpu/amd_dispatch_helpers.h   | 2 +-
>   lib/amdgpu/amd_family.h             | 2 +-
>   lib/amdgpu/amd_gfx.c                | 2 +-
>   lib/amdgpu/amd_gfx.h                | 2 +-
>   lib/amdgpu/amd_gfx_v8_0.c           | 2 +-
>   lib/amdgpu/amd_gfx_v8_0.h           | 2 +-
>   lib/amdgpu/amd_gfx_v9_0.c           | 2 +-
>   lib/amdgpu/amd_gfx_v9_0.h           | 2 +-
>   lib/amdgpu/amd_ip_blocks.c          | 2 +-
>   lib/amdgpu/amd_ip_blocks.h          | 2 +-
>   lib/amdgpu/amd_memory.c             | 2 +-
>   lib/amdgpu/amd_memory.h             | 2 +-
>   lib/amdgpu/amd_registers.h          | 2 +-
>   lib/amdgpu/amd_sdma.h               | 2 +-
>   lib/amdgpu/amd_shaders.c            | 2 +-
>   lib/amdgpu/amd_shaders.h            | 2 +-
>   lib/amdgpu/amd_shared_dispatch.h    | 2 +-
>   lib/amdgpu/amdgpu_asic_addr.h       | 2 +-
>   tests/amdgpu/amd_basic.c            | 2 +-
>   tests/amdgpu/amd_deadlock.c         | 2 +-
>   28 files changed, 28 insertions(+), 28 deletions(-)
>
> diff --git a/lib/amdgpu/amd_PM4.h b/lib/amdgpu/amd_PM4.h
> index 0588b4258..ec4de1f62 100644
> --- a/lib/amdgpu/amd_PM4.h
> +++ b/lib/amdgpu/amd_PM4.h
> @@ -1,4 +1,4 @@
> -/*
> +/* SPDX-License-Identifier: MIT
>    * Copyright 2014 Advanced Micro Devices, Inc.
>    * Copyright 2022 Advanced Micro Devices, Inc.
>    *
> diff --git a/lib/amdgpu/amd_command_submission.c b/lib/amdgpu/amd_command_submission.c
> index 16939653b..de393209b 100644
> --- a/lib/amdgpu/amd_command_submission.c
> +++ b/lib/amdgpu/amd_command_submission.c
> @@ -1,4 +1,4 @@
> -/*
> +/* SPDX-License-Identifier: MIT
>    * Copyright 2014 Advanced Micro Devices, Inc.
>    * Copyright 2022 Advanced Micro Devices, Inc.
>    *
> diff --git a/lib/amdgpu/amd_command_submission.h b/lib/amdgpu/amd_command_submission.h
> index 0df7c2c1c..0c1ba9bb4 100644
> --- a/lib/amdgpu/amd_command_submission.h
> +++ b/lib/amdgpu/amd_command_submission.h
> @@ -1,4 +1,4 @@
> -/*
> +/* SPDX-License-Identifier: MIT
>    * Copyright 2012 Advanced Micro Devices, Inc.
>    * Copyright 2022 Advanced Micro Devices, Inc.
>    *
> diff --git a/lib/amdgpu/amd_compute.c b/lib/amdgpu/amd_compute.c
> index 5a7fa27e4..6e61f1820 100644
> --- a/lib/amdgpu/amd_compute.c
> +++ b/lib/amdgpu/amd_compute.c
> @@ -1,4 +1,4 @@
> -/*
> +/* SPDX-License-Identifier: MIT
>    * Copyright 2014 Advanced Micro Devices, Inc.
>    * Copyright 2022 Advanced Micro Devices, Inc.
>    *
> diff --git a/lib/amdgpu/amd_compute.h b/lib/amdgpu/amd_compute.h
> index 01eee6063..f27be5f17 100644
> --- a/lib/amdgpu/amd_compute.h
> +++ b/lib/amdgpu/amd_compute.h
> @@ -1,4 +1,4 @@
> -/*
> +/* SPDX-License-Identifier: MIT
>    * Copyright 2014 Advanced Micro Devices, Inc.
>    * Copyright 2022 Advanced Micro Devices, Inc.
>    *
> diff --git a/lib/amdgpu/amd_dispatch.c b/lib/amdgpu/amd_dispatch.c
> index cf773c309..863786c59 100644
> --- a/lib/amdgpu/amd_dispatch.c
> +++ b/lib/amdgpu/amd_dispatch.c
> @@ -1,4 +1,4 @@
> -/*
> +/* SPDX-License-Identifier: MIT
>    * Copyright 2014 Advanced Micro Devices, Inc.
>    * Copyright 2022 Advanced Micro Devices, Inc.
>    *  *
> diff --git a/lib/amdgpu/amd_dispatch.h b/lib/amdgpu/amd_dispatch.h
> index 1905a5562..c500b5b3f 100644
> --- a/lib/amdgpu/amd_dispatch.h
> +++ b/lib/amdgpu/amd_dispatch.h
> @@ -1,4 +1,4 @@
> -/*
> +/* SPDX-License-Identifier: MIT
>    * Copyright 2022 Advanced Micro Devices, Inc.
>    *
>    * Permission is hereby granted, free of charge, to any person obtaining a
> diff --git a/lib/amdgpu/amd_dispatch_helpers.c b/lib/amdgpu/amd_dispatch_helpers.c
> index 3eddae968..8f06d841d 100644
> --- a/lib/amdgpu/amd_dispatch_helpers.c
> +++ b/lib/amdgpu/amd_dispatch_helpers.c
> @@ -1,4 +1,4 @@
> -/*
> +/* SPDX-License-Identifier: MIT
>    * Copyright 2014 Advanced Micro Devices, Inc.
>    * Copyright 2022 Advanced Micro Devices, Inc.
>    *  *
> diff --git a/lib/amdgpu/amd_dispatch_helpers.h b/lib/amdgpu/amd_dispatch_helpers.h
> index bea0c4248..a129e8e07 100644
> --- a/lib/amdgpu/amd_dispatch_helpers.h
> +++ b/lib/amdgpu/amd_dispatch_helpers.h
> @@ -1,4 +1,4 @@
> -/*
> +/* SPDX-License-Identifier: MIT
>    * Copyright 2022 Advanced Micro Devices, Inc.
>    *
>    * Permission is hereby granted, free of charge, to any person obtaining a
> diff --git a/lib/amdgpu/amd_family.h b/lib/amdgpu/amd_family.h
> index 206824837..25c2c7db9 100644
> --- a/lib/amdgpu/amd_family.h
> +++ b/lib/amdgpu/amd_family.h
> @@ -1,4 +1,4 @@
> -/*
> +/* SPDX-License-Identifier: MIT
>    * Copyright 2008 Corbin Simpson <MostAwesomeDude@gmail.com>
>    * Copyright 2010 Marek Olšák <maraeo@gmail.com>
>    * Copyright 2022 Advanced Micro Devices, Inc.
> diff --git a/lib/amdgpu/amd_gfx.c b/lib/amdgpu/amd_gfx.c
> index a89ff7536..f133e2459 100644
> --- a/lib/amdgpu/amd_gfx.c
> +++ b/lib/amdgpu/amd_gfx.c
> @@ -1,4 +1,4 @@
> -/*
> +/* SPDX-License-Identifier: MIT
>    * Copyright 2014 Advanced Micro Devices, Inc.
>    * Copyright 2022 Advanced Micro Devices, Inc.
>    *  *
> diff --git a/lib/amdgpu/amd_gfx.h b/lib/amdgpu/amd_gfx.h
> index d9da85943..90addf5bc 100644
> --- a/lib/amdgpu/amd_gfx.h
> +++ b/lib/amdgpu/amd_gfx.h
> @@ -1,4 +1,4 @@
> -/*
> +/* SPDX-License-Identifier: MIT
>    * Copyright 2014 Advanced Micro Devices, Inc.
>    * Copyright 2022 Advanced Micro Devices, Inc.
>    *
> diff --git a/lib/amdgpu/amd_gfx_v8_0.c b/lib/amdgpu/amd_gfx_v8_0.c
> index 987d7053a..374a923ad 100644
> --- a/lib/amdgpu/amd_gfx_v8_0.c
> +++ b/lib/amdgpu/amd_gfx_v8_0.c
> @@ -1,4 +1,4 @@
> -/*
> +/* SPDX-License-Identifier: MIT
>    * Copyright 2022 Advanced Micro Devices, Inc.
>    *  *
>    * Permission is hereby granted, free of charge, to any person obtaining a
> diff --git a/lib/amdgpu/amd_gfx_v8_0.h b/lib/amdgpu/amd_gfx_v8_0.h
> index 52ed418cb..baf2e2e9c 100644
> --- a/lib/amdgpu/amd_gfx_v8_0.h
> +++ b/lib/amdgpu/amd_gfx_v8_0.h
> @@ -1,4 +1,4 @@
> -/*
> +/* SPDX-License-Identifier: MIT
>    * Copyright 2014 Advanced Micro Devices, Inc.
>    * Copyright 2022 Advanced Micro Devices, Inc.
>    *
> diff --git a/lib/amdgpu/amd_gfx_v9_0.c b/lib/amdgpu/amd_gfx_v9_0.c
> index 175411795..5cb436b7b 100644
> --- a/lib/amdgpu/amd_gfx_v9_0.c
> +++ b/lib/amdgpu/amd_gfx_v9_0.c
> @@ -1,4 +1,4 @@
> -/*
> +/* SPDX-License-Identifier: MIT
>    * Copyright 2022 Advanced Micro Devices, Inc.
>    *  *
>    * Permission is hereby granted, free of charge, to any person obtaining a
> diff --git a/lib/amdgpu/amd_gfx_v9_0.h b/lib/amdgpu/amd_gfx_v9_0.h
> index e44a7d944..bcdbf754c 100644
> --- a/lib/amdgpu/amd_gfx_v9_0.h
> +++ b/lib/amdgpu/amd_gfx_v9_0.h
> @@ -1,4 +1,4 @@
> -/*
> +/* SPDX-License-Identifier: MIT
>    * Copyright 2022 Advanced Micro Devices, Inc.
>    *
>    * Permission is hereby granted, free of charge, to any person obtaining a
> diff --git a/lib/amdgpu/amd_ip_blocks.c b/lib/amdgpu/amd_ip_blocks.c
> index 3e11b34d3..3d7c54a11 100644
> --- a/lib/amdgpu/amd_ip_blocks.c
> +++ b/lib/amdgpu/amd_ip_blocks.c
> @@ -1,4 +1,4 @@
> -/*
> +/* SPDX-License-Identifier: MIT
>    * Copyright 2014 Advanced Micro Devices, Inc.
>    * Copyright 2022 Advanced Micro Devices, Inc.
>    *
> diff --git a/lib/amdgpu/amd_ip_blocks.h b/lib/amdgpu/amd_ip_blocks.h
> index 9c24eba2a..908aacde0 100644
> --- a/lib/amdgpu/amd_ip_blocks.h
> +++ b/lib/amdgpu/amd_ip_blocks.h
> @@ -1,4 +1,4 @@
> -/*
> +/* SPDX-License-Identifier: MIT
>    * Copyright 2014 Advanced Micro Devices, Inc.
>    * Copyright 2022 Advanced Micro Devices, Inc.
>    *
> diff --git a/lib/amdgpu/amd_memory.c b/lib/amdgpu/amd_memory.c
> index 344551fcc..101dbaf13 100644
> --- a/lib/amdgpu/amd_memory.c
> +++ b/lib/amdgpu/amd_memory.c
> @@ -1,4 +1,4 @@
> -/*
> +/* SPDX-License-Identifier: MIT
>    * Copyright 2014 Advanced Micro Devices, Inc.
>    * Copyright 2022 Advanced Micro Devices, Inc.
>    *
> diff --git a/lib/amdgpu/amd_memory.h b/lib/amdgpu/amd_memory.h
> index 80bf979f4..bc3652e8e 100644
> --- a/lib/amdgpu/amd_memory.h
> +++ b/lib/amdgpu/amd_memory.h
> @@ -1,4 +1,4 @@
> -/*
> +/* SPDX-License-Identifier: MIT
>    * Copyright 2014 Advanced Micro Devices, Inc.
>    * Copyright 2022 Advanced Micro Devices, Inc.
>    *
> diff --git a/lib/amdgpu/amd_registers.h b/lib/amdgpu/amd_registers.h
> index a01c9a84f..ff62b8931 100644
> --- a/lib/amdgpu/amd_registers.h
> +++ b/lib/amdgpu/amd_registers.h
> @@ -1,4 +1,4 @@
> -/*
> +/* SPDX-License-Identifier: MIT
>    * Copyright 2022 Advanced Micro Devices, Inc.
>    *
>    * Permission is hereby granted, free of charge, to any person obtaining a
> diff --git a/lib/amdgpu/amd_sdma.h b/lib/amdgpu/amd_sdma.h
> index b8ed93aa6..630535bb1 100644
> --- a/lib/amdgpu/amd_sdma.h
> +++ b/lib/amdgpu/amd_sdma.h
> @@ -1,4 +1,4 @@
> -/*
> +/* SPDX-License-Identifier: MIT
>    * Copyright 2014 Advanced Micro Devices, Inc.
>    * Copyright 2022 Advanced Micro Devices, Inc.
>    *
> diff --git a/lib/amdgpu/amd_shaders.c b/lib/amdgpu/amd_shaders.c
> index 5505e504e..7672f67c0 100644
> --- a/lib/amdgpu/amd_shaders.c
> +++ b/lib/amdgpu/amd_shaders.c
> @@ -1,4 +1,4 @@
> -/*
> +/* SPDX-License-Identifier: MIT
>    * Copyright 2014 Advanced Micro Devices, Inc.
>    * Copyright 2022 Advanced Micro Devices, Inc.
>    *  *
> diff --git a/lib/amdgpu/amd_shaders.h b/lib/amdgpu/amd_shaders.h
> index 22fc474fc..80a319a3a 100644
> --- a/lib/amdgpu/amd_shaders.h
> +++ b/lib/amdgpu/amd_shaders.h
> @@ -1,4 +1,4 @@
> -/*
> +/* SPDX-License-Identifier: MIT
>    * Copyright 2014 Advanced Micro Devices, Inc.
>    * Copyright 2022 Advanced Micro Devices, Inc.
>    *
> diff --git a/lib/amdgpu/amd_shared_dispatch.h b/lib/amdgpu/amd_shared_dispatch.h
> index 0dc5792f9..4ab31b8f8 100644
> --- a/lib/amdgpu/amd_shared_dispatch.h
> +++ b/lib/amdgpu/amd_shared_dispatch.h
> @@ -1,4 +1,4 @@
> -/*
> +/* SPDX-License-Identifier: MIT
>    * Copyright 2022 Advanced Micro Devices, Inc.
>    *
>    * Permission is hereby granted, free of charge, to any person obtaining a
> diff --git a/lib/amdgpu/amdgpu_asic_addr.h b/lib/amdgpu/amdgpu_asic_addr.h
> index d147efb86..dfae4935b 100644
> --- a/lib/amdgpu/amdgpu_asic_addr.h
> +++ b/lib/amdgpu/amdgpu_asic_addr.h
> @@ -1,6 +1,6 @@
>   /**
>   ***********************************************************************************************************************
> -*
> +* SPDX-License-Identifier: MIT
>   * Copyright © 2007-2021 Advanced Micro Devices, Inc.
>   * Copyright 2022 Advanced Micro Devices, Inc.
>   * All Rights Reserved.
> diff --git a/tests/amdgpu/amd_basic.c b/tests/amdgpu/amd_basic.c
> index 9be034975..1d5c1f3fb 100644
> --- a/tests/amdgpu/amd_basic.c
> +++ b/tests/amdgpu/amd_basic.c
> @@ -1,4 +1,4 @@
> -/*
> +/* SPDX-License-Identifier: MIT
>    * Copyright 2014 Advanced Micro Devices, Inc.
>    * Copyright 2022 Advanced Micro Devices, Inc.
>    *
> diff --git a/tests/amdgpu/amd_deadlock.c b/tests/amdgpu/amd_deadlock.c
> index e1b508fcf..109aaac18 100644
> --- a/tests/amdgpu/amd_deadlock.c
> +++ b/tests/amdgpu/amd_deadlock.c
> @@ -1,4 +1,4 @@
> -/*
> +/* SPDX-License-Identifier: MIT
>    * Copyright 2014 Advanced Micro Devices, Inc.
>    * Copyright 2022 Advanced Micro Devices, Inc.
>    *

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

* Re: [igt-dev] [PATCH 1/9] lib/amdgpu: add SPDX-License-Identifier: MIT
  2022-11-12 18:28 ` [igt-dev] [PATCH 1/9] " Christian König
@ 2022-11-12 18:30   ` vitaly prosyak
  0 siblings, 0 replies; 13+ messages in thread
From: vitaly prosyak @ 2022-11-12 18:30 UTC (permalink / raw)
  To: Christian König, vitaly.prosyak, igt-dev
  Cc: pierre-eric.pelloux-prayer, marek.olsak

Thanks a lot Christian!

Vitaly

On 2022-11-12 13:28, Christian König wrote:
> Am 11.11.22 um 22:52 schrieb vitaly.prosyak@amd.com:
>> From: Vitaly Prosyak <vitaly.prosyak@amd.com>
>>
>> Signed-off-by: Vitaly Prosyak <vitaly.prosyak@amd.com>
>> Reviewed-by: Pierre-eric Pelloux-prayer 
>> <Pierre-eric.Pelloux-prayer@amd.com>
>
> Acked-by: Christian König <christian.koenig@amd.com> for the entire 
> series.
>
>> ---
>>   lib/amdgpu/amd_PM4.h                | 2 +-
>>   lib/amdgpu/amd_command_submission.c | 2 +-
>>   lib/amdgpu/amd_command_submission.h | 2 +-
>>   lib/amdgpu/amd_compute.c            | 2 +-
>>   lib/amdgpu/amd_compute.h            | 2 +-
>>   lib/amdgpu/amd_dispatch.c           | 2 +-
>>   lib/amdgpu/amd_dispatch.h           | 2 +-
>>   lib/amdgpu/amd_dispatch_helpers.c   | 2 +-
>>   lib/amdgpu/amd_dispatch_helpers.h   | 2 +-
>>   lib/amdgpu/amd_family.h             | 2 +-
>>   lib/amdgpu/amd_gfx.c                | 2 +-
>>   lib/amdgpu/amd_gfx.h                | 2 +-
>>   lib/amdgpu/amd_gfx_v8_0.c           | 2 +-
>>   lib/amdgpu/amd_gfx_v8_0.h           | 2 +-
>>   lib/amdgpu/amd_gfx_v9_0.c           | 2 +-
>>   lib/amdgpu/amd_gfx_v9_0.h           | 2 +-
>>   lib/amdgpu/amd_ip_blocks.c          | 2 +-
>>   lib/amdgpu/amd_ip_blocks.h          | 2 +-
>>   lib/amdgpu/amd_memory.c             | 2 +-
>>   lib/amdgpu/amd_memory.h             | 2 +-
>>   lib/amdgpu/amd_registers.h          | 2 +-
>>   lib/amdgpu/amd_sdma.h               | 2 +-
>>   lib/amdgpu/amd_shaders.c            | 2 +-
>>   lib/amdgpu/amd_shaders.h            | 2 +-
>>   lib/amdgpu/amd_shared_dispatch.h    | 2 +-
>>   lib/amdgpu/amdgpu_asic_addr.h       | 2 +-
>>   tests/amdgpu/amd_basic.c            | 2 +-
>>   tests/amdgpu/amd_deadlock.c         | 2 +-
>>   28 files changed, 28 insertions(+), 28 deletions(-)
>>
>> diff --git a/lib/amdgpu/amd_PM4.h b/lib/amdgpu/amd_PM4.h
>> index 0588b4258..ec4de1f62 100644
>> --- a/lib/amdgpu/amd_PM4.h
>> +++ b/lib/amdgpu/amd_PM4.h
>> @@ -1,4 +1,4 @@
>> -/*
>> +/* SPDX-License-Identifier: MIT
>>    * Copyright 2014 Advanced Micro Devices, Inc.
>>    * Copyright 2022 Advanced Micro Devices, Inc.
>>    *
>> diff --git a/lib/amdgpu/amd_command_submission.c 
>> b/lib/amdgpu/amd_command_submission.c
>> index 16939653b..de393209b 100644
>> --- a/lib/amdgpu/amd_command_submission.c
>> +++ b/lib/amdgpu/amd_command_submission.c
>> @@ -1,4 +1,4 @@
>> -/*
>> +/* SPDX-License-Identifier: MIT
>>    * Copyright 2014 Advanced Micro Devices, Inc.
>>    * Copyright 2022 Advanced Micro Devices, Inc.
>>    *
>> diff --git a/lib/amdgpu/amd_command_submission.h 
>> b/lib/amdgpu/amd_command_submission.h
>> index 0df7c2c1c..0c1ba9bb4 100644
>> --- a/lib/amdgpu/amd_command_submission.h
>> +++ b/lib/amdgpu/amd_command_submission.h
>> @@ -1,4 +1,4 @@
>> -/*
>> +/* SPDX-License-Identifier: MIT
>>    * Copyright 2012 Advanced Micro Devices, Inc.
>>    * Copyright 2022 Advanced Micro Devices, Inc.
>>    *
>> diff --git a/lib/amdgpu/amd_compute.c b/lib/amdgpu/amd_compute.c
>> index 5a7fa27e4..6e61f1820 100644
>> --- a/lib/amdgpu/amd_compute.c
>> +++ b/lib/amdgpu/amd_compute.c
>> @@ -1,4 +1,4 @@
>> -/*
>> +/* SPDX-License-Identifier: MIT
>>    * Copyright 2014 Advanced Micro Devices, Inc.
>>    * Copyright 2022 Advanced Micro Devices, Inc.
>>    *
>> diff --git a/lib/amdgpu/amd_compute.h b/lib/amdgpu/amd_compute.h
>> index 01eee6063..f27be5f17 100644
>> --- a/lib/amdgpu/amd_compute.h
>> +++ b/lib/amdgpu/amd_compute.h
>> @@ -1,4 +1,4 @@
>> -/*
>> +/* SPDX-License-Identifier: MIT
>>    * Copyright 2014 Advanced Micro Devices, Inc.
>>    * Copyright 2022 Advanced Micro Devices, Inc.
>>    *
>> diff --git a/lib/amdgpu/amd_dispatch.c b/lib/amdgpu/amd_dispatch.c
>> index cf773c309..863786c59 100644
>> --- a/lib/amdgpu/amd_dispatch.c
>> +++ b/lib/amdgpu/amd_dispatch.c
>> @@ -1,4 +1,4 @@
>> -/*
>> +/* SPDX-License-Identifier: MIT
>>    * Copyright 2014 Advanced Micro Devices, Inc.
>>    * Copyright 2022 Advanced Micro Devices, Inc.
>>    *  *
>> diff --git a/lib/amdgpu/amd_dispatch.h b/lib/amdgpu/amd_dispatch.h
>> index 1905a5562..c500b5b3f 100644
>> --- a/lib/amdgpu/amd_dispatch.h
>> +++ b/lib/amdgpu/amd_dispatch.h
>> @@ -1,4 +1,4 @@
>> -/*
>> +/* SPDX-License-Identifier: MIT
>>    * Copyright 2022 Advanced Micro Devices, Inc.
>>    *
>>    * Permission is hereby granted, free of charge, to any person 
>> obtaining a
>> diff --git a/lib/amdgpu/amd_dispatch_helpers.c 
>> b/lib/amdgpu/amd_dispatch_helpers.c
>> index 3eddae968..8f06d841d 100644
>> --- a/lib/amdgpu/amd_dispatch_helpers.c
>> +++ b/lib/amdgpu/amd_dispatch_helpers.c
>> @@ -1,4 +1,4 @@
>> -/*
>> +/* SPDX-License-Identifier: MIT
>>    * Copyright 2014 Advanced Micro Devices, Inc.
>>    * Copyright 2022 Advanced Micro Devices, Inc.
>>    *  *
>> diff --git a/lib/amdgpu/amd_dispatch_helpers.h 
>> b/lib/amdgpu/amd_dispatch_helpers.h
>> index bea0c4248..a129e8e07 100644
>> --- a/lib/amdgpu/amd_dispatch_helpers.h
>> +++ b/lib/amdgpu/amd_dispatch_helpers.h
>> @@ -1,4 +1,4 @@
>> -/*
>> +/* SPDX-License-Identifier: MIT
>>    * Copyright 2022 Advanced Micro Devices, Inc.
>>    *
>>    * Permission is hereby granted, free of charge, to any person 
>> obtaining a
>> diff --git a/lib/amdgpu/amd_family.h b/lib/amdgpu/amd_family.h
>> index 206824837..25c2c7db9 100644
>> --- a/lib/amdgpu/amd_family.h
>> +++ b/lib/amdgpu/amd_family.h
>> @@ -1,4 +1,4 @@
>> -/*
>> +/* SPDX-License-Identifier: MIT
>>    * Copyright 2008 Corbin Simpson <MostAwesomeDude@gmail.com>
>>    * Copyright 2010 Marek Olšák <maraeo@gmail.com>
>>    * Copyright 2022 Advanced Micro Devices, Inc.
>> diff --git a/lib/amdgpu/amd_gfx.c b/lib/amdgpu/amd_gfx.c
>> index a89ff7536..f133e2459 100644
>> --- a/lib/amdgpu/amd_gfx.c
>> +++ b/lib/amdgpu/amd_gfx.c
>> @@ -1,4 +1,4 @@
>> -/*
>> +/* SPDX-License-Identifier: MIT
>>    * Copyright 2014 Advanced Micro Devices, Inc.
>>    * Copyright 2022 Advanced Micro Devices, Inc.
>>    *  *
>> diff --git a/lib/amdgpu/amd_gfx.h b/lib/amdgpu/amd_gfx.h
>> index d9da85943..90addf5bc 100644
>> --- a/lib/amdgpu/amd_gfx.h
>> +++ b/lib/amdgpu/amd_gfx.h
>> @@ -1,4 +1,4 @@
>> -/*
>> +/* SPDX-License-Identifier: MIT
>>    * Copyright 2014 Advanced Micro Devices, Inc.
>>    * Copyright 2022 Advanced Micro Devices, Inc.
>>    *
>> diff --git a/lib/amdgpu/amd_gfx_v8_0.c b/lib/amdgpu/amd_gfx_v8_0.c
>> index 987d7053a..374a923ad 100644
>> --- a/lib/amdgpu/amd_gfx_v8_0.c
>> +++ b/lib/amdgpu/amd_gfx_v8_0.c
>> @@ -1,4 +1,4 @@
>> -/*
>> +/* SPDX-License-Identifier: MIT
>>    * Copyright 2022 Advanced Micro Devices, Inc.
>>    *  *
>>    * Permission is hereby granted, free of charge, to any person 
>> obtaining a
>> diff --git a/lib/amdgpu/amd_gfx_v8_0.h b/lib/amdgpu/amd_gfx_v8_0.h
>> index 52ed418cb..baf2e2e9c 100644
>> --- a/lib/amdgpu/amd_gfx_v8_0.h
>> +++ b/lib/amdgpu/amd_gfx_v8_0.h
>> @@ -1,4 +1,4 @@
>> -/*
>> +/* SPDX-License-Identifier: MIT
>>    * Copyright 2014 Advanced Micro Devices, Inc.
>>    * Copyright 2022 Advanced Micro Devices, Inc.
>>    *
>> diff --git a/lib/amdgpu/amd_gfx_v9_0.c b/lib/amdgpu/amd_gfx_v9_0.c
>> index 175411795..5cb436b7b 100644
>> --- a/lib/amdgpu/amd_gfx_v9_0.c
>> +++ b/lib/amdgpu/amd_gfx_v9_0.c
>> @@ -1,4 +1,4 @@
>> -/*
>> +/* SPDX-License-Identifier: MIT
>>    * Copyright 2022 Advanced Micro Devices, Inc.
>>    *  *
>>    * Permission is hereby granted, free of charge, to any person 
>> obtaining a
>> diff --git a/lib/amdgpu/amd_gfx_v9_0.h b/lib/amdgpu/amd_gfx_v9_0.h
>> index e44a7d944..bcdbf754c 100644
>> --- a/lib/amdgpu/amd_gfx_v9_0.h
>> +++ b/lib/amdgpu/amd_gfx_v9_0.h
>> @@ -1,4 +1,4 @@
>> -/*
>> +/* SPDX-License-Identifier: MIT
>>    * Copyright 2022 Advanced Micro Devices, Inc.
>>    *
>>    * Permission is hereby granted, free of charge, to any person 
>> obtaining a
>> diff --git a/lib/amdgpu/amd_ip_blocks.c b/lib/amdgpu/amd_ip_blocks.c
>> index 3e11b34d3..3d7c54a11 100644
>> --- a/lib/amdgpu/amd_ip_blocks.c
>> +++ b/lib/amdgpu/amd_ip_blocks.c
>> @@ -1,4 +1,4 @@
>> -/*
>> +/* SPDX-License-Identifier: MIT
>>    * Copyright 2014 Advanced Micro Devices, Inc.
>>    * Copyright 2022 Advanced Micro Devices, Inc.
>>    *
>> diff --git a/lib/amdgpu/amd_ip_blocks.h b/lib/amdgpu/amd_ip_blocks.h
>> index 9c24eba2a..908aacde0 100644
>> --- a/lib/amdgpu/amd_ip_blocks.h
>> +++ b/lib/amdgpu/amd_ip_blocks.h
>> @@ -1,4 +1,4 @@
>> -/*
>> +/* SPDX-License-Identifier: MIT
>>    * Copyright 2014 Advanced Micro Devices, Inc.
>>    * Copyright 2022 Advanced Micro Devices, Inc.
>>    *
>> diff --git a/lib/amdgpu/amd_memory.c b/lib/amdgpu/amd_memory.c
>> index 344551fcc..101dbaf13 100644
>> --- a/lib/amdgpu/amd_memory.c
>> +++ b/lib/amdgpu/amd_memory.c
>> @@ -1,4 +1,4 @@
>> -/*
>> +/* SPDX-License-Identifier: MIT
>>    * Copyright 2014 Advanced Micro Devices, Inc.
>>    * Copyright 2022 Advanced Micro Devices, Inc.
>>    *
>> diff --git a/lib/amdgpu/amd_memory.h b/lib/amdgpu/amd_memory.h
>> index 80bf979f4..bc3652e8e 100644
>> --- a/lib/amdgpu/amd_memory.h
>> +++ b/lib/amdgpu/amd_memory.h
>> @@ -1,4 +1,4 @@
>> -/*
>> +/* SPDX-License-Identifier: MIT
>>    * Copyright 2014 Advanced Micro Devices, Inc.
>>    * Copyright 2022 Advanced Micro Devices, Inc.
>>    *
>> diff --git a/lib/amdgpu/amd_registers.h b/lib/amdgpu/amd_registers.h
>> index a01c9a84f..ff62b8931 100644
>> --- a/lib/amdgpu/amd_registers.h
>> +++ b/lib/amdgpu/amd_registers.h
>> @@ -1,4 +1,4 @@
>> -/*
>> +/* SPDX-License-Identifier: MIT
>>    * Copyright 2022 Advanced Micro Devices, Inc.
>>    *
>>    * Permission is hereby granted, free of charge, to any person 
>> obtaining a
>> diff --git a/lib/amdgpu/amd_sdma.h b/lib/amdgpu/amd_sdma.h
>> index b8ed93aa6..630535bb1 100644
>> --- a/lib/amdgpu/amd_sdma.h
>> +++ b/lib/amdgpu/amd_sdma.h
>> @@ -1,4 +1,4 @@
>> -/*
>> +/* SPDX-License-Identifier: MIT
>>    * Copyright 2014 Advanced Micro Devices, Inc.
>>    * Copyright 2022 Advanced Micro Devices, Inc.
>>    *
>> diff --git a/lib/amdgpu/amd_shaders.c b/lib/amdgpu/amd_shaders.c
>> index 5505e504e..7672f67c0 100644
>> --- a/lib/amdgpu/amd_shaders.c
>> +++ b/lib/amdgpu/amd_shaders.c
>> @@ -1,4 +1,4 @@
>> -/*
>> +/* SPDX-License-Identifier: MIT
>>    * Copyright 2014 Advanced Micro Devices, Inc.
>>    * Copyright 2022 Advanced Micro Devices, Inc.
>>    *  *
>> diff --git a/lib/amdgpu/amd_shaders.h b/lib/amdgpu/amd_shaders.h
>> index 22fc474fc..80a319a3a 100644
>> --- a/lib/amdgpu/amd_shaders.h
>> +++ b/lib/amdgpu/amd_shaders.h
>> @@ -1,4 +1,4 @@
>> -/*
>> +/* SPDX-License-Identifier: MIT
>>    * Copyright 2014 Advanced Micro Devices, Inc.
>>    * Copyright 2022 Advanced Micro Devices, Inc.
>>    *
>> diff --git a/lib/amdgpu/amd_shared_dispatch.h 
>> b/lib/amdgpu/amd_shared_dispatch.h
>> index 0dc5792f9..4ab31b8f8 100644
>> --- a/lib/amdgpu/amd_shared_dispatch.h
>> +++ b/lib/amdgpu/amd_shared_dispatch.h
>> @@ -1,4 +1,4 @@
>> -/*
>> +/* SPDX-License-Identifier: MIT
>>    * Copyright 2022 Advanced Micro Devices, Inc.
>>    *
>>    * Permission is hereby granted, free of charge, to any person 
>> obtaining a
>> diff --git a/lib/amdgpu/amdgpu_asic_addr.h 
>> b/lib/amdgpu/amdgpu_asic_addr.h
>> index d147efb86..dfae4935b 100644
>> --- a/lib/amdgpu/amdgpu_asic_addr.h
>> +++ b/lib/amdgpu/amdgpu_asic_addr.h
>> @@ -1,6 +1,6 @@
>>   /**
>> ***********************************************************************************************************************
>> -*
>> +* SPDX-License-Identifier: MIT
>>   * Copyright © 2007-2021 Advanced Micro Devices, Inc.
>>   * Copyright 2022 Advanced Micro Devices, Inc.
>>   * All Rights Reserved.
>> diff --git a/tests/amdgpu/amd_basic.c b/tests/amdgpu/amd_basic.c
>> index 9be034975..1d5c1f3fb 100644
>> --- a/tests/amdgpu/amd_basic.c
>> +++ b/tests/amdgpu/amd_basic.c
>> @@ -1,4 +1,4 @@
>> -/*
>> +/* SPDX-License-Identifier: MIT
>>    * Copyright 2014 Advanced Micro Devices, Inc.
>>    * Copyright 2022 Advanced Micro Devices, Inc.
>>    *
>> diff --git a/tests/amdgpu/amd_deadlock.c b/tests/amdgpu/amd_deadlock.c
>> index e1b508fcf..109aaac18 100644
>> --- a/tests/amdgpu/amd_deadlock.c
>> +++ b/tests/amdgpu/amd_deadlock.c
>> @@ -1,4 +1,4 @@
>> -/*
>> +/* SPDX-License-Identifier: MIT
>>    * Copyright 2014 Advanced Micro Devices, Inc.
>>    * Copyright 2022 Advanced Micro Devices, Inc.
>>    *
>

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

end of thread, other threads:[~2022-11-12 18:31 UTC | newest]

Thread overview: 13+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-11-11 21:52 [igt-dev] [PATCH 1/9] lib/amdgpu: add SPDX-License-Identifier: MIT vitaly.prosyak
2022-11-11 21:52 ` [igt-dev] [PATCH 2/9] lib/amdgpu: add predefined constants for PM4 and SDMA vitaly.prosyak
2022-11-11 21:52 ` [igt-dev] [PATCH 3/9] lib/amdgpu: add amdgpu_bo_alloc_and_map_raw helper vitaly.prosyak
2022-11-11 21:52 ` [igt-dev] [PATCH 4/9] lib/amdgpu: add deadlock helper vitaly.prosyak
2022-11-11 21:52 ` [igt-dev] [PATCH 5/9] tests/amdgpu: add GPU reset tests for gfx, compute and sdma vitaly.prosyak
2022-11-11 21:52 ` [igt-dev] [PATCH 6/9] lib/amdgpu: add memory and reg. access helper function vitaly.prosyak
2022-11-11 21:52 ` [igt-dev] [PATCH 7/9] tests/amdgpu: add tests for invalid memory and register access vitaly.prosyak
2022-11-11 21:52 ` [igt-dev] [PATCH 8/9] tests/amdgpu: reuse predefined const GFX_COMPUTE_NOP vitaly.prosyak
2022-11-11 21:52 ` [igt-dev] [PATCH 9/9] tests/amdgpu: PCI unplug 4 tests for different scenario vitaly.prosyak
2022-11-11 22:27 ` [igt-dev] ✓ Fi.CI.BAT: success for series starting with [1/9] lib/amdgpu: add SPDX-License-Identifier: MIT Patchwork
2022-11-12 14:38 ` [igt-dev] ✓ Fi.CI.IGT: " Patchwork
2022-11-12 18:28 ` [igt-dev] [PATCH 1/9] " Christian König
2022-11-12 18:30   ` vitaly prosyak

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