* [PATCH i-g-t 1/7] tools/vmtb: Introduce asynchronous VM state save/load functions
2026-09-28 7:25 [PATCH i-g-t 0/7] tools/vmtb: Sync VM Test Bench core with current xe SR-IOV Adam Miszczak
@ 2026-09-28 7:25 ` Adam Miszczak
2026-10-08 13:53 ` Bernatowicz, Marcin
2026-09-28 7:25 ` [PATCH i-g-t 2/7] tools/vmtb: Rework VF scheduler provisioning Adam Miszczak
` (9 subsequent siblings)
10 siblings, 1 reply; 19+ messages in thread
From: Adam Miszczak @ 2026-09-28 7:25 UTC (permalink / raw)
To: igt-dev; +Cc: marcin.bernatowicz, kamil.konieczny
Split existing VM snapshot save/load functions into explicit initialization
and completion-check phases.
Making save and load as asynchronous/non-blocking operations allows
parallel migration of multiple VMs.
Refactor QMP 'query_jobs' handling function to keep reading QMP responses
until the requested job type is received. Remove unused 'get_qmp_event_job'
since 'query_jobs' now consumes JOB_STATUS_CHANGE events.
Add handling of QMP command acknowledgments to ensure QEMU has
processed a command before proceeding.
Implement __wait_for_ack() helper that consumes the QMP acknowledgment
(empty return on success) and raises QmpError on an error response.
Apply __wait_for_ack() to confirm QMP commands that have no event-based
confirmation: 'stop', 'cont', 'snapshot-save' and 'snapshot-load'.
Remaining commands like 'system_reset' or 'system_wakeup' are confirmed
via events in VirtualMachine wrappers.
Also tighten query_status() to wait until the response contains both
the 'status' and 'running' fields (QMP StatusInfo type), avoiding acting
on a partial return.
Signed-off-by: Adam Miszczak <adam.miszczak@linux.intel.com>
---
tools/vmtb/bench/exceptions.py | 10 ++-
.../machines/virtual/backends/qmp_monitor.py | 55 +++++++++-------
tools/vmtb/bench/machines/virtual/vm.py | 66 +++++++++++++------
3 files changed, 86 insertions(+), 45 deletions(-)
diff --git a/tools/vmtb/bench/exceptions.py b/tools/vmtb/bench/exceptions.py
index 95ca2aa9b..1c151669a 100644
--- a/tools/vmtb/bench/exceptions.py
+++ b/tools/vmtb/bench/exceptions.py
@@ -1,5 +1,5 @@
# SPDX-License-Identifier: MIT
-# Copyright © 2024 Intel Corporation
+# Copyright © 2024-2026 Intel Corporation
class BenchError(Exception):
pass
@@ -19,11 +19,19 @@ class GuestAgentError(GuestError):
pass
+class GuestMigrationError(GuestError):
+ pass
+
+
class AlarmTimeoutError(GuestError):
pass
# Generic errors:
+class QmpError(BenchError):
+ pass
+
+
class GemWsimError(BenchError):
pass
diff --git a/tools/vmtb/bench/machines/virtual/backends/qmp_monitor.py b/tools/vmtb/bench/machines/virtual/backends/qmp_monitor.py
index d364a5711..8b273ca07 100644
--- a/tools/vmtb/bench/machines/virtual/backends/qmp_monitor.py
+++ b/tools/vmtb/bench/machines/virtual/backends/qmp_monitor.py
@@ -9,6 +9,8 @@ import threading
import time
import typing
+from bench.exceptions import QmpError
+
logger = logging.getLogger('QmpMonitor')
@@ -46,7 +48,7 @@ class QmpMonitor():
self.sockf.flush()
ret: typing.Dict = {}
- while 'status' not in ret:
+ while not ('status' in ret and 'running' in ret):
qmp_msg = self.qmp_queue.get()
if 'return' in qmp_msg:
ret = qmp_msg.get('return')
@@ -55,26 +57,27 @@ class QmpMonitor():
logger.debug('Machine status: %s', status)
return status
- def query_jobs(self, requested_type: str) -> typing.Tuple[str, str]:
+ def query_jobs(self, requested_type: str) -> typing.Tuple[str, typing.Optional[str]]:
json.dump({'execute': 'query-jobs'}, self.sockf)
self.sockf.flush()
- job_type: str = ''
- job_status: str = ''
- job_error: str = ''
- ret: typing.Dict = {}
+ job_status: str = 'N/A'
+ job_error: typing.Optional[str] = None
+ is_job_info: bool = False
- qmp_msg = self.qmp_queue.get()
- # logger.debug('[QMP RSP Queue] -> %s', qmp_msg)
- if 'return' in qmp_msg:
- ret = qmp_msg.get('return')
- for param in ret:
- job_type = param.get('type')
- job_status = param.get('status')
- job_error = param.get('error')
+ while not is_job_info:
+ qmp_msg = self.qmp_queue.get()
+ if 'return' in qmp_msg:
+ ret = qmp_msg.get('return')
+ if not isinstance(ret, list):
+ continue
- if job_type == requested_type:
- break
+ for job_info in ret:
+ if job_info.get('type') == requested_type:
+ job_status = job_info.get('status')
+ job_error = job_info.get('error')
+ is_job_info = True
+ break
return (job_status, job_error)
@@ -84,15 +87,15 @@ class QmpMonitor():
event: str = qmp_msg.get('event', '')
return event
- def get_qmp_event_job(self) -> str:
+ def __wait_for_ack(self, cmd_name: str) -> None:
+ """Consume QMP command acknowledgment (empty return on success).
+ Throw QmpError exception on error response."""
qmp_msg = self.qmp_queue.get()
- # logger.debug('[QMP RSP Queue] -> %s', qmp_msg)
-
- status: str = ''
- if qmp_msg.get('event') == 'JOB_STATUS_CHANGE':
- status = qmp_msg.get('data', {}).get('status', '')
-
- return status
+ while not ('return' in qmp_msg or 'error' in qmp_msg):
+ qmp_msg = self.qmp_queue.get()
+ if 'error' in qmp_msg:
+ desc = qmp_msg['error'].get('desc', 'unknown error')
+ raise QmpError(f'QMP {cmd_name} failed: {desc}')
def system_reset(self) -> None:
json.dump({'execute': 'system_reset'}, self.sockf)
@@ -105,10 +108,12 @@ class QmpMonitor():
def stop(self) -> None:
json.dump({'execute': 'stop'}, self.sockf)
self.sockf.flush()
+ self.__wait_for_ack('stop')
def cont(self) -> None:
json.dump({'execute': 'cont'}, self.sockf)
self.sockf.flush()
+ self.__wait_for_ack('cont')
def quit(self) -> None:
json.dump({'execute': 'quit'}, self.sockf)
@@ -149,6 +154,7 @@ class QmpMonitor():
'arguments': {'job-id': job_id, 'tag': snapshot_tag, 'vmstate': node_name, 'devices': [node_name]}},
self.sockf)
self.sockf.flush()
+ self.__wait_for_ack('snapshot-save')
def load_snapshot(self) -> None:
job_id: str = f'loadvm_{time.time()}'
@@ -160,3 +166,4 @@ class QmpMonitor():
'arguments': {'job-id': job_id, 'tag': snapshot_tag, 'vmstate': node_name, 'devices': [node_name]}},
self.sockf)
self.sockf.flush()
+ self.__wait_for_ack('snapshot-load')
diff --git a/tools/vmtb/bench/machines/virtual/vm.py b/tools/vmtb/bench/machines/virtual/vm.py
index 2469af965..8229084d4 100644
--- a/tools/vmtb/bench/machines/virtual/vm.py
+++ b/tools/vmtb/bench/machines/virtual/vm.py
@@ -84,6 +84,7 @@ class VirtualMachine(MachineInterface):
self.migrate_source_image: typing.Optional[str] = None
self.migrate_destination_vm: bool = False
+ self._migration_ongoing: bool = False
self.dmesg_logger = self.__setup_dmesg_logger()
@@ -558,32 +559,57 @@ class VirtualMachine(MachineInterface):
return True
- @Decorators.timeout_signal
- def save_state(self) -> None:
- logger.debug('Saving VM%s state (snapshot)', self.vmnum)
+ def save_state_init(self) -> None:
+ """Initiate VM snapshot-save operation (asynchronous)."""
+ logger.debug("Starting VM%s state save (snapshot)", self.vmnum)
self.qm.save_snapshot()
+ self._migration_ongoing = True
- job_status: str = self.qm.get_qmp_event_job()
- while job_status != 'concluded':
- job_status = self.qm.get_qmp_event_job()
+ def load_state_init(self) -> None:
+ """Initiate VM snapshot-load operation (asynchronous)."""
+ logger.debug("Starting VM%s state load (snapshot)", self.vmnum)
+ self.qm.load_snapshot()
+ self._migration_ongoing = True
- job_status, job_error = self.qm.query_jobs('snapshot-save')
- if job_status == 'concluded' and job_error is not None:
- raise exceptions.GuestError(f'VM{self.vmnum} state save error: {job_error}')
+ def __is_snapshot_operation_complete(self, op_name: str) -> bool:
+ """Poll VM snapshot save/load job completion."""
+ if not self._migration_ongoing:
+ logger.warning("VM%s migration is not in progress", self.vmnum)
+ return False
- logger.debug('VM%s state save finished successfully', self.vmnum)
+ job_status, job_error = self.qm.query_jobs(f'snapshot-{op_name}')
+ if job_error is not None:
+ logger.error("VM%s snapshot-%s error: %s", self.vmnum, op_name, job_error)
+ return False
+
+ return job_status == 'concluded'
@Decorators.timeout_signal
- def load_state(self) -> None:
- logger.debug('Loading VM state (snapshot)')
- self.qm.load_snapshot()
+ def save_state_check(self, timeout: int = DEFAULT_TIMEOUT) -> None:
+ """Check if previously started snapshot-save has completed successfully."""
+ if not self.__is_snapshot_operation_complete('save'):
+ logger.error("VM%s state save has not completed", self.vmnum)
+ raise exceptions.GuestMigrationError(f'VM{self.vmnum} state save has not completed')
+
+ self._migration_ongoing = False
+ logger.debug("VM%s state save finished successfully", self.vmnum)
+
+ @Decorators.timeout_signal
+ def load_state_check(self, timeout: int = DEFAULT_TIMEOUT) -> None:
+ """Check if previously started snapshot-load has completed successfully."""
+ if not self.__is_snapshot_operation_complete('load'):
+ logger.error("VM%s state load has not completed", self.vmnum)
+ raise exceptions.GuestMigrationError(f'VM{self.vmnum} state load has not completed')
- job_status: str = self.qm.get_qmp_event_job()
- while job_status != 'concluded':
- job_status = self.qm.get_qmp_event_job()
+ self._migration_ongoing = False
+ logger.debug("VM%s state load finished successfully", self.vmnum)
- job_status, job_error = self.qm.query_jobs('snapshot-load')
- if job_status == 'concluded' and job_error is not None:
- raise exceptions.GuestError(f'VM{self.vmnum} state load error: {job_error}')
+ def save_state(self) -> None:
+ """Save VF state - submit snapshot-save and check result (synchronous save)."""
+ self.save_state_init()
+ self.save_state_check()
- logger.debug('VM state load finished successfully')
+ def load_state(self) -> None:
+ """Load VF state - submit snapshot-load and check result (synchronous load)."""
+ self.load_state_init()
+ self.load_state_check()
--
2.39.1
^ permalink raw reply related [flat|nested] 19+ messages in thread* Re: [PATCH i-g-t 1/7] tools/vmtb: Introduce asynchronous VM state save/load functions
2026-09-28 7:25 ` [PATCH i-g-t 1/7] tools/vmtb: Introduce asynchronous VM state save/load functions Adam Miszczak
@ 2026-10-08 13:53 ` Bernatowicz, Marcin
0 siblings, 0 replies; 19+ messages in thread
From: Bernatowicz, Marcin @ 2026-10-08 13:53 UTC (permalink / raw)
To: Adam Miszczak, igt-dev; +Cc: kamil.konieczny
LGTM,
Reviewed-by: Marcin Bernatowicz <marcin.bernatowicz@linux.intel.com>
On 9/28/2026 9:25 AM, Adam Miszczak wrote:
> Split existing VM snapshot save/load functions into explicit initialization
> and completion-check phases.
> Making save and load as asynchronous/non-blocking operations allows
> parallel migration of multiple VMs.
>
> Refactor QMP 'query_jobs' handling function to keep reading QMP responses
> until the requested job type is received. Remove unused 'get_qmp_event_job'
> since 'query_jobs' now consumes JOB_STATUS_CHANGE events.
>
> Add handling of QMP command acknowledgments to ensure QEMU has
> processed a command before proceeding.
> Implement __wait_for_ack() helper that consumes the QMP acknowledgment
> (empty return on success) and raises QmpError on an error response.
> Apply __wait_for_ack() to confirm QMP commands that have no event-based
> confirmation: 'stop', 'cont', 'snapshot-save' and 'snapshot-load'.
> Remaining commands like 'system_reset' or 'system_wakeup' are confirmed
> via events in VirtualMachine wrappers.
>
> Also tighten query_status() to wait until the response contains both
> the 'status' and 'running' fields (QMP StatusInfo type), avoiding acting
> on a partial return.
>
> Signed-off-by: Adam Miszczak <adam.miszczak@linux.intel.com>
> ---
> tools/vmtb/bench/exceptions.py | 10 ++-
> .../machines/virtual/backends/qmp_monitor.py | 55 +++++++++-------
> tools/vmtb/bench/machines/virtual/vm.py | 66 +++++++++++++------
> 3 files changed, 86 insertions(+), 45 deletions(-)
>
> diff --git a/tools/vmtb/bench/exceptions.py b/tools/vmtb/bench/exceptions.py
> index 95ca2aa9b..1c151669a 100644
> --- a/tools/vmtb/bench/exceptions.py
> +++ b/tools/vmtb/bench/exceptions.py
> @@ -1,5 +1,5 @@
> # SPDX-License-Identifier: MIT
> -# Copyright © 2024 Intel Corporation
> +# Copyright © 2024-2026 Intel Corporation
>
> class BenchError(Exception):
> pass
> @@ -19,11 +19,19 @@ class GuestAgentError(GuestError):
> pass
>
>
> +class GuestMigrationError(GuestError):
> + pass
> +
> +
> class AlarmTimeoutError(GuestError):
> pass
>
>
> # Generic errors:
> +class QmpError(BenchError):
> + pass
> +
> +
> class GemWsimError(BenchError):
> pass
>
> diff --git a/tools/vmtb/bench/machines/virtual/backends/qmp_monitor.py b/tools/vmtb/bench/machines/virtual/backends/qmp_monitor.py
> index d364a5711..8b273ca07 100644
> --- a/tools/vmtb/bench/machines/virtual/backends/qmp_monitor.py
> +++ b/tools/vmtb/bench/machines/virtual/backends/qmp_monitor.py
> @@ -9,6 +9,8 @@ import threading
> import time
> import typing
>
> +from bench.exceptions import QmpError
> +
> logger = logging.getLogger('QmpMonitor')
>
>
> @@ -46,7 +48,7 @@ class QmpMonitor():
> self.sockf.flush()
>
> ret: typing.Dict = {}
> - while 'status' not in ret:
> + while not ('status' in ret and 'running' in ret):
> qmp_msg = self.qmp_queue.get()
> if 'return' in qmp_msg:
> ret = qmp_msg.get('return')
> @@ -55,26 +57,27 @@ class QmpMonitor():
> logger.debug('Machine status: %s', status)
> return status
>
> - def query_jobs(self, requested_type: str) -> typing.Tuple[str, str]:
> + def query_jobs(self, requested_type: str) -> typing.Tuple[str, typing.Optional[str]]:
> json.dump({'execute': 'query-jobs'}, self.sockf)
> self.sockf.flush()
>
> - job_type: str = ''
> - job_status: str = ''
> - job_error: str = ''
> - ret: typing.Dict = {}
> + job_status: str = 'N/A'
> + job_error: typing.Optional[str] = None
> + is_job_info: bool = False
>
> - qmp_msg = self.qmp_queue.get()
> - # logger.debug('[QMP RSP Queue] -> %s', qmp_msg)
> - if 'return' in qmp_msg:
> - ret = qmp_msg.get('return')
> - for param in ret:
> - job_type = param.get('type')
> - job_status = param.get('status')
> - job_error = param.get('error')
> + while not is_job_info:
> + qmp_msg = self.qmp_queue.get()
> + if 'return' in qmp_msg:
> + ret = qmp_msg.get('return')
> + if not isinstance(ret, list):
> + continue
>
> - if job_type == requested_type:
> - break
> + for job_info in ret:
> + if job_info.get('type') == requested_type:
> + job_status = job_info.get('status')
> + job_error = job_info.get('error')
> + is_job_info = True
> + break
>
> return (job_status, job_error)
>
> @@ -84,15 +87,15 @@ class QmpMonitor():
> event: str = qmp_msg.get('event', '')
> return event
>
> - def get_qmp_event_job(self) -> str:
> + def __wait_for_ack(self, cmd_name: str) -> None:
> + """Consume QMP command acknowledgment (empty return on success).
> + Throw QmpError exception on error response."""
> qmp_msg = self.qmp_queue.get()
> - # logger.debug('[QMP RSP Queue] -> %s', qmp_msg)
> -
> - status: str = ''
> - if qmp_msg.get('event') == 'JOB_STATUS_CHANGE':
> - status = qmp_msg.get('data', {}).get('status', '')
> -
> - return status
> + while not ('return' in qmp_msg or 'error' in qmp_msg):
> + qmp_msg = self.qmp_queue.get()
> + if 'error' in qmp_msg:
> + desc = qmp_msg['error'].get('desc', 'unknown error')
> + raise QmpError(f'QMP {cmd_name} failed: {desc}')
>
> def system_reset(self) -> None:
> json.dump({'execute': 'system_reset'}, self.sockf)
> @@ -105,10 +108,12 @@ class QmpMonitor():
> def stop(self) -> None:
> json.dump({'execute': 'stop'}, self.sockf)
> self.sockf.flush()
> + self.__wait_for_ack('stop')
>
> def cont(self) -> None:
> json.dump({'execute': 'cont'}, self.sockf)
> self.sockf.flush()
> + self.__wait_for_ack('cont')
>
> def quit(self) -> None:
> json.dump({'execute': 'quit'}, self.sockf)
> @@ -149,6 +154,7 @@ class QmpMonitor():
> 'arguments': {'job-id': job_id, 'tag': snapshot_tag, 'vmstate': node_name, 'devices': [node_name]}},
> self.sockf)
> self.sockf.flush()
> + self.__wait_for_ack('snapshot-save')
>
> def load_snapshot(self) -> None:
> job_id: str = f'loadvm_{time.time()}'
> @@ -160,3 +166,4 @@ class QmpMonitor():
> 'arguments': {'job-id': job_id, 'tag': snapshot_tag, 'vmstate': node_name, 'devices': [node_name]}},
> self.sockf)
> self.sockf.flush()
> + self.__wait_for_ack('snapshot-load')
> diff --git a/tools/vmtb/bench/machines/virtual/vm.py b/tools/vmtb/bench/machines/virtual/vm.py
> index 2469af965..8229084d4 100644
> --- a/tools/vmtb/bench/machines/virtual/vm.py
> +++ b/tools/vmtb/bench/machines/virtual/vm.py
> @@ -84,6 +84,7 @@ class VirtualMachine(MachineInterface):
>
> self.migrate_source_image: typing.Optional[str] = None
> self.migrate_destination_vm: bool = False
> + self._migration_ongoing: bool = False
>
> self.dmesg_logger = self.__setup_dmesg_logger()
>
> @@ -558,32 +559,57 @@ class VirtualMachine(MachineInterface):
>
> return True
>
> - @Decorators.timeout_signal
> - def save_state(self) -> None:
> - logger.debug('Saving VM%s state (snapshot)', self.vmnum)
> + def save_state_init(self) -> None:
> + """Initiate VM snapshot-save operation (asynchronous)."""
> + logger.debug("Starting VM%s state save (snapshot)", self.vmnum)
> self.qm.save_snapshot()
> + self._migration_ongoing = True
>
> - job_status: str = self.qm.get_qmp_event_job()
> - while job_status != 'concluded':
> - job_status = self.qm.get_qmp_event_job()
> + def load_state_init(self) -> None:
> + """Initiate VM snapshot-load operation (asynchronous)."""
> + logger.debug("Starting VM%s state load (snapshot)", self.vmnum)
> + self.qm.load_snapshot()
> + self._migration_ongoing = True
>
> - job_status, job_error = self.qm.query_jobs('snapshot-save')
> - if job_status == 'concluded' and job_error is not None:
> - raise exceptions.GuestError(f'VM{self.vmnum} state save error: {job_error}')
> + def __is_snapshot_operation_complete(self, op_name: str) -> bool:
> + """Poll VM snapshot save/load job completion."""
> + if not self._migration_ongoing:
> + logger.warning("VM%s migration is not in progress", self.vmnum)
> + return False
>
> - logger.debug('VM%s state save finished successfully', self.vmnum)
> + job_status, job_error = self.qm.query_jobs(f'snapshot-{op_name}')
> + if job_error is not None:
> + logger.error("VM%s snapshot-%s error: %s", self.vmnum, op_name, job_error)
> + return False
> +
> + return job_status == 'concluded'
>
> @Decorators.timeout_signal
> - def load_state(self) -> None:
> - logger.debug('Loading VM state (snapshot)')
> - self.qm.load_snapshot()
> + def save_state_check(self, timeout: int = DEFAULT_TIMEOUT) -> None:
> + """Check if previously started snapshot-save has completed successfully."""
> + if not self.__is_snapshot_operation_complete('save'):
> + logger.error("VM%s state save has not completed", self.vmnum)
> + raise exceptions.GuestMigrationError(f'VM{self.vmnum} state save has not completed')
> +
> + self._migration_ongoing = False
> + logger.debug("VM%s state save finished successfully", self.vmnum)
> +
> + @Decorators.timeout_signal
> + def load_state_check(self, timeout: int = DEFAULT_TIMEOUT) -> None:
> + """Check if previously started snapshot-load has completed successfully."""
> + if not self.__is_snapshot_operation_complete('load'):
> + logger.error("VM%s state load has not completed", self.vmnum)
> + raise exceptions.GuestMigrationError(f'VM{self.vmnum} state load has not completed')
>
> - job_status: str = self.qm.get_qmp_event_job()
> - while job_status != 'concluded':
> - job_status = self.qm.get_qmp_event_job()
> + self._migration_ongoing = False
> + logger.debug("VM%s state load finished successfully", self.vmnum)
>
> - job_status, job_error = self.qm.query_jobs('snapshot-load')
> - if job_status == 'concluded' and job_error is not None:
> - raise exceptions.GuestError(f'VM{self.vmnum} state load error: {job_error}')
> + def save_state(self) -> None:
> + """Save VF state - submit snapshot-save and check result (synchronous save)."""
> + self.save_state_init()
> + self.save_state_check()
>
> - logger.debug('VM state load finished successfully')
> + def load_state(self) -> None:
> + """Load VF state - submit snapshot-load and check result (synchronous load)."""
> + self.load_state_init()
> + self.load_state_check()
^ permalink raw reply [flat|nested] 19+ messages in thread
* [PATCH i-g-t 2/7] tools/vmtb: Rework VF scheduler provisioning
2026-09-28 7:25 [PATCH i-g-t 0/7] tools/vmtb: Sync VM Test Bench core with current xe SR-IOV Adam Miszczak
2026-09-28 7:25 ` [PATCH i-g-t 1/7] tools/vmtb: Introduce asynchronous VM state save/load functions Adam Miszczak
@ 2026-09-28 7:25 ` Adam Miszczak
2026-10-08 13:54 ` Bernatowicz, Marcin
2026-09-28 7:25 ` [PATCH i-g-t 3/7] tools/vmtb: Align driver/device layer with current xe SR-IOV interfaces Adam Miszczak
` (8 subsequent siblings)
10 siblings, 1 reply; 19+ messages in thread
From: Adam Miszczak @ 2026-09-28 7:25 UTC (permalink / raw)
To: igt-dev; +Cc: marcin.bernatowicz, kamil.konieczny
Align default VF scheduling setup with the current xe KMD behavior.
Scheduling settings: execution quanta (EQ) and preemption-timeout (PT)
are set to 16ms by default (instead of infinite/0), therefore:
- rename VfSchedulingMode.INFINITE → AUTO
- update VmmTestingConfig default from INFINITE to AUTO
Fix scheduler-only manual provisioning - support VF config variants
where only the scheduler setup is needed (auto resources provisioning
with a concrete scheduling mode). In this case load scheduler profile
even when no matching resources profile exists.
In addition, fix max VFs handling, improve assertions for creating VFs
and skip unsupported test configs instead of failing.
Signed-off-by: Adam Miszczak <adam.miszczak@linux.intel.com>
---
.../configurators/vgpu_profile_config.py | 20 +++++---
tools/vmtb/bench/exceptions.py | 4 ++
tools/vmtb/bench/machines/physical/device.py | 9 ++--
tools/vmtb/vmm_flows/conftest.py | 46 +++++++++++--------
tools/vmtb/vmm_flows/test_basic.py | 2 +-
5 files changed, 52 insertions(+), 29 deletions(-)
diff --git a/tools/vmtb/bench/configurators/vgpu_profile_config.py b/tools/vmtb/bench/configurators/vgpu_profile_config.py
index 4bddb641e..35a8a8835 100644
--- a/tools/vmtb/bench/configurators/vgpu_profile_config.py
+++ b/tools/vmtb/bench/configurators/vgpu_profile_config.py
@@ -23,7 +23,7 @@ class VfProvisioningMode(Enum):
class VfSchedulingMode(str, Enum):
- INFINITE = 'Infinite' # Infinite EQ/PT - HW default
+ AUTO = 'Auto' # Default EQ/PT (set by xe KMD automatically)
DEFAULT_PROFILE = 'Default_Profile' # Default vGPU scheduler profile
FLEXIBLE_30FPS = 'Flexible_30fps_GPUTimeSlicing'
FIXED_30FPS = 'Fixed_30fps_GPUTimeSlicing'
@@ -87,8 +87,8 @@ class VgpuProfileConfigurator:
break
if not is_vf_resource_found:
- logger.error("vGPU VF resources profile %sxVF not found!", requested_num_vfs)
- raise exceptions.VgpuProfileError(f'vGPU VF resources profile {requested_num_vfs}xVF not found!')
+ logger.warning("vGPU resources profile (%sxVF) not found!", requested_num_vfs)
+ raise exceptions.VgpuProfileNotFound(f'vGPU resources profile ({requested_num_vfs}xVF) not found!')
return vgpu_resources_config
@@ -99,7 +99,7 @@ class VgpuProfileConfigurator:
# pylint: disable=W0123
vgpu_scheduler_config = VgpuSchedulerConfig()
- if requested_scheduler is VfSchedulingMode.INFINITE:
+ if requested_scheduler is VfSchedulingMode.AUTO:
return vgpu_scheduler_config
for scheduler in self.supported_vgpu_profiles.scheduler_configs:
@@ -136,13 +136,19 @@ class VgpuProfileConfigurator:
return vgpu_security_config
- def get_vgpu_profile(self, requested_num_vfs: int, requested_scheduler: VfSchedulingMode) -> VgpuProfile:
- """Get vGPU profile for requested number of VFs, scheduler and security modes."""
+ def get_vgpu_profile(self, requested_num_vfs: int, requested_scheduler: VfSchedulingMode,
+ require_resources: bool = True) -> VgpuProfile:
+ """Get vGPU profile for requested number of VFs, scheduler and security modes.
+ If require_resources is False, skip VF resources lookup
+ (e.g. for auto provisioning where only the scheduler config is needed).
+ """
logger.info("Requested vGPU profile: %s VFs / scheduling: %s", requested_num_vfs, requested_scheduler)
vgpu_profile: VgpuProfile = VgpuProfile()
vgpu_profile.num_vfs = requested_num_vfs
- vgpu_profile.resources = self.select_vgpu_resources_profile(requested_num_vfs)
+
+ if require_resources:
+ vgpu_profile.resources = self.select_vgpu_resources_profile(requested_num_vfs)
if requested_scheduler is VfSchedulingMode.DEFAULT_PROFILE:
requested_scheduler = VfSchedulingMode(self.supported_vgpu_profiles.scheduler_config_default)
diff --git a/tools/vmtb/bench/exceptions.py b/tools/vmtb/bench/exceptions.py
index 1c151669a..557b44142 100644
--- a/tools/vmtb/bench/exceptions.py
+++ b/tools/vmtb/bench/exceptions.py
@@ -40,6 +40,10 @@ class VgpuProfileError(BenchError):
pass
+class VgpuProfileNotFound(VgpuProfileError):
+ pass
+
+
class NotAvailableError(BenchError):
pass
diff --git a/tools/vmtb/bench/machines/physical/device.py b/tools/vmtb/bench/machines/physical/device.py
index f1f24c65c..6c0dc4ff9 100644
--- a/tools/vmtb/bench/machines/physical/device.py
+++ b/tools/vmtb/bench/machines/physical/device.py
@@ -59,7 +59,7 @@ class Device(DeviceInterface):
driver_module = importlib.import_module(module_name)
driver_class = getattr(driver_module, class_name)
except (ImportError, AttributeError) as exc:
- logging.error("Driver module/class is not available: %s", exc)
+ logger.error("Driver module/class is not available: %s", exc)
raise exceptions.VmtbConfigError(f'Requested driver module {driver_name} is not available!')
return driver_class(bdf)
@@ -102,7 +102,9 @@ class Device(DeviceInterface):
self.driver.set_numvfs(num)
ret = self.driver.get_numvfs()
- assert ret == num
+ if ret != num:
+ logger.error("Failed to create requested number of VFs - expected: %s, got: %s", num, ret)
+ raise exceptions.HostError(f'Failed to create requested number of VFs ({num})')
return ret
@@ -114,7 +116,8 @@ class Device(DeviceInterface):
self.driver.set_numvfs(0)
ret = self.driver.get_numvfs()
if ret != 0:
- raise exceptions.HostError('VFs not disabled after 0 write')
+ logger.error("Failed to disable VFs - expected 0, got: %s", ret)
+ raise exceptions.HostError('Failed to disable all VFs')
logger.debug("[%s] Enable drivers autoprobe", self.pci_info.bdf)
self.set_drivers_autoprobe(True)
diff --git a/tools/vmtb/vmm_flows/conftest.py b/tools/vmtb/vmm_flows/conftest.py
index 02c297f93..ba6487c84 100644
--- a/tools/vmtb/vmm_flows/conftest.py
+++ b/tools/vmtb/vmm_flows/conftest.py
@@ -44,7 +44,7 @@ class VmmTestingConfig:
- num_vfs: requested number of VFs to enable
- max_num_vms: maximal number of VMs (the value can be different than enabled number of VFs)
- provisioning_mode: auto (fair resources allocation by a driver) or vGPU profile
- - scheduling_mode: requested vGPU scheduling profile (infinite maps to default 0's)
+ - scheduling_mode: requested vGPU scheduling profile (auto maps to default EQ=16ms and PT=16000us)
- auto_poweron_vm: assign VFs and power on VMs automatically in setup fixture
- auto_probe_vm_driver: probe guest DRM driver in setup fixture (VM must be powered on)
- unload_host_drivers_on_teardown: unload host DRM drivers in teardown fixture
@@ -53,7 +53,7 @@ class VmmTestingConfig:
num_vfs: int = 1
max_num_vms: int = 2
provisioning_mode: VfProvisioningMode = VfProvisioningMode.AUTO
- scheduling_mode: VfSchedulingMode = VfSchedulingMode.INFINITE
+ scheduling_mode: VfSchedulingMode = VfSchedulingMode.AUTO
auto_poweron_vm: bool = True
auto_probe_vm_driver: bool = True
@@ -68,8 +68,11 @@ class VmmTestingConfig:
self.num_vfs = 0 # Actual value set in VmmTestingSetup
def __str__(self) -> str:
- test_config_id = (f'{self.num_vfs if not self.enable_max_vfs else "Max"}VF'
- + f'-(P:{self.provisioning_mode.name} S:{self.scheduling_mode.name})')
+ test_config_id = (f'{self.num_vfs if not self.enable_max_vfs else "Max"}VF')
+
+ if self.provisioning_mode is not VfProvisioningMode.AUTO or self.scheduling_mode is not VfSchedulingMode.AUTO:
+ test_config_id += f'-(P:{self.provisioning_mode.name} S:{self.scheduling_mode.name})'
+
return test_config_id
def __repr__(self) -> str:
@@ -126,10 +129,11 @@ class VmmTestingSetup:
self.wsim_wl_dir = vmtb_root_path / vmtb_config.config.wsim_wl_path / self.get_dut().gpu_model.name.lower()
if (self.testing_config.provisioning_mode is VfProvisioningMode.VGPU_PROFILE
- or self.testing_config.scheduling_mode is not VfSchedulingMode.INFINITE):
+ or self.testing_config.scheduling_mode is not VfSchedulingMode.AUTO):
+ # vGPU profile or auto resources provisioning with concrete scheduling
self.vgpu_profile: VgpuProfile = self.get_vgpu_profile()
-
- if self.testing_config.provisioning_mode is VfProvisioningMode.AUTO and self.testing_config.enable_max_vfs:
+ elif self.testing_config.enable_max_vfs:
+ # Auto provisioning (with default/auto scheduling) for max VFs (HW limit)
self.testing_config.num_vfs = self.total_vfs
# Start maximum requested number of VMs, but not more than VFs supported by the given vGPU profile
@@ -143,17 +147,22 @@ class VmmTestingSetup:
def get_vgpu_profile(self) -> VgpuProfile:
configurator = VgpuProfileConfigurator(self.vgpu_profiles_dir, self.get_dut().gpu_model)
if self.testing_config.enable_max_vfs:
- # Get a vGPU profile with the most VFs (not necessarily equal to sysfs/sriov_totalvfs)
- self.testing_config.num_vfs = max(configurator.supported_vgpu_profiles.vf_resources,
- key=lambda profile: profile.vf_count).vf_count
- logger.debug("Max VFs supported by vGPU profiles: %s", self.testing_config.num_vfs)
+ if self.testing_config.provisioning_mode is VfProvisioningMode.VGPU_PROFILE:
+ # Get a vGPU profile with the most VFs (not necessarily equal to sysfs/sriov_totalvfs)
+ self.testing_config.num_vfs = max(configurator.supported_vgpu_profiles.vf_resources,
+ key=lambda profile: profile.vf_count).vf_count
+ logger.debug("Max VFs supported by vGPU profiles: %s", self.testing_config.num_vfs)
+ else:
+ # Use HW VFs limit (sysfs/sriov_totalvfs) with auto resources provisioning and concrete scheduling
+ self.testing_config.num_vfs = self.total_vfs
try:
+ require_resources = self.testing_config.provisioning_mode is VfProvisioningMode.VGPU_PROFILE
vgpu_profile = configurator.get_vgpu_profile(self.testing_config.num_vfs,
- self.testing_config.scheduling_mode)
- except exceptions.VgpuProfileError as exc:
- logger.error("Suitable vGPU profile not found: %s", exc)
- raise exceptions.VgpuProfileError('Invalid test setup - vGPU profile not found!')
+ self.testing_config.scheduling_mode,
+ require_resources)
+ except exceptions.VgpuProfileNotFound as exc:
+ pytest.skip(f'Test config not supported: {exc}')
return vgpu_profile
@@ -277,11 +286,12 @@ def fixture_setup_vms(get_vmtb_config, get_cmdline_config, get_host, request):
else:
device.driver.restore_auto_provisioning()
- assert device.create_vf(num_vfs) == num_vfs
+ assert num_vfs <= ts.total_vfs, f'Requested number of VFs ({num_vfs}) exceeds total VFs ({ts.total_vfs})'
+ device.create_vf(num_vfs)
if (ts.testing_config.provisioning_mode is VfProvisioningMode.AUTO and
- ts.testing_config.scheduling_mode is not VfSchedulingMode.INFINITE):
- # Auto resources provisioning with concrete scheduling (i.e. different than HW default: infinite).
+ ts.testing_config.scheduling_mode is not VfSchedulingMode.AUTO):
+ # Auto resources provisioning with scheduling override (i.e. different than default/auto).
# Scheduler params override must be done after enabling VFs
# to allow hard resources auto provisioning by KMD.
ts.vgpu_profile.print_scheduler_config()
diff --git a/tools/vmtb/vmm_flows/test_basic.py b/tools/vmtb/vmm_flows/test_basic.py
index 9b8731273..597ebbb68 100644
--- a/tools/vmtb/vmm_flows/test_basic.py
+++ b/tools/vmtb/vmm_flows/test_basic.py
@@ -43,7 +43,7 @@ def set_test_config(test_variants: List[Tuple[int, VfProvisioningMode, VfSchedul
test_variants_1 = [(1, VfProvisioningMode.VGPU_PROFILE, VfSchedulingMode.DEFAULT_PROFILE),
(2, VfProvisioningMode.VGPU_PROFILE, VfSchedulingMode.DEFAULT_PROFILE),
- (2, VfProvisioningMode.AUTO, VfSchedulingMode.INFINITE)]
+ (2, VfProvisioningMode.AUTO, VfSchedulingMode.AUTO)]
@pytest.mark.parametrize('setup_vms', set_test_config(test_variants_1), ids=idfn_test_config, indirect=['setup_vms'])
class TestVmSetup:
--
2.39.1
^ permalink raw reply related [flat|nested] 19+ messages in thread* Re: [PATCH i-g-t 2/7] tools/vmtb: Rework VF scheduler provisioning
2026-09-28 7:25 ` [PATCH i-g-t 2/7] tools/vmtb: Rework VF scheduler provisioning Adam Miszczak
@ 2026-10-08 13:54 ` Bernatowicz, Marcin
0 siblings, 0 replies; 19+ messages in thread
From: Bernatowicz, Marcin @ 2026-10-08 13:54 UTC (permalink / raw)
To: Adam Miszczak, igt-dev; +Cc: kamil.konieczny
LGTM,
Reviewed-by: Marcin Bernatowicz <marcin.bernatowicz@linux.intel.com>
On 9/28/2026 9:25 AM, Adam Miszczak wrote:
> Align default VF scheduling setup with the current xe KMD behavior.
> Scheduling settings: execution quanta (EQ) and preemption-timeout (PT)
> are set to 16ms by default (instead of infinite/0), therefore:
> - rename VfSchedulingMode.INFINITE → AUTO
> - update VmmTestingConfig default from INFINITE to AUTO
>
> Fix scheduler-only manual provisioning - support VF config variants
> where only the scheduler setup is needed (auto resources provisioning
> with a concrete scheduling mode). In this case load scheduler profile
> even when no matching resources profile exists.
>
> In addition, fix max VFs handling, improve assertions for creating VFs
> and skip unsupported test configs instead of failing.
>
> Signed-off-by: Adam Miszczak <adam.miszczak@linux.intel.com>
> ---
> .../configurators/vgpu_profile_config.py | 20 +++++---
> tools/vmtb/bench/exceptions.py | 4 ++
> tools/vmtb/bench/machines/physical/device.py | 9 ++--
> tools/vmtb/vmm_flows/conftest.py | 46 +++++++++++--------
> tools/vmtb/vmm_flows/test_basic.py | 2 +-
> 5 files changed, 52 insertions(+), 29 deletions(-)
>
> diff --git a/tools/vmtb/bench/configurators/vgpu_profile_config.py b/tools/vmtb/bench/configurators/vgpu_profile_config.py
> index 4bddb641e..35a8a8835 100644
> --- a/tools/vmtb/bench/configurators/vgpu_profile_config.py
> +++ b/tools/vmtb/bench/configurators/vgpu_profile_config.py
> @@ -23,7 +23,7 @@ class VfProvisioningMode(Enum):
>
>
> class VfSchedulingMode(str, Enum):
> - INFINITE = 'Infinite' # Infinite EQ/PT - HW default
> + AUTO = 'Auto' # Default EQ/PT (set by xe KMD automatically)
> DEFAULT_PROFILE = 'Default_Profile' # Default vGPU scheduler profile
> FLEXIBLE_30FPS = 'Flexible_30fps_GPUTimeSlicing'
> FIXED_30FPS = 'Fixed_30fps_GPUTimeSlicing'
> @@ -87,8 +87,8 @@ class VgpuProfileConfigurator:
> break
>
> if not is_vf_resource_found:
> - logger.error("vGPU VF resources profile %sxVF not found!", requested_num_vfs)
> - raise exceptions.VgpuProfileError(f'vGPU VF resources profile {requested_num_vfs}xVF not found!')
> + logger.warning("vGPU resources profile (%sxVF) not found!", requested_num_vfs)
> + raise exceptions.VgpuProfileNotFound(f'vGPU resources profile ({requested_num_vfs}xVF) not found!')
>
> return vgpu_resources_config
>
> @@ -99,7 +99,7 @@ class VgpuProfileConfigurator:
> # pylint: disable=W0123
> vgpu_scheduler_config = VgpuSchedulerConfig()
>
> - if requested_scheduler is VfSchedulingMode.INFINITE:
> + if requested_scheduler is VfSchedulingMode.AUTO:
> return vgpu_scheduler_config
>
> for scheduler in self.supported_vgpu_profiles.scheduler_configs:
> @@ -136,13 +136,19 @@ class VgpuProfileConfigurator:
>
> return vgpu_security_config
>
> - def get_vgpu_profile(self, requested_num_vfs: int, requested_scheduler: VfSchedulingMode) -> VgpuProfile:
> - """Get vGPU profile for requested number of VFs, scheduler and security modes."""
> + def get_vgpu_profile(self, requested_num_vfs: int, requested_scheduler: VfSchedulingMode,
> + require_resources: bool = True) -> VgpuProfile:
> + """Get vGPU profile for requested number of VFs, scheduler and security modes.
> + If require_resources is False, skip VF resources lookup
> + (e.g. for auto provisioning where only the scheduler config is needed).
> + """
> logger.info("Requested vGPU profile: %s VFs / scheduling: %s", requested_num_vfs, requested_scheduler)
>
> vgpu_profile: VgpuProfile = VgpuProfile()
> vgpu_profile.num_vfs = requested_num_vfs
> - vgpu_profile.resources = self.select_vgpu_resources_profile(requested_num_vfs)
> +
> + if require_resources:
> + vgpu_profile.resources = self.select_vgpu_resources_profile(requested_num_vfs)
>
> if requested_scheduler is VfSchedulingMode.DEFAULT_PROFILE:
> requested_scheduler = VfSchedulingMode(self.supported_vgpu_profiles.scheduler_config_default)
> diff --git a/tools/vmtb/bench/exceptions.py b/tools/vmtb/bench/exceptions.py
> index 1c151669a..557b44142 100644
> --- a/tools/vmtb/bench/exceptions.py
> +++ b/tools/vmtb/bench/exceptions.py
> @@ -40,6 +40,10 @@ class VgpuProfileError(BenchError):
> pass
>
>
> +class VgpuProfileNotFound(VgpuProfileError):
> + pass
> +
> +
> class NotAvailableError(BenchError):
> pass
>
> diff --git a/tools/vmtb/bench/machines/physical/device.py b/tools/vmtb/bench/machines/physical/device.py
> index f1f24c65c..6c0dc4ff9 100644
> --- a/tools/vmtb/bench/machines/physical/device.py
> +++ b/tools/vmtb/bench/machines/physical/device.py
> @@ -59,7 +59,7 @@ class Device(DeviceInterface):
> driver_module = importlib.import_module(module_name)
> driver_class = getattr(driver_module, class_name)
> except (ImportError, AttributeError) as exc:
> - logging.error("Driver module/class is not available: %s", exc)
> + logger.error("Driver module/class is not available: %s", exc)
> raise exceptions.VmtbConfigError(f'Requested driver module {driver_name} is not available!')
>
> return driver_class(bdf)
> @@ -102,7 +102,9 @@ class Device(DeviceInterface):
>
> self.driver.set_numvfs(num)
> ret = self.driver.get_numvfs()
> - assert ret == num
> + if ret != num:
> + logger.error("Failed to create requested number of VFs - expected: %s, got: %s", num, ret)
> + raise exceptions.HostError(f'Failed to create requested number of VFs ({num})')
>
> return ret
>
> @@ -114,7 +116,8 @@ class Device(DeviceInterface):
> self.driver.set_numvfs(0)
> ret = self.driver.get_numvfs()
> if ret != 0:
> - raise exceptions.HostError('VFs not disabled after 0 write')
> + logger.error("Failed to disable VFs - expected 0, got: %s", ret)
> + raise exceptions.HostError('Failed to disable all VFs')
>
> logger.debug("[%s] Enable drivers autoprobe", self.pci_info.bdf)
> self.set_drivers_autoprobe(True)
> diff --git a/tools/vmtb/vmm_flows/conftest.py b/tools/vmtb/vmm_flows/conftest.py
> index 02c297f93..ba6487c84 100644
> --- a/tools/vmtb/vmm_flows/conftest.py
> +++ b/tools/vmtb/vmm_flows/conftest.py
> @@ -44,7 +44,7 @@ class VmmTestingConfig:
> - num_vfs: requested number of VFs to enable
> - max_num_vms: maximal number of VMs (the value can be different than enabled number of VFs)
> - provisioning_mode: auto (fair resources allocation by a driver) or vGPU profile
> - - scheduling_mode: requested vGPU scheduling profile (infinite maps to default 0's)
> + - scheduling_mode: requested vGPU scheduling profile (auto maps to default EQ=16ms and PT=16000us)
> - auto_poweron_vm: assign VFs and power on VMs automatically in setup fixture
> - auto_probe_vm_driver: probe guest DRM driver in setup fixture (VM must be powered on)
> - unload_host_drivers_on_teardown: unload host DRM drivers in teardown fixture
> @@ -53,7 +53,7 @@ class VmmTestingConfig:
> num_vfs: int = 1
> max_num_vms: int = 2
> provisioning_mode: VfProvisioningMode = VfProvisioningMode.AUTO
> - scheduling_mode: VfSchedulingMode = VfSchedulingMode.INFINITE
> + scheduling_mode: VfSchedulingMode = VfSchedulingMode.AUTO
>
> auto_poweron_vm: bool = True
> auto_probe_vm_driver: bool = True
> @@ -68,8 +68,11 @@ class VmmTestingConfig:
> self.num_vfs = 0 # Actual value set in VmmTestingSetup
>
> def __str__(self) -> str:
> - test_config_id = (f'{self.num_vfs if not self.enable_max_vfs else "Max"}VF'
> - + f'-(P:{self.provisioning_mode.name} S:{self.scheduling_mode.name})')
> + test_config_id = (f'{self.num_vfs if not self.enable_max_vfs else "Max"}VF')
> +
> + if self.provisioning_mode is not VfProvisioningMode.AUTO or self.scheduling_mode is not VfSchedulingMode.AUTO:
> + test_config_id += f'-(P:{self.provisioning_mode.name} S:{self.scheduling_mode.name})'
> +
> return test_config_id
>
> def __repr__(self) -> str:
> @@ -126,10 +129,11 @@ class VmmTestingSetup:
> self.wsim_wl_dir = vmtb_root_path / vmtb_config.config.wsim_wl_path / self.get_dut().gpu_model.name.lower()
>
> if (self.testing_config.provisioning_mode is VfProvisioningMode.VGPU_PROFILE
> - or self.testing_config.scheduling_mode is not VfSchedulingMode.INFINITE):
> + or self.testing_config.scheduling_mode is not VfSchedulingMode.AUTO):
> + # vGPU profile or auto resources provisioning with concrete scheduling
> self.vgpu_profile: VgpuProfile = self.get_vgpu_profile()
> -
> - if self.testing_config.provisioning_mode is VfProvisioningMode.AUTO and self.testing_config.enable_max_vfs:
> + elif self.testing_config.enable_max_vfs:
> + # Auto provisioning (with default/auto scheduling) for max VFs (HW limit)
> self.testing_config.num_vfs = self.total_vfs
>
> # Start maximum requested number of VMs, but not more than VFs supported by the given vGPU profile
> @@ -143,17 +147,22 @@ class VmmTestingSetup:
> def get_vgpu_profile(self) -> VgpuProfile:
> configurator = VgpuProfileConfigurator(self.vgpu_profiles_dir, self.get_dut().gpu_model)
> if self.testing_config.enable_max_vfs:
> - # Get a vGPU profile with the most VFs (not necessarily equal to sysfs/sriov_totalvfs)
> - self.testing_config.num_vfs = max(configurator.supported_vgpu_profiles.vf_resources,
> - key=lambda profile: profile.vf_count).vf_count
> - logger.debug("Max VFs supported by vGPU profiles: %s", self.testing_config.num_vfs)
> + if self.testing_config.provisioning_mode is VfProvisioningMode.VGPU_PROFILE:
> + # Get a vGPU profile with the most VFs (not necessarily equal to sysfs/sriov_totalvfs)
> + self.testing_config.num_vfs = max(configurator.supported_vgpu_profiles.vf_resources,
> + key=lambda profile: profile.vf_count).vf_count
> + logger.debug("Max VFs supported by vGPU profiles: %s", self.testing_config.num_vfs)
> + else:
> + # Use HW VFs limit (sysfs/sriov_totalvfs) with auto resources provisioning and concrete scheduling
> + self.testing_config.num_vfs = self.total_vfs
>
> try:
> + require_resources = self.testing_config.provisioning_mode is VfProvisioningMode.VGPU_PROFILE
> vgpu_profile = configurator.get_vgpu_profile(self.testing_config.num_vfs,
> - self.testing_config.scheduling_mode)
> - except exceptions.VgpuProfileError as exc:
> - logger.error("Suitable vGPU profile not found: %s", exc)
> - raise exceptions.VgpuProfileError('Invalid test setup - vGPU profile not found!')
> + self.testing_config.scheduling_mode,
> + require_resources)
> + except exceptions.VgpuProfileNotFound as exc:
> + pytest.skip(f'Test config not supported: {exc}')
>
> return vgpu_profile
>
> @@ -277,11 +286,12 @@ def fixture_setup_vms(get_vmtb_config, get_cmdline_config, get_host, request):
> else:
> device.driver.restore_auto_provisioning()
>
> - assert device.create_vf(num_vfs) == num_vfs
> + assert num_vfs <= ts.total_vfs, f'Requested number of VFs ({num_vfs}) exceeds total VFs ({ts.total_vfs})'
> + device.create_vf(num_vfs)
>
> if (ts.testing_config.provisioning_mode is VfProvisioningMode.AUTO and
> - ts.testing_config.scheduling_mode is not VfSchedulingMode.INFINITE):
> - # Auto resources provisioning with concrete scheduling (i.e. different than HW default: infinite).
> + ts.testing_config.scheduling_mode is not VfSchedulingMode.AUTO):
> + # Auto resources provisioning with scheduling override (i.e. different than default/auto).
> # Scheduler params override must be done after enabling VFs
> # to allow hard resources auto provisioning by KMD.
> ts.vgpu_profile.print_scheduler_config()
> diff --git a/tools/vmtb/vmm_flows/test_basic.py b/tools/vmtb/vmm_flows/test_basic.py
> index 9b8731273..597ebbb68 100644
> --- a/tools/vmtb/vmm_flows/test_basic.py
> +++ b/tools/vmtb/vmm_flows/test_basic.py
> @@ -43,7 +43,7 @@ def set_test_config(test_variants: List[Tuple[int, VfProvisioningMode, VfSchedul
>
> test_variants_1 = [(1, VfProvisioningMode.VGPU_PROFILE, VfSchedulingMode.DEFAULT_PROFILE),
> (2, VfProvisioningMode.VGPU_PROFILE, VfSchedulingMode.DEFAULT_PROFILE),
> - (2, VfProvisioningMode.AUTO, VfSchedulingMode.INFINITE)]
> + (2, VfProvisioningMode.AUTO, VfSchedulingMode.AUTO)]
>
> @pytest.mark.parametrize('setup_vms', set_test_config(test_variants_1), ids=idfn_test_config, indirect=['setup_vms'])
> class TestVmSetup:
^ permalink raw reply [flat|nested] 19+ messages in thread
* [PATCH i-g-t 3/7] tools/vmtb: Align driver/device layer with current xe SR-IOV interfaces
2026-09-28 7:25 [PATCH i-g-t 0/7] tools/vmtb: Sync VM Test Bench core with current xe SR-IOV Adam Miszczak
2026-09-28 7:25 ` [PATCH i-g-t 1/7] tools/vmtb: Introduce asynchronous VM state save/load functions Adam Miszczak
2026-09-28 7:25 ` [PATCH i-g-t 2/7] tools/vmtb: Rework VF scheduler provisioning Adam Miszczak
@ 2026-09-28 7:25 ` Adam Miszczak
2026-10-08 13:54 ` Bernatowicz, Marcin
2026-09-28 7:25 ` [PATCH i-g-t 4/7] tools/vmtb: Fix guest timeout handling and PCI BDF matching Adam Miszczak
` (7 subsequent siblings)
10 siblings, 1 reply; 19+ messages in thread
From: Adam Miszczak @ 2026-09-28 7:25 UTC (permalink / raw)
To: igt-dev; +Cc: marcin.bernatowicz, kamil.konieczny
Move VF VRAM quota provisioning from the obsolete debugfs lmem_quota
attribute to the sysfs SRIOV admin tree
(/sys/bus/pci/drivers/xe/[BDF]/sriov_admin/vf[N]/profile/vram_quota)
and update the driver abstraction and provisioning helpers.
Fix physical Device bind()/unbind() calls that still passed a PCI BDF
to DriverInterface, breaking unload_drivers() with a TypeError.
Add DeviceInterface.reset() that triggers an FLR via
/sys/bus/pci/devices/[BDF]/reset - PF FLR on the host for physical
devices and VF FLR in the guest for virtual devices.
Signed-off-by: Adam Miszczak <adam.miszczak@linux.intel.com>
---
tools/vmtb/bench/drivers/driver_interface.py | 8 ++--
tools/vmtb/bench/drivers/xe.py | 39 ++++++++++---------
tools/vmtb/bench/machines/device_interface.py | 7 ++++
tools/vmtb/bench/machines/physical/device.py | 12 ++++--
tools/vmtb/bench/machines/virtual/device.py | 4 ++
5 files changed, 44 insertions(+), 26 deletions(-)
diff --git a/tools/vmtb/bench/drivers/driver_interface.py b/tools/vmtb/bench/drivers/driver_interface.py
index 0b0bd5abb..9d1e5ab00 100644
--- a/tools/vmtb/bench/drivers/driver_interface.py
+++ b/tools/vmtb/bench/drivers/driver_interface.py
@@ -201,19 +201,19 @@ class PfDriverInterface(DriverInterface, abc.ABC):
# VF provisioning
@abc.abstractmethod
- def get_ggtt_quota(self, vf_num: int, gt_num: int) -> int:
+ def get_vram_quota(self, vf_num: int) -> int:
raise NotImplementedError
@abc.abstractmethod
- def set_ggtt_quota(self, vf_num: int, gt_num: int, val: int) -> None:
+ def set_vram_quota(self, vf_num: int, val: int) -> None:
raise NotImplementedError
@abc.abstractmethod
- def get_lmem_quota(self, vf_num: int, gt_num: int) -> int:
+ def get_ggtt_quota(self, vf_num: int, gt_num: int) -> int:
raise NotImplementedError
@abc.abstractmethod
- def set_lmem_quota(self, vf_num: int, gt_num: int, val: int) -> None:
+ def set_ggtt_quota(self, vf_num: int, gt_num: int, val: int) -> None:
raise NotImplementedError
@abc.abstractmethod
diff --git a/tools/vmtb/bench/drivers/xe.py b/tools/vmtb/bench/drivers/xe.py
index 26e4e0a08..479c1dd87 100644
--- a/tools/vmtb/bench/drivers/xe.py
+++ b/tools/vmtb/bench/drivers/xe.py
@@ -140,7 +140,27 @@ class XeDriver(PfDriverInterface):
path = self.__helper_create_debugfs_path(0, gt_num, '', 'sample_period_ms')
self.write_debugfs(path, str(val))
- # VF and PF provisioning parameters
+ # VF provisioning parameters
+ # Sysfs location: [SRIOV sysfs base path]/sriov_admin/[vfN]/profile
+ # @vf_num: VF number (1-based) or 0 for PF
+ def get_vram_quota(self, vf_num: int) -> int:
+ if vf_num == 0:
+ logger.warning("PF vram_quota not available")
+ return 0
+
+ sriov_admin_path = self.__helper_create_sriov_admin_path(vf_num, 'vram_quota')
+ return int(self.read_sysfs(self.sysfs_device_path / sriov_admin_path)) if self.has_lmem() else 0
+
+ def set_vram_quota(self, vf_num: int, val: int) -> None:
+ if vf_num == 0:
+ logger.warning("PF vram_quota not available")
+ return
+
+ sriov_admin_path = self.__helper_create_sriov_admin_path(vf_num, 'vram_quota')
+ if self.has_lmem():
+ self.write_sysfs(self.sysfs_device_path / sriov_admin_path, str(val))
+
+ # VF provisioning parameters (debugfs)
# Debugfs location: [SRIOV debugfs base path]/gtM/[pf|vfN]
# @vf_num: VF number (1-based) or 0 for PF
def get_ggtt_quota(self, vf_num: int, gt_num: int) -> int:
@@ -159,23 +179,6 @@ class XeDriver(PfDriverInterface):
path = self.__helper_create_debugfs_path(vf_num, gt_num, '', 'ggtt_quota')
self.write_debugfs(path, str(val))
- def get_lmem_quota(self, vf_num: int, gt_num: int) -> int:
- if vf_num == 0:
- logger.warning("PF lmem_quota not available")
- return 0
-
- path = self.__helper_create_debugfs_path(vf_num, gt_num, '', 'lmem_quota')
- return int(self.read_debugfs(path)) if self.has_lmem() else 0
-
- def set_lmem_quota(self, vf_num: int, gt_num: int, val: int) -> None:
- if vf_num == 0:
- logger.warning("PF lmem_quota not available")
- return
-
- path = self.__helper_create_debugfs_path(vf_num, gt_num, '', 'lmem_quota')
- if self.has_lmem():
- self.write_debugfs(path, str(val))
-
def get_contexts_quota(self, vf_num: int, gt_num: int) -> int:
if vf_num == 0:
logger.warning("PF contexts_quota not available")
diff --git a/tools/vmtb/bench/machines/device_interface.py b/tools/vmtb/bench/machines/device_interface.py
index 0eff493f0..76b47de03 100644
--- a/tools/vmtb/bench/machines/device_interface.py
+++ b/tools/vmtb/bench/machines/device_interface.py
@@ -10,8 +10,15 @@ class DeviceInterface(abc.ABC):
"""
@abc.abstractmethod
def bind_driver(self) -> None:
+ """Bind driver to device."""
raise NotImplementedError
@abc.abstractmethod
def unbind_driver(self) -> None:
+ """Unbind driver from device."""
+ raise NotImplementedError
+
+ @abc.abstractmethod
+ def reset(self) -> None:
+ """Reset device (trigger FLR)."""
raise NotImplementedError
diff --git a/tools/vmtb/bench/machines/physical/device.py b/tools/vmtb/bench/machines/physical/device.py
index 6c0dc4ff9..b4eebc245 100644
--- a/tools/vmtb/bench/machines/physical/device.py
+++ b/tools/vmtb/bench/machines/physical/device.py
@@ -125,10 +125,14 @@ class Device(DeviceInterface):
return ret
def bind_driver(self) -> None:
- self.driver.bind(self.pci_info.bdf)
+ self.driver.bind()
def unbind_driver(self) -> None:
- self.driver.unbind(self.pci_info.bdf)
+ self.driver.unbind()
+
+ def reset(self) -> None:
+ logger.debug("[%s] Trigger reset (PF FLR)", self.pci_info.bdf)
+ self.driver.flr()
def override_vf_driver(self, vf_num: int) -> str:
"""Set VFIO as VF driver."""
@@ -224,8 +228,8 @@ class Device(DeviceInterface):
self.driver.set_pf_doorbells_spare(gt_num, resources_config.pfDoorbells)
else:
if not self.is_gt_media_type(gt_num):
+ self.driver.set_vram_quota(fn_num, resources_config.vfLmem)
self.driver.set_ggtt_quota(fn_num, gt_num, resources_config.vfGgtt)
- self.driver.set_lmem_quota(fn_num, gt_num, resources_config.vfLmem)
self.driver.set_contexts_quota(fn_num, gt_num, resources_config.vfContexts)
self.driver.set_doorbells_quota(fn_num, gt_num, resources_config.vfDoorbells)
@@ -246,8 +250,8 @@ class Device(DeviceInterface):
self.driver.set_contexts_quota(vf_num, gt_num, 0)
self.driver.set_doorbells_quota(vf_num, gt_num, 0)
if not self.is_gt_media_type(gt_num):
+ self.driver.set_vram_quota(vf_num, 0)
self.driver.set_ggtt_quota(vf_num, gt_num, 0)
- self.driver.set_lmem_quota(vf_num, gt_num, 0)
def reset_provisioning(self, num_vfs: int) -> None:
"""Clear provisioning config for a given number of VFs and restore auto provisioning mode."""
diff --git a/tools/vmtb/bench/machines/virtual/device.py b/tools/vmtb/bench/machines/virtual/device.py
index c838db59d..b36dbba58 100644
--- a/tools/vmtb/bench/machines/virtual/device.py
+++ b/tools/vmtb/bench/machines/virtual/device.py
@@ -68,6 +68,10 @@ class VirtualDevice(DeviceInterface):
self.vm.get_drm_driver_name(), self.pci_info.bdf)
self.driver.unbind()
+ def reset(self) -> None:
+ logger.debug("[%s] Trigger reset (VF FLR)", self.pci_info.bdf)
+ self.driver.flr() # VF FLR from guest's sysfs
+
@property
def lmem_size(self) -> typing.Optional[int]:
if self._lmem_size is None:
--
2.39.1
^ permalink raw reply related [flat|nested] 19+ messages in thread* Re: [PATCH i-g-t 3/7] tools/vmtb: Align driver/device layer with current xe SR-IOV interfaces
2026-09-28 7:25 ` [PATCH i-g-t 3/7] tools/vmtb: Align driver/device layer with current xe SR-IOV interfaces Adam Miszczak
@ 2026-10-08 13:54 ` Bernatowicz, Marcin
0 siblings, 0 replies; 19+ messages in thread
From: Bernatowicz, Marcin @ 2026-10-08 13:54 UTC (permalink / raw)
To: Adam Miszczak, igt-dev; +Cc: kamil.konieczny
LGTM,
Reviewed-by: Marcin Bernatowicz <marcin.bernatowicz@linux.intel.com>
On 9/28/2026 9:25 AM, Adam Miszczak wrote:
> Move VF VRAM quota provisioning from the obsolete debugfs lmem_quota
> attribute to the sysfs SRIOV admin tree
> (/sys/bus/pci/drivers/xe/[BDF]/sriov_admin/vf[N]/profile/vram_quota)
> and update the driver abstraction and provisioning helpers.
>
> Fix physical Device bind()/unbind() calls that still passed a PCI BDF
> to DriverInterface, breaking unload_drivers() with a TypeError.
>
> Add DeviceInterface.reset() that triggers an FLR via
> /sys/bus/pci/devices/[BDF]/reset - PF FLR on the host for physical
> devices and VF FLR in the guest for virtual devices.
>
> Signed-off-by: Adam Miszczak <adam.miszczak@linux.intel.com>
> ---
> tools/vmtb/bench/drivers/driver_interface.py | 8 ++--
> tools/vmtb/bench/drivers/xe.py | 39 ++++++++++---------
> tools/vmtb/bench/machines/device_interface.py | 7 ++++
> tools/vmtb/bench/machines/physical/device.py | 12 ++++--
> tools/vmtb/bench/machines/virtual/device.py | 4 ++
> 5 files changed, 44 insertions(+), 26 deletions(-)
>
> diff --git a/tools/vmtb/bench/drivers/driver_interface.py b/tools/vmtb/bench/drivers/driver_interface.py
> index 0b0bd5abb..9d1e5ab00 100644
> --- a/tools/vmtb/bench/drivers/driver_interface.py
> +++ b/tools/vmtb/bench/drivers/driver_interface.py
> @@ -201,19 +201,19 @@ class PfDriverInterface(DriverInterface, abc.ABC):
>
> # VF provisioning
> @abc.abstractmethod
> - def get_ggtt_quota(self, vf_num: int, gt_num: int) -> int:
> + def get_vram_quota(self, vf_num: int) -> int:
> raise NotImplementedError
>
> @abc.abstractmethod
> - def set_ggtt_quota(self, vf_num: int, gt_num: int, val: int) -> None:
> + def set_vram_quota(self, vf_num: int, val: int) -> None:
> raise NotImplementedError
>
> @abc.abstractmethod
> - def get_lmem_quota(self, vf_num: int, gt_num: int) -> int:
> + def get_ggtt_quota(self, vf_num: int, gt_num: int) -> int:
> raise NotImplementedError
>
> @abc.abstractmethod
> - def set_lmem_quota(self, vf_num: int, gt_num: int, val: int) -> None:
> + def set_ggtt_quota(self, vf_num: int, gt_num: int, val: int) -> None:
> raise NotImplementedError
>
> @abc.abstractmethod
> diff --git a/tools/vmtb/bench/drivers/xe.py b/tools/vmtb/bench/drivers/xe.py
> index 26e4e0a08..479c1dd87 100644
> --- a/tools/vmtb/bench/drivers/xe.py
> +++ b/tools/vmtb/bench/drivers/xe.py
> @@ -140,7 +140,27 @@ class XeDriver(PfDriverInterface):
> path = self.__helper_create_debugfs_path(0, gt_num, '', 'sample_period_ms')
> self.write_debugfs(path, str(val))
>
> - # VF and PF provisioning parameters
> + # VF provisioning parameters
> + # Sysfs location: [SRIOV sysfs base path]/sriov_admin/[vfN]/profile
> + # @vf_num: VF number (1-based) or 0 for PF
> + def get_vram_quota(self, vf_num: int) -> int:
> + if vf_num == 0:
> + logger.warning("PF vram_quota not available")
> + return 0
> +
> + sriov_admin_path = self.__helper_create_sriov_admin_path(vf_num, 'vram_quota')
> + return int(self.read_sysfs(self.sysfs_device_path / sriov_admin_path)) if self.has_lmem() else 0
> +
> + def set_vram_quota(self, vf_num: int, val: int) -> None:
> + if vf_num == 0:
> + logger.warning("PF vram_quota not available")
> + return
> +
> + sriov_admin_path = self.__helper_create_sriov_admin_path(vf_num, 'vram_quota')
> + if self.has_lmem():
> + self.write_sysfs(self.sysfs_device_path / sriov_admin_path, str(val))
> +
> + # VF provisioning parameters (debugfs)
> # Debugfs location: [SRIOV debugfs base path]/gtM/[pf|vfN]
> # @vf_num: VF number (1-based) or 0 for PF
> def get_ggtt_quota(self, vf_num: int, gt_num: int) -> int:
> @@ -159,23 +179,6 @@ class XeDriver(PfDriverInterface):
> path = self.__helper_create_debugfs_path(vf_num, gt_num, '', 'ggtt_quota')
> self.write_debugfs(path, str(val))
>
> - def get_lmem_quota(self, vf_num: int, gt_num: int) -> int:
> - if vf_num == 0:
> - logger.warning("PF lmem_quota not available")
> - return 0
> -
> - path = self.__helper_create_debugfs_path(vf_num, gt_num, '', 'lmem_quota')
> - return int(self.read_debugfs(path)) if self.has_lmem() else 0
> -
> - def set_lmem_quota(self, vf_num: int, gt_num: int, val: int) -> None:
> - if vf_num == 0:
> - logger.warning("PF lmem_quota not available")
> - return
> -
> - path = self.__helper_create_debugfs_path(vf_num, gt_num, '', 'lmem_quota')
> - if self.has_lmem():
> - self.write_debugfs(path, str(val))
> -
> def get_contexts_quota(self, vf_num: int, gt_num: int) -> int:
> if vf_num == 0:
> logger.warning("PF contexts_quota not available")
> diff --git a/tools/vmtb/bench/machines/device_interface.py b/tools/vmtb/bench/machines/device_interface.py
> index 0eff493f0..76b47de03 100644
> --- a/tools/vmtb/bench/machines/device_interface.py
> +++ b/tools/vmtb/bench/machines/device_interface.py
> @@ -10,8 +10,15 @@ class DeviceInterface(abc.ABC):
> """
> @abc.abstractmethod
> def bind_driver(self) -> None:
> + """Bind driver to device."""
> raise NotImplementedError
>
> @abc.abstractmethod
> def unbind_driver(self) -> None:
> + """Unbind driver from device."""
> + raise NotImplementedError
> +
> + @abc.abstractmethod
> + def reset(self) -> None:
> + """Reset device (trigger FLR)."""
> raise NotImplementedError
> diff --git a/tools/vmtb/bench/machines/physical/device.py b/tools/vmtb/bench/machines/physical/device.py
> index 6c0dc4ff9..b4eebc245 100644
> --- a/tools/vmtb/bench/machines/physical/device.py
> +++ b/tools/vmtb/bench/machines/physical/device.py
> @@ -125,10 +125,14 @@ class Device(DeviceInterface):
> return ret
>
> def bind_driver(self) -> None:
> - self.driver.bind(self.pci_info.bdf)
> + self.driver.bind()
>
> def unbind_driver(self) -> None:
> - self.driver.unbind(self.pci_info.bdf)
> + self.driver.unbind()
> +
> + def reset(self) -> None:
> + logger.debug("[%s] Trigger reset (PF FLR)", self.pci_info.bdf)
> + self.driver.flr()
>
> def override_vf_driver(self, vf_num: int) -> str:
> """Set VFIO as VF driver."""
> @@ -224,8 +228,8 @@ class Device(DeviceInterface):
> self.driver.set_pf_doorbells_spare(gt_num, resources_config.pfDoorbells)
> else:
> if not self.is_gt_media_type(gt_num):
> + self.driver.set_vram_quota(fn_num, resources_config.vfLmem)
> self.driver.set_ggtt_quota(fn_num, gt_num, resources_config.vfGgtt)
> - self.driver.set_lmem_quota(fn_num, gt_num, resources_config.vfLmem)
> self.driver.set_contexts_quota(fn_num, gt_num, resources_config.vfContexts)
> self.driver.set_doorbells_quota(fn_num, gt_num, resources_config.vfDoorbells)
>
> @@ -246,8 +250,8 @@ class Device(DeviceInterface):
> self.driver.set_contexts_quota(vf_num, gt_num, 0)
> self.driver.set_doorbells_quota(vf_num, gt_num, 0)
> if not self.is_gt_media_type(gt_num):
> + self.driver.set_vram_quota(vf_num, 0)
> self.driver.set_ggtt_quota(vf_num, gt_num, 0)
> - self.driver.set_lmem_quota(vf_num, gt_num, 0)
>
> def reset_provisioning(self, num_vfs: int) -> None:
> """Clear provisioning config for a given number of VFs and restore auto provisioning mode."""
> diff --git a/tools/vmtb/bench/machines/virtual/device.py b/tools/vmtb/bench/machines/virtual/device.py
> index c838db59d..b36dbba58 100644
> --- a/tools/vmtb/bench/machines/virtual/device.py
> +++ b/tools/vmtb/bench/machines/virtual/device.py
> @@ -68,6 +68,10 @@ class VirtualDevice(DeviceInterface):
> self.vm.get_drm_driver_name(), self.pci_info.bdf)
> self.driver.unbind()
>
> + def reset(self) -> None:
> + logger.debug("[%s] Trigger reset (VF FLR)", self.pci_info.bdf)
> + self.driver.flr() # VF FLR from guest's sysfs
> +
> @property
> def lmem_size(self) -> typing.Optional[int]:
> if self._lmem_size is None:
^ permalink raw reply [flat|nested] 19+ messages in thread
* [PATCH i-g-t 4/7] tools/vmtb: Fix guest timeout handling and PCI BDF matching
2026-09-28 7:25 [PATCH i-g-t 0/7] tools/vmtb: Sync VM Test Bench core with current xe SR-IOV Adam Miszczak
` (2 preceding siblings ...)
2026-09-28 7:25 ` [PATCH i-g-t 3/7] tools/vmtb: Align driver/device layer with current xe SR-IOV interfaces Adam Miszczak
@ 2026-09-28 7:25 ` Adam Miszczak
2026-10-08 13:55 ` Bernatowicz, Marcin
2026-09-28 7:25 ` [PATCH i-g-t 5/7] tools/vmtb: Add pre-test environment cleanup Adam Miszczak
` (6 subsequent siblings)
10 siblings, 1 reply; 19+ messages in thread
From: Adam Miszczak @ 2026-09-28 7:25 UTC (permalink / raw)
To: igt-dev; +Cc: marcin.bernatowicz, kamil.konieczny
Resolve timeouts from keyword or positional arguments and function
defaults. Give VM power-off a configurable 60-second default.
Match complete PCI BDF names using hexadecimal fields and a literal
dot before the function number, rejecting malformed directory names.
Also, avoid nested f-string quotes for compatibility with older Python.
Signed-off-by: Adam Miszczak <adam.miszczak@linux.intel.com>
---
tools/vmtb/bench/machines/virtual/vm.py | 48 +++++++++++++++++++------
1 file changed, 38 insertions(+), 10 deletions(-)
diff --git a/tools/vmtb/bench/machines/virtual/vm.py b/tools/vmtb/bench/machines/virtual/vm.py
index 8229084d4..e0b6fb150 100644
--- a/tools/vmtb/bench/machines/virtual/vm.py
+++ b/tools/vmtb/bench/machines/virtual/vm.py
@@ -2,6 +2,7 @@
# Copyright © 2024-2026 Intel Corporation
import base64
+import inspect
import json
import logging
import re
@@ -34,13 +35,39 @@ class VirtualMachine(MachineInterface):
@classmethod
def timeout_signal(cls, func: typing.Callable) -> typing.Callable:
+ timeout_default: int = DEFAULT_TIMEOUT
+
+ # Check for timeout provided as function signature default
+ func_sig = inspect.signature(func)
+ timeout_param = func_sig.parameters.get('timeout')
+ if timeout_param and isinstance(timeout_param.default, int):
+ timeout_default = timeout_param.default
+
+ # Check timeout parameter positional index
+ # (to avoid repeated introspection on every call)
+ timeout_positional_idx: typing.Optional[int] = None
+ positional_params = [
+ name for name, param in func_sig.parameters.items()
+ if param.kind == inspect.Parameter.POSITIONAL_OR_KEYWORD
+ ]
+ if 'timeout' in positional_params:
+ timeout_positional_idx = positional_params.index('timeout')
+
def timeout_wrapper(*args: typing.Any, **kwargs: typing.Optional[typing.Any]) -> typing.Any:
- timeout: int = DEFAULT_TIMEOUT
- if len(args) > 2:
- timeout = args[2] # Argument position in execute_wait(self, pid, timeout)
- elif kwargs.get('timeout') is not None:
- if isinstance(kwargs['timeout'], int):
- timeout = kwargs['timeout']
+ timeout: int = timeout_default
+
+ # Resolve timeout in this order:
+ # 1. Explicit keyword value, e.g. vm.func(timeout=60)
+ # 2. Explicit positional value, e.g. vm.func(..., 60)
+ # 3. Default function signature value, e.g. def func(self, timeout=60)
+ # 4. Default global value (DEFAULT_TIMEOUT)
+ timeout_kwarg = kwargs.get('timeout')
+ if isinstance(timeout_kwarg, int):
+ timeout = timeout_kwarg
+ elif (timeout_positional_idx is not None
+ and len(args) > timeout_positional_idx
+ and isinstance(args[timeout_positional_idx], int)):
+ timeout = args[timeout_positional_idx]
# mypy: silence the following problem in signal.signal() call:
# error: Argument 2 to "signal" has incompatible type "Callable[[Signals, FrameType], Any]";
@@ -89,7 +116,8 @@ class VirtualMachine(MachineInterface):
self.dmesg_logger = self.__setup_dmesg_logger()
def __str__(self) -> str:
- return f'VM{self.vmnum}-VF:{self.passed_vf_bdfs[0] if self.passed_vf_bdfs else 'N/A'}'
+ vf_bdf = self.passed_vf_bdfs[0] if self.passed_vf_bdfs else 'N/A'
+ return f'VM{self.vmnum}-VF:{vf_bdf}'
def __del__(self) -> None:
if not self.is_running():
@@ -250,7 +278,7 @@ class VirtualMachine(MachineInterface):
# Look for a directory name with a PCI BDF (e.g. 0000:1a:00.0)
for bdf in dev_dir_ls:
- match = re.match(r'\d{4}(?::[0-9a-z-A-Z]{2}){2}.[0-7]', bdf)
+ match = re.fullmatch(r'[0-9a-fA-F]{4}(?::[0-9a-fA-F]{2}){2}\.[0-7]', bdf)
if match:
device = VirtualDevice(bdf, self)
detected_devices.append(device)
@@ -328,7 +356,7 @@ class VirtualMachine(MachineInterface):
return False
@Decorators.timeout_signal
- def poweroff(self) -> None:
+ def poweroff(self, timeout: int = 60) -> None:
"""Power off VM via the Guest-Agent guest-shutdown(powerdown) command."""
logger.debug('Powering off VM%s', self.vmnum)
assert self.process
@@ -343,7 +371,7 @@ class VirtualMachine(MachineInterface):
while event != 'SHUTDOWN':
event = self.qm.get_qmp_event()
except exceptions.AlarmTimeoutError:
- logger.warning('VM%s hanged on poweroff. Initiating forced termination', self.vmnum)
+ logger.warning('VM%s has not responded to power off request - force termination', self.vmnum)
self.process.terminate()
finally:
# Wait and make sure that qemu shutdown
--
2.39.1
^ permalink raw reply related [flat|nested] 19+ messages in thread* Re: [PATCH i-g-t 4/7] tools/vmtb: Fix guest timeout handling and PCI BDF matching
2026-09-28 7:25 ` [PATCH i-g-t 4/7] tools/vmtb: Fix guest timeout handling and PCI BDF matching Adam Miszczak
@ 2026-10-08 13:55 ` Bernatowicz, Marcin
0 siblings, 0 replies; 19+ messages in thread
From: Bernatowicz, Marcin @ 2026-10-08 13:55 UTC (permalink / raw)
To: Adam Miszczak, igt-dev; +Cc: kamil.konieczny
LGTM,
Reviewed-by: Marcin Bernatowicz <marcin.bernatowicz@linux.intel.com>
On 9/28/2026 9:25 AM, Adam Miszczak wrote:
> Resolve timeouts from keyword or positional arguments and function
> defaults. Give VM power-off a configurable 60-second default.
>
> Match complete PCI BDF names using hexadecimal fields and a literal
> dot before the function number, rejecting malformed directory names.
>
> Also, avoid nested f-string quotes for compatibility with older Python.
>
> Signed-off-by: Adam Miszczak <adam.miszczak@linux.intel.com>
> ---
> tools/vmtb/bench/machines/virtual/vm.py | 48 +++++++++++++++++++------
> 1 file changed, 38 insertions(+), 10 deletions(-)
>
> diff --git a/tools/vmtb/bench/machines/virtual/vm.py b/tools/vmtb/bench/machines/virtual/vm.py
> index 8229084d4..e0b6fb150 100644
> --- a/tools/vmtb/bench/machines/virtual/vm.py
> +++ b/tools/vmtb/bench/machines/virtual/vm.py
> @@ -2,6 +2,7 @@
> # Copyright © 2024-2026 Intel Corporation
>
> import base64
> +import inspect
> import json
> import logging
> import re
> @@ -34,13 +35,39 @@ class VirtualMachine(MachineInterface):
>
> @classmethod
> def timeout_signal(cls, func: typing.Callable) -> typing.Callable:
> + timeout_default: int = DEFAULT_TIMEOUT
> +
> + # Check for timeout provided as function signature default
> + func_sig = inspect.signature(func)
> + timeout_param = func_sig.parameters.get('timeout')
> + if timeout_param and isinstance(timeout_param.default, int):
> + timeout_default = timeout_param.default
> +
> + # Check timeout parameter positional index
> + # (to avoid repeated introspection on every call)
> + timeout_positional_idx: typing.Optional[int] = None
> + positional_params = [
> + name for name, param in func_sig.parameters.items()
> + if param.kind == inspect.Parameter.POSITIONAL_OR_KEYWORD
> + ]
> + if 'timeout' in positional_params:
> + timeout_positional_idx = positional_params.index('timeout')
> +
> def timeout_wrapper(*args: typing.Any, **kwargs: typing.Optional[typing.Any]) -> typing.Any:
> - timeout: int = DEFAULT_TIMEOUT
> - if len(args) > 2:
> - timeout = args[2] # Argument position in execute_wait(self, pid, timeout)
> - elif kwargs.get('timeout') is not None:
> - if isinstance(kwargs['timeout'], int):
> - timeout = kwargs['timeout']
> + timeout: int = timeout_default
> +
> + # Resolve timeout in this order:
> + # 1. Explicit keyword value, e.g. vm.func(timeout=60)
> + # 2. Explicit positional value, e.g. vm.func(..., 60)
> + # 3. Default function signature value, e.g. def func(self, timeout=60)
> + # 4. Default global value (DEFAULT_TIMEOUT)
> + timeout_kwarg = kwargs.get('timeout')
> + if isinstance(timeout_kwarg, int):
> + timeout = timeout_kwarg
> + elif (timeout_positional_idx is not None
> + and len(args) > timeout_positional_idx
> + and isinstance(args[timeout_positional_idx], int)):
> + timeout = args[timeout_positional_idx]
>
> # mypy: silence the following problem in signal.signal() call:
> # error: Argument 2 to "signal" has incompatible type "Callable[[Signals, FrameType], Any]";
> @@ -89,7 +116,8 @@ class VirtualMachine(MachineInterface):
> self.dmesg_logger = self.__setup_dmesg_logger()
>
> def __str__(self) -> str:
> - return f'VM{self.vmnum}-VF:{self.passed_vf_bdfs[0] if self.passed_vf_bdfs else 'N/A'}'
> + vf_bdf = self.passed_vf_bdfs[0] if self.passed_vf_bdfs else 'N/A'
> + return f'VM{self.vmnum}-VF:{vf_bdf}'
>
> def __del__(self) -> None:
> if not self.is_running():
> @@ -250,7 +278,7 @@ class VirtualMachine(MachineInterface):
>
> # Look for a directory name with a PCI BDF (e.g. 0000:1a:00.0)
> for bdf in dev_dir_ls:
> - match = re.match(r'\d{4}(?::[0-9a-z-A-Z]{2}){2}.[0-7]', bdf)
> + match = re.fullmatch(r'[0-9a-fA-F]{4}(?::[0-9a-fA-F]{2}){2}\.[0-7]', bdf)
> if match:
> device = VirtualDevice(bdf, self)
> detected_devices.append(device)
> @@ -328,7 +356,7 @@ class VirtualMachine(MachineInterface):
> return False
>
> @Decorators.timeout_signal
> - def poweroff(self) -> None:
> + def poweroff(self, timeout: int = 60) -> None:
> """Power off VM via the Guest-Agent guest-shutdown(powerdown) command."""
> logger.debug('Powering off VM%s', self.vmnum)
> assert self.process
> @@ -343,7 +371,7 @@ class VirtualMachine(MachineInterface):
> while event != 'SHUTDOWN':
> event = self.qm.get_qmp_event()
> except exceptions.AlarmTimeoutError:
> - logger.warning('VM%s hanged on poweroff. Initiating forced termination', self.vmnum)
> + logger.warning('VM%s has not responded to power off request - force termination', self.vmnum)
> self.process.terminate()
> finally:
> # Wait and make sure that qemu shutdown
^ permalink raw reply [flat|nested] 19+ messages in thread
* [PATCH i-g-t 5/7] tools/vmtb: Add pre-test environment cleanup
2026-09-28 7:25 [PATCH i-g-t 0/7] tools/vmtb: Sync VM Test Bench core with current xe SR-IOV Adam Miszczak
` (3 preceding siblings ...)
2026-09-28 7:25 ` [PATCH i-g-t 4/7] tools/vmtb: Fix guest timeout handling and PCI BDF matching Adam Miszczak
@ 2026-09-28 7:25 ` Adam Miszczak
2026-10-08 13:55 ` Bernatowicz, Marcin
2026-09-28 7:25 ` [PATCH i-g-t 6/7] tools/vmtb: Add VM dmesg wait support Adam Miszczak
` (5 subsequent siblings)
10 siblings, 1 reply; 19+ messages in thread
From: Adam Miszczak @ 2026-09-28 7:25 UTC (permalink / raw)
To: igt-dev; +Cc: marcin.bernatowicz, kamil.konieczny
Introduce 'EnvironmentCleaner' to ensure a clean DUT state before each
test by removing leftovers from crashed, failed, or timed-out runs.
The cleaner handles:
- terminating orphaned QEMU processes (SIGTERM, then SIGKILL if needed)
- removing stale QEMU sockets (Guest Agent, QMP monitor)
- optionally removing leftover qcow2 guest images (disabled by default)
Wire EnvironmentCleaner().cleanup() into the VM setup fixtures in
vmm_flows/conftest.py so cleanup runs before every test setup phase.
Consolidate multi-step SR-IOV configuration teardown into a single
reset_sriov_config() function that removes VFs and restores
auto provisioning via debugfs.
Call reset_sriov_config() at test setup when leftover VFs are
detected, guarding against dirty state from crashed runs.
Drop the explicit provisioning attributes clearing
(clear_provisioning_attributes/reset_provisioning) and the unused
cancel_work() teardown step — restore_auto_provisioning is sufficient.
Remove implicit VF removal from create_vf() (handled by the setup check).
Signed-off-by: Adam Miszczak <adam.miszczak@linux.intel.com>
---
tools/vmtb/bench/drivers/driver_interface.py | 1 +
tools/vmtb/bench/drivers/xe.py | 1 +
tools/vmtb/bench/helpers/cleanup.py | 91 ++++++++++++++++++++
tools/vmtb/bench/machines/physical/device.py | 39 ++-------
tools/vmtb/vmm_flows/conftest.py | 34 ++++++--
5 files changed, 126 insertions(+), 40 deletions(-)
create mode 100644 tools/vmtb/bench/helpers/cleanup.py
diff --git a/tools/vmtb/bench/drivers/driver_interface.py b/tools/vmtb/bench/drivers/driver_interface.py
index 9d1e5ab00..498afa9af 100644
--- a/tools/vmtb/bench/drivers/driver_interface.py
+++ b/tools/vmtb/bench/drivers/driver_interface.py
@@ -146,6 +146,7 @@ class PfDriverInterface(DriverInterface, abc.ABC):
def restore_auto_provisioning(self) -> None:
raise NotImplementedError
+ # Deprecated - not used on xe
@abc.abstractmethod
def cancel_work(self) -> None:
raise NotImplementedError
diff --git a/tools/vmtb/bench/drivers/xe.py b/tools/vmtb/bench/drivers/xe.py
index 479c1dd87..45182aad5 100644
--- a/tools/vmtb/bench/drivers/xe.py
+++ b/tools/vmtb/bench/drivers/xe.py
@@ -62,6 +62,7 @@ class XeDriver(PfDriverInterface):
path = self.debugfs_path / 'sriov' / 'restore_auto_provisioning'
self.write_debugfs(str(path), str(1))
+ # Deprecated - not used on xe
def cancel_work(self) -> None:
# Function to cancel all remaing work on GPU (for test cleanup).
# Forcing reset (debugfs/gtM/force_reset_sync) shouldn't be used to idle GPU.
diff --git a/tools/vmtb/bench/helpers/cleanup.py b/tools/vmtb/bench/helpers/cleanup.py
new file mode 100644
index 000000000..f1d3e3f76
--- /dev/null
+++ b/tools/vmtb/bench/helpers/cleanup.py
@@ -0,0 +1,91 @@
+# SPDX-License-Identifier: MIT
+# Copyright © 2026 Intel Corporation
+
+import logging
+import subprocess
+import time
+from pathlib import Path
+
+logger = logging.getLogger('Cleanup')
+
+
+class EnvironmentCleaner:
+ """Pre-test environment cleanup utilities.
+
+ Ensures that leftovers from crashed, failed, or timed-out tests
+ are removed before the next test setup phase begins.
+ """
+
+ QEMU_PROCESS_NAME = 'qemu-system-x86_64'
+ SOCKET_PATTERNS = ['qga*.sock', 'mon*.sock']
+ QEMU_IMAGE_PATTERN = 'vm*_*_image.qcow2'
+
+ def __init__(self, work_dir: str = '.', remove_qemu_images: bool = False) -> None:
+ self.work_dir = Path(work_dir)
+ self.remove_qemu_images = remove_qemu_images
+
+ def cleanup(self) -> None:
+ """Perform full pre-test environment cleanup.
+ Handles:
+ - Terminating orphaned QEMU processes
+ - Removing stale QEMU sockets (Guest Agent, QMP monitor)
+ - Removing leftover QEMU qcow2 images (optionally)
+ """
+ logger.debug("Pre-test environment cleanup")
+ self.terminate_orphaned_qemu_processes()
+ self.remove_stale_sockets()
+ if self.remove_qemu_images:
+ self.remove_leftover_qemu_images()
+
+ def terminate_orphaned_qemu_processes(self) -> None:
+ """Find and terminate any leftover QEMU processes from previous test runs.
+ Try SIGTERM first, then SIGKILL if necessary."""
+ for signal in ('TERM', 'KILL'):
+ pids = self._find_qemu_pids()
+ if not pids:
+ return
+ for pid_str in pids:
+ logger.debug("Terminating (SIG%s) orphaned QEMU process (PID: %s)", signal, pid_str)
+ try:
+ subprocess.run(['kill', f'-{signal}', pid_str], check=False)
+ except Exception as exc:
+ logger.warning("Failed to %s QEMU PID %s: %s", signal, pid_str, exc)
+ time.sleep(1) # Give the processes a moment to terminate
+
+ def _find_qemu_pids(self) -> list[str] | None:
+ """Return list of QEMU PIDs, or None if none found or pgrep unavailable."""
+ try:
+ result = subprocess.run(
+ ['pgrep', '-f', self.QEMU_PROCESS_NAME],
+ capture_output=True, text=True, check=False)
+ except FileNotFoundError:
+ logger.warning("pgrep not available, skipping orphan QEMU check")
+ return None
+
+ if result.returncode != 0:
+ return None
+
+ return [pid for pid in result.stdout.strip().split('\n') if pid] or None
+
+ def remove_stale_sockets(self) -> None:
+ """Remove leftover QEMU Guest Agent and QMP monitor sockets."""
+ for pattern in self.SOCKET_PATTERNS:
+ for sock_path in Path('/tmp').glob(pattern):
+ try:
+ if not sock_path.is_socket():
+ continue
+ logger.debug("Removing stale VMTB/QEMU socket: %s", sock_path)
+ sock_path.unlink()
+ except OSError as exc:
+ logger.warning("Failed to remove stale socket %s: %s", sock_path, exc)
+
+ def remove_leftover_qemu_images(self) -> None:
+ """Remove leftover QEMU qcow2 images from previous test runs."""
+ for image_path in self.work_dir.glob(self.QEMU_IMAGE_PATTERN):
+ try:
+ if not image_path.is_file():
+ continue
+ logger.debug("Removing leftover VMTB/QEMU guest image: %s", image_path)
+ image_path.unlink()
+ except OSError as exc:
+ logger.warning("Failed to remove leftover image %s: %s", image_path, exc)
diff --git a/tools/vmtb/bench/machines/physical/device.py b/tools/vmtb/bench/machines/physical/device.py
index b4eebc245..7cbbee277 100644
--- a/tools/vmtb/bench/machines/physical/device.py
+++ b/tools/vmtb/bench/machines/physical/device.py
@@ -91,9 +91,6 @@ class Device(DeviceInterface):
Disable SRIOV drivers autoprobe to allow VFIO driver override for VFs.
"""
logger.info("[%s] Enable %s VFs", self.pci_info.bdf, num)
- if self.get_current_vfs() != 0:
- self.remove_vfs()
-
self.numvf = num
# Disable driver autoprobe to avoid driver load on VF (override to vfio is required)
@@ -233,36 +230,6 @@ class Device(DeviceInterface):
self.driver.set_contexts_quota(fn_num, gt_num, resources_config.vfContexts)
self.driver.set_doorbells_quota(fn_num, gt_num, resources_config.vfDoorbells)
- def clear_provisioning_attributes(self, num_vfs: int) -> None:
- """Clear provisioning attributes for a requested number of VFs."""
- # Provisioning config are likely wiped out by (xe) debugfs/restore_auto_provisioning,
- # but explicit clear shouldn't harm.
- self.driver.set_bulk_sched_priority(SchedulingPriority.LOW)
- self.driver.set_bulk_exec_quantum_ms(0)
- self.driver.set_bulk_preempt_timeout_us(0)
-
- for gt_num in range(self.get_num_gts()):
- self.driver.set_pf_policy_reset_engine(gt_num, 0)
- self.driver.set_doorbells_quota(0, gt_num, 0)
- # PF contexts cannot be set from sysfs
-
- for vf_num in range(1, num_vfs + 1):
- self.driver.set_contexts_quota(vf_num, gt_num, 0)
- self.driver.set_doorbells_quota(vf_num, gt_num, 0)
- if not self.is_gt_media_type(gt_num):
- self.driver.set_vram_quota(vf_num, 0)
- self.driver.set_ggtt_quota(vf_num, gt_num, 0)
-
- def reset_provisioning(self, num_vfs: int) -> None:
- """Clear provisioning config for a given number of VFs and restore auto provisioning mode."""
- logger.info("[%s] Reset %sxVF provisioning configuration", self.pci_info.bdf, num_vfs)
- self.clear_provisioning_attributes(num_vfs)
- self.driver.restore_auto_provisioning()
-
- def cancel_work(self) -> None:
- """Drop and reset remaining GPU execution at exit."""
- self.driver.cancel_work()
-
def get_scheduling_priority(self, fn_num: int) -> SchedulingPriority:
"""Get scheduling priority for a given VF or PF."""
return self.driver.get_sched_priority(fn_num)
@@ -274,3 +241,9 @@ class Device(DeviceInterface):
def set_pf_scheduling_priority(self, val: SchedulingPriority) -> None:
"""Set scheduling priority for PF only. High prioritizes PF execution over VFs."""
self.driver.set_pf_sched_priority(val)
+
+ def reset_sriov_config(self) -> None:
+ """Clear setup - remove enabled VFs and restore auto provisioning mode."""
+ logger.info("[%s] Reset VFs configuration", self.pci_info.bdf)
+ self.remove_vfs()
+ self.driver.restore_auto_provisioning()
diff --git a/tools/vmtb/vmm_flows/conftest.py b/tools/vmtb/vmm_flows/conftest.py
index ba6487c84..df395794c 100644
--- a/tools/vmtb/vmm_flows/conftest.py
+++ b/tools/vmtb/vmm_flows/conftest.py
@@ -16,6 +16,7 @@ from bench.configurators.vgpu_profile_config import (VfProvisioningMode,
VfSchedulingMode,
VgpuProfileConfigurator)
from bench.configurators.vmtb_config import VmtbConfigurator
+from bench.helpers.cleanup import EnvironmentCleaner
from bench.helpers.log import HOST_DMESG_FILE
from bench.machines.host import Device, Host
from bench.machines.virtual.vm import VirtualMachine
@@ -203,10 +204,7 @@ class VmmTestingSetup:
except Exception as exc:
logger.error("Error on test teardown (%s)", exc)
finally:
- num_vfs = self.get_dut().get_current_vfs()
- self.get_dut().remove_vfs()
- self.get_dut().reset_provisioning(num_vfs)
- self.get_dut().cancel_work()
+ self.get_dut().reset_sriov_config()
if self.testing_config.unload_host_drivers_on_teardown:
self.host.unload_drivers()
@@ -256,6 +254,9 @@ def fixture_setup_vms(get_vmtb_config, get_cmdline_config, get_host, request):
tc: VmmTestingConfig = request.param
logger.debug(repr(tc))
+ # Pre-test cleanup: remove leftovers from crashed/failed/timed-out tests
+ EnvironmentCleaner().cleanup()
+
host: Host = get_host
ts: VmmTestingSetup = VmmTestingSetup(get_vmtb_config, get_cmdline_config, host, tc)
@@ -263,6 +264,10 @@ def fixture_setup_vms(get_vmtb_config, get_cmdline_config, get_host, request):
num_vfs = ts.testing_config.num_vfs
num_vms = ts.get_num_vms()
+ if device.get_current_vfs() != 0:
+ logger.debug("Test environment is not clean - remove VFs remains")
+ device.reset_sriov_config()
+
logger.info('[Test setup: %sVF-%sVM]', num_vfs, num_vms)
if ts.testing_config.provisioning_mode is VfProvisioningMode.VGPU_PROFILE:
@@ -283,9 +288,6 @@ def fixture_setup_vms(get_vmtb_config, get_cmdline_config, get_host, request):
if tc.wa_reduce_vf_lmem and device.has_lmem():
ts.vgpu_profile.resources.vfLmem = org_vgpu_profile_vfLmem
- else:
- device.driver.restore_auto_provisioning()
-
assert num_vfs <= ts.total_vfs, f'Requested number of VFs ({num_vfs}) exceeds total VFs ({ts.total_vfs})'
device.create_vf(num_vfs)
@@ -320,9 +322,18 @@ def fixture_setup_vms(get_vmtb_config, get_cmdline_config, get_host, request):
@pytest.fixture(scope='function')
def create_1host_1vm(get_vmtb_config, get_cmdline_config, get_host):
num_vfs, num_vms = 1, 1
+
+ # Pre-test cleanup: remove leftovers from crashed/failed/timed-out tests
+ EnvironmentCleaner().cleanup()
+
ts: VmmTestingSetup = VmmTestingSetup(get_vmtb_config, get_cmdline_config, get_host,
VmmTestingConfig(num_vfs, num_vms))
+ device: Device = ts.get_dut()
+ if device.get_current_vfs() != 0:
+ logger.debug("Test environment is not clean - remove VFs remains")
+ device.reset_sriov_config()
+
logger.info('[Test setup: %sVF-%sVM]', num_vfs, num_vms)
logger.debug(repr(ts.testing_config))
@@ -336,9 +347,18 @@ def create_1host_1vm(get_vmtb_config, get_cmdline_config, get_host):
@pytest.fixture(scope='function')
def create_1host_2vm(get_vmtb_config, get_cmdline_config, get_host):
num_vfs, num_vms = 2, 2
+
+ # Pre-test cleanup: remove leftovers from crashed/failed/timed-out tests
+ EnvironmentCleaner().cleanup()
+
ts: VmmTestingSetup = VmmTestingSetup(get_vmtb_config, get_cmdline_config, get_host,
VmmTestingConfig(num_vfs, num_vms))
+ device: Device = ts.get_dut()
+ if device.get_current_vfs() != 0:
+ logger.debug("Test environment is not clean - remove VFs remains")
+ device.reset_sriov_config()
+
logger.info('[Test setup: %sVF-%sVM]', num_vfs, num_vms)
logger.debug(repr(ts.testing_config))
--
2.39.1
^ permalink raw reply related [flat|nested] 19+ messages in thread* Re: [PATCH i-g-t 5/7] tools/vmtb: Add pre-test environment cleanup
2026-09-28 7:25 ` [PATCH i-g-t 5/7] tools/vmtb: Add pre-test environment cleanup Adam Miszczak
@ 2026-10-08 13:55 ` Bernatowicz, Marcin
0 siblings, 0 replies; 19+ messages in thread
From: Bernatowicz, Marcin @ 2026-10-08 13:55 UTC (permalink / raw)
To: Adam Miszczak, igt-dev; +Cc: kamil.konieczny
LGTM,
Reviewed-by: Marcin Bernatowicz <marcin.bernatowicz@linux.intel.com>
On 9/28/2026 9:25 AM, Adam Miszczak wrote:
> Introduce 'EnvironmentCleaner' to ensure a clean DUT state before each
> test by removing leftovers from crashed, failed, or timed-out runs.
> The cleaner handles:
> - terminating orphaned QEMU processes (SIGTERM, then SIGKILL if needed)
> - removing stale QEMU sockets (Guest Agent, QMP monitor)
> - optionally removing leftover qcow2 guest images (disabled by default)
> Wire EnvironmentCleaner().cleanup() into the VM setup fixtures in
> vmm_flows/conftest.py so cleanup runs before every test setup phase.
>
> Consolidate multi-step SR-IOV configuration teardown into a single
> reset_sriov_config() function that removes VFs and restores
> auto provisioning via debugfs.
> Call reset_sriov_config() at test setup when leftover VFs are
> detected, guarding against dirty state from crashed runs.
>
> Drop the explicit provisioning attributes clearing
> (clear_provisioning_attributes/reset_provisioning) and the unused
> cancel_work() teardown step — restore_auto_provisioning is sufficient.
> Remove implicit VF removal from create_vf() (handled by the setup check).
>
> Signed-off-by: Adam Miszczak <adam.miszczak@linux.intel.com>
> ---
> tools/vmtb/bench/drivers/driver_interface.py | 1 +
> tools/vmtb/bench/drivers/xe.py | 1 +
> tools/vmtb/bench/helpers/cleanup.py | 91 ++++++++++++++++++++
> tools/vmtb/bench/machines/physical/device.py | 39 ++-------
> tools/vmtb/vmm_flows/conftest.py | 34 ++++++--
> 5 files changed, 126 insertions(+), 40 deletions(-)
> create mode 100644 tools/vmtb/bench/helpers/cleanup.py
>
> diff --git a/tools/vmtb/bench/drivers/driver_interface.py b/tools/vmtb/bench/drivers/driver_interface.py
> index 9d1e5ab00..498afa9af 100644
> --- a/tools/vmtb/bench/drivers/driver_interface.py
> +++ b/tools/vmtb/bench/drivers/driver_interface.py
> @@ -146,6 +146,7 @@ class PfDriverInterface(DriverInterface, abc.ABC):
> def restore_auto_provisioning(self) -> None:
> raise NotImplementedError
>
> + # Deprecated - not used on xe
> @abc.abstractmethod
> def cancel_work(self) -> None:
> raise NotImplementedError
> diff --git a/tools/vmtb/bench/drivers/xe.py b/tools/vmtb/bench/drivers/xe.py
> index 479c1dd87..45182aad5 100644
> --- a/tools/vmtb/bench/drivers/xe.py
> +++ b/tools/vmtb/bench/drivers/xe.py
> @@ -62,6 +62,7 @@ class XeDriver(PfDriverInterface):
> path = self.debugfs_path / 'sriov' / 'restore_auto_provisioning'
> self.write_debugfs(str(path), str(1))
>
> + # Deprecated - not used on xe
> def cancel_work(self) -> None:
> # Function to cancel all remaing work on GPU (for test cleanup).
> # Forcing reset (debugfs/gtM/force_reset_sync) shouldn't be used to idle GPU.
> diff --git a/tools/vmtb/bench/helpers/cleanup.py b/tools/vmtb/bench/helpers/cleanup.py
> new file mode 100644
> index 000000000..f1d3e3f76
> --- /dev/null
> +++ b/tools/vmtb/bench/helpers/cleanup.py
> @@ -0,0 +1,91 @@
> +# SPDX-License-Identifier: MIT
> +# Copyright © 2026 Intel Corporation
> +
> +import logging
> +import subprocess
> +import time
> +from pathlib import Path
> +
> +logger = logging.getLogger('Cleanup')
> +
> +
> +class EnvironmentCleaner:
> + """Pre-test environment cleanup utilities.
> +
> + Ensures that leftovers from crashed, failed, or timed-out tests
> + are removed before the next test setup phase begins.
> + """
> +
> + QEMU_PROCESS_NAME = 'qemu-system-x86_64'
> + SOCKET_PATTERNS = ['qga*.sock', 'mon*.sock']
> + QEMU_IMAGE_PATTERN = 'vm*_*_image.qcow2'
> +
> + def __init__(self, work_dir: str = '.', remove_qemu_images: bool = False) -> None:
> + self.work_dir = Path(work_dir)
> + self.remove_qemu_images = remove_qemu_images
> +
> + def cleanup(self) -> None:
> + """Perform full pre-test environment cleanup.
> + Handles:
> + - Terminating orphaned QEMU processes
> + - Removing stale QEMU sockets (Guest Agent, QMP monitor)
> + - Removing leftover QEMU qcow2 images (optionally)
> + """
> + logger.debug("Pre-test environment cleanup")
> + self.terminate_orphaned_qemu_processes()
> + self.remove_stale_sockets()
> + if self.remove_qemu_images:
> + self.remove_leftover_qemu_images()
> +
> + def terminate_orphaned_qemu_processes(self) -> None:
> + """Find and terminate any leftover QEMU processes from previous test runs.
> + Try SIGTERM first, then SIGKILL if necessary."""
> + for signal in ('TERM', 'KILL'):
> + pids = self._find_qemu_pids()
> + if not pids:
> + return
> + for pid_str in pids:
> + logger.debug("Terminating (SIG%s) orphaned QEMU process (PID: %s)", signal, pid_str)
> + try:
> + subprocess.run(['kill', f'-{signal}', pid_str], check=False)
> + except Exception as exc:
> + logger.warning("Failed to %s QEMU PID %s: %s", signal, pid_str, exc)
> + time.sleep(1) # Give the processes a moment to terminate
> +
> + def _find_qemu_pids(self) -> list[str] | None:
> + """Return list of QEMU PIDs, or None if none found or pgrep unavailable."""
> + try:
> + result = subprocess.run(
> + ['pgrep', '-f', self.QEMU_PROCESS_NAME],
> + capture_output=True, text=True, check=False)
> + except FileNotFoundError:
> + logger.warning("pgrep not available, skipping orphan QEMU check")
> + return None
> +
> + if result.returncode != 0:
> + return None
> +
> + return [pid for pid in result.stdout.strip().split('\n') if pid] or None
> +
> + def remove_stale_sockets(self) -> None:
> + """Remove leftover QEMU Guest Agent and QMP monitor sockets."""
> + for pattern in self.SOCKET_PATTERNS:
> + for sock_path in Path('/tmp').glob(pattern):
> + try:
> + if not sock_path.is_socket():
> + continue
> + logger.debug("Removing stale VMTB/QEMU socket: %s", sock_path)
> + sock_path.unlink()
> + except OSError as exc:
> + logger.warning("Failed to remove stale socket %s: %s", sock_path, exc)
> +
> + def remove_leftover_qemu_images(self) -> None:
> + """Remove leftover QEMU qcow2 images from previous test runs."""
> + for image_path in self.work_dir.glob(self.QEMU_IMAGE_PATTERN):
> + try:
> + if not image_path.is_file():
> + continue
> + logger.debug("Removing leftover VMTB/QEMU guest image: %s", image_path)
> + image_path.unlink()
> + except OSError as exc:
> + logger.warning("Failed to remove leftover image %s: %s", image_path, exc)
> diff --git a/tools/vmtb/bench/machines/physical/device.py b/tools/vmtb/bench/machines/physical/device.py
> index b4eebc245..7cbbee277 100644
> --- a/tools/vmtb/bench/machines/physical/device.py
> +++ b/tools/vmtb/bench/machines/physical/device.py
> @@ -91,9 +91,6 @@ class Device(DeviceInterface):
> Disable SRIOV drivers autoprobe to allow VFIO driver override for VFs.
> """
> logger.info("[%s] Enable %s VFs", self.pci_info.bdf, num)
> - if self.get_current_vfs() != 0:
> - self.remove_vfs()
> -
> self.numvf = num
>
> # Disable driver autoprobe to avoid driver load on VF (override to vfio is required)
> @@ -233,36 +230,6 @@ class Device(DeviceInterface):
> self.driver.set_contexts_quota(fn_num, gt_num, resources_config.vfContexts)
> self.driver.set_doorbells_quota(fn_num, gt_num, resources_config.vfDoorbells)
>
> - def clear_provisioning_attributes(self, num_vfs: int) -> None:
> - """Clear provisioning attributes for a requested number of VFs."""
> - # Provisioning config are likely wiped out by (xe) debugfs/restore_auto_provisioning,
> - # but explicit clear shouldn't harm.
> - self.driver.set_bulk_sched_priority(SchedulingPriority.LOW)
> - self.driver.set_bulk_exec_quantum_ms(0)
> - self.driver.set_bulk_preempt_timeout_us(0)
> -
> - for gt_num in range(self.get_num_gts()):
> - self.driver.set_pf_policy_reset_engine(gt_num, 0)
> - self.driver.set_doorbells_quota(0, gt_num, 0)
> - # PF contexts cannot be set from sysfs
> -
> - for vf_num in range(1, num_vfs + 1):
> - self.driver.set_contexts_quota(vf_num, gt_num, 0)
> - self.driver.set_doorbells_quota(vf_num, gt_num, 0)
> - if not self.is_gt_media_type(gt_num):
> - self.driver.set_vram_quota(vf_num, 0)
> - self.driver.set_ggtt_quota(vf_num, gt_num, 0)
> -
> - def reset_provisioning(self, num_vfs: int) -> None:
> - """Clear provisioning config for a given number of VFs and restore auto provisioning mode."""
> - logger.info("[%s] Reset %sxVF provisioning configuration", self.pci_info.bdf, num_vfs)
> - self.clear_provisioning_attributes(num_vfs)
> - self.driver.restore_auto_provisioning()
> -
> - def cancel_work(self) -> None:
> - """Drop and reset remaining GPU execution at exit."""
> - self.driver.cancel_work()
> -
> def get_scheduling_priority(self, fn_num: int) -> SchedulingPriority:
> """Get scheduling priority for a given VF or PF."""
> return self.driver.get_sched_priority(fn_num)
> @@ -274,3 +241,9 @@ class Device(DeviceInterface):
> def set_pf_scheduling_priority(self, val: SchedulingPriority) -> None:
> """Set scheduling priority for PF only. High prioritizes PF execution over VFs."""
> self.driver.set_pf_sched_priority(val)
> +
> + def reset_sriov_config(self) -> None:
> + """Clear setup - remove enabled VFs and restore auto provisioning mode."""
> + logger.info("[%s] Reset VFs configuration", self.pci_info.bdf)
> + self.remove_vfs()
> + self.driver.restore_auto_provisioning()
> diff --git a/tools/vmtb/vmm_flows/conftest.py b/tools/vmtb/vmm_flows/conftest.py
> index ba6487c84..df395794c 100644
> --- a/tools/vmtb/vmm_flows/conftest.py
> +++ b/tools/vmtb/vmm_flows/conftest.py
> @@ -16,6 +16,7 @@ from bench.configurators.vgpu_profile_config import (VfProvisioningMode,
> VfSchedulingMode,
> VgpuProfileConfigurator)
> from bench.configurators.vmtb_config import VmtbConfigurator
> +from bench.helpers.cleanup import EnvironmentCleaner
> from bench.helpers.log import HOST_DMESG_FILE
> from bench.machines.host import Device, Host
> from bench.machines.virtual.vm import VirtualMachine
> @@ -203,10 +204,7 @@ class VmmTestingSetup:
> except Exception as exc:
> logger.error("Error on test teardown (%s)", exc)
> finally:
> - num_vfs = self.get_dut().get_current_vfs()
> - self.get_dut().remove_vfs()
> - self.get_dut().reset_provisioning(num_vfs)
> - self.get_dut().cancel_work()
> + self.get_dut().reset_sriov_config()
>
> if self.testing_config.unload_host_drivers_on_teardown:
> self.host.unload_drivers()
> @@ -256,6 +254,9 @@ def fixture_setup_vms(get_vmtb_config, get_cmdline_config, get_host, request):
> tc: VmmTestingConfig = request.param
> logger.debug(repr(tc))
>
> + # Pre-test cleanup: remove leftovers from crashed/failed/timed-out tests
> + EnvironmentCleaner().cleanup()
> +
> host: Host = get_host
> ts: VmmTestingSetup = VmmTestingSetup(get_vmtb_config, get_cmdline_config, host, tc)
>
> @@ -263,6 +264,10 @@ def fixture_setup_vms(get_vmtb_config, get_cmdline_config, get_host, request):
> num_vfs = ts.testing_config.num_vfs
> num_vms = ts.get_num_vms()
>
> + if device.get_current_vfs() != 0:
> + logger.debug("Test environment is not clean - remove VFs remains")
> + device.reset_sriov_config()
> +
> logger.info('[Test setup: %sVF-%sVM]', num_vfs, num_vms)
>
> if ts.testing_config.provisioning_mode is VfProvisioningMode.VGPU_PROFILE:
> @@ -283,9 +288,6 @@ def fixture_setup_vms(get_vmtb_config, get_cmdline_config, get_host, request):
> if tc.wa_reduce_vf_lmem and device.has_lmem():
> ts.vgpu_profile.resources.vfLmem = org_vgpu_profile_vfLmem
>
> - else:
> - device.driver.restore_auto_provisioning()
> -
> assert num_vfs <= ts.total_vfs, f'Requested number of VFs ({num_vfs}) exceeds total VFs ({ts.total_vfs})'
> device.create_vf(num_vfs)
>
> @@ -320,9 +322,18 @@ def fixture_setup_vms(get_vmtb_config, get_cmdline_config, get_host, request):
> @pytest.fixture(scope='function')
> def create_1host_1vm(get_vmtb_config, get_cmdline_config, get_host):
> num_vfs, num_vms = 1, 1
> +
> + # Pre-test cleanup: remove leftovers from crashed/failed/timed-out tests
> + EnvironmentCleaner().cleanup()
> +
> ts: VmmTestingSetup = VmmTestingSetup(get_vmtb_config, get_cmdline_config, get_host,
> VmmTestingConfig(num_vfs, num_vms))
>
> + device: Device = ts.get_dut()
> + if device.get_current_vfs() != 0:
> + logger.debug("Test environment is not clean - remove VFs remains")
> + device.reset_sriov_config()
> +
> logger.info('[Test setup: %sVF-%sVM]', num_vfs, num_vms)
> logger.debug(repr(ts.testing_config))
>
> @@ -336,9 +347,18 @@ def create_1host_1vm(get_vmtb_config, get_cmdline_config, get_host):
> @pytest.fixture(scope='function')
> def create_1host_2vm(get_vmtb_config, get_cmdline_config, get_host):
> num_vfs, num_vms = 2, 2
> +
> + # Pre-test cleanup: remove leftovers from crashed/failed/timed-out tests
> + EnvironmentCleaner().cleanup()
> +
> ts: VmmTestingSetup = VmmTestingSetup(get_vmtb_config, get_cmdline_config, get_host,
> VmmTestingConfig(num_vfs, num_vms))
>
> + device: Device = ts.get_dut()
> + if device.get_current_vfs() != 0:
> + logger.debug("Test environment is not clean - remove VFs remains")
> + device.reset_sriov_config()
> +
> logger.info('[Test setup: %sVF-%sVM]', num_vfs, num_vms)
> logger.debug(repr(ts.testing_config))
>
^ permalink raw reply [flat|nested] 19+ messages in thread
* [PATCH i-g-t 6/7] tools/vmtb: Add VM dmesg wait support
2026-09-28 7:25 [PATCH i-g-t 0/7] tools/vmtb: Sync VM Test Bench core with current xe SR-IOV Adam Miszczak
` (4 preceding siblings ...)
2026-09-28 7:25 ` [PATCH i-g-t 5/7] tools/vmtb: Add pre-test environment cleanup Adam Miszczak
@ 2026-09-28 7:25 ` Adam Miszczak
2026-10-08 13:56 ` Bernatowicz, Marcin
2026-09-28 7:26 ` [PATCH i-g-t 7/7] tools/vmtb: Extend IGT and WSIM executors Adam Miszczak
` (4 subsequent siblings)
10 siblings, 1 reply; 19+ messages in thread
From: Adam Miszczak @ 2026-09-28 7:25 UTC (permalink / raw)
To: igt-dev; +Cc: marcin.bernatowicz, kamil.konieczny
Introduce VirtualMachine.wait_for_dmesg() to block until a line matching
a given regex pattern appears on the guest serial console, returning the
matched line or raising an exception on timeout.
QEMU output (including guest dmesg) is buffered in a thread-safe buffer
guarded by a condition variable, notifying waiters as new lines arrive.
ANSI escape (color) codes are stripped from dmesg before logging.
New function provides 'from_beginning' parameter:
default (from_beginning=True) scans the whole dmesg collected since
power on, while from_beginning=False resumes right after the previously
matched line (uses cursor shared for all patterns).
Signed-off-by: Adam Miszczak <adam.miszczak@linux.intel.com>
---
tools/vmtb/bench/machines/virtual/vm.py | 48 ++++++++++++++++++++++++-
1 file changed, 47 insertions(+), 1 deletion(-)
diff --git a/tools/vmtb/bench/machines/virtual/vm.py b/tools/vmtb/bench/machines/virtual/vm.py
index e0b6fb150..6b8425d13 100644
--- a/tools/vmtb/bench/machines/virtual/vm.py
+++ b/tools/vmtb/bench/machines/virtual/vm.py
@@ -26,6 +26,10 @@ from bench.machines.virtual.device import VirtualDevice
logger = logging.getLogger('VirtualMachine')
+# Matches ANSI escape sequences (e.g. color codes like \x1b[0;32m) emitted on the
+# guest serial console, so they can be stripped before logging dmesg lines.
+ANSI_ESCAPE_RE = re.compile(r'\x1b\[[0-9;]*[A-Za-z]')
+
class VirtualMachine(MachineInterface):
class Decorators():
@@ -113,6 +117,13 @@ class VirtualMachine(MachineInterface):
self.migrate_destination_vm: bool = False
self._migration_ongoing: bool = False
+ # Buffer of guest serial console (dmesg) lines captured since power on,
+ # guarded by a condition variable to allow waiting for specific messages.
+ self._dmesg_buffer: typing.List[str] = []
+ self._dmesg_condition = threading.Condition()
+ # Dmesg wait cursor (shared across patterns): first dmesg line not consumed yet
+ self._dmesg_scan_idx: int = 0
+
self.dmesg_logger = self.__setup_dmesg_logger()
def __str__(self) -> str:
@@ -180,7 +191,11 @@ class VirtualMachine(MachineInterface):
def __log_qemu_output(self, out: typing.TextIO) -> None:
for line in iter(out.readline, ''):
- self.dmesg_logger.debug(line.strip())
+ stripped_line = ANSI_ESCAPE_RE.sub('', line).strip()
+ self.dmesg_logger.debug(stripped_line)
+ with self._dmesg_condition:
+ self._dmesg_buffer.append(stripped_line)
+ self._dmesg_condition.notify_all()
def __sockets_exists(self) -> bool:
return self.questagent_sockpath.exists() and self.qmp_sockpath.exists()
@@ -587,6 +602,37 @@ class VirtualMachine(MachineInterface):
return True
+ @Decorators.timeout_signal
+ def wait_for_dmesg(self, pattern: str, from_beginning: bool = True, timeout: int = 300) -> str:
+ """Wait until a line matching the given regex pattern appears in the guest dmesg.
+
+ Scans the guest serial console output and blocks until a matching line is observed.
+ By default the whole dmesg collected since VM power on is scanned.
+ Clear 'from_beginning' to start right after the line matched by a previous
+ wait_for_dmesg() call, to match consecutive occurrences of a repeating message.
+ Returns the matched dmesg line (e.g. for further parsing) or raises AlarmTimeoutError
+ if the pattern does not appear within the given timeout (in seconds).
+ """
+ regex = re.compile(pattern)
+ logger.debug("[VM%s] Waiting for dmesg pattern: '%s'%s", self.vmnum, pattern,
+ '' if from_beginning else ' (since last match)')
+
+ with self._dmesg_condition:
+ scan_idx = 0 if from_beginning else self._dmesg_scan_idx
+ while True:
+ while scan_idx < len(self._dmesg_buffer):
+ line = self._dmesg_buffer[scan_idx]
+ scan_idx += 1
+ if regex.search(line):
+ # Do not rewind the cursor
+ self._dmesg_scan_idx = max(self._dmesg_scan_idx, scan_idx)
+ logger.debug("[VM%s] Matched dmesg pattern: '%s'", self.vmnum, pattern)
+ return line
+
+ # Poll with a short timeout so the SIGALRM raised by
+ # Decorators.timeout_signal can interrupt the wait and propagate.
+ self._dmesg_condition.wait(timeout=1)
+
def save_state_init(self) -> None:
"""Initiate VM snapshot-save operation (asynchronous)."""
logger.debug("Starting VM%s state save (snapshot)", self.vmnum)
--
2.39.1
^ permalink raw reply related [flat|nested] 19+ messages in thread* Re: [PATCH i-g-t 6/7] tools/vmtb: Add VM dmesg wait support
2026-09-28 7:25 ` [PATCH i-g-t 6/7] tools/vmtb: Add VM dmesg wait support Adam Miszczak
@ 2026-10-08 13:56 ` Bernatowicz, Marcin
0 siblings, 0 replies; 19+ messages in thread
From: Bernatowicz, Marcin @ 2026-10-08 13:56 UTC (permalink / raw)
To: Adam Miszczak, igt-dev; +Cc: kamil.konieczny
LGTM,
Reviewed-by: Marcin Bernatowicz <marcin.bernatowicz@linux.intel.com>
On 9/28/2026 9:25 AM, Adam Miszczak wrote:
> Introduce VirtualMachine.wait_for_dmesg() to block until a line matching
> a given regex pattern appears on the guest serial console, returning the
> matched line or raising an exception on timeout.
>
> QEMU output (including guest dmesg) is buffered in a thread-safe buffer
> guarded by a condition variable, notifying waiters as new lines arrive.
> ANSI escape (color) codes are stripped from dmesg before logging.
>
> New function provides 'from_beginning' parameter:
> default (from_beginning=True) scans the whole dmesg collected since
> power on, while from_beginning=False resumes right after the previously
> matched line (uses cursor shared for all patterns).
>
> Signed-off-by: Adam Miszczak <adam.miszczak@linux.intel.com>
> ---
> tools/vmtb/bench/machines/virtual/vm.py | 48 ++++++++++++++++++++++++-
> 1 file changed, 47 insertions(+), 1 deletion(-)
>
> diff --git a/tools/vmtb/bench/machines/virtual/vm.py b/tools/vmtb/bench/machines/virtual/vm.py
> index e0b6fb150..6b8425d13 100644
> --- a/tools/vmtb/bench/machines/virtual/vm.py
> +++ b/tools/vmtb/bench/machines/virtual/vm.py
> @@ -26,6 +26,10 @@ from bench.machines.virtual.device import VirtualDevice
>
> logger = logging.getLogger('VirtualMachine')
>
> +# Matches ANSI escape sequences (e.g. color codes like \x1b[0;32m) emitted on the
> +# guest serial console, so they can be stripped before logging dmesg lines.
> +ANSI_ESCAPE_RE = re.compile(r'\x1b\[[0-9;]*[A-Za-z]')
> +
>
> class VirtualMachine(MachineInterface):
> class Decorators():
> @@ -113,6 +117,13 @@ class VirtualMachine(MachineInterface):
> self.migrate_destination_vm: bool = False
> self._migration_ongoing: bool = False
>
> + # Buffer of guest serial console (dmesg) lines captured since power on,
> + # guarded by a condition variable to allow waiting for specific messages.
> + self._dmesg_buffer: typing.List[str] = []
> + self._dmesg_condition = threading.Condition()
> + # Dmesg wait cursor (shared across patterns): first dmesg line not consumed yet
> + self._dmesg_scan_idx: int = 0
> +
> self.dmesg_logger = self.__setup_dmesg_logger()
>
> def __str__(self) -> str:
> @@ -180,7 +191,11 @@ class VirtualMachine(MachineInterface):
>
> def __log_qemu_output(self, out: typing.TextIO) -> None:
> for line in iter(out.readline, ''):
> - self.dmesg_logger.debug(line.strip())
> + stripped_line = ANSI_ESCAPE_RE.sub('', line).strip()
> + self.dmesg_logger.debug(stripped_line)
> + with self._dmesg_condition:
> + self._dmesg_buffer.append(stripped_line)
> + self._dmesg_condition.notify_all()
>
> def __sockets_exists(self) -> bool:
> return self.questagent_sockpath.exists() and self.qmp_sockpath.exists()
> @@ -587,6 +602,37 @@ class VirtualMachine(MachineInterface):
>
> return True
>
> + @Decorators.timeout_signal
> + def wait_for_dmesg(self, pattern: str, from_beginning: bool = True, timeout: int = 300) -> str:
> + """Wait until a line matching the given regex pattern appears in the guest dmesg.
> +
> + Scans the guest serial console output and blocks until a matching line is observed.
> + By default the whole dmesg collected since VM power on is scanned.
> + Clear 'from_beginning' to start right after the line matched by a previous
> + wait_for_dmesg() call, to match consecutive occurrences of a repeating message.
> + Returns the matched dmesg line (e.g. for further parsing) or raises AlarmTimeoutError
> + if the pattern does not appear within the given timeout (in seconds).
> + """
> + regex = re.compile(pattern)
> + logger.debug("[VM%s] Waiting for dmesg pattern: '%s'%s", self.vmnum, pattern,
> + '' if from_beginning else ' (since last match)')
> +
> + with self._dmesg_condition:
> + scan_idx = 0 if from_beginning else self._dmesg_scan_idx
> + while True:
> + while scan_idx < len(self._dmesg_buffer):
> + line = self._dmesg_buffer[scan_idx]
> + scan_idx += 1
> + if regex.search(line):
> + # Do not rewind the cursor
> + self._dmesg_scan_idx = max(self._dmesg_scan_idx, scan_idx)
> + logger.debug("[VM%s] Matched dmesg pattern: '%s'", self.vmnum, pattern)
> + return line
> +
> + # Poll with a short timeout so the SIGALRM raised by
> + # Decorators.timeout_signal can interrupt the wait and propagate.
> + self._dmesg_condition.wait(timeout=1)
> +
> def save_state_init(self) -> None:
> """Initiate VM snapshot-save operation (asynchronous)."""
> logger.debug("Starting VM%s state save (snapshot)", self.vmnum)
^ permalink raw reply [flat|nested] 19+ messages in thread
* [PATCH i-g-t 7/7] tools/vmtb: Extend IGT and WSIM executors
2026-09-28 7:25 [PATCH i-g-t 0/7] tools/vmtb: Sync VM Test Bench core with current xe SR-IOV Adam Miszczak
` (5 preceding siblings ...)
2026-09-28 7:25 ` [PATCH i-g-t 6/7] tools/vmtb: Add VM dmesg wait support Adam Miszczak
@ 2026-09-28 7:26 ` Adam Miszczak
2026-10-08 12:59 ` Bernatowicz, Marcin
2026-09-28 20:28 ` ✓ i915.CI.BAT: success for tools/vmtb: Sync VM Test Bench core with current xe SR-IOV Patchwork
` (3 subsequent siblings)
10 siblings, 1 reply; 19+ messages in thread
From: Adam Miszczak @ 2026-09-28 7:26 UTC (permalink / raw)
To: igt-dev; +Cc: marcin.bernatowicz, kamil.konieczny
Introduce an optional 'env_vars' param (list) on IgtExecutor
that injects 'igt_runner --environment KEY=VALUE' options,
allowing environment variables to be passed to IGT test processes.
Cache GemWsim ProcessResult (like IgtExecutor) so status()/wait()
results are reused instead of re-fetched.
Add a common clear_results() to both: GemWsim and IgtExecutor.
Additionally, align test_migration with executors' changes:
- use common IGT/WSIM clear_results() instead of instance checks.
- call check_results() before failing so the IGT or WSIM
error output is logged on unexpected workload exit.
Signed-off-by: Adam Miszczak <adam.miszczak@linux.intel.com>
---
tools/vmtb/bench/executors/gem_wsim.py | 38 +++++++++++++++++++++-----
tools/vmtb/bench/executors/igt.py | 10 ++++++-
tools/vmtb/vmm_flows/test_migration.py | 22 +++++++++------
3 files changed, 54 insertions(+), 16 deletions(-)
diff --git a/tools/vmtb/bench/executors/gem_wsim.py b/tools/vmtb/bench/executors/gem_wsim.py
index 0cdfcc7e4..0510a9f9a 100644
--- a/tools/vmtb/bench/executors/gem_wsim.py
+++ b/tools/vmtb/bench/executors/gem_wsim.py
@@ -8,7 +8,7 @@ from pathlib import Path
from bench import exceptions
from bench.executors.shell import ShellExecutor
-from bench.machines.machine_interface import DEFAULT_TIMEOUT, MachineInterface
+from bench.machines.machine_interface import (DEFAULT_TIMEOUT, MachineInterface, ProcessResult)
logger = logging.getLogger('GemWsim')
@@ -44,26 +44,45 @@ class GemWsim(ShellExecutor):
wsim_path = Path(target.get_igt_config().test_dir) / 'benchmarks' / 'gem_wsim'
command = f'{wsim_path} -w {workload} -c {num_clients} -r {num_repeats}'
+ self.proc_result = ProcessResult()
super().__init__(target, command, timeout)
def __str__(self) -> str:
return f'gem_wsim({self.machine_id}:{self.pid})'
+ # ShellExecutor overrides
+ def status(self) -> ProcessResult:
+ if self.proc_result.exited:
+ return self.proc_result
+
+ self.proc_result = super().status()
+ return self.proc_result
+
+ def wait(self) -> ProcessResult:
+ if self.proc_result.exited:
+ return self.proc_result
+
+ self.proc_result = super().wait()
+ return self.proc_result
+
+ # IGT/WSIM specific methods
def is_running(self) -> bool:
return not self.status().exited
def wait_results(self) -> GemWsimResult:
- proc_result = self.wait()
- if proc_result.exit_code == 0:
- logger.info('%s: %s', self, proc_result.stdout)
+ if not self.proc_result.exited:
+ self.proc_result = self.wait()
+
+ if self.proc_result.exit_code == 0:
+ logger.info('%s: %s', self, self.proc_result.stdout)
# Try parse output ex.: 19.449s elapsed (102.836 workloads/s)
pattern = r'(?P<elapsed>\d+(\.\d*)?|\.\d+)s elapsed \((?P<wps>\d+(\.\d*)?|\.\d+) workloads/s\)'
- match = re.search(pattern, proc_result.stdout, re.MULTILINE)
+ match = re.search(pattern, self.proc_result.stdout, re.MULTILINE)
if match:
return GemWsimResult(float(match.group('elapsed')), float(match.group('wps')))
- raise exceptions.GemWsimError(f'{self}: exit_code: {proc_result.exit_code}'
- f' stdout: {proc_result.stdout} stderr: {proc_result.stderr}')
+ raise exceptions.GemWsimError(f'{self}: exit_code: {self.proc_result.exit_code}'
+ f' stdout: {self.proc_result.stdout} stderr: {self.proc_result.stderr}')
def check_results(self) -> bool:
"""Verify gem_wsim execution results. Return True for workload success, False on fail."""
@@ -78,6 +97,11 @@ class GemWsim(ShellExecutor):
self.target, wl_results.elapsed_sec, wl_results.workloads_per_sec)
return True
+ def clear_results(self) -> None:
+ """Clear gem_wsim results cache."""
+ self.proc_result = ProcessResult()
+ self.machine_id = str(self.target)
+
def gem_wsim_parallel_exec_and_check(vms: typing.List[MachineInterface], workload: str, iterations: int,
expected: typing.Optional[GemWsimResult] = None) -> GemWsimResult:
diff --git a/tools/vmtb/bench/executors/igt.py b/tools/vmtb/bench/executors/igt.py
index f443fb99e..f4587c1fb 100644
--- a/tools/vmtb/bench/executors/igt.py
+++ b/tools/vmtb/bench/executors/igt.py
@@ -119,6 +119,7 @@ class IgtExecutor(ExecutorInterface):
def __init__(self, target: MachineInterface,
test: typing.Union[str, IgtType],
num_repeats: int = 1,
+ env_vars: typing.Optional[typing.List[str]] = None,
timeout: int = DEFAULT_TIMEOUT) -> None:
self.igt_config = target.get_igt_config()
@@ -126,7 +127,9 @@ class IgtExecutor(ExecutorInterface):
#ld_library_path = f'LD_LIBRARY_PATH={igt_config.lib_dir}'
runner = posixpath.join(self.igt_config.tool_dir, 'igt_runner')
testlist = '/tmp/igt_executor.testlist'
- command = f'{runner} {self.igt_config.options} ' \
+ # Set test environment variables via igt_runner: --environment KEY=VALUE (or KEY)
+ env_options = ''.join(f'--environment {env} ' for env in env_vars) if env_vars else ''
+ command = f'{runner} {self.igt_config.options} {env_options}' \
f'--test-list {testlist} {self.igt_config.test_dir} {self.igt_config.result_dir}'
self.results: typing.Dict[str, typing.Any] = {}
self.target: MachineInterface = target
@@ -176,6 +179,11 @@ class IgtExecutor(ExecutorInterface):
logger.error("[%s] IGT failed: %s", self.target, self.proc_result)
return False
+ def clear_results(self) -> None:
+ """Clear IGT results cache."""
+ self.proc_result = ProcessResult()
+ self.results.clear()
+
def get_results_log(self) -> typing.Dict:
# Results are cached
if self.results:
diff --git a/tools/vmtb/vmm_flows/test_migration.py b/tools/vmtb/vmm_flows/test_migration.py
index 8a3f10d52..c13350fd2 100644
--- a/tools/vmtb/vmm_flows/test_migration.py
+++ b/tools/vmtb/vmm_flows/test_migration.py
@@ -233,7 +233,9 @@ class BaseTestBusyMigration:
logger.debug("Execute migration in-flight workload on source VM")
migration_wl = run_source_workload
time.sleep(IGT_INIT_DELAY)
- assert migration_wl.is_running(), 'IGT/wsim migration workload is not running on source VM'
+ if not migration_wl.is_running():
+ migration_wl.check_results()
+ assert False, 'IGT/wsim migration workload is not running on source VM'
# Pause VM and save snapshot
logger.debug("Pause execution and save source VM state")
@@ -267,10 +269,7 @@ class BaseTestBusyMigration:
# Patch the source IgtExecutor/GemWsim instance with the current VM
migration_wl.target = vm_dst
- if isinstance(migration_wl, IgtExecutor):
- # Clear IGT test results cache - remove post-save source VM results
- # TODO: implement common IgtExecutor/GemWsim results clear interface to avoid instance type check
- migration_wl.results.clear()
+ migration_wl.clear_results()
# Load the source state snapshot
logger.debug("Restore source state on the destination VM")
@@ -281,7 +280,10 @@ class BaseTestBusyMigration:
sync_value = random.randint(1, 0xFFFF)
assert vm_dst.ga.sync(sync_value)['return'] == sync_value
- assert migration_wl.is_running(), 'IGT/wsim migration workload is not running on destination VM'
+ if not migration_wl.is_running():
+ migration_wl.check_results()
+ assert False, 'IGT/wsim migration workload is not running on destination VM'
+
time.sleep(IGT_RESTORE_DELAY)
assert migration_wl.check_results(), 'VF migration workload failed on destination VM (post-restore)'
@@ -824,7 +826,9 @@ class BaseTestDoubleMigration:
logger.debug("Execute throughout-migration workload on source VM")
migration_wl: GemWsim = run_source_workload
time.sleep(IGT_INIT_DELAY)
- assert migration_wl.is_running(), 'IGT/wsim migration workload is not running on source VM'
+ if not migration_wl.is_running():
+ migration_wl.check_results()
+ assert False, 'IGT/wsim migration workload is not running on source VM'
# Pause source VM and save snapshot
logger.debug("Pause execution and save source VM state (snapshot #1)")
@@ -1113,7 +1117,9 @@ def test_2vm_pause_resume(create_1host_2vm):
# Allow wsim WL to run some time
time.sleep(IGT_INIT_DELAY)
- assert gem_wsim_vm0.is_running()
+ if not gem_wsim_vm0.is_running():
+ gem_wsim_vm0.check_results()
+ assert False, 'IGT/wsim workload is not running on VM0'
logger.debug("Submit IGT WL (gem_spin_batch) on VM1")
igt_vm1 = IgtExecutor(vm1, IgtType.SPIN_BATCH)
--
2.39.1
^ permalink raw reply related [flat|nested] 19+ messages in thread* Re: [PATCH i-g-t 7/7] tools/vmtb: Extend IGT and WSIM executors
2026-09-28 7:26 ` [PATCH i-g-t 7/7] tools/vmtb: Extend IGT and WSIM executors Adam Miszczak
@ 2026-10-08 12:59 ` Bernatowicz, Marcin
0 siblings, 0 replies; 19+ messages in thread
From: Bernatowicz, Marcin @ 2026-10-08 12:59 UTC (permalink / raw)
To: Adam Miszczak, igt-dev; +Cc: kamil.konieczny
LGTM,
Reviewed-by: Marcin Bernatowicz <marcin.bernatowicz@linux.intel.com>
On 9/28/2026 9:26 AM, Adam Miszczak wrote:
> Introduce an optional 'env_vars' param (list) on IgtExecutor
> that injects 'igt_runner --environment KEY=VALUE' options,
> allowing environment variables to be passed to IGT test processes.
>
> Cache GemWsim ProcessResult (like IgtExecutor) so status()/wait()
> results are reused instead of re-fetched.
> Add a common clear_results() to both: GemWsim and IgtExecutor.
>
> Additionally, align test_migration with executors' changes:
> - use common IGT/WSIM clear_results() instead of instance checks.
> - call check_results() before failing so the IGT or WSIM
> error output is logged on unexpected workload exit.
>
> Signed-off-by: Adam Miszczak <adam.miszczak@linux.intel.com>
> ---
> tools/vmtb/bench/executors/gem_wsim.py | 38 +++++++++++++++++++++-----
> tools/vmtb/bench/executors/igt.py | 10 ++++++-
> tools/vmtb/vmm_flows/test_migration.py | 22 +++++++++------
> 3 files changed, 54 insertions(+), 16 deletions(-)
>
> diff --git a/tools/vmtb/bench/executors/gem_wsim.py b/tools/vmtb/bench/executors/gem_wsim.py
> index 0cdfcc7e4..0510a9f9a 100644
> --- a/tools/vmtb/bench/executors/gem_wsim.py
> +++ b/tools/vmtb/bench/executors/gem_wsim.py
> @@ -8,7 +8,7 @@ from pathlib import Path
>
> from bench import exceptions
> from bench.executors.shell import ShellExecutor
> -from bench.machines.machine_interface import DEFAULT_TIMEOUT, MachineInterface
> +from bench.machines.machine_interface import (DEFAULT_TIMEOUT, MachineInterface, ProcessResult)
>
> logger = logging.getLogger('GemWsim')
>
> @@ -44,26 +44,45 @@ class GemWsim(ShellExecutor):
>
> wsim_path = Path(target.get_igt_config().test_dir) / 'benchmarks' / 'gem_wsim'
> command = f'{wsim_path} -w {workload} -c {num_clients} -r {num_repeats}'
> + self.proc_result = ProcessResult()
>
> super().__init__(target, command, timeout)
>
> def __str__(self) -> str:
> return f'gem_wsim({self.machine_id}:{self.pid})'
>
> + # ShellExecutor overrides
> + def status(self) -> ProcessResult:
> + if self.proc_result.exited:
> + return self.proc_result
> +
> + self.proc_result = super().status()
> + return self.proc_result
> +
> + def wait(self) -> ProcessResult:
> + if self.proc_result.exited:
> + return self.proc_result
> +
> + self.proc_result = super().wait()
> + return self.proc_result
> +
> + # IGT/WSIM specific methods
> def is_running(self) -> bool:
> return not self.status().exited
>
> def wait_results(self) -> GemWsimResult:
> - proc_result = self.wait()
> - if proc_result.exit_code == 0:
> - logger.info('%s: %s', self, proc_result.stdout)
> + if not self.proc_result.exited:
> + self.proc_result = self.wait()
> +
> + if self.proc_result.exit_code == 0:
> + logger.info('%s: %s', self, self.proc_result.stdout)
> # Try parse output ex.: 19.449s elapsed (102.836 workloads/s)
> pattern = r'(?P<elapsed>\d+(\.\d*)?|\.\d+)s elapsed \((?P<wps>\d+(\.\d*)?|\.\d+) workloads/s\)'
> - match = re.search(pattern, proc_result.stdout, re.MULTILINE)
> + match = re.search(pattern, self.proc_result.stdout, re.MULTILINE)
> if match:
> return GemWsimResult(float(match.group('elapsed')), float(match.group('wps')))
> - raise exceptions.GemWsimError(f'{self}: exit_code: {proc_result.exit_code}'
> - f' stdout: {proc_result.stdout} stderr: {proc_result.stderr}')
> + raise exceptions.GemWsimError(f'{self}: exit_code: {self.proc_result.exit_code}'
> + f' stdout: {self.proc_result.stdout} stderr: {self.proc_result.stderr}')
>
> def check_results(self) -> bool:
> """Verify gem_wsim execution results. Return True for workload success, False on fail."""
> @@ -78,6 +97,11 @@ class GemWsim(ShellExecutor):
> self.target, wl_results.elapsed_sec, wl_results.workloads_per_sec)
> return True
>
> + def clear_results(self) -> None:
> + """Clear gem_wsim results cache."""
> + self.proc_result = ProcessResult()
> + self.machine_id = str(self.target)
> +
>
> def gem_wsim_parallel_exec_and_check(vms: typing.List[MachineInterface], workload: str, iterations: int,
> expected: typing.Optional[GemWsimResult] = None) -> GemWsimResult:
> diff --git a/tools/vmtb/bench/executors/igt.py b/tools/vmtb/bench/executors/igt.py
> index f443fb99e..f4587c1fb 100644
> --- a/tools/vmtb/bench/executors/igt.py
> +++ b/tools/vmtb/bench/executors/igt.py
> @@ -119,6 +119,7 @@ class IgtExecutor(ExecutorInterface):
> def __init__(self, target: MachineInterface,
> test: typing.Union[str, IgtType],
> num_repeats: int = 1,
> + env_vars: typing.Optional[typing.List[str]] = None,
> timeout: int = DEFAULT_TIMEOUT) -> None:
> self.igt_config = target.get_igt_config()
>
> @@ -126,7 +127,9 @@ class IgtExecutor(ExecutorInterface):
> #ld_library_path = f'LD_LIBRARY_PATH={igt_config.lib_dir}'
> runner = posixpath.join(self.igt_config.tool_dir, 'igt_runner')
> testlist = '/tmp/igt_executor.testlist'
> - command = f'{runner} {self.igt_config.options} ' \
> + # Set test environment variables via igt_runner: --environment KEY=VALUE (or KEY)
> + env_options = ''.join(f'--environment {env} ' for env in env_vars) if env_vars else ''
> + command = f'{runner} {self.igt_config.options} {env_options}' \
> f'--test-list {testlist} {self.igt_config.test_dir} {self.igt_config.result_dir}'
> self.results: typing.Dict[str, typing.Any] = {}
> self.target: MachineInterface = target
> @@ -176,6 +179,11 @@ class IgtExecutor(ExecutorInterface):
> logger.error("[%s] IGT failed: %s", self.target, self.proc_result)
> return False
>
> + def clear_results(self) -> None:
> + """Clear IGT results cache."""
> + self.proc_result = ProcessResult()
> + self.results.clear()
> +
> def get_results_log(self) -> typing.Dict:
> # Results are cached
> if self.results:
> diff --git a/tools/vmtb/vmm_flows/test_migration.py b/tools/vmtb/vmm_flows/test_migration.py
> index 8a3f10d52..c13350fd2 100644
> --- a/tools/vmtb/vmm_flows/test_migration.py
> +++ b/tools/vmtb/vmm_flows/test_migration.py
> @@ -233,7 +233,9 @@ class BaseTestBusyMigration:
> logger.debug("Execute migration in-flight workload on source VM")
> migration_wl = run_source_workload
> time.sleep(IGT_INIT_DELAY)
> - assert migration_wl.is_running(), 'IGT/wsim migration workload is not running on source VM'
> + if not migration_wl.is_running():
> + migration_wl.check_results()
> + assert False, 'IGT/wsim migration workload is not running on source VM'
>
> # Pause VM and save snapshot
> logger.debug("Pause execution and save source VM state")
> @@ -267,10 +269,7 @@ class BaseTestBusyMigration:
>
> # Patch the source IgtExecutor/GemWsim instance with the current VM
> migration_wl.target = vm_dst
> - if isinstance(migration_wl, IgtExecutor):
> - # Clear IGT test results cache - remove post-save source VM results
> - # TODO: implement common IgtExecutor/GemWsim results clear interface to avoid instance type check
> - migration_wl.results.clear()
> + migration_wl.clear_results()
>
> # Load the source state snapshot
> logger.debug("Restore source state on the destination VM")
> @@ -281,7 +280,10 @@ class BaseTestBusyMigration:
> sync_value = random.randint(1, 0xFFFF)
> assert vm_dst.ga.sync(sync_value)['return'] == sync_value
>
> - assert migration_wl.is_running(), 'IGT/wsim migration workload is not running on destination VM'
> + if not migration_wl.is_running():
> + migration_wl.check_results()
> + assert False, 'IGT/wsim migration workload is not running on destination VM'
> +
> time.sleep(IGT_RESTORE_DELAY)
>
> assert migration_wl.check_results(), 'VF migration workload failed on destination VM (post-restore)'
> @@ -824,7 +826,9 @@ class BaseTestDoubleMigration:
> logger.debug("Execute throughout-migration workload on source VM")
> migration_wl: GemWsim = run_source_workload
> time.sleep(IGT_INIT_DELAY)
> - assert migration_wl.is_running(), 'IGT/wsim migration workload is not running on source VM'
> + if not migration_wl.is_running():
> + migration_wl.check_results()
> + assert False, 'IGT/wsim migration workload is not running on source VM'
>
> # Pause source VM and save snapshot
> logger.debug("Pause execution and save source VM state (snapshot #1)")
> @@ -1113,7 +1117,9 @@ def test_2vm_pause_resume(create_1host_2vm):
>
> # Allow wsim WL to run some time
> time.sleep(IGT_INIT_DELAY)
> - assert gem_wsim_vm0.is_running()
> + if not gem_wsim_vm0.is_running():
> + gem_wsim_vm0.check_results()
> + assert False, 'IGT/wsim workload is not running on VM0'
>
> logger.debug("Submit IGT WL (gem_spin_batch) on VM1")
> igt_vm1 = IgtExecutor(vm1, IgtType.SPIN_BATCH)
^ permalink raw reply [flat|nested] 19+ messages in thread
* ✓ i915.CI.BAT: success for tools/vmtb: Sync VM Test Bench core with current xe SR-IOV
2026-09-28 7:25 [PATCH i-g-t 0/7] tools/vmtb: Sync VM Test Bench core with current xe SR-IOV Adam Miszczak
` (6 preceding siblings ...)
2026-09-28 7:26 ` [PATCH i-g-t 7/7] tools/vmtb: Extend IGT and WSIM executors Adam Miszczak
@ 2026-09-28 20:28 ` Patchwork
2026-09-28 20:47 ` ✓ Xe.CI.BAT: " Patchwork
` (2 subsequent siblings)
10 siblings, 0 replies; 19+ messages in thread
From: Patchwork @ 2026-09-28 20:28 UTC (permalink / raw)
To: Adam Miszczak; +Cc: igt-dev
[-- Attachment #1: Type: text/plain, Size: 1088 bytes --]
== Series Details ==
Series: tools/vmtb: Sync VM Test Bench core with current xe SR-IOV
URL : https://patchwork.freedesktop.org/series/175090/
State : success
== Summary ==
CI Bug Log - changes from IGT_9114 -> IGTPW_15909
====================================================
Summary
-------
**SUCCESS**
No regressions found.
External URL: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/index.html
Participating hosts (39 -> 38)
------------------------------
Missing (1): bat-dg2-13
Changes
-------
No changes found
Build changes
-------------
* CI: CI-20190529 -> None
* IGT: IGT_9114 -> IGTPW_15909
CI-20190529: 20190529
CI_DRM_19232: 972eeb850a4ca07aba05ccb805db28a33eab2c9a @ git://anongit.freedesktop.org/gfx-ci/linux
IGTPW_15909: 36489129f40b37725a6324d29e5a0a3e50d1af82 @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git
IGT_9114: 916c79cfb7675ca01607dcd821f8c49d4f633a6f @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/index.html
[-- Attachment #2: Type: text/html, Size: 1654 bytes --]
^ permalink raw reply [flat|nested] 19+ messages in thread* ✓ Xe.CI.BAT: success for tools/vmtb: Sync VM Test Bench core with current xe SR-IOV
2026-09-28 7:25 [PATCH i-g-t 0/7] tools/vmtb: Sync VM Test Bench core with current xe SR-IOV Adam Miszczak
` (7 preceding siblings ...)
2026-09-28 20:28 ` ✓ i915.CI.BAT: success for tools/vmtb: Sync VM Test Bench core with current xe SR-IOV Patchwork
@ 2026-09-28 20:47 ` Patchwork
2026-09-29 2:19 ` ✗ Xe.CI.FULL: failure " Patchwork
2026-09-29 4:08 ` ✗ i915.CI.Full: " Patchwork
10 siblings, 0 replies; 19+ messages in thread
From: Patchwork @ 2026-09-28 20:47 UTC (permalink / raw)
To: Adam Miszczak; +Cc: igt-dev
[-- Attachment #1: Type: text/plain, Size: 1590 bytes --]
== Series Details ==
Series: tools/vmtb: Sync VM Test Bench core with current xe SR-IOV
URL : https://patchwork.freedesktop.org/series/175090/
State : success
== Summary ==
CI Bug Log - changes from XEIGT_9114_BAT -> XEIGTPW_15909_BAT
====================================================
Summary
-------
**SUCCESS**
No regressions found.
Participating hosts (13 -> 13)
------------------------------
No changes in participating hosts
Known issues
------------
Here are the changes found in XEIGTPW_15909_BAT that come from known issues:
### IGT changes ###
#### Possible fixes ####
* igt@core_hotunplug@unbind-rebind:
- bat-nvls-1: [DMESG-WARN][1] ([Intel XE#8762] / [Intel XE#9069]) -> [PASS][2]
[1]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9114/bat-nvls-1/igt@core_hotunplug@unbind-rebind.html
[2]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/bat-nvls-1/igt@core_hotunplug@unbind-rebind.html
[Intel XE#8762]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/8762
[Intel XE#9069]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/9069
Build changes
-------------
* IGT: IGT_9114 -> IGTPW_15909
IGTPW_15909: 36489129f40b37725a6324d29e5a0a3e50d1af82 @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git
IGT_9114: 916c79cfb7675ca01607dcd821f8c49d4f633a6f @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git
xe-5837-972eeb850a4ca07aba05ccb805db28a33eab2c9a: 972eeb850a4ca07aba05ccb805db28a33eab2c9a
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/index.html
[-- Attachment #2: Type: text/html, Size: 2145 bytes --]
^ permalink raw reply [flat|nested] 19+ messages in thread* ✗ Xe.CI.FULL: failure for tools/vmtb: Sync VM Test Bench core with current xe SR-IOV
2026-09-28 7:25 [PATCH i-g-t 0/7] tools/vmtb: Sync VM Test Bench core with current xe SR-IOV Adam Miszczak
` (8 preceding siblings ...)
2026-09-28 20:47 ` ✓ Xe.CI.BAT: " Patchwork
@ 2026-09-29 2:19 ` Patchwork
2026-09-29 4:08 ` ✗ i915.CI.Full: " Patchwork
10 siblings, 0 replies; 19+ messages in thread
From: Patchwork @ 2026-09-29 2:19 UTC (permalink / raw)
To: Adam Miszczak; +Cc: igt-dev
[-- Attachment #1: Type: text/plain, Size: 69013 bytes --]
== Series Details ==
Series: tools/vmtb: Sync VM Test Bench core with current xe SR-IOV
URL : https://patchwork.freedesktop.org/series/175090/
State : failure
== Summary ==
CI Bug Log - changes from XEIGT_9114_FULL -> XEIGTPW_15909_FULL
====================================================
Summary
-------
**FAILURE**
Serious unknown changes coming with XEIGTPW_15909_FULL absolutely need to be
verified manually.
If you think the reported changes have nothing to do with the changes
introduced in XEIGTPW_15909_FULL, please notify your bug team (I915-ci-infra@lists.freedesktop.org) to allow them
to document this new failure mode, which will reduce false positives in CI.
Participating hosts (3 -> 3)
------------------------------
No changes in participating hosts
Possible new issues
-------------------
Here are the unknown changes that may have been introduced in XEIGTPW_15909_FULL:
### IGT changes ###
#### Possible regressions ####
* igt@kms_pm_rpm@legacy-planes:
- shard-ptl: [PASS][1] -> [SKIP][2]
[1]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9114/shard-ptl-4/igt@kms_pm_rpm@legacy-planes.html
[2]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-ptl-7/igt@kms_pm_rpm@legacy-planes.html
* igt@xe_fault_injection@vm-create-fail-xe_vm_create_scratch:
- shard-bmg: [PASS][3] -> [ABORT][4] +1 other test abort
[3]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9114/shard-bmg-8/igt@xe_fault_injection@vm-create-fail-xe_vm_create_scratch.html
[4]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-bmg-3/igt@xe_fault_injection@vm-create-fail-xe_vm_create_scratch.html
Known issues
------------
Here are the changes found in XEIGTPW_15909_FULL that come from known issues:
### IGT changes ###
#### Issues hit ####
* igt@intel_hwmon@hwmon-write:
- shard-ptl: NOTRUN -> [SKIP][5] ([Intel XE#7225])
[5]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-ptl-4/igt@intel_hwmon@hwmon-write.html
* igt@kms_atomic_transition@plane-all-modeset-transition-fencing-internal-panels:
- shard-bmg: NOTRUN -> [SKIP][6] ([Intel XE#2370])
[6]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-bmg-2/igt@kms_atomic_transition@plane-all-modeset-transition-fencing-internal-panels.html
* igt@kms_big_fb@4-tiled-32bpp-rotate-90:
- shard-bmg: NOTRUN -> [SKIP][7] ([Intel XE#2327]) +1 other test skip
[7]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-bmg-10/igt@kms_big_fb@4-tiled-32bpp-rotate-90.html
* igt@kms_big_fb@linear-16bpp-rotate-270:
- shard-ptl: NOTRUN -> [SKIP][8] ([Intel XE#5901]) +2 other tests skip
[8]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-ptl-7/igt@kms_big_fb@linear-16bpp-rotate-270.html
* igt@kms_big_fb@x-tiled-16bpp-rotate-270:
- shard-ptl: NOTRUN -> [SKIP][9] ([Intel XE#5808]) +14 other tests skip
[9]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-ptl-8/igt@kms_big_fb@x-tiled-16bpp-rotate-270.html
* igt@kms_big_fb@x-tiled-32bpp-rotate-90:
- shard-lnl: NOTRUN -> [SKIP][10] ([Intel XE#1407]) +1 other test skip
[10]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-lnl-6/igt@kms_big_fb@x-tiled-32bpp-rotate-90.html
* igt@kms_big_fb@x-tiled-addfb:
- shard-ptl: NOTRUN -> [SKIP][11] ([Intel XE#5850]) +1 other test skip
[11]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-ptl-8/igt@kms_big_fb@x-tiled-addfb.html
* igt@kms_big_fb@x-tiled-addfb-size-offset-overflow:
- shard-ptl: NOTRUN -> [SKIP][12] ([Intel XE#5851])
[12]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-ptl-5/igt@kms_big_fb@x-tiled-addfb-size-offset-overflow.html
* igt@kms_big_fb@y-tiled-addfb:
- shard-bmg: NOTRUN -> [SKIP][13] ([Intel XE#2328] / [Intel XE#7367])
[13]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-bmg-8/igt@kms_big_fb@y-tiled-addfb.html
* igt@kms_big_fb@y-tiled-addfb-size-overflow:
- shard-bmg: NOTRUN -> [SKIP][14] ([Intel XE#610] / [Intel XE#7387])
[14]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-bmg-5/igt@kms_big_fb@y-tiled-addfb-size-overflow.html
* igt@kms_big_fb@y-tiled-max-hw-stride-32bpp-rotate-180-async-flip:
- shard-bmg: NOTRUN -> [SKIP][15] ([Intel XE#1124]) +5 other tests skip
[15]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-bmg-1/igt@kms_big_fb@y-tiled-max-hw-stride-32bpp-rotate-180-async-flip.html
* igt@kms_big_fb@yf-tiled-max-hw-stride-32bpp-rotate-0:
- shard-lnl: NOTRUN -> [SKIP][16] ([Intel XE#1124]) +1 other test skip
[16]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-lnl-1/igt@kms_big_fb@yf-tiled-max-hw-stride-32bpp-rotate-0.html
* igt@kms_bw@connected-linear-tiling-3-displays-target-2560x1440p:
- shard-ptl: NOTRUN -> [SKIP][17] ([Intel XE#7679])
[17]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-ptl-4/igt@kms_bw@connected-linear-tiling-3-displays-target-2560x1440p.html
* igt@kms_bw@linear-tiling-3-displays-target-2160x1440p:
- shard-lnl: NOTRUN -> [SKIP][18] ([Intel XE#367])
[18]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-lnl-3/igt@kms_bw@linear-tiling-3-displays-target-2160x1440p.html
* igt@kms_bw@linear-tiling-4-displays-target-1920x1080p:
- shard-ptl: NOTRUN -> [SKIP][19] ([Intel XE#367]) +1 other test skip
[19]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-ptl-7/igt@kms_bw@linear-tiling-4-displays-target-1920x1080p.html
* igt@kms_bw@linear-tiling-4-displays-target-3840x2160p:
- shard-bmg: NOTRUN -> [SKIP][20] ([Intel XE#367])
[20]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-bmg-4/igt@kms_bw@linear-tiling-4-displays-target-3840x2160p.html
* igt@kms_ccs@bad-rotation-90-4-tiled-mtl-rc-ccs-cc:
- shard-ptl: NOTRUN -> [SKIP][21] ([Intel XE#5822]) +10 other tests skip
[21]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-ptl-5/igt@kms_ccs@bad-rotation-90-4-tiled-mtl-rc-ccs-cc.html
* igt@kms_ccs@ccs-on-another-bo-y-tiled-gen12-rc-ccs:
- shard-lnl: NOTRUN -> [SKIP][22] ([Intel XE#2887]) +1 other test skip
[22]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-lnl-1/igt@kms_ccs@ccs-on-another-bo-y-tiled-gen12-rc-ccs.html
* igt@kms_ccs@crc-primary-rotation-180-4-tiled-bmg-ccs@pipe-b-edp-1:
- shard-lnl: NOTRUN -> [SKIP][23] ([Intel XE#2669] / [Intel XE#7389]) +3 other tests skip
[23]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-lnl-8/igt@kms_ccs@crc-primary-rotation-180-4-tiled-bmg-ccs@pipe-b-edp-1.html
* igt@kms_ccs@crc-primary-rotation-180-4-tiled-bmg-ccs@pipe-d-edp-1:
- shard-ptl: NOTRUN -> [SKIP][24] ([Intel XE#5823] / [Intel XE#6918]) +4 other tests skip
[24]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-ptl-2/igt@kms_ccs@crc-primary-rotation-180-4-tiled-bmg-ccs@pipe-d-edp-1.html
* igt@kms_ccs@crc-primary-suspend-4-tiled-bmg-ccs:
- shard-bmg: [PASS][25] -> [INCOMPLETE][26] ([Intel XE#7084] / [Intel XE#8150]) +1 other test incomplete
[25]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9114/shard-bmg-3/igt@kms_ccs@crc-primary-suspend-4-tiled-bmg-ccs.html
[26]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-bmg-10/igt@kms_ccs@crc-primary-suspend-4-tiled-bmg-ccs.html
* igt@kms_ccs@crc-primary-suspend-yf-tiled-ccs:
- shard-bmg: NOTRUN -> [SKIP][27] ([Intel XE#3432]) +1 other test skip
[27]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-bmg-6/igt@kms_ccs@crc-primary-suspend-yf-tiled-ccs.html
* igt@kms_ccs@random-ccs-data-y-tiled-gen12-rc-ccs-cc:
- shard-bmg: NOTRUN -> [SKIP][28] ([Intel XE#2887]) +7 other tests skip
[28]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-bmg-5/igt@kms_ccs@random-ccs-data-y-tiled-gen12-rc-ccs-cc.html
* igt@kms_cdclk@mode-transition:
- shard-ptl: NOTRUN -> [SKIP][29] ([Intel XE#9205]) +4 other tests skip
[29]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-ptl-6/igt@kms_cdclk@mode-transition.html
* igt@kms_cdclk@mode-transition-all-outputs:
- shard-bmg: NOTRUN -> [SKIP][30] ([Intel XE#2724] / [Intel XE#7449])
[30]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-bmg-4/igt@kms_cdclk@mode-transition-all-outputs.html
* igt@kms_chamelium_color@ctm-max:
- shard-ptl: NOTRUN -> [SKIP][31] ([Intel XE#5824]) +1 other test skip
[31]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-ptl-3/igt@kms_chamelium_color@ctm-max.html
* igt@kms_chamelium_color_pipeline@plane-ctm3x4:
- shard-bmg: NOTRUN -> [SKIP][32] ([Intel XE#7358]) +1 other test skip
[32]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-bmg-2/igt@kms_chamelium_color_pipeline@plane-ctm3x4.html
* igt@kms_chamelium_color_pipeline@plane-ctm3x4-lut1d:
- shard-lnl: NOTRUN -> [SKIP][33] ([Intel XE#7358]) +1 other test skip
[33]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-lnl-8/igt@kms_chamelium_color_pipeline@plane-ctm3x4-lut1d.html
* igt@kms_chamelium_frames@hdmi-crc-fast:
- shard-lnl: NOTRUN -> [SKIP][34] ([Intel XE#373]) +1 other test skip
[34]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-lnl-3/igt@kms_chamelium_frames@hdmi-crc-fast.html
* igt@kms_chamelium_frames@hdmi-crc-nonplanar-formats:
- shard-ptl: NOTRUN -> [SKIP][35] ([Intel XE#2252]) +4 other tests skip
[35]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-ptl-7/igt@kms_chamelium_frames@hdmi-crc-nonplanar-formats.html
* igt@kms_chamelium_hpd@hdmi-hpd-storm-disable:
- shard-bmg: NOTRUN -> [SKIP][36] ([Intel XE#2252]) +5 other tests skip
[36]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-bmg-7/igt@kms_chamelium_hpd@hdmi-hpd-storm-disable.html
* igt@kms_color_pipeline@plane-fixed-matrix-yuv-rgb-bt601-lut1d@pipe-c-plane-4:
- shard-ptl: NOTRUN -> [FAIL][37] ([Intel XE#9333]) +20 other tests fail
[37]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-ptl-8/igt@kms_color_pipeline@plane-fixed-matrix-yuv-rgb-bt601-lut1d@pipe-c-plane-4.html
* igt@kms_color_pipeline@plane-fixed-matrix-yuv-rgb-bt709-lim@pipe-a-plane-3:
- shard-lnl: NOTRUN -> [FAIL][38] ([Intel XE#9333]) +15 other tests fail
[38]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-lnl-3/igt@kms_color_pipeline@plane-fixed-matrix-yuv-rgb-bt709-lim@pipe-a-plane-3.html
* igt@kms_color_pipeline@plane-lut1d-ctm3x4-lut1d@pipe-d-plane-3:
- shard-ptl: NOTRUN -> [SKIP][39] ([Intel XE#6969]) +7 other tests skip
[39]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-ptl-5/igt@kms_color_pipeline@plane-lut1d-ctm3x4-lut1d@pipe-d-plane-3.html
* igt@kms_color_pipeline@plane-lut1d-ctm3x4@pipe-b-plane-4:
- shard-bmg: NOTRUN -> [SKIP][40] ([Intel XE#6969]) +7 other tests skip
[40]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-bmg-10/igt@kms_color_pipeline@plane-lut1d-ctm3x4@pipe-b-plane-4.html
* igt@kms_content_protection@atomic:
- shard-bmg: NOTRUN -> [FAIL][41] ([Intel XE#1178] / [Intel XE#3304] / [Intel XE#7374]) +3 other tests fail
[41]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-bmg-3/igt@kms_content_protection@atomic.html
- shard-ptl: NOTRUN -> [SKIP][42] ([Intel XE#7642])
[42]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-ptl-1/igt@kms_content_protection@atomic.html
* igt@kms_content_protection@dp-mst-lic-type-1:
- shard-lnl: NOTRUN -> [SKIP][43] ([Intel XE#307] / [Intel XE#6974])
[43]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-lnl-7/igt@kms_content_protection@dp-mst-lic-type-1.html
* igt@kms_content_protection@dp-mst-type-1:
- shard-ptl: NOTRUN -> [SKIP][44] ([Intel XE#5832] / [Intel XE#6974])
[44]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-ptl-2/igt@kms_content_protection@dp-mst-type-1.html
* igt@kms_content_protection@dp-mst-type-1-suspend-resume:
- shard-ptl: NOTRUN -> [SKIP][45] ([Intel XE#6974])
[45]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-ptl-8/igt@kms_content_protection@dp-mst-type-1-suspend-resume.html
* igt@kms_cursor_crc@cursor-random-64x21:
- shard-lnl: NOTRUN -> [SKIP][46] ([Intel XE#1424])
[46]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-lnl-5/igt@kms_cursor_crc@cursor-random-64x21.html
* igt@kms_cursor_crc@cursor-rapid-movement-128x42:
- shard-ptl: NOTRUN -> [SKIP][47] ([Intel XE#5900])
[47]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-ptl-5/igt@kms_cursor_crc@cursor-rapid-movement-128x42.html
* igt@kms_cursor_crc@cursor-sliding-max-size:
- shard-bmg: NOTRUN -> [SKIP][48] ([Intel XE#2320])
[48]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-bmg-10/igt@kms_cursor_crc@cursor-sliding-max-size.html
* igt@kms_cursor_legacy@2x-long-cursor-vs-flip-atomic:
- shard-ptl: NOTRUN -> [SKIP][49] ([Intel XE#5962]) +2 other tests skip
[49]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-ptl-6/igt@kms_cursor_legacy@2x-long-cursor-vs-flip-atomic.html
* igt@kms_cursor_legacy@cursora-vs-flipb-legacy:
- shard-lnl: NOTRUN -> [SKIP][50] ([Intel XE#309] / [Intel XE#7343])
[50]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-lnl-4/igt@kms_cursor_legacy@cursora-vs-flipb-legacy.html
* igt@kms_cursor_legacy@cursorb-vs-flipb-toggle:
- shard-ptl: NOTRUN -> [SKIP][51] ([Intel XE#5962] / [Intel XE#7343]) +1 other test skip
[51]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-ptl-5/igt@kms_cursor_legacy@cursorb-vs-flipb-toggle.html
* igt@kms_dirtyfb@drrs-dirtyfb-ioctl:
- shard-lnl: NOTRUN -> [SKIP][52] ([Intel XE#1508])
[52]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-lnl-3/igt@kms_dirtyfb@drrs-dirtyfb-ioctl.html
* igt@kms_dirtyfb@fbc-dirtyfb-ioctl:
- shard-bmg: NOTRUN -> [SKIP][53] ([Intel XE#4210] / [Intel XE#7467])
[53]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-bmg-2/igt@kms_dirtyfb@fbc-dirtyfb-ioctl.html
* igt@kms_dp_link_training@uhbr-sst:
- shard-ptl: NOTRUN -> [SKIP][54] ([Intel XE#5870])
[54]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-ptl-4/igt@kms_dp_link_training@uhbr-sst.html
* igt@kms_dsc@dsc-with-bpc-formats-ultrajoiner:
- shard-ptl: NOTRUN -> [SKIP][55] ([Intel XE#5907])
[55]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-ptl-3/igt@kms_dsc@dsc-with-bpc-formats-ultrajoiner.html
* igt@kms_dsc@dsc-with-output-formats-with-bpc:
- shard-bmg: NOTRUN -> [SKIP][56] ([Intel XE#8265]) +1 other test skip
[56]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-bmg-1/igt@kms_dsc@dsc-with-output-formats-with-bpc.html
* igt@kms_dsc@dsc-with-output-formats-with-bpc-ultrajoiner:
- shard-lnl: NOTRUN -> [SKIP][57] ([Intel XE#8265])
[57]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-lnl-7/igt@kms_dsc@dsc-with-output-formats-with-bpc-ultrajoiner.html
* igt@kms_fbcon_fbt@fbc-suspend:
- shard-bmg: NOTRUN -> [SKIP][58] ([Intel XE#4156] / [Intel XE#7425])
[58]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-bmg-5/igt@kms_fbcon_fbt@fbc-suspend.html
- shard-ptl: NOTRUN -> [ABORT][59] ([Intel XE#9362]) +2 other tests abort
[59]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-ptl-5/igt@kms_fbcon_fbt@fbc-suspend.html
* igt@kms_feature_discovery@display-4x:
- shard-lnl: NOTRUN -> [SKIP][60] ([Intel XE#1138] / [Intel XE#7344])
[60]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-lnl-6/igt@kms_feature_discovery@display-4x.html
* igt@kms_feature_discovery@dsc:
- shard-ptl: NOTRUN -> [SKIP][61] ([Intel XE#9287])
[61]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-ptl-3/igt@kms_feature_discovery@dsc.html
* igt@kms_flip@2x-flip-vs-expired-vblank:
- shard-lnl: NOTRUN -> [SKIP][62] ([Intel XE#1421]) +2 other tests skip
[62]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-lnl-7/igt@kms_flip@2x-flip-vs-expired-vblank.html
* igt@kms_flip@2x-nonexisting-fb-interruptible:
- shard-ptl: NOTRUN -> [SKIP][63] ([Intel XE#2316]) +12 other tests skip
[63]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-ptl-3/igt@kms_flip@2x-nonexisting-fb-interruptible.html
* igt@kms_flip@flip-vs-expired-vblank@a-edp1:
- shard-lnl: [PASS][64] -> [FAIL][65] ([Intel XE#301]) +3 other tests fail
[64]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9114/shard-lnl-8/igt@kms_flip@flip-vs-expired-vblank@a-edp1.html
[65]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-lnl-2/igt@kms_flip@flip-vs-expired-vblank@a-edp1.html
* igt@kms_flip_scaled_crc@flip-32bpp-4tile-to-32bpp-4tiledg2rcccs-downscaling:
- shard-lnl: NOTRUN -> [SKIP][66] ([Intel XE#7178] / [Intel XE#7349])
[66]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-lnl-4/igt@kms_flip_scaled_crc@flip-32bpp-4tile-to-32bpp-4tiledg2rcccs-downscaling.html
* igt@kms_flip_scaled_crc@flip-32bpp-ytileccs-to-64bpp-ytile-upscaling:
- shard-bmg: NOTRUN -> [SKIP][67] ([Intel XE#7178] / [Intel XE#7351])
[67]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-bmg-9/igt@kms_flip_scaled_crc@flip-32bpp-ytileccs-to-64bpp-ytile-upscaling.html
* igt@kms_flip_scaled_crc@flip-64bpp-4tile-to-32bpp-4tiledg2rcccs-upscaling:
- shard-bmg: NOTRUN -> [SKIP][68] ([Intel XE#7178] / [Intel XE#7349])
[68]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-bmg-10/igt@kms_flip_scaled_crc@flip-64bpp-4tile-to-32bpp-4tiledg2rcccs-upscaling.html
* igt@kms_flip_scaled_crc@flip-64bpp-yftile-to-32bpp-yftile-downscaling:
- shard-ptl: NOTRUN -> [SKIP][69] ([Intel XE#7178]) +2 other tests skip
[69]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-ptl-4/igt@kms_flip_scaled_crc@flip-64bpp-yftile-to-32bpp-yftile-downscaling.html
* igt@kms_flip_scaled_crc@flip-64bpp-ytile-to-32bpp-ytile-upscaling:
- shard-lnl: NOTRUN -> [SKIP][70] ([Intel XE#7178] / [Intel XE#7351])
[70]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-lnl-5/igt@kms_flip_scaled_crc@flip-64bpp-ytile-to-32bpp-ytile-upscaling.html
* igt@kms_force_connector_basic@force-connector-state:
- shard-lnl: NOTRUN -> [SKIP][71] ([Intel XE#352])
[71]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-lnl-6/igt@kms_force_connector_basic@force-connector-state.html
* igt@kms_frontbuffer_tracking@drrs-rgb101010-draw-mmap-wc:
- shard-ptl: NOTRUN -> [SKIP][72] ([Intel XE#5800] / [Intel XE#6312]) +8 other tests skip
[72]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-ptl-3/igt@kms_frontbuffer_tracking@drrs-rgb101010-draw-mmap-wc.html
* igt@kms_frontbuffer_tracking@drrs-shrfb-scaledprimary:
- shard-lnl: NOTRUN -> [SKIP][73] ([Intel XE#6312] / [Intel XE#651]) +2 other tests skip
[73]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-lnl-8/igt@kms_frontbuffer_tracking@drrs-shrfb-scaledprimary.html
* igt@kms_frontbuffer_tracking@drrshdr-1p-primscrn-cur-indfb-draw-mmap-wc:
- shard-ptl: NOTRUN -> [SKIP][74] ([Intel XE#6312]) +14 other tests skip
[74]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-ptl-4/igt@kms_frontbuffer_tracking@drrshdr-1p-primscrn-cur-indfb-draw-mmap-wc.html
* igt@kms_frontbuffer_tracking@drrshdr-1p-primscrn-shrfb-plflip-blt:
- shard-lnl: NOTRUN -> [SKIP][75] ([Intel XE#6312]) +3 other tests skip
[75]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-lnl-2/igt@kms_frontbuffer_tracking@drrshdr-1p-primscrn-shrfb-plflip-blt.html
* igt@kms_frontbuffer_tracking@fbc-1p-offscreen-pri-indfb-draw-blt:
- shard-bmg: NOTRUN -> [SKIP][76] ([Intel XE#4141]) +8 other tests skip
[76]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-bmg-8/igt@kms_frontbuffer_tracking@fbc-1p-offscreen-pri-indfb-draw-blt.html
* igt@kms_frontbuffer_tracking@fbc-abgr161616f-draw-mmap-wc:
- shard-ptl: NOTRUN -> [SKIP][77] ([Intel XE#7061] / [Intel XE#7356]) +3 other tests skip
[77]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-ptl-1/igt@kms_frontbuffer_tracking@fbc-abgr161616f-draw-mmap-wc.html
* igt@kms_frontbuffer_tracking@fbc-argb161616f-draw-mmap-wc:
- shard-lnl: NOTRUN -> [SKIP][78] ([Intel XE#7061] / [Intel XE#7356]) +1 other test skip
[78]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-lnl-1/igt@kms_frontbuffer_tracking@fbc-argb161616f-draw-mmap-wc.html
* igt@kms_frontbuffer_tracking@fbcdrrs-2p-rte:
- shard-lnl: NOTRUN -> [SKIP][79] ([Intel XE#656] / [Intel XE#7905]) +6 other tests skip
[79]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-lnl-1/igt@kms_frontbuffer_tracking@fbcdrrs-2p-rte.html
* igt@kms_frontbuffer_tracking@fbcdrrs-argb161616f-draw-render:
- shard-bmg: NOTRUN -> [SKIP][80] ([Intel XE#7061] / [Intel XE#7356]) +1 other test skip
[80]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-bmg-4/igt@kms_frontbuffer_tracking@fbcdrrs-argb161616f-draw-render.html
* igt@kms_frontbuffer_tracking@fbcdrrshdr-2p-primscrn-cur-indfb-draw-render:
- shard-ptl: NOTRUN -> [SKIP][81] ([Intel XE#5812]) +65 other tests skip
[81]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-ptl-1/igt@kms_frontbuffer_tracking@fbcdrrshdr-2p-primscrn-cur-indfb-draw-render.html
* igt@kms_frontbuffer_tracking@fbcdrrshdr-2p-scndscrn-cur-indfb-draw-render:
- shard-lnl: NOTRUN -> [SKIP][82] ([Intel XE#7905]) +10 other tests skip
[82]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-lnl-6/igt@kms_frontbuffer_tracking@fbcdrrshdr-2p-scndscrn-cur-indfb-draw-render.html
* igt@kms_frontbuffer_tracking@fbcdrrshdr-rgb565-draw-blt:
- shard-bmg: NOTRUN -> [SKIP][83] ([Intel XE#2311]) +32 other tests skip
[83]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-bmg-8/igt@kms_frontbuffer_tracking@fbcdrrshdr-rgb565-draw-blt.html
* igt@kms_frontbuffer_tracking@hdr-1p-primscrn-pri-indfb-draw-blt:
- shard-ptl: NOTRUN -> [SKIP][84] ([Intel XE#7865]) +19 other tests skip
[84]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-ptl-6/igt@kms_frontbuffer_tracking@hdr-1p-primscrn-pri-indfb-draw-blt.html
* igt@kms_frontbuffer_tracking@hdr-abgr161616f-draw-blt:
- shard-lnl: NOTRUN -> [SKIP][85] ([Intel XE#7061])
[85]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-lnl-5/igt@kms_frontbuffer_tracking@hdr-abgr161616f-draw-blt.html
* igt@kms_frontbuffer_tracking@hdr-argb161616f-draw-blt:
- shard-bmg: NOTRUN -> [SKIP][86] ([Intel XE#7061]) +1 other test skip
[86]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-bmg-1/igt@kms_frontbuffer_tracking@hdr-argb161616f-draw-blt.html
- shard-ptl: NOTRUN -> [SKIP][87] ([Intel XE#7061]) +4 other tests skip
[87]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-ptl-8/igt@kms_frontbuffer_tracking@hdr-argb161616f-draw-blt.html
* igt@kms_frontbuffer_tracking@psrhdr-1p-primscrn-spr-indfb-draw-blt:
- shard-lnl: NOTRUN -> [SKIP][88] ([Intel XE#7865]) +5 other tests skip
[88]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-lnl-6/igt@kms_frontbuffer_tracking@psrhdr-1p-primscrn-spr-indfb-draw-blt.html
* igt@kms_frontbuffer_tracking@psrhdr-2p-primscrn-spr-indfb-move:
- shard-bmg: NOTRUN -> [SKIP][89] ([Intel XE#2313]) +41 other tests skip
[89]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-bmg-1/igt@kms_frontbuffer_tracking@psrhdr-2p-primscrn-spr-indfb-move.html
* igt@kms_hdmi_audio_bw@audio-bw-hblank160:
- shard-lnl: NOTRUN -> [SKIP][90] ([Intel XE#9312])
[90]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-lnl-7/igt@kms_hdmi_audio_bw@audio-bw-hblank160.html
* igt@kms_hdr@bpc-switch-suspend@pipe-a-dp-2-xrgb2101010:
- shard-bmg: [PASS][91] -> [ABORT][92] ([Intel XE#9362] / [Intel XE#9438])
[91]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9114/shard-bmg-7/igt@kms_hdr@bpc-switch-suspend@pipe-a-dp-2-xrgb2101010.html
[92]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-bmg-7/igt@kms_hdr@bpc-switch-suspend@pipe-a-dp-2-xrgb2101010.html
* igt@kms_hdr@brightness-with-hdr:
- shard-bmg: NOTRUN -> [SKIP][93] ([Intel XE#3544])
[93]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-bmg-10/igt@kms_hdr@brightness-with-hdr.html
* igt@kms_joiner@basic-ultra-joiner:
- shard-ptl: NOTRUN -> [SKIP][94] ([Intel XE#6900])
[94]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-ptl-4/igt@kms_joiner@basic-ultra-joiner.html
* igt@kms_multipipe_modeset@basic-max-pipe-crc-check:
- shard-ptl: NOTRUN -> [SKIP][95] ([Intel XE#7591])
[95]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-ptl-8/igt@kms_multipipe_modeset@basic-max-pipe-crc-check.html
* igt@kms_plane@pixel-format-4-tiled-dg2-rc-ccs-cc-modifier:
- shard-bmg: NOTRUN -> [SKIP][96] ([Intel XE#7283]) +1 other test skip
[96]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-bmg-8/igt@kms_plane@pixel-format-4-tiled-dg2-rc-ccs-cc-modifier.html
* igt@kms_plane@pixel-format-4-tiled-mtl-rc-ccs-cc-modifier:
- shard-ptl: NOTRUN -> [SKIP][97] ([Intel XE#7283]) +1 other test skip
[97]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-ptl-4/igt@kms_plane@pixel-format-4-tiled-mtl-rc-ccs-cc-modifier.html
* igt@kms_plane@pixel-format-x-tiled-modifier@pipe-b-plane-5:
- shard-bmg: NOTRUN -> [SKIP][98] ([Intel XE#8303]) +1 other test skip
[98]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-bmg-8/igt@kms_plane@pixel-format-x-tiled-modifier@pipe-b-plane-5.html
* igt@kms_plane_multiple@tiling-x:
- shard-ptl: NOTRUN -> [SKIP][99] ([Intel XE#5020])
[99]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-ptl-3/igt@kms_plane_multiple@tiling-x.html
* igt@kms_plane_scaling@intel-max-src-size:
- shard-bmg: [PASS][100] -> [SKIP][101] ([Intel XE#2685] / [Intel XE#3307])
[100]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9114/shard-bmg-2/igt@kms_plane_scaling@intel-max-src-size.html
[101]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-bmg-1/igt@kms_plane_scaling@intel-max-src-size.html
* igt@kms_plane_scaling@planes-downscale-factor-0-5-unity-scaling@pipe-b:
- shard-lnl: NOTRUN -> [SKIP][102] ([Intel XE#2763] / [Intel XE#6886]) +3 other tests skip
[102]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-lnl-7/igt@kms_plane_scaling@planes-downscale-factor-0-5-unity-scaling@pipe-b.html
* igt@kms_plane_scaling@planes-downscale-factor-0-5-unity-scaling@pipe-d:
- shard-ptl: NOTRUN -> [SKIP][103] ([Intel XE#6886]) +14 other tests skip
[103]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-ptl-6/igt@kms_plane_scaling@planes-downscale-factor-0-5-unity-scaling@pipe-d.html
* igt@kms_pm_backlight@bad-brightness:
- shard-bmg: NOTRUN -> [SKIP][104] ([Intel XE#7376] / [Intel XE#7760] / [Intel XE#870])
[104]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-bmg-6/igt@kms_pm_backlight@bad-brightness.html
* igt@kms_pm_lpsp@kms-lpsp:
- shard-bmg: NOTRUN -> [SKIP][105] ([Intel XE#2499])
[105]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-bmg-7/igt@kms_pm_lpsp@kms-lpsp.html
* igt@kms_pm_rpm@dpms-non-lpsp:
- shard-ptl: NOTRUN -> [SKIP][106] ([Intel XE#5849]) +1 other test skip
[106]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-ptl-6/igt@kms_pm_rpm@dpms-non-lpsp.html
- shard-lnl: NOTRUN -> [SKIP][107] ([Intel XE#1439] / [Intel XE#3141] / [Intel XE#7383])
[107]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-lnl-2/igt@kms_pm_rpm@dpms-non-lpsp.html
* igt@kms_psr2_sf@fbc-pr-cursor-plane-move-continuous-sf:
- shard-bmg: NOTRUN -> [SKIP][108] ([Intel XE#1489]) +5 other tests skip
[108]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-bmg-7/igt@kms_psr2_sf@fbc-pr-cursor-plane-move-continuous-sf.html
* igt@kms_psr2_sf@fbc-pr-plane-move-sf-dmg-area:
- shard-ptl: NOTRUN -> [SKIP][109] ([Intel XE#7304])
[109]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-ptl-7/igt@kms_psr2_sf@fbc-pr-plane-move-sf-dmg-area.html
* igt@kms_psr2_sf@fbc-psr2-overlay-plane-move-continuous-sf:
- shard-lnl: NOTRUN -> [SKIP][110] ([Intel XE#2893] / [Intel XE#4608] / [Intel XE#7304])
[110]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-lnl-7/igt@kms_psr2_sf@fbc-psr2-overlay-plane-move-continuous-sf.html
* igt@kms_psr2_sf@fbc-psr2-overlay-plane-move-continuous-sf@pipe-a-edp-1:
- shard-ptl: NOTRUN -> [SKIP][111] ([Intel XE#5858]) +1 other test skip
[111]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-ptl-4/igt@kms_psr2_sf@fbc-psr2-overlay-plane-move-continuous-sf@pipe-a-edp-1.html
- shard-lnl: NOTRUN -> [SKIP][112] ([Intel XE#4608])
[112]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-lnl-7/igt@kms_psr2_sf@fbc-psr2-overlay-plane-move-continuous-sf@pipe-a-edp-1.html
* igt@kms_psr2_sf@fbc-psr2-overlay-plane-move-continuous-sf@pipe-b-edp-1:
- shard-ptl: NOTRUN -> [SKIP][113] ([Intel XE#5858] / [Intel XE#7304]) +3 other tests skip
[113]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-ptl-4/igt@kms_psr2_sf@fbc-psr2-overlay-plane-move-continuous-sf@pipe-b-edp-1.html
- shard-lnl: NOTRUN -> [SKIP][114] ([Intel XE#4608] / [Intel XE#7304])
[114]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-lnl-7/igt@kms_psr2_sf@fbc-psr2-overlay-plane-move-continuous-sf@pipe-b-edp-1.html
* igt@kms_psr2_sf@pr-overlay-plane-update-sf-dmg-area:
- shard-lnl: NOTRUN -> [SKIP][115] ([Intel XE#2893] / [Intel XE#7304])
[115]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-lnl-3/igt@kms_psr2_sf@pr-overlay-plane-update-sf-dmg-area.html
* igt@kms_psr2_su@frontbuffer-xrgb8888:
- shard-ptl: NOTRUN -> [SKIP][116] ([Intel XE#7413]) +1 other test skip
[116]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-ptl-3/igt@kms_psr2_su@frontbuffer-xrgb8888.html
* igt@kms_psr2_su@page_flip-p010:
- shard-bmg: NOTRUN -> [SKIP][117] ([Intel XE#2387] / [Intel XE#7429]) +1 other test skip
[117]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-bmg-7/igt@kms_psr2_su@page_flip-p010.html
* igt@kms_psr@fbc-psr2-primary-blt:
- shard-bmg: NOTRUN -> [SKIP][118] ([Intel XE#2234] / [Intel XE#2850]) +5 other tests skip
[118]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-bmg-5/igt@kms_psr@fbc-psr2-primary-blt.html
* igt@kms_psr@fbc-psr2-primary-page-flip@edp-1:
- shard-ptl: NOTRUN -> [SKIP][119] ([Intel XE#1406] / [Intel XE#5835]) +3 other tests skip
[119]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-ptl-7/igt@kms_psr@fbc-psr2-primary-page-flip@edp-1.html
* igt@kms_psr@fbc-psr2-primary-render:
- shard-lnl: NOTRUN -> [SKIP][120] ([Intel XE#1406] / [Intel XE#7345])
[120]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-lnl-4/igt@kms_psr@fbc-psr2-primary-render.html
* igt@kms_psr@fbc-psr2-primary-render@edp-1:
- shard-lnl: NOTRUN -> [SKIP][121] ([Intel XE#1406] / [Intel XE#4609] / [Intel XE#7345])
[121]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-lnl-4/igt@kms_psr@fbc-psr2-primary-render@edp-1.html
* igt@kms_psr@pr-primary-page-flip:
- shard-ptl: NOTRUN -> [SKIP][122] ([Intel XE#1406]) +2 other tests skip
[122]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-ptl-2/igt@kms_psr@pr-primary-page-flip.html
- shard-lnl: NOTRUN -> [SKIP][123] ([Intel XE#1406])
[123]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-lnl-6/igt@kms_psr@pr-primary-page-flip.html
* igt@kms_rotation_crc@primary-4-tiled-reflect-x-0:
- shard-ptl: NOTRUN -> [SKIP][124] ([Intel XE#5821])
[124]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-ptl-4/igt@kms_rotation_crc@primary-4-tiled-reflect-x-0.html
* igt@kms_rotation_crc@primary-yf-tiled-reflect-x-180:
- shard-bmg: NOTRUN -> [SKIP][125] ([Intel XE#2330] / [Intel XE#5813])
[125]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-bmg-8/igt@kms_rotation_crc@primary-yf-tiled-reflect-x-180.html
* igt@kms_rotation_crc@sprite-rotation-90-pos-100-0:
- shard-bmg: NOTRUN -> [SKIP][126] ([Intel XE#3904] / [Intel XE#7342])
[126]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-bmg-8/igt@kms_rotation_crc@sprite-rotation-90-pos-100-0.html
* igt@kms_scaling_modes@scaling-mode-full:
- shard-bmg: NOTRUN -> [SKIP][127] ([Intel XE#2413])
[127]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-bmg-1/igt@kms_scaling_modes@scaling-mode-full.html
* igt@kms_sharpness_filter@filter-basic:
- shard-bmg: NOTRUN -> [SKIP][128] ([Intel XE#6503])
[128]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-bmg-4/igt@kms_sharpness_filter@filter-basic.html
* igt@kms_tiled_display@basic-test-pattern:
- shard-ptl: NOTRUN -> [SKIP][129] ([Intel XE#5848])
[129]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-ptl-6/igt@kms_tiled_display@basic-test-pattern.html
* igt@kms_tv_load_detect@load-detect:
- shard-ptl: NOTRUN -> [SKIP][130] ([Intel XE#5857])
[130]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-ptl-7/igt@kms_tv_load_detect@load-detect.html
* igt@kms_vrr@flip-suspend@pipe-a-edp-1:
- shard-ptl: [PASS][131] -> [ABORT][132] ([Intel XE#9362]) +4 other tests abort
[131]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9114/shard-ptl-8/igt@kms_vrr@flip-suspend@pipe-a-edp-1.html
[132]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-ptl-8/igt@kms_vrr@flip-suspend@pipe-a-edp-1.html
* igt@kms_vrr@negative-basic:
- shard-ptl: NOTRUN -> [SKIP][133] ([Intel XE#5949] / [Intel XE#9277])
[133]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-ptl-3/igt@kms_vrr@negative-basic.html
- shard-lnl: NOTRUN -> [SKIP][134] ([Intel XE#1499] / [Intel XE#9271])
[134]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-lnl-5/igt@kms_vrr@negative-basic.html
* igt@xe_ccs@suspend-resume:
- shard-bmg: [PASS][135] -> [ABORT][136] ([Intel XE#9362] / [Intel XE#9425]) +1 other test abort
[135]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9114/shard-bmg-8/igt@xe_ccs@suspend-resume.html
[136]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-bmg-9/igt@xe_ccs@suspend-resume.html
* igt@xe_ccs@suspend-resume@tile64-compressed-compfmt0-system-vram01:
- shard-bmg: [PASS][137] -> [DMESG-WARN][138] ([Intel XE#9365])
[137]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9114/shard-bmg-8/igt@xe_ccs@suspend-resume@tile64-compressed-compfmt0-system-vram01.html
[138]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-bmg-9/igt@xe_ccs@suspend-resume@tile64-compressed-compfmt0-system-vram01.html
* igt@xe_compute@ccs-mode-compute-kernel:
- shard-ptl: NOTRUN -> [SKIP][139] ([Intel XE#6599])
[139]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-ptl-1/igt@xe_compute@ccs-mode-compute-kernel.html
* igt@xe_evict@evict-beng-large-multi-vm-cm:
- shard-lnl: NOTRUN -> [SKIP][140] ([Intel XE#6540] / [Intel XE#688]) +2 other tests skip
[140]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-lnl-6/igt@xe_evict@evict-beng-large-multi-vm-cm.html
* igt@xe_evict@evict-beng-mixed-many-threads-small:
- shard-bmg: [PASS][141] -> [INCOMPLETE][142] ([Intel XE#6321] / [Intel XE#8355])
[141]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9114/shard-bmg-4/igt@xe_evict@evict-beng-mixed-many-threads-small.html
[142]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-bmg-4/igt@xe_evict@evict-beng-mixed-many-threads-small.html
* igt@xe_evict@evict-cm-threads-small-multi-vm:
- shard-ptl: NOTRUN -> [SKIP][143] ([Intel XE#5764]) +10 other tests skip
[143]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-ptl-4/igt@xe_evict@evict-cm-threads-small-multi-vm.html
* igt@xe_evict@evict-mixed-many-threads-small:
- shard-bmg: NOTRUN -> [INCOMPLETE][144] ([Intel XE#6321] / [Intel XE#8355])
[144]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-bmg-6/igt@xe_evict@evict-mixed-many-threads-small.html
* igt@xe_evict@evict-small-multi-queue-priority-cm:
- shard-bmg: NOTRUN -> [SKIP][145] ([Intel XE#8370]) +1 other test skip
[145]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-bmg-1/igt@xe_evict@evict-small-multi-queue-priority-cm.html
* igt@xe_evict_ccs@evict-overcommit-parallel-instantfree-samefd:
- shard-ptl: NOTRUN -> [SKIP][146] ([Intel XE#6144]) +1 other test skip
[146]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-ptl-1/igt@xe_evict_ccs@evict-overcommit-parallel-instantfree-samefd.html
* igt@xe_exec_balancer@many-execqueues-virtual-userptr-invalidate-race:
- shard-ptl: NOTRUN -> [SKIP][147] ([Intel XE#7482]) +16 other tests skip
[147]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-ptl-2/igt@xe_exec_balancer@many-execqueues-virtual-userptr-invalidate-race.html
* igt@xe_exec_balancer@twice-cm-parallel-userptr-rebind:
- shard-lnl: NOTRUN -> [SKIP][148] ([Intel XE#7482]) +3 other tests skip
[148]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-lnl-8/igt@xe_exec_balancer@twice-cm-parallel-userptr-rebind.html
* igt@xe_exec_basic@multigpu-many-execqueues-many-vm-basic-defer-mmap:
- shard-bmg: NOTRUN -> [SKIP][149] ([Intel XE#2322] / [Intel XE#7372]) +6 other tests skip
[149]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-bmg-2/igt@xe_exec_basic@multigpu-many-execqueues-many-vm-basic-defer-mmap.html
* igt@xe_exec_basic@multigpu-no-exec-bindexecqueue-userptr-rebind:
- shard-ptl: NOTRUN -> [SKIP][150] ([Intel XE#5575] / [Intel XE#7484]) +7 other tests skip
[150]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-ptl-2/igt@xe_exec_basic@multigpu-no-exec-bindexecqueue-userptr-rebind.html
* igt@xe_exec_basic@multigpu-once-bindexecqueue-userptr-invalidate:
- shard-lnl: NOTRUN -> [SKIP][151] ([Intel XE#1392]) +2 other tests skip
[151]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-lnl-1/igt@xe_exec_basic@multigpu-once-bindexecqueue-userptr-invalidate.html
* igt@xe_exec_fault_mode@many-multi-queue-invalid-fault:
- shard-lnl: NOTRUN -> [SKIP][152] ([Intel XE#8374])
[152]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-lnl-2/igt@xe_exec_fault_mode@many-multi-queue-invalid-fault.html
* igt@xe_exec_fault_mode@once-multi-queue-invalid-fault:
- shard-ptl: NOTRUN -> [SKIP][153] ([Intel XE#8374]) +14 other tests skip
[153]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-ptl-4/igt@xe_exec_fault_mode@once-multi-queue-invalid-fault.html
* igt@xe_exec_fault_mode@twice-multi-queue-userptr-invalidate:
- shard-bmg: NOTRUN -> [SKIP][154] ([Intel XE#8374]) +10 other tests skip
[154]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-bmg-8/igt@xe_exec_fault_mode@twice-multi-queue-userptr-invalidate.html
* igt@xe_exec_mix_modes@exec-multi-queue-spinner-interrupted-lr:
- shard-ptl: NOTRUN -> [SKIP][155] ([Intel XE#9003])
[155]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-ptl-4/igt@xe_exec_mix_modes@exec-multi-queue-spinner-interrupted-lr.html
* igt@xe_exec_multi_queue@max-queues-preempt-mode-close-fd-smem:
- shard-bmg: NOTRUN -> [SKIP][156] ([Intel XE#8364]) +18 other tests skip
[156]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-bmg-5/igt@xe_exec_multi_queue@max-queues-preempt-mode-close-fd-smem.html
* igt@xe_exec_multi_queue@max-queues-preempt-mode-priority:
- shard-ptl: NOTRUN -> [SKIP][157] ([Intel XE#8364]) +23 other tests skip
[157]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-ptl-7/igt@xe_exec_multi_queue@max-queues-preempt-mode-priority.html
* igt@xe_exec_multi_queue@one-queue-basic:
- shard-lnl: NOTRUN -> [SKIP][158] ([Intel XE#8364]) +7 other tests skip
[158]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-lnl-6/igt@xe_exec_multi_queue@one-queue-basic.html
* igt@xe_exec_reset@cm-multi-queue-close-execqueues:
- shard-lnl: NOTRUN -> [SKIP][159] ([Intel XE#8369])
[159]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-lnl-3/igt@xe_exec_reset@cm-multi-queue-close-execqueues.html
* igt@xe_exec_reset@cm-multi-queue-gt-reset:
- shard-ptl: NOTRUN -> [SKIP][160] ([Intel XE#8369]) +3 other tests skip
[160]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-ptl-4/igt@xe_exec_reset@cm-multi-queue-gt-reset.html
* igt@xe_exec_reset@multi-queue-cat-error:
- shard-bmg: NOTRUN -> [SKIP][161] ([Intel XE#8369]) +1 other test skip
[161]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-bmg-3/igt@xe_exec_reset@multi-queue-cat-error.html
* igt@xe_exec_threads@threads-multi-queue-cm-fd-basic:
- shard-bmg: NOTRUN -> [SKIP][162] ([Intel XE#8378]) +7 other tests skip
[162]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-bmg-2/igt@xe_exec_threads@threads-multi-queue-cm-fd-basic.html
* igt@xe_exec_threads@threads-multi-queue-fd-basic:
- shard-lnl: NOTRUN -> [SKIP][163] ([Intel XE#8378]) +1 other test skip
[163]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-lnl-1/igt@xe_exec_threads@threads-multi-queue-fd-basic.html
* igt@xe_exec_threads@threads-multi-queue-shared-vm-userptr-rebind:
- shard-ptl: NOTRUN -> [SKIP][164] ([Intel XE#8378]) +6 other tests skip
[164]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-ptl-4/igt@xe_exec_threads@threads-multi-queue-shared-vm-userptr-rebind.html
* igt@xe_live_ktest@xe_eudebug:
- shard-bmg: NOTRUN -> [SKIP][165] ([Intel XE#2833])
[165]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-bmg-7/igt@xe_live_ktest@xe_eudebug.html
* igt@xe_madvise@atomic-global:
- shard-ptl: NOTRUN -> [SKIP][166] ([Intel XE#7980])
[166]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-ptl-7/igt@xe_madvise@atomic-global.html
* igt@xe_mmap@small-bar:
- shard-bmg: NOTRUN -> [SKIP][167] ([Intel XE#586] / [Intel XE#7323] / [Intel XE#7384])
[167]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-bmg-3/igt@xe_mmap@small-bar.html
* igt@xe_multigpu_svm@mgpu-atomic-op-conflict:
- shard-ptl: NOTRUN -> [SKIP][168] ([Intel XE#6964]) +1 other test skip
[168]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-ptl-5/igt@xe_multigpu_svm@mgpu-atomic-op-conflict.html
* igt@xe_multigpu_svm@mgpu-pagefault-basic:
- shard-bmg: NOTRUN -> [SKIP][169] ([Intel XE#6964]) +1 other test skip
[169]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-bmg-7/igt@xe_multigpu_svm@mgpu-pagefault-basic.html
* igt@xe_page_reclaim@random:
- shard-bmg: NOTRUN -> [SKIP][170] ([Intel XE#7793])
[170]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-bmg-8/igt@xe_page_reclaim@random.html
* igt@xe_pat@l2-flush-opt-svm-pat-restrict:
- shard-ptl: NOTRUN -> [SKIP][171] ([Intel XE#7590])
[171]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-ptl-2/igt@xe_pat@l2-flush-opt-svm-pat-restrict.html
- shard-bmg: NOTRUN -> [SKIP][172] ([Intel XE#7590])
[172]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-bmg-2/igt@xe_pat@l2-flush-opt-svm-pat-restrict.html
* igt@xe_pat@pat-index-xelp:
- shard-ptl: NOTRUN -> [SKIP][173] ([Intel XE#5771] / [Intel XE#7590])
[173]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-ptl-7/igt@xe_pat@pat-index-xelp.html
- shard-bmg: NOTRUN -> [SKIP][174] ([Intel XE#2245] / [Intel XE#7590])
[174]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-bmg-7/igt@xe_pat@pat-index-xelp.html
* igt@xe_pm@d3cold-i2c:
- shard-ptl: NOTRUN -> [SKIP][175] ([Intel XE#5741])
[175]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-ptl-1/igt@xe_pm@d3cold-i2c.html
* igt@xe_pm@s3-basic:
- shard-lnl: NOTRUN -> [SKIP][176] ([Intel XE#584] / [Intel XE#7369])
[176]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-lnl-2/igt@xe_pm@s3-basic.html
* igt@xe_pm@s3-mocs:
- shard-ptl: NOTRUN -> [SKIP][177] ([Intel XE#6867]) +1 other test skip
[177]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-ptl-1/igt@xe_pm@s3-mocs.html
* igt@xe_pm@s4-basic:
- shard-lnl: [PASS][178] -> [ABORT][179] ([Intel XE#9362]) +2 other tests abort
[178]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9114/shard-lnl-6/igt@xe_pm@s4-basic.html
[179]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-lnl-1/igt@xe_pm@s4-basic.html
* igt@xe_pm@vram-d3cold-threshold:
- shard-ptl: NOTRUN -> [SKIP][180] ([Intel XE#5611] / [Intel XE#7456])
[180]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-ptl-5/igt@xe_pm@vram-d3cold-threshold.html
* igt@xe_pm_residency@aspm_link_residency:
- shard-ptl: NOTRUN -> [SKIP][181] ([Intel XE#7271])
[181]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-ptl-3/igt@xe_pm_residency@aspm_link_residency.html
* igt@xe_pm_residency@gt-c6-freeze@gt1:
- shard-bmg: [PASS][182] -> [ABORT][183] ([Intel XE#9362]) +1 other test abort
[182]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9114/shard-bmg-7/igt@xe_pm_residency@gt-c6-freeze@gt1.html
[183]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-bmg-6/igt@xe_pm_residency@gt-c6-freeze@gt1.html
* igt@xe_pxp@pxp-stale-bo-exec-post-termination-irq:
- shard-bmg: NOTRUN -> [SKIP][184] ([Intel XE#4733] / [Intel XE#7417]) +1 other test skip
[184]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-bmg-8/igt@xe_pxp@pxp-stale-bo-exec-post-termination-irq.html
* igt@xe_query@multigpu-query-engines:
- shard-ptl: NOTRUN -> [SKIP][185] ([Intel XE#6019]) +1 other test skip
[185]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-ptl-1/igt@xe_query@multigpu-query-engines.html
- shard-bmg: NOTRUN -> [SKIP][186] ([Intel XE#944])
[186]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-bmg-7/igt@xe_query@multigpu-query-engines.html
* igt@xe_query@multigpu-query-hwconfig:
- shard-lnl: NOTRUN -> [SKIP][187] ([Intel XE#944])
[187]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-lnl-6/igt@xe_query@multigpu-query-hwconfig.html
* igt@xe_sriov_vram@vf-access-after-resize-up:
- shard-ptl: NOTRUN -> [SKIP][188] ([Intel XE#6376] / [Intel XE#7422])
[188]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-ptl-1/igt@xe_sriov_vram@vf-access-after-resize-up.html
* igt@xe_sriov_vram@vf-access-beyond:
- shard-lnl: NOTRUN -> [SKIP][189] ([Intel XE#6376] / [Intel XE#7330] / [Intel XE#7422])
[189]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-lnl-2/igt@xe_sriov_vram@vf-access-beyond.html
* igt@xe_vm@overcommit-nonfault-vram-lr-external-nodefer:
- shard-ptl: NOTRUN -> [SKIP][190] ([Intel XE#7892])
[190]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-ptl-3/igt@xe_vm@overcommit-nonfault-vram-lr-external-nodefer.html
#### Possible fixes ####
* igt@core_hotunplug@hotunbind-rebind-with-load:
- shard-bmg: [ABORT][191] -> [PASS][192]
[191]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9114/shard-bmg-1/igt@core_hotunplug@hotunbind-rebind-with-load.html
[192]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-bmg-7/igt@core_hotunplug@hotunbind-rebind-with-load.html
* igt@intel_hwmon@hwmon-write:
- shard-bmg: [FAIL][193] ([Intel XE#8583]) -> [PASS][194]
[193]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9114/shard-bmg-1/igt@intel_hwmon@hwmon-write.html
[194]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-bmg-10/igt@intel_hwmon@hwmon-write.html
* igt@kms_async_flips@alternate-sync-async-flip:
- shard-bmg: [FAIL][195] ([Intel XE#3718] / [Intel XE#6078]) -> [PASS][196] +1 other test pass
[195]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9114/shard-bmg-3/igt@kms_async_flips@alternate-sync-async-flip.html
[196]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-bmg-6/igt@kms_async_flips@alternate-sync-async-flip.html
* igt@kms_ccs@crc-primary-suspend-4-tiled-lnl-ccs@pipe-a-edp-1:
- shard-ptl: [ABORT][197] ([Intel XE#9362]) -> [PASS][198] +4 other tests pass
[197]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9114/shard-ptl-7/igt@kms_ccs@crc-primary-suspend-4-tiled-lnl-ccs@pipe-a-edp-1.html
[198]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-ptl-2/igt@kms_ccs@crc-primary-suspend-4-tiled-lnl-ccs@pipe-a-edp-1.html
* igt@kms_flip@flip-vs-expired-vblank-interruptible@d-edp1:
- shard-ptl: [FAIL][199] ([Intel XE#3149] / [Intel XE#3321]) -> [PASS][200] +1 other test pass
[199]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9114/shard-ptl-6/igt@kms_flip@flip-vs-expired-vblank-interruptible@d-edp1.html
[200]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-ptl-2/igt@kms_flip@flip-vs-expired-vblank-interruptible@d-edp1.html
* igt@kms_flip@flip-vs-expired-vblank@c-edp1:
- shard-lnl: [FAIL][201] ([Intel XE#301] / [Intel XE#3149]) -> [PASS][202]
[201]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9114/shard-lnl-8/igt@kms_flip@flip-vs-expired-vblank@c-edp1.html
[202]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-lnl-2/igt@kms_flip@flip-vs-expired-vblank@c-edp1.html
* igt@kms_plane@pixel-format-4-tiled-modifier-source-clamping@pipe-a-plane-0:
- shard-ptl: [FAIL][203] ([Intel XE#9340]) -> [PASS][204] +1 other test pass
[203]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9114/shard-ptl-2/igt@kms_plane@pixel-format-4-tiled-modifier-source-clamping@pipe-a-plane-0.html
[204]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-ptl-3/igt@kms_plane@pixel-format-4-tiled-modifier-source-clamping@pipe-a-plane-0.html
* igt@kms_pm_dc@dc5-dpms-suspend-resume:
- shard-bmg: [DMESG-WARN][205] ([Intel XE#9390]) -> [PASS][206]
[205]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9114/shard-bmg-7/igt@kms_pm_dc@dc5-dpms-suspend-resume.html
[206]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-bmg-6/igt@kms_pm_dc@dc5-dpms-suspend-resume.html
* igt@kms_pm_dc@dc6-psr:
- shard-lnl: [FAIL][207] ([Intel XE#8399]) -> [PASS][208] +1 other test pass
[207]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9114/shard-lnl-6/igt@kms_pm_dc@dc6-psr.html
[208]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-lnl-7/igt@kms_pm_dc@dc6-psr.html
* igt@kms_vrr@flip-dpms@pipe-a-edp-1:
- shard-ptl: [FAIL][209] ([Intel XE#4227] / [Intel XE#7397]) -> [PASS][210] +3 other tests pass
[209]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9114/shard-ptl-1/igt@kms_vrr@flip-dpms@pipe-a-edp-1.html
[210]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-ptl-2/igt@kms_vrr@flip-dpms@pipe-a-edp-1.html
#### Warnings ####
* igt@kms_flip@flip-vs-expired-vblank:
- shard-lnl: [FAIL][211] ([Intel XE#301] / [Intel XE#3149]) -> [FAIL][212] ([Intel XE#301])
[211]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9114/shard-lnl-8/igt@kms_flip@flip-vs-expired-vblank.html
[212]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-lnl-2/igt@kms_flip@flip-vs-expired-vblank.html
* igt@kms_hdr@bpc-switch-suspend:
- shard-bmg: [INCOMPLETE][213] ([Intel XE#9320]) -> [ABORT][214] ([Intel XE#9362] / [Intel XE#9438])
[213]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9114/shard-bmg-7/igt@kms_hdr@bpc-switch-suspend.html
[214]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-bmg-7/igt@kms_hdr@bpc-switch-suspend.html
* igt@kms_tiled_display@basic-test-pattern:
- shard-bmg: [FAIL][215] ([Intel XE#1729] / [Intel XE#7424]) -> [SKIP][216] ([Intel XE#2426] / [Intel XE#5848])
[215]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9114/shard-bmg-5/igt@kms_tiled_display@basic-test-pattern.html
[216]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-bmg-9/igt@kms_tiled_display@basic-test-pattern.html
* igt@xe_pm@s4-mocs:
- shard-lnl: [DMESG-WARN][217] ([Intel XE#7727]) -> [ABORT][218] ([Intel XE#9362])
[217]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9114/shard-lnl-8/igt@xe_pm@s4-mocs.html
[218]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/shard-lnl-8/igt@xe_pm@s4-mocs.html
[Intel XE#1124]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1124
[Intel XE#1138]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1138
[Intel XE#1178]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1178
[Intel XE#1392]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1392
[Intel XE#1406]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1406
[Intel XE#1407]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1407
[Intel XE#1421]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1421
[Intel XE#1424]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1424
[Intel XE#1439]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1439
[Intel XE#1489]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1489
[Intel XE#1499]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1499
[Intel XE#1508]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1508
[Intel XE#1729]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1729
[Intel XE#2234]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2234
[Intel XE#2245]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2245
[Intel XE#2252]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2252
[Intel XE#2311]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2311
[Intel XE#2313]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2313
[Intel XE#2316]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2316
[Intel XE#2320]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2320
[Intel XE#2322]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2322
[Intel XE#2327]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2327
[Intel XE#2328]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2328
[Intel XE#2330]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2330
[Intel XE#2370]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2370
[Intel XE#2387]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2387
[Intel XE#2413]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2413
[Intel XE#2426]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2426
[Intel XE#2499]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2499
[Intel XE#2669]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2669
[Intel XE#2685]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2685
[Intel XE#2724]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2724
[Intel XE#2763]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2763
[Intel XE#2833]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2833
[Intel XE#2850]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2850
[Intel XE#2887]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2887
[Intel XE#2893]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2893
[Intel XE#301]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/301
[Intel XE#307]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/307
[Intel XE#309]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/309
[Intel XE#3141]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3141
[Intel XE#3149]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3149
[Intel XE#3304]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3304
[Intel XE#3307]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3307
[Intel XE#3321]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3321
[Intel XE#3432]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3432
[Intel XE#352]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/352
[Intel XE#3544]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3544
[Intel XE#367]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/367
[Intel XE#3718]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3718
[Intel XE#373]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/373
[Intel XE#3904]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3904
[Intel XE#4141]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4141
[Intel XE#4156]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4156
[Intel XE#4210]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4210
[Intel XE#4227]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4227
[Intel XE#4608]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4608
[Intel XE#4609]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4609
[Intel XE#4733]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4733
[Intel XE#5020]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5020
[Intel XE#5575]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5575
[Intel XE#5611]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5611
[Intel XE#5741]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5741
[Intel XE#5764]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5764
[Intel XE#5771]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5771
[Intel XE#5800]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5800
[Intel XE#5808]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5808
[Intel XE#5812]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5812
[Intel XE#5813]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5813
[Intel XE#5821]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5821
[Intel XE#5822]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5822
[Intel XE#5823]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5823
[Intel XE#5824]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5824
[Intel XE#5832]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5832
[Intel XE#5835]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5835
[Intel XE#584]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/584
[Intel XE#5848]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5848
[Intel XE#5849]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5849
[Intel XE#5850]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5850
[Intel XE#5851]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5851
[Intel XE#5857]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5857
[Intel XE#5858]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5858
[Intel XE#586]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/586
[Intel XE#5870]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5870
[Intel XE#5900]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5900
[Intel XE#5901]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5901
[Intel XE#5907]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5907
[Intel XE#5949]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5949
[Intel XE#5962]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5962
[Intel XE#6019]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/6019
[Intel XE#6078]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/6078
[Intel XE#610]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/610
[Intel XE#6144]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/6144
[Intel XE#6312]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/6312
[Intel XE#6321]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/6321
[Intel XE#6376]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/6376
[Intel XE#6503]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/6503
[Intel XE#651]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/651
[Intel XE#6540]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/6540
[Intel XE#656]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/656
[Intel XE#6599]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/6599
[Intel XE#6867]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/6867
[Intel XE#688]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/688
[Intel XE#6886]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/6886
[Intel XE#6900]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/6900
[Intel XE#6918]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/6918
[Intel XE#6964]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/6964
[Intel XE#6969]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/6969
[Intel XE#6974]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/6974
[Intel XE#7061]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7061
[Intel XE#7084]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7084
[Intel XE#7178]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7178
[Intel XE#7225]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7225
[Intel XE#7271]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7271
[Intel XE#7283]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7283
[Intel XE#7304]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7304
[Intel XE#7323]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7323
[Intel XE#7330]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7330
[Intel XE#7342]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7342
[Intel XE#7343]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7343
[Intel XE#7344]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7344
[Intel XE#7345]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7345
[Intel XE#7349]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7349
[Intel XE#7351]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7351
[Intel XE#7356]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7356
[Intel XE#7358]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7358
[Intel XE#7367]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7367
[Intel XE#7369]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7369
[Intel XE#7372]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7372
[Intel XE#7374]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7374
[Intel XE#7376]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7376
[Intel XE#7383]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7383
[Intel XE#7384]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7384
[Intel XE#7387]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7387
[Intel XE#7389]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7389
[Intel XE#7397]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7397
[Intel XE#7413]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7413
[Intel XE#7417]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7417
[Intel XE#7422]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7422
[Intel XE#7424]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7424
[Intel XE#7425]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7425
[Intel XE#7429]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7429
[Intel XE#7449]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7449
[Intel XE#7456]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7456
[Intel XE#7467]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7467
[Intel XE#7482]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7482
[Intel XE#7484]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7484
[Intel XE#7590]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7590
[Intel XE#7591]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7591
[Intel XE#7642]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7642
[Intel XE#7679]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7679
[Intel XE#7727]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7727
[Intel XE#7760]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7760
[Intel XE#7793]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7793
[Intel XE#7865]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7865
[Intel XE#7892]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7892
[Intel XE#7905]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7905
[Intel XE#7980]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7980
[Intel XE#8150]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/8150
[Intel XE#8265]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/8265
[Intel XE#8303]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/8303
[Intel XE#8355]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/8355
[Intel XE#8364]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/8364
[Intel XE#8369]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/8369
[Intel XE#8370]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/8370
[Intel XE#8374]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/8374
[Intel XE#8378]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/8378
[Intel XE#8399]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/8399
[Intel XE#8583]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/8583
[Intel XE#870]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/870
[Intel XE#9003]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/9003
[Intel XE#9205]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/9205
[Intel XE#9271]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/9271
[Intel XE#9277]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/9277
[Intel XE#9287]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/9287
[Intel XE#9312]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/9312
[Intel XE#9320]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/9320
[Intel XE#9333]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/9333
[Intel XE#9340]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/9340
[Intel XE#9362]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/9362
[Intel XE#9365]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/9365
[Intel XE#9390]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/9390
[Intel XE#9425]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/9425
[Intel XE#9438]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/9438
[Intel XE#944]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/944
Build changes
-------------
* IGT: IGT_9114 -> IGTPW_15909
IGTPW_15909: 36489129f40b37725a6324d29e5a0a3e50d1af82 @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git
IGT_9114: 916c79cfb7675ca01607dcd821f8c49d4f633a6f @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git
xe-5837-972eeb850a4ca07aba05ccb805db28a33eab2c9a: 972eeb850a4ca07aba05ccb805db28a33eab2c9a
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15909/index.html
[-- Attachment #2: Type: text/html, Size: 78811 bytes --]
^ permalink raw reply [flat|nested] 19+ messages in thread* ✗ i915.CI.Full: failure for tools/vmtb: Sync VM Test Bench core with current xe SR-IOV
2026-09-28 7:25 [PATCH i-g-t 0/7] tools/vmtb: Sync VM Test Bench core with current xe SR-IOV Adam Miszczak
` (9 preceding siblings ...)
2026-09-29 2:19 ` ✗ Xe.CI.FULL: failure " Patchwork
@ 2026-09-29 4:08 ` Patchwork
10 siblings, 0 replies; 19+ messages in thread
From: Patchwork @ 2026-09-29 4:08 UTC (permalink / raw)
To: Adam Miszczak; +Cc: igt-dev
[-- Attachment #1: Type: text/plain, Size: 155924 bytes --]
== Series Details ==
Series: tools/vmtb: Sync VM Test Bench core with current xe SR-IOV
URL : https://patchwork.freedesktop.org/series/175090/
State : failure
== Summary ==
CI Bug Log - changes from IGT_9114_full -> IGTPW_15909_full
====================================================
Summary
-------
**FAILURE**
Serious unknown changes coming with IGTPW_15909_full absolutely need to be
verified manually.
If you think the reported changes have nothing to do with the changes
introduced in IGTPW_15909_full, please notify your bug team (I915-ci-infra@lists.freedesktop.org) to allow them
to document this new failure mode, which will reduce false positives in CI.
External URL: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/index.html
Participating hosts (10 -> 10)
------------------------------
No changes in participating hosts
Possible new issues
-------------------
Here are the unknown changes that may have been introduced in IGTPW_15909_full:
### IGT changes ###
#### Possible regressions ####
* igt@gem_exec_balancer@full-late-pulse:
- shard-mtlp: [PASS][1] -> [FAIL][2]
[1]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9114/shard-mtlp-8/igt@gem_exec_balancer@full-late-pulse.html
[2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-mtlp-7/igt@gem_exec_balancer@full-late-pulse.html
- shard-dg2: [PASS][3] -> [FAIL][4]
[3]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9114/shard-dg2-6/igt@gem_exec_balancer@full-late-pulse.html
[4]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg2-3/igt@gem_exec_balancer@full-late-pulse.html
Known issues
------------
Here are the changes found in IGTPW_15909_full that come from known issues:
### IGT changes ###
#### Issues hit ####
* igt@api_intel_bb@blit-reloc-keep-cache:
- shard-dg1: NOTRUN -> [SKIP][5] ([i915#8411]) +1 other test skip
[5]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg1-16/igt@api_intel_bb@blit-reloc-keep-cache.html
* igt@api_intel_bb@crc32:
- shard-rkl: NOTRUN -> [SKIP][6] ([i915#6230])
[6]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-7/igt@api_intel_bb@crc32.html
* igt@device_reset@cold-reset-bound:
- shard-rkl: NOTRUN -> [SKIP][7] ([i915#11078])
[7]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-4/igt@device_reset@cold-reset-bound.html
* igt@gem_ccs@ctrl-surf-copy:
- shard-rkl: NOTRUN -> [SKIP][8] ([i915#3555] / [i915#9323])
[8]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-2/igt@gem_ccs@ctrl-surf-copy.html
* igt@gem_ccs@suspend-resume@xmajor-compressed-compfmt0-smem-lmem0:
- shard-dg2: NOTRUN -> [INCOMPLETE][9] ([i915#13356] / [i915#16348])
[9]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg2-1/igt@gem_ccs@suspend-resume@xmajor-compressed-compfmt0-smem-lmem0.html
* igt@gem_close_race@multigpu-basic-process:
- shard-dg1: NOTRUN -> [SKIP][10] ([i915#7697])
[10]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg1-18/igt@gem_close_race@multigpu-basic-process.html
* igt@gem_close_race@multigpu-basic-threads:
- shard-rkl: NOTRUN -> [SKIP][11] ([i915#7697])
[11]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-7/igt@gem_close_race@multigpu-basic-threads.html
* igt@gem_create@create-ext-cpu-access-sanity-check:
- shard-tglu-1: NOTRUN -> [SKIP][12] ([i915#6335]) +1 other test skip
[12]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-tglu-1/igt@gem_create@create-ext-cpu-access-sanity-check.html
- shard-rkl: NOTRUN -> [SKIP][13] ([i915#6335])
[13]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-4/igt@gem_create@create-ext-cpu-access-sanity-check.html
* igt@gem_ctx_persistence@heartbeat-many:
- shard-dg2: NOTRUN -> [SKIP][14] ([i915#8555])
[14]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg2-7/igt@gem_ctx_persistence@heartbeat-many.html
- shard-dg1: NOTRUN -> [SKIP][15] ([i915#8555])
[15]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg1-18/igt@gem_ctx_persistence@heartbeat-many.html
* igt@gem_ctx_persistence@legacy-engines-cleanup:
- shard-snb: NOTRUN -> [SKIP][16] ([i915#1099]) +3 other tests skip
[16]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-snb4/igt@gem_ctx_persistence@legacy-engines-cleanup.html
* igt@gem_ctx_sseu@invalid-sseu:
- shard-rkl: NOTRUN -> [SKIP][17] ([i915#280])
[17]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-3/igt@gem_ctx_sseu@invalid-sseu.html
* igt@gem_ctx_sseu@mmap-args:
- shard-dg1: NOTRUN -> [SKIP][18] ([i915#280])
[18]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg1-16/igt@gem_ctx_sseu@mmap-args.html
* igt@gem_eio@in-flight-suspend:
- shard-glk10: NOTRUN -> [INCOMPLETE][19] ([i915#13356] / [i915#13390])
[19]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-glk10/igt@gem_eio@in-flight-suspend.html
* igt@gem_eio@reset-stress@bsd:
- shard-snb: NOTRUN -> [FAIL][20] ([i915#8898]) +1 other test fail
[20]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-snb1/igt@gem_eio@reset-stress@bsd.html
* igt@gem_eio@suspend:
- shard-mtlp: [PASS][21] -> [TIMEOUT][22] ([i915#17038])
[21]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9114/shard-mtlp-5/igt@gem_eio@suspend.html
[22]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-mtlp-3/igt@gem_eio@suspend.html
* igt@gem_exec_balancer@parallel:
- shard-tglu: NOTRUN -> [SKIP][23] ([i915#4525]) +1 other test skip
[23]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-tglu-7/igt@gem_exec_balancer@parallel.html
* igt@gem_exec_balancer@parallel-bb-first:
- shard-tglu-1: NOTRUN -> [SKIP][24] ([i915#4525])
[24]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-tglu-1/igt@gem_exec_balancer@parallel-bb-first.html
* igt@gem_exec_big@single:
- shard-tglu: [PASS][25] -> [FAIL][26] ([i915#15816])
[25]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9114/shard-tglu-9/igt@gem_exec_big@single.html
[26]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-tglu-4/igt@gem_exec_big@single.html
* igt@gem_exec_capture@capture-invisible@smem0:
- shard-tglu: NOTRUN -> [SKIP][27] ([i915#6334]) +1 other test skip
[27]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-tglu-10/igt@gem_exec_capture@capture-invisible@smem0.html
* igt@gem_exec_capture@capture-recoverable:
- shard-rkl: NOTRUN -> [SKIP][28] ([i915#6344])
[28]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-3/igt@gem_exec_capture@capture-recoverable.html
* igt@gem_exec_capture@capture@vecs0-lmem0:
- shard-dg2: NOTRUN -> [FAIL][29] ([i915#16904]) +4 other tests fail
[29]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg2-7/igt@gem_exec_capture@capture@vecs0-lmem0.html
* igt@gem_exec_flush@basic-uc-ro-default:
- shard-dg1: NOTRUN -> [SKIP][30] ([i915#3539] / [i915#4852]) +4 other tests skip
[30]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg1-16/igt@gem_exec_flush@basic-uc-ro-default.html
* igt@gem_exec_flush@basic-uc-rw-default:
- shard-dg2: NOTRUN -> [SKIP][31] ([i915#3539] / [i915#4852])
[31]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg2-1/igt@gem_exec_flush@basic-uc-rw-default.html
* igt@gem_exec_reloc@basic-cpu-noreloc:
- shard-dg2: NOTRUN -> [SKIP][32] ([i915#3281]) +3 other tests skip
[32]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg2-4/igt@gem_exec_reloc@basic-cpu-noreloc.html
* igt@gem_exec_reloc@basic-gtt-noreloc:
- shard-mtlp: NOTRUN -> [SKIP][33] ([i915#3281]) +1 other test skip
[33]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-mtlp-7/igt@gem_exec_reloc@basic-gtt-noreloc.html
* igt@gem_exec_reloc@basic-write-cpu-active:
- shard-dg1: NOTRUN -> [SKIP][34] ([i915#3281]) +10 other tests skip
[34]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg1-19/igt@gem_exec_reloc@basic-write-cpu-active.html
* igt@gem_exec_reloc@basic-write-read:
- shard-rkl: NOTRUN -> [SKIP][35] ([i915#3281]) +6 other tests skip
[35]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-5/igt@gem_exec_reloc@basic-write-read.html
* igt@gem_exec_schedule@preempt-queue:
- shard-dg1: NOTRUN -> [SKIP][36] ([i915#4812]) +3 other tests skip
[36]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg1-16/igt@gem_exec_schedule@preempt-queue.html
* igt@gem_exec_suspend@basic-s3:
- shard-glk: NOTRUN -> [INCOMPLETE][37] ([i915#13196] / [i915#13356]) +1 other test incomplete
[37]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-glk4/igt@gem_exec_suspend@basic-s3.html
* igt@gem_fence_thrash@bo-write-verify-threaded-none:
- shard-dg1: NOTRUN -> [SKIP][38] ([i915#4860]) +3 other tests skip
[38]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg1-15/igt@gem_fence_thrash@bo-write-verify-threaded-none.html
* igt@gem_fence_thrash@bo-write-verify-y:
- shard-dg2: NOTRUN -> [SKIP][39] ([i915#4860]) +1 other test skip
[39]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg2-8/igt@gem_fence_thrash@bo-write-verify-y.html
* igt@gem_gtt_cpu_tlb:
- shard-dg1: NOTRUN -> [SKIP][40] ([i915#4077]) +6 other tests skip
[40]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg1-14/igt@gem_gtt_cpu_tlb.html
* igt@gem_huc_copy@huc-copy:
- shard-rkl: NOTRUN -> [SKIP][41] ([i915#14544] / [i915#2190])
[41]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-6/igt@gem_huc_copy@huc-copy.html
* igt@gem_lmem_swapping@heavy-multi:
- shard-tglu-1: NOTRUN -> [SKIP][42] ([i915#4613]) +1 other test skip
[42]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-tglu-1/igt@gem_lmem_swapping@heavy-multi.html
* igt@gem_lmem_swapping@heavy-verify-multi:
- shard-mtlp: NOTRUN -> [SKIP][43] ([i915#4613]) +1 other test skip
[43]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-mtlp-1/igt@gem_lmem_swapping@heavy-verify-multi.html
* igt@gem_lmem_swapping@heavy-verify-multi-ccs:
- shard-glk: NOTRUN -> [SKIP][44] ([i915#4613]) +4 other tests skip
[44]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-glk4/igt@gem_lmem_swapping@heavy-verify-multi-ccs.html
- shard-tglu: NOTRUN -> [SKIP][45] ([i915#4613]) +3 other tests skip
[45]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-tglu-4/igt@gem_lmem_swapping@heavy-verify-multi-ccs.html
* igt@gem_lmem_swapping@massive-random:
- shard-rkl: NOTRUN -> [SKIP][46] ([i915#4613]) +1 other test skip
[46]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-3/igt@gem_lmem_swapping@massive-random.html
* igt@gem_lmem_swapping@verify-random-ccs:
- shard-dg1: NOTRUN -> [SKIP][47] ([i915#12193]) +2 other tests skip
[47]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg1-14/igt@gem_lmem_swapping@verify-random-ccs.html
* igt@gem_lmem_swapping@verify-random-ccs@lmem0:
- shard-dg1: NOTRUN -> [SKIP][48] ([i915#4565]) +2 other tests skip
[48]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg1-14/igt@gem_lmem_swapping@verify-random-ccs@lmem0.html
* igt@gem_mmap@short-mmap:
- shard-dg2: NOTRUN -> [SKIP][49] ([i915#4083]) +3 other tests skip
[49]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg2-3/igt@gem_mmap@short-mmap.html
* igt@gem_mmap_gtt@basic-read-write:
- shard-dg2: NOTRUN -> [SKIP][50] ([i915#4077]) +2 other tests skip
[50]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg2-4/igt@gem_mmap_gtt@basic-read-write.html
* igt@gem_mmap_gtt@hang-user:
- shard-mtlp: NOTRUN -> [SKIP][51] ([i915#4077]) +1 other test skip
[51]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-mtlp-6/igt@gem_mmap_gtt@hang-user.html
* igt@gem_mmap_wc@read:
- shard-dg1: NOTRUN -> [SKIP][52] ([i915#4083]) +6 other tests skip
[52]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg1-14/igt@gem_mmap_wc@read.html
* igt@gem_mmap_wc@read-write-distinct:
- shard-mtlp: NOTRUN -> [SKIP][53] ([i915#4083]) +1 other test skip
[53]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-mtlp-8/igt@gem_mmap_wc@read-write-distinct.html
* igt@gem_partial_pwrite_pread@writes-after-reads:
- shard-rkl: NOTRUN -> [SKIP][54] ([i915#3282]) +4 other tests skip
[54]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-4/igt@gem_partial_pwrite_pread@writes-after-reads.html
* igt@gem_partial_pwrite_pread@writes-after-reads-display:
- shard-dg1: NOTRUN -> [SKIP][55] ([i915#3282]) +4 other tests skip
[55]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg1-14/igt@gem_partial_pwrite_pread@writes-after-reads-display.html
* igt@gem_pwrite@basic-exhaustion:
- shard-glk11: NOTRUN -> [WARN][56] ([i915#14702] / [i915#2658])
[56]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-glk11/igt@gem_pwrite@basic-exhaustion.html
* igt@gem_pxp@create-regular-context-1:
- shard-dg2: NOTRUN -> [SKIP][57] ([i915#4270])
[57]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg2-6/igt@gem_pxp@create-regular-context-1.html
* igt@gem_pxp@hw-rejects-pxp-buffer:
- shard-rkl: NOTRUN -> [SKIP][58] ([i915#13717])
[58]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-4/igt@gem_pxp@hw-rejects-pxp-buffer.html
* igt@gem_pxp@protected-raw-src-copy-not-readible:
- shard-dg1: NOTRUN -> [SKIP][59] ([i915#4270]) +6 other tests skip
[59]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg1-12/igt@gem_pxp@protected-raw-src-copy-not-readible.html
* igt@gem_readwrite@read-write:
- shard-rkl: NOTRUN -> [SKIP][60] ([i915#14544] / [i915#3282]) +1 other test skip
[60]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-6/igt@gem_readwrite@read-write.html
* igt@gem_render_copy@x-tiled-to-vebox-yf-tiled:
- shard-mtlp: NOTRUN -> [SKIP][61] ([i915#8428]) +2 other tests skip
[61]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-mtlp-7/igt@gem_render_copy@x-tiled-to-vebox-yf-tiled.html
* igt@gem_render_copy@y-tiled-ccs-to-y-tiled-ccs:
- shard-dg2: NOTRUN -> [SKIP][62] ([i915#5190] / [i915#8428])
[62]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg2-7/igt@gem_render_copy@y-tiled-ccs-to-y-tiled-ccs.html
* igt@gem_render_copy@y-tiled-ccs-to-y-tiled-mc-ccs:
- shard-glk: NOTRUN -> [SKIP][63] +367 other tests skip
[63]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-glk2/igt@gem_render_copy@y-tiled-ccs-to-y-tiled-mc-ccs.html
* igt@gem_set_tiling_vs_blt@tiled-to-untiled:
- shard-dg1: NOTRUN -> [SKIP][64] ([i915#4079]) +1 other test skip
[64]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg1-15/igt@gem_set_tiling_vs_blt@tiled-to-untiled.html
* igt@gem_softpin@evict-snoop-interruptible:
- shard-dg1: NOTRUN -> [SKIP][65] ([i915#4885])
[65]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg1-18/igt@gem_softpin@evict-snoop-interruptible.html
* igt@gem_softpin@noreloc-s3:
- shard-glk: [PASS][66] -> [INCOMPLETE][67] ([i915#13356] / [i915#13809] / [i915#16193])
[66]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9114/shard-glk4/igt@gem_softpin@noreloc-s3.html
[67]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-glk6/igt@gem_softpin@noreloc-s3.html
* igt@gem_userptr_blits@create-destroy-unsync:
- shard-tglu: NOTRUN -> [SKIP][68] ([i915#3297]) +1 other test skip
[68]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-tglu-10/igt@gem_userptr_blits@create-destroy-unsync.html
* igt@gem_userptr_blits@dmabuf-sync:
- shard-glk: NOTRUN -> [SKIP][69] ([i915#3323])
[69]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-glk8/igt@gem_userptr_blits@dmabuf-sync.html
- shard-rkl: NOTRUN -> [SKIP][70] ([i915#3297] / [i915#3323])
[70]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-3/igt@gem_userptr_blits@dmabuf-sync.html
* igt@gem_userptr_blits@dmabuf-unsync:
- shard-rkl: NOTRUN -> [SKIP][71] ([i915#3297])
[71]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-5/igt@gem_userptr_blits@dmabuf-unsync.html
* igt@gem_userptr_blits@forbidden-operations:
- shard-dg1: NOTRUN -> [SKIP][72] ([i915#3282] / [i915#3297])
[72]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg1-14/igt@gem_userptr_blits@forbidden-operations.html
* igt@gem_userptr_blits@invalid-mmap-offset-unsync:
- shard-tglu-1: NOTRUN -> [SKIP][73] ([i915#3297])
[73]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-tglu-1/igt@gem_userptr_blits@invalid-mmap-offset-unsync.html
* igt@gem_userptr_blits@map-fixed-invalidate:
- shard-dg2: NOTRUN -> [SKIP][74] ([i915#3297] / [i915#4880])
[74]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg2-7/igt@gem_userptr_blits@map-fixed-invalidate.html
* igt@gem_userptr_blits@relocations:
- shard-dg1: NOTRUN -> [SKIP][75] ([i915#3281] / [i915#3297])
[75]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg1-18/igt@gem_userptr_blits@relocations.html
* igt@gem_userptr_blits@sd-probe:
- shard-dg2: NOTRUN -> [SKIP][76] ([i915#3297] / [i915#4958])
[76]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg2-8/igt@gem_userptr_blits@sd-probe.html
- shard-dg1: NOTRUN -> [SKIP][77] ([i915#3297] / [i915#4958])
[77]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg1-17/igt@gem_userptr_blits@sd-probe.html
* igt@gem_userptr_blits@unsync-unmap-cycles:
- shard-dg1: NOTRUN -> [SKIP][78] ([i915#3297])
[78]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg1-18/igt@gem_userptr_blits@unsync-unmap-cycles.html
* igt@gen7_exec_parse@basic-rejected:
- shard-dg2: NOTRUN -> [SKIP][79] +4 other tests skip
[79]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg2-5/igt@gen7_exec_parse@basic-rejected.html
* igt@gen9_exec_parse@basic-rejected:
- shard-rkl: NOTRUN -> [SKIP][80] ([i915#14544] / [i915#2527])
[80]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-6/igt@gen9_exec_parse@basic-rejected.html
* igt@gen9_exec_parse@bb-large:
- shard-mtlp: NOTRUN -> [SKIP][81] ([i915#2856]) +2 other tests skip
[81]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-mtlp-1/igt@gen9_exec_parse@bb-large.html
* igt@gen9_exec_parse@bb-oversize:
- shard-tglu-1: NOTRUN -> [SKIP][82] ([i915#2527] / [i915#2856]) +2 other tests skip
[82]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-tglu-1/igt@gen9_exec_parse@bb-oversize.html
* igt@gen9_exec_parse@bb-start-far:
- shard-dg1: NOTRUN -> [SKIP][83] ([i915#2527]) +1 other test skip
[83]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg1-16/igt@gen9_exec_parse@bb-start-far.html
* igt@gen9_exec_parse@unaligned-jump:
- shard-tglu: NOTRUN -> [SKIP][84] ([i915#2527] / [i915#2856]) +5 other tests skip
[84]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-tglu-10/igt@gen9_exec_parse@unaligned-jump.html
* igt@gen9_exec_parse@valid-registers:
- shard-dg2: NOTRUN -> [SKIP][85] ([i915#2856])
[85]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg2-3/igt@gen9_exec_parse@valid-registers.html
- shard-rkl: NOTRUN -> [SKIP][86] ([i915#2527])
[86]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-2/igt@gen9_exec_parse@valid-registers.html
* igt@gpu_buddy@gpu_buddy:
- shard-tglu-1: NOTRUN -> [SKIP][87] ([i915#15678])
[87]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-tglu-1/igt@gpu_buddy@gpu_buddy.html
* igt@i915_drm_fdinfo@all-busy-idle-check-all:
- shard-dg1: NOTRUN -> [SKIP][88] ([i915#14123])
[88]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg1-14/igt@i915_drm_fdinfo@all-busy-idle-check-all.html
* igt@i915_drm_fdinfo@busy@rcs0:
- shard-dg1: NOTRUN -> [SKIP][89] ([i915#14073]) +5 other tests skip
[89]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg1-18/igt@i915_drm_fdinfo@busy@rcs0.html
* igt@i915_drm_fdinfo@busy@vecs1:
- shard-dg2: NOTRUN -> [SKIP][90] ([i915#14073]) +7 other tests skip
[90]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg2-7/igt@i915_drm_fdinfo@busy@vecs1.html
* igt@i915_drm_fdinfo@virtual-busy-idle:
- shard-dg1: NOTRUN -> [SKIP][91] ([i915#14118])
[91]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg1-18/igt@i915_drm_fdinfo@virtual-busy-idle.html
* igt@i915_fb_tiling@basic-x-tiling:
- shard-dg1: NOTRUN -> [SKIP][92] ([i915#13786])
[92]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg1-14/igt@i915_fb_tiling@basic-x-tiling.html
* igt@i915_module_load@fault-injection@intel_connector_register:
- shard-glk10: NOTRUN -> [ABORT][93] ([i915#15342]) +1 other test abort
[93]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-glk10/igt@i915_module_load@fault-injection@intel_connector_register.html
* igt@i915_module_load@fault-injection@intel_gt_init-enodev:
- shard-glk10: NOTRUN -> [SKIP][94] +95 other tests skip
[94]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-glk10/igt@i915_module_load@fault-injection@intel_gt_init-enodev.html
* igt@i915_pm_freq_api@freq-reset-multiple:
- shard-tglu-1: NOTRUN -> [SKIP][95] ([i915#8399])
[95]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-tglu-1/igt@i915_pm_freq_api@freq-reset-multiple.html
* igt@i915_pm_freq_api@freq-suspend:
- shard-rkl: NOTRUN -> [SKIP][96] ([i915#8399])
[96]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-8/igt@i915_pm_freq_api@freq-suspend.html
* igt@i915_pm_freq_mult@media-freq@gt0:
- shard-rkl: NOTRUN -> [SKIP][97] ([i915#6590]) +1 other test skip
[97]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-5/igt@i915_pm_freq_mult@media-freq@gt0.html
* igt@i915_pm_rc6_residency@media-rc6-accuracy:
- shard-rkl: NOTRUN -> [SKIP][98] ([i915#16080] / [i915#16166])
[98]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-8/igt@i915_pm_rc6_residency@media-rc6-accuracy.html
* igt@i915_pm_rc6_residency@rc6-fence:
- shard-tglu-1: NOTRUN -> [WARN][99] ([i915#13790] / [i915#2681]) +1 other test warn
[99]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-tglu-1/igt@i915_pm_rc6_residency@rc6-fence.html
* igt@i915_pm_rpm@system-suspend:
- shard-glk: NOTRUN -> [INCOMPLETE][100] ([i915#13356]) +1 other test incomplete
[100]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-glk2/igt@i915_pm_rpm@system-suspend.html
* igt@i915_pm_rps@basic-api:
- shard-dg1: NOTRUN -> [SKIP][101] ([i915#11681] / [i915#6621])
[101]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg1-18/igt@i915_pm_rps@basic-api.html
* igt@i915_pm_rps@thresholds-park:
- shard-dg1: NOTRUN -> [SKIP][102] ([i915#11681])
[102]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg1-12/igt@i915_pm_rps@thresholds-park.html
* igt@i915_power@sanity:
- shard-rkl: NOTRUN -> [SKIP][103] ([i915#7984])
[103]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-5/igt@i915_power@sanity.html
* igt@i915_query@hwconfig_table:
- shard-rkl: NOTRUN -> [SKIP][104] ([i915#6245])
[104]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-8/igt@i915_query@hwconfig_table.html
* igt@i915_query@query-topology-unsupported:
- shard-tglu: NOTRUN -> [SKIP][105] ([i915#16079])
[105]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-tglu-4/igt@i915_query@query-topology-unsupported.html
* igt@i915_query@test-query-geometry-subslices:
- shard-rkl: NOTRUN -> [SKIP][106] ([i915#14544] / [i915#5723])
[106]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-6/igt@i915_query@test-query-geometry-subslices.html
- shard-tglu: NOTRUN -> [SKIP][107] ([i915#5723])
[107]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-tglu-4/igt@i915_query@test-query-geometry-subslices.html
* igt@i915_selftest@perf:
- shard-dg2: [PASS][108] -> [DMESG-WARN][109] ([i915#14545])
[108]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9114/shard-dg2-1/igt@i915_selftest@perf.html
[109]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg2-7/igt@i915_selftest@perf.html
* igt@i915_suspend@basic-s2idle-without-i915:
- shard-rkl: [PASS][110] -> [ABORT][111] ([i915#15131]) +1 other test abort
[110]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9114/shard-rkl-4/igt@i915_suspend@basic-s2idle-without-i915.html
[111]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-1/igt@i915_suspend@basic-s2idle-without-i915.html
* igt@i915_suspend@basic-s3-without-i915:
- shard-tglu: NOTRUN -> [INCOMPLETE][112] ([i915#4817] / [i915#7443])
[112]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-tglu-2/igt@i915_suspend@basic-s3-without-i915.html
* igt@i915_suspend@sysfs-reader:
- shard-glk: NOTRUN -> [INCOMPLETE][113] ([i915#13356] / [i915#16182] / [i915#4817])
[113]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-glk9/igt@i915_suspend@sysfs-reader.html
* igt@kms_addfb_basic@addfb25-x-tiled-mismatch-legacy:
- shard-dg2: NOTRUN -> [SKIP][114] ([i915#4212]) +1 other test skip
[114]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg2-6/igt@kms_addfb_basic@addfb25-x-tiled-mismatch-legacy.html
* igt@kms_addfb_basic@bo-too-small-due-to-tiling:
- shard-dg1: NOTRUN -> [SKIP][115] ([i915#4212]) +5 other tests skip
[115]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg1-14/igt@kms_addfb_basic@bo-too-small-due-to-tiling.html
* igt@kms_addfb_basic@invalid-smem-bo-on-discrete:
- shard-tglu-1: NOTRUN -> [SKIP][116] ([i915#12454] / [i915#12712])
[116]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-tglu-1/igt@kms_addfb_basic@invalid-smem-bo-on-discrete.html
* igt@kms_async_flips@async-flip-suspend-resume:
- shard-rkl: NOTRUN -> [INCOMPLETE][117] ([i915#12761]) +1 other test incomplete
[117]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-7/igt@kms_async_flips@async-flip-suspend-resume.html
- shard-glk: NOTRUN -> [INCOMPLETE][118] ([i915#12761] / [i915#13356]) +1 other test incomplete
[118]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-glk1/igt@kms_async_flips@async-flip-suspend-resume.html
* igt@kms_atomic@plane-primary-overlay-mutable-zpos:
- shard-tglu: NOTRUN -> [SKIP][119] ([i915#9531])
[119]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-tglu-4/igt@kms_atomic@plane-primary-overlay-mutable-zpos.html
* igt@kms_atomic_transition@plane-all-modeset-transition-fencing-internal-panels:
- shard-tglu-1: NOTRUN -> [SKIP][120] ([i915#1769] / [i915#3555]) +1 other test skip
[120]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-tglu-1/igt@kms_atomic_transition@plane-all-modeset-transition-fencing-internal-panels.html
* igt@kms_atomic_transition@plane-all-modeset-transition-internal-panels:
- shard-snb: NOTRUN -> [SKIP][121] ([i915#1769])
[121]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-snb4/igt@kms_atomic_transition@plane-all-modeset-transition-internal-panels.html
* igt@kms_big_fb@4-tiled-64bpp-rotate-0:
- shard-tglu: NOTRUN -> [SKIP][122] ([i915#5286]) +5 other tests skip
[122]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-tglu-9/igt@kms_big_fb@4-tiled-64bpp-rotate-0.html
* igt@kms_big_fb@4-tiled-addfb:
- shard-dg1: NOTRUN -> [SKIP][123] ([i915#5286]) +1 other test skip
[123]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg1-15/igt@kms_big_fb@4-tiled-addfb.html
* igt@kms_big_fb@4-tiled-max-hw-stride-32bpp-rotate-0-hflip:
- shard-tglu-1: NOTRUN -> [SKIP][124] ([i915#5286]) +2 other tests skip
[124]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-tglu-1/igt@kms_big_fb@4-tiled-max-hw-stride-32bpp-rotate-0-hflip.html
* igt@kms_big_fb@4-tiled-max-hw-stride-64bpp-rotate-0-hflip:
- shard-mtlp: [PASS][125] -> [FAIL][126] ([i915#15733] / [i915#5138])
[125]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9114/shard-mtlp-1/igt@kms_big_fb@4-tiled-max-hw-stride-64bpp-rotate-0-hflip.html
[126]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-mtlp-8/igt@kms_big_fb@4-tiled-max-hw-stride-64bpp-rotate-0-hflip.html
* igt@kms_big_fb@4-tiled-max-hw-stride-64bpp-rotate-180-async-flip:
- shard-dg1: NOTRUN -> [SKIP][127] ([i915#4538] / [i915#5286]) +5 other tests skip
[127]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg1-12/igt@kms_big_fb@4-tiled-max-hw-stride-64bpp-rotate-180-async-flip.html
* igt@kms_big_fb@4-tiled-max-hw-stride-64bpp-rotate-180-hflip:
- shard-rkl: NOTRUN -> [SKIP][128] ([i915#5286]) +6 other tests skip
[128]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-7/igt@kms_big_fb@4-tiled-max-hw-stride-64bpp-rotate-180-hflip.html
* igt@kms_big_fb@linear-32bpp-rotate-90:
- shard-dg1: NOTRUN -> [SKIP][129] ([i915#3638]) +4 other tests skip
[129]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg1-19/igt@kms_big_fb@linear-32bpp-rotate-90.html
* igt@kms_big_fb@linear-8bpp-rotate-90:
- shard-rkl: NOTRUN -> [SKIP][130] ([i915#3638])
[130]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-7/igt@kms_big_fb@linear-8bpp-rotate-90.html
* igt@kms_big_fb@linear-max-hw-stride-64bpp-rotate-0-hflip:
- shard-dg1: NOTRUN -> [SKIP][131] ([i915#3828])
[131]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg1-14/igt@kms_big_fb@linear-max-hw-stride-64bpp-rotate-0-hflip.html
* igt@kms_big_fb@linear-max-hw-stride-64bpp-rotate-180-hflip:
- shard-rkl: NOTRUN -> [SKIP][132] ([i915#3828]) +1 other test skip
[132]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-8/igt@kms_big_fb@linear-max-hw-stride-64bpp-rotate-180-hflip.html
* igt@kms_big_fb@y-tiled-64bpp-rotate-270:
- shard-rkl: NOTRUN -> [SKIP][133] ([i915#14544] / [i915#3638])
[133]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-6/igt@kms_big_fb@y-tiled-64bpp-rotate-270.html
* igt@kms_big_fb@y-tiled-max-hw-stride-32bpp-rotate-0-hflip:
- shard-mtlp: NOTRUN -> [SKIP][134] +5 other tests skip
[134]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-mtlp-6/igt@kms_big_fb@y-tiled-max-hw-stride-32bpp-rotate-0-hflip.html
* igt@kms_big_fb@y-tiled-max-hw-stride-32bpp-rotate-180-hflip-async-flip:
- shard-dg2: NOTRUN -> [SKIP][135] ([i915#4538] / [i915#5190]) +3 other tests skip
[135]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg2-4/igt@kms_big_fb@y-tiled-max-hw-stride-32bpp-rotate-180-hflip-async-flip.html
* igt@kms_big_fb@yf-tiled-32bpp-rotate-90:
- shard-dg1: NOTRUN -> [SKIP][136] ([i915#4538]) +6 other tests skip
[136]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg1-18/igt@kms_big_fb@yf-tiled-32bpp-rotate-90.html
* igt@kms_big_fb@yf-tiled-addfb-size-overflow:
- shard-dg2: NOTRUN -> [SKIP][137] ([i915#5190]) +1 other test skip
[137]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg2-6/igt@kms_big_fb@yf-tiled-addfb-size-overflow.html
- shard-mtlp: NOTRUN -> [SKIP][138] ([i915#6187]) +1 other test skip
[138]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-mtlp-8/igt@kms_big_fb@yf-tiled-addfb-size-overflow.html
* igt@kms_big_fb@yf-tiled-max-hw-stride-32bpp-rotate-0:
- shard-tglu-1: NOTRUN -> [SKIP][139] +72 other tests skip
[139]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-tglu-1/igt@kms_big_fb@yf-tiled-max-hw-stride-32bpp-rotate-0.html
* igt@kms_ccs@bad-rotation-90-4-tiled-dg2-mc-ccs@pipe-a-hdmi-a-2:
- shard-rkl: NOTRUN -> [SKIP][140] ([i915#14544] / [i915#6095]) +3 other tests skip
[140]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-6/igt@kms_ccs@bad-rotation-90-4-tiled-dg2-mc-ccs@pipe-a-hdmi-a-2.html
* igt@kms_ccs@bad-rotation-90-4-tiled-dg2-mc-ccs@pipe-c-hdmi-a-2:
- shard-rkl: NOTRUN -> [SKIP][141] ([i915#14098] / [i915#14544] / [i915#6095]) +2 other tests skip
[141]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-6/igt@kms_ccs@bad-rotation-90-4-tiled-dg2-mc-ccs@pipe-c-hdmi-a-2.html
* igt@kms_ccs@bad-rotation-90-4-tiled-mtl-rc-ccs-cc@pipe-b-hdmi-a-4:
- shard-dg1: NOTRUN -> [SKIP][142] ([i915#6095]) +176 other tests skip
[142]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg1-17/igt@kms_ccs@bad-rotation-90-4-tiled-mtl-rc-ccs-cc@pipe-b-hdmi-a-4.html
* igt@kms_ccs@crc-primary-basic-4-tiled-bmg-ccs:
- shard-tglu: NOTRUN -> [SKIP][143] ([i915#12313])
[143]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-tglu-4/igt@kms_ccs@crc-primary-basic-4-tiled-bmg-ccs.html
* igt@kms_ccs@crc-primary-basic-4-tiled-dg2-rc-ccs@pipe-a-edp-1:
- shard-mtlp: NOTRUN -> [SKIP][144] ([i915#6095]) +4 other tests skip
[144]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-mtlp-7/igt@kms_ccs@crc-primary-basic-4-tiled-dg2-rc-ccs@pipe-a-edp-1.html
* igt@kms_ccs@crc-primary-basic-4-tiled-lnl-ccs:
- shard-dg1: NOTRUN -> [SKIP][145] ([i915#12313]) +1 other test skip
[145]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg1-16/igt@kms_ccs@crc-primary-basic-4-tiled-lnl-ccs.html
* igt@kms_ccs@crc-primary-rotation-180-4-tiled-lnl-ccs:
- shard-tglu-1: NOTRUN -> [SKIP][146] ([i915#12313]) +1 other test skip
[146]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-tglu-1/igt@kms_ccs@crc-primary-rotation-180-4-tiled-lnl-ccs.html
* igt@kms_ccs@crc-primary-rotation-180-4-tiled-mtl-mc-ccs:
- shard-dg2: NOTRUN -> [SKIP][147] ([i915#10307] / [i915#10434] / [i915#6095]) +1 other test skip
[147]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg2-1/igt@kms_ccs@crc-primary-rotation-180-4-tiled-mtl-mc-ccs.html
* igt@kms_ccs@crc-primary-rotation-180-4-tiled-mtl-mc-ccs@pipe-a-hdmi-a-3:
- shard-dg2: NOTRUN -> [SKIP][148] ([i915#10307] / [i915#6095]) +67 other tests skip
[148]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg2-1/igt@kms_ccs@crc-primary-rotation-180-4-tiled-mtl-mc-ccs@pipe-a-hdmi-a-3.html
* igt@kms_ccs@crc-primary-suspend-4-tiled-bmg-ccs:
- shard-tglu: NOTRUN -> [SKIP][149] ([i915#12805])
[149]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-tglu-4/igt@kms_ccs@crc-primary-suspend-4-tiled-bmg-ccs.html
* igt@kms_ccs@crc-primary-suspend-4-tiled-dg2-mc-ccs:
- shard-tglu-1: NOTRUN -> [SKIP][150] ([i915#6095]) +59 other tests skip
[150]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-tglu-1/igt@kms_ccs@crc-primary-suspend-4-tiled-dg2-mc-ccs.html
* igt@kms_ccs@crc-primary-suspend-4-tiled-dg2-rc-ccs-cc@pipe-b-hdmi-a-1:
- shard-tglu: NOTRUN -> [SKIP][151] ([i915#6095]) +64 other tests skip
[151]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-tglu-3/igt@kms_ccs@crc-primary-suspend-4-tiled-dg2-rc-ccs-cc@pipe-b-hdmi-a-1.html
* igt@kms_ccs@crc-primary-suspend-4-tiled-dg2-rc-ccs@pipe-b-hdmi-a-1:
- shard-rkl: NOTRUN -> [SKIP][152] ([i915#6095]) +65 other tests skip
[152]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-5/igt@kms_ccs@crc-primary-suspend-4-tiled-dg2-rc-ccs@pipe-b-hdmi-a-1.html
* igt@kms_ccs@crc-primary-suspend-4-tiled-mtl-rc-ccs-cc:
- shard-mtlp: [PASS][153] -> [INCOMPLETE][154] ([i915#15582]) +1 other test incomplete
[153]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9114/shard-mtlp-6/igt@kms_ccs@crc-primary-suspend-4-tiled-mtl-rc-ccs-cc.html
[154]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-mtlp-5/igt@kms_ccs@crc-primary-suspend-4-tiled-mtl-rc-ccs-cc.html
* igt@kms_ccs@crc-primary-suspend-4-tiled-mtl-rc-ccs-cc@pipe-a-hdmi-a-1:
- shard-dg2: NOTRUN -> [SKIP][155] ([i915#6095]) +3 other tests skip
[155]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg2-4/igt@kms_ccs@crc-primary-suspend-4-tiled-mtl-rc-ccs-cc@pipe-a-hdmi-a-1.html
* igt@kms_ccs@crc-primary-suspend-4-tiled-mtl-rc-ccs-cc@pipe-c-edp-1:
- shard-mtlp: [PASS][156] -> [FAIL][157] ([i915#17158])
[156]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9114/shard-mtlp-6/igt@kms_ccs@crc-primary-suspend-4-tiled-mtl-rc-ccs-cc@pipe-c-edp-1.html
[157]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-mtlp-5/igt@kms_ccs@crc-primary-suspend-4-tiled-mtl-rc-ccs-cc@pipe-c-edp-1.html
* igt@kms_ccs@crc-primary-suspend-y-tiled-ccs:
- shard-glk: NOTRUN -> [INCOMPLETE][158] ([i915#13356] / [i915#15582]) +2 other tests incomplete
[158]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-glk5/igt@kms_ccs@crc-primary-suspend-y-tiled-ccs.html
* igt@kms_ccs@crc-sprite-planes-basic-4-tiled-lnl-ccs:
- shard-rkl: NOTRUN -> [SKIP][159] ([i915#12313]) +1 other test skip
[159]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-7/igt@kms_ccs@crc-sprite-planes-basic-4-tiled-lnl-ccs.html
* igt@kms_ccs@crc-sprite-planes-basic-y-tiled-ccs@pipe-c-hdmi-a-1:
- shard-rkl: NOTRUN -> [SKIP][160] ([i915#14098] / [i915#6095]) +46 other tests skip
[160]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-2/igt@kms_ccs@crc-sprite-planes-basic-y-tiled-ccs@pipe-c-hdmi-a-1.html
* igt@kms_cdclk@mode-transition-all-outputs:
- shard-dg1: NOTRUN -> [SKIP][161] ([i915#3742])
[161]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg1-12/igt@kms_cdclk@mode-transition-all-outputs.html
* igt@kms_cdclk@plane-scaling:
- shard-tglu: NOTRUN -> [SKIP][162] ([i915#3742])
[162]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-tglu-8/igt@kms_cdclk@plane-scaling.html
* igt@kms_cdclk@plane-scaling@pipe-c-hdmi-a-3:
- shard-dg2: NOTRUN -> [SKIP][163] ([i915#13781]) +3 other tests skip
[163]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg2-5/igt@kms_cdclk@plane-scaling@pipe-c-hdmi-a-3.html
* igt@kms_chamelium_audio@dp-audio-after-suspend:
- shard-tglu: NOTRUN -> [SKIP][164] ([i915#11151])
[164]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-tglu-10/igt@kms_chamelium_audio@dp-audio-after-suspend.html
* igt@kms_chamelium_audio@hdmi-audio-after-suspend:
- shard-rkl: NOTRUN -> [SKIP][165] ([i915#11151])
[165]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-4/igt@kms_chamelium_audio@hdmi-audio-after-suspend.html
* igt@kms_chamelium_audio@hdmi-audio-edid:
- shard-dg1: NOTRUN -> [SKIP][166] ([i915#11151] / [i915#7828]) +9 other tests skip
[166]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg1-15/igt@kms_chamelium_audio@hdmi-audio-edid.html
* igt@kms_chamelium_color_pipeline@plane-ctm3x4-lut1d:
- shard-rkl: NOTRUN -> [SKIP][167] ([i915#16471])
[167]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-1/igt@kms_chamelium_color_pipeline@plane-ctm3x4-lut1d.html
* igt@kms_chamelium_color_pipeline@plane-lut1d-ctm3x4-lut1d:
- shard-dg1: NOTRUN -> [SKIP][168] ([i915#16471]) +2 other tests skip
[168]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg1-15/igt@kms_chamelium_color_pipeline@plane-lut1d-ctm3x4-lut1d.html
* igt@kms_chamelium_color_pipeline@plane-lut1d-post-ctm3x4:
- shard-dg2: NOTRUN -> [SKIP][169] ([i915#16471])
[169]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg2-7/igt@kms_chamelium_color_pipeline@plane-lut1d-post-ctm3x4.html
- shard-tglu: NOTRUN -> [SKIP][170] ([i915#16471]) +1 other test skip
[170]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-tglu-5/igt@kms_chamelium_color_pipeline@plane-lut1d-post-ctm3x4.html
- shard-mtlp: NOTRUN -> [SKIP][171] ([i915#16464] / [i915#16471])
[171]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-mtlp-6/igt@kms_chamelium_color_pipeline@plane-lut1d-post-ctm3x4.html
* igt@kms_chamelium_frames@dp-crc-fast:
- shard-tglu-1: NOTRUN -> [SKIP][172] ([i915#11151] / [i915#7828]) +5 other tests skip
[172]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-tglu-1/igt@kms_chamelium_frames@dp-crc-fast.html
* igt@kms_chamelium_frames@hdmi-crc-multiple:
- shard-dg2: NOTRUN -> [SKIP][173] ([i915#11151] / [i915#7828]) +3 other tests skip
[173]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg2-4/igt@kms_chamelium_frames@hdmi-crc-multiple.html
* igt@kms_chamelium_hpd@dp-hpd-enable-disable-mode:
- shard-mtlp: NOTRUN -> [SKIP][174] ([i915#11151] / [i915#7828]) +2 other tests skip
[174]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-mtlp-3/igt@kms_chamelium_hpd@dp-hpd-enable-disable-mode.html
* igt@kms_chamelium_hpd@dp-hpd-storm:
- shard-tglu: NOTRUN -> [SKIP][175] ([i915#11151] / [i915#7828]) +7 other tests skip
[175]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-tglu-5/igt@kms_chamelium_hpd@dp-hpd-storm.html
* igt@kms_chamelium_hpd@vga-hpd-for-each-pipe:
- shard-rkl: NOTRUN -> [SKIP][176] ([i915#11151] / [i915#7828]) +7 other tests skip
[176]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-4/igt@kms_chamelium_hpd@vga-hpd-for-each-pipe.html
* igt@kms_color@deep-color:
- shard-rkl: NOTRUN -> [SKIP][177] ([i915#12655] / [i915#3555])
[177]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-5/igt@kms_color@deep-color.html
* igt@kms_color_pipeline@plane-ctm3x4@pipe-a-plane-4:
- shard-rkl: NOTRUN -> [SKIP][178] ([i915#16990]) +11 other tests skip
[178]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-8/igt@kms_color_pipeline@plane-ctm3x4@pipe-a-plane-4.html
* igt@kms_color_pipeline@plane-fixed-matrix-yuv-rgb-bt2020@pipe-a-plane-2:
- shard-dg1: NOTRUN -> [FAIL][179] ([i915#17116]) +78 other tests fail
[179]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg1-12/igt@kms_color_pipeline@plane-fixed-matrix-yuv-rgb-bt2020@pipe-a-plane-2.html
* igt@kms_color_pipeline@plane-fixed-matrix-yuv-rgb-bt601@pipe-d-plane-2:
- shard-dg2: NOTRUN -> [FAIL][180] ([i915#17116]) +41 other tests fail
[180]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg2-6/igt@kms_color_pipeline@plane-fixed-matrix-yuv-rgb-bt601@pipe-d-plane-2.html
* igt@kms_color_pipeline@plane-fixed-matrix-yuv-rgb-bt601@pipe-d-plane-4:
- shard-mtlp: NOTRUN -> [FAIL][181] ([i915#15733]) +20 other tests fail
[181]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-mtlp-7/igt@kms_color_pipeline@plane-fixed-matrix-yuv-rgb-bt601@pipe-d-plane-4.html
* igt@kms_color_pipeline@plane-fixed-matrix-yuv-rgb-bt709-lim-lut1d@pipe-a-plane-2:
- shard-tglu: NOTRUN -> [FAIL][182] ([i915#17116]) +86 other tests fail
[182]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-tglu-10/igt@kms_color_pipeline@plane-fixed-matrix-yuv-rgb-bt709-lim-lut1d@pipe-a-plane-2.html
* igt@kms_color_pipeline@plane-fixed-matrix-yuv-rgb-bt709-lut1d@pipe-b-plane-2:
- shard-rkl: NOTRUN -> [FAIL][183] ([i915#17116]) +31 other tests fail
[183]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-2/igt@kms_color_pipeline@plane-fixed-matrix-yuv-rgb-bt709-lut1d@pipe-b-plane-2.html
* igt@kms_color_pipeline@plane-fixed-matrix-yuv-rgb-bt709@pipe-a-plane-0:
- shard-tglu-1: NOTRUN -> [FAIL][184] ([i915#17116]) +57 other tests fail
[184]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-tglu-1/igt@kms_color_pipeline@plane-fixed-matrix-yuv-rgb-bt709@pipe-a-plane-0.html
* igt@kms_color_pipeline@plane-lut1d-ctm3x4-lut1d@pipe-d-plane-3:
- shard-tglu: NOTRUN -> [SKIP][185] ([i915#16990]) +15 other tests skip
[185]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-tglu-3/igt@kms_color_pipeline@plane-lut1d-ctm3x4-lut1d@pipe-d-plane-3.html
* igt@kms_color_pipeline@plane-lut1d-post-ctm3x4@pipe-d-plane-5:
- shard-dg1: NOTRUN -> [SKIP][186] ([i915#16990]) +31 other tests skip
[186]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg1-18/igt@kms_color_pipeline@plane-lut1d-post-ctm3x4@pipe-d-plane-5.html
* igt@kms_color_pipeline@plane-lut1d-pre-ctm3x4@pipe-d-plane-4:
- shard-mtlp: NOTRUN -> [SKIP][187] ([i915#16990]) +7 other tests skip
[187]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-mtlp-8/igt@kms_color_pipeline@plane-lut1d-pre-ctm3x4@pipe-d-plane-4.html
* igt@kms_content_protection@atomic-dpms:
- shard-rkl: NOTRUN -> [SKIP][188] ([i915#15865])
[188]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-5/igt@kms_content_protection@atomic-dpms.html
* igt@kms_content_protection@atomic-hdcp14:
- shard-dg1: NOTRUN -> [SKIP][189] ([i915#15865]) +8 other tests skip
[189]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg1-19/igt@kms_content_protection@atomic-hdcp14.html
* igt@kms_content_protection@dp-mst-lic-type-1:
- shard-tglu-1: NOTRUN -> [SKIP][190] ([i915#15330] / [i915#3116] / [i915#3299]) +1 other test skip
[190]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-tglu-1/igt@kms_content_protection@dp-mst-lic-type-1.html
* igt@kms_content_protection@dp-mst-type-0:
- shard-tglu: NOTRUN -> [SKIP][191] ([i915#15330] / [i915#3116] / [i915#3299])
[191]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-tglu-5/igt@kms_content_protection@dp-mst-type-0.html
* igt@kms_content_protection@dp-mst-type-1:
- shard-rkl: NOTRUN -> [SKIP][192] ([i915#14544] / [i915#15330] / [i915#3116])
[192]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-6/igt@kms_content_protection@dp-mst-type-1.html
* igt@kms_content_protection@dp-mst-type-1-suspend-resume:
- shard-tglu: NOTRUN -> [SKIP][193] ([i915#15330])
[193]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-tglu-8/igt@kms_content_protection@dp-mst-type-1-suspend-resume.html
* igt@kms_content_protection@srm:
- shard-dg2: NOTRUN -> [SKIP][194] ([i915#15865]) +2 other tests skip
[194]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg2-7/igt@kms_content_protection@srm.html
- shard-rkl: NOTRUN -> [SKIP][195] ([i915#14544] / [i915#15865])
[195]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-6/igt@kms_content_protection@srm.html
- shard-tglu: NOTRUN -> [SKIP][196] ([i915#15865])
[196]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-tglu-10/igt@kms_content_protection@srm.html
- shard-mtlp: NOTRUN -> [SKIP][197] ([i915#15865])
[197]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-mtlp-4/igt@kms_content_protection@srm.html
* igt@kms_content_protection@type1:
- shard-tglu-1: NOTRUN -> [SKIP][198] ([i915#15865]) +1 other test skip
[198]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-tglu-1/igt@kms_content_protection@type1.html
* igt@kms_cursor_crc@cursor-onscreen-128x42:
- shard-rkl: [PASS][199] -> [FAIL][200] ([i915#13566])
[199]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9114/shard-rkl-8/igt@kms_cursor_crc@cursor-onscreen-128x42.html
[200]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-6/igt@kms_cursor_crc@cursor-onscreen-128x42.html
- shard-tglu: [PASS][201] -> [FAIL][202] ([i915#13566]) +3 other tests fail
[201]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9114/shard-tglu-5/igt@kms_cursor_crc@cursor-onscreen-128x42.html
[202]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-tglu-4/igt@kms_cursor_crc@cursor-onscreen-128x42.html
* igt@kms_cursor_crc@cursor-onscreen-128x42@pipe-a-hdmi-a-2:
- shard-rkl: NOTRUN -> [FAIL][203] ([i915#13566])
[203]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-6/igt@kms_cursor_crc@cursor-onscreen-128x42@pipe-a-hdmi-a-2.html
* igt@kms_cursor_crc@cursor-onscreen-max-size:
- shard-tglu-1: NOTRUN -> [SKIP][204] ([i915#3555]) +2 other tests skip
[204]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-tglu-1/igt@kms_cursor_crc@cursor-onscreen-max-size.html
* igt@kms_cursor_crc@cursor-random-512x170:
- shard-tglu: NOTRUN -> [SKIP][205] ([i915#13049]) +1 other test skip
[205]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-tglu-8/igt@kms_cursor_crc@cursor-random-512x170.html
* igt@kms_cursor_crc@cursor-random-512x512:
- shard-tglu-1: NOTRUN -> [SKIP][206] ([i915#13049]) +2 other tests skip
[206]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-tglu-1/igt@kms_cursor_crc@cursor-random-512x512.html
* igt@kms_cursor_crc@cursor-rapid-movement-32x10:
- shard-rkl: NOTRUN -> [SKIP][207] ([i915#3555]) +6 other tests skip
[207]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-7/igt@kms_cursor_crc@cursor-rapid-movement-32x10.html
* igt@kms_cursor_crc@cursor-rapid-movement-512x170:
- shard-dg1: NOTRUN -> [SKIP][208] ([i915#13049])
[208]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg1-19/igt@kms_cursor_crc@cursor-rapid-movement-512x170.html
* igt@kms_cursor_crc@cursor-sliding-32x10:
- shard-tglu: NOTRUN -> [SKIP][209] ([i915#3555]) +3 other tests skip
[209]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-tglu-5/igt@kms_cursor_crc@cursor-sliding-32x10.html
* igt@kms_cursor_crc@cursor-suspend:
- shard-mtlp: [PASS][210] -> [INCOMPLETE][211] ([i915#12358]) +1 other test incomplete
[210]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9114/shard-mtlp-6/igt@kms_cursor_crc@cursor-suspend.html
[211]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-mtlp-1/igt@kms_cursor_crc@cursor-suspend.html
- shard-glk: NOTRUN -> [INCOMPLETE][212] ([i915#12358] / [i915#13356] / [i915#14152] / [i915#7882])
[212]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-glk6/igt@kms_cursor_crc@cursor-suspend.html
* igt@kms_cursor_crc@cursor-suspend@pipe-a-edp-1:
- shard-mtlp: [PASS][213] -> [FAIL][214] ([i915#17157])
[213]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9114/shard-mtlp-6/igt@kms_cursor_crc@cursor-suspend@pipe-a-edp-1.html
[214]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-mtlp-1/igt@kms_cursor_crc@cursor-suspend@pipe-a-edp-1.html
* igt@kms_cursor_crc@cursor-suspend@pipe-a-hdmi-a-1:
- shard-glk: NOTRUN -> [INCOMPLETE][215] ([i915#12358] / [i915#13356] / [i915#14152])
[215]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-glk6/igt@kms_cursor_crc@cursor-suspend@pipe-a-hdmi-a-1.html
* igt@kms_cursor_legacy@2x-flip-vs-cursor-legacy:
- shard-rkl: NOTRUN -> [SKIP][216] +99 other tests skip
[216]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-4/igt@kms_cursor_legacy@2x-flip-vs-cursor-legacy.html
* igt@kms_cursor_legacy@basic-busy-flip-before-cursor-legacy:
- shard-dg1: NOTRUN -> [SKIP][217] ([i915#4103])
[217]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg1-19/igt@kms_cursor_legacy@basic-busy-flip-before-cursor-legacy.html
- shard-mtlp: NOTRUN -> [SKIP][218] ([i915#16119] / [i915#4213])
[218]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-mtlp-2/igt@kms_cursor_legacy@basic-busy-flip-before-cursor-legacy.html
* igt@kms_cursor_legacy@basic-busy-flip-before-cursor-varying-size:
- shard-rkl: NOTRUN -> [SKIP][219] ([i915#4103]) +1 other test skip
[219]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-5/igt@kms_cursor_legacy@basic-busy-flip-before-cursor-varying-size.html
* igt@kms_cursor_legacy@cursora-vs-flipb-atomic-transitions-varying-size:
- shard-dg2: NOTRUN -> [SKIP][220] ([i915#13046] / [i915#5354]) +1 other test skip
[220]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg2-6/igt@kms_cursor_legacy@cursora-vs-flipb-atomic-transitions-varying-size.html
- shard-mtlp: NOTRUN -> [SKIP][221] ([i915#9809]) +1 other test skip
[221]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-mtlp-7/igt@kms_cursor_legacy@cursora-vs-flipb-atomic-transitions-varying-size.html
* igt@kms_cursor_legacy@modeset-atomic-cursor-hotspot:
- shard-dg1: NOTRUN -> [SKIP][222] ([i915#9067])
[222]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg1-18/igt@kms_cursor_legacy@modeset-atomic-cursor-hotspot.html
* igt@kms_cursor_legacy@short-busy-flip-before-cursor-toggle:
- shard-tglu-1: NOTRUN -> [SKIP][223] ([i915#4103])
[223]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-tglu-1/igt@kms_cursor_legacy@short-busy-flip-before-cursor-toggle.html
* igt@kms_dirtyfb@drrs-dirtyfb-ioctl:
- shard-rkl: NOTRUN -> [SKIP][224] ([i915#9723])
[224]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-1/igt@kms_dirtyfb@drrs-dirtyfb-ioctl.html
* igt@kms_dp_aux_dev@basic:
- shard-tglu-1: NOTRUN -> [SKIP][225] ([i915#1257])
[225]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-tglu-1/igt@kms_dp_aux_dev@basic.html
* igt@kms_dp_link_training@non-uhbr-mst:
- shard-dg1: NOTRUN -> [SKIP][226] ([i915#13749])
[226]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg1-14/igt@kms_dp_link_training@non-uhbr-mst.html
* igt@kms_dp_link_training@non-uhbr-sst:
- shard-rkl: NOTRUN -> [SKIP][227] ([i915#13749])
[227]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-7/igt@kms_dp_link_training@non-uhbr-sst.html
* igt@kms_dp_link_training@uhbr-sst:
- shard-rkl: NOTRUN -> [SKIP][228] ([i915#13748])
[228]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-8/igt@kms_dp_link_training@uhbr-sst.html
* igt@kms_dp_linktrain_fallback@dsc-fallback:
- shard-dg1: NOTRUN -> [SKIP][229] ([i915#13707])
[229]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg1-17/igt@kms_dp_linktrain_fallback@dsc-fallback.html
* igt@kms_dp_linktrain_fallback@uhbr-to-hbr-fallback:
- shard-rkl: NOTRUN -> [SKIP][230] ([i915#16867])
[230]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-5/igt@kms_dp_linktrain_fallback@uhbr-to-hbr-fallback.html
* igt@kms_dsc@dsc-basic-ultrajoiner:
- shard-dg1: NOTRUN -> [SKIP][231] ([i915#16361]) +6 other tests skip
[231]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg1-14/igt@kms_dsc@dsc-basic-ultrajoiner.html
* igt@kms_dsc@dsc-fractional-bpp:
- shard-dg2: NOTRUN -> [SKIP][232] ([i915#16361]) +2 other tests skip
[232]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg2-8/igt@kms_dsc@dsc-fractional-bpp.html
* igt@kms_dsc@dsc-fractional-bpp-ultrajoiner:
- shard-tglu: NOTRUN -> [SKIP][233] ([i915#16361]) +3 other tests skip
[233]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-tglu-10/igt@kms_dsc@dsc-fractional-bpp-ultrajoiner.html
* igt@kms_dsc@dsc-with-bpc-formats-ultrajoiner:
- shard-rkl: NOTRUN -> [SKIP][234] ([i915#16361]) +3 other tests skip
[234]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-1/igt@kms_dsc@dsc-with-bpc-formats-ultrajoiner.html
- shard-mtlp: NOTRUN -> [SKIP][235] ([i915#16361]) +1 other test skip
[235]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-mtlp-6/igt@kms_dsc@dsc-with-bpc-formats-ultrajoiner.html
* igt@kms_dsc@dsc-with-output-formats-bigjoiner:
- shard-tglu-1: NOTRUN -> [SKIP][236] ([i915#16361]) +3 other tests skip
[236]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-tglu-1/igt@kms_dsc@dsc-with-output-formats-bigjoiner.html
* igt@kms_fbcon_fbt@fbc-suspend:
- shard-glk10: NOTRUN -> [INCOMPLETE][237] ([i915#13356] / [i915#9878])
[237]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-glk10/igt@kms_fbcon_fbt@fbc-suspend.html
* igt@kms_fbcon_fbt@psr-suspend:
- shard-mtlp: [PASS][238] -> [FAIL][239] ([i915#17189])
[238]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9114/shard-mtlp-6/igt@kms_fbcon_fbt@psr-suspend.html
[239]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-mtlp-3/igt@kms_fbcon_fbt@psr-suspend.html
* igt@kms_feature_discovery@chamelium:
- shard-tglu: NOTRUN -> [SKIP][240] ([i915#2065])
[240]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-tglu-3/igt@kms_feature_discovery@chamelium.html
* igt@kms_feature_discovery@display-4x:
- shard-dg1: NOTRUN -> [SKIP][241] ([i915#16081])
[241]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg1-17/igt@kms_feature_discovery@display-4x.html
* igt@kms_feature_discovery@dp-mst:
- shard-rkl: NOTRUN -> [SKIP][242] ([i915#16599])
[242]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-8/igt@kms_feature_discovery@dp-mst.html
* igt@kms_feature_discovery@hdr:
- shard-rkl: NOTRUN -> [SKIP][243] ([i915#16600])
[243]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-2/igt@kms_feature_discovery@hdr.html
* igt@kms_feature_discovery@psr1:
- shard-rkl: NOTRUN -> [SKIP][244] ([i915#658])
[244]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-5/igt@kms_feature_discovery@psr1.html
* igt@kms_fence_pin_leak:
- shard-dg1: NOTRUN -> [SKIP][245] ([i915#4881])
[245]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg1-19/igt@kms_fence_pin_leak.html
* igt@kms_flip@2x-absolute-wf_vblank:
- shard-dg2: NOTRUN -> [SKIP][246] ([i915#9934]) +2 other tests skip
[246]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg2-8/igt@kms_flip@2x-absolute-wf_vblank.html
- shard-dg1: NOTRUN -> [SKIP][247] ([i915#9934]) +11 other tests skip
[247]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg1-17/igt@kms_flip@2x-absolute-wf_vblank.html
- shard-tglu: NOTRUN -> [SKIP][248] ([i915#3637] / [i915#9934]) +8 other tests skip
[248]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-tglu-10/igt@kms_flip@2x-absolute-wf_vblank.html
* igt@kms_flip@2x-dpms-vs-vblank-race:
- shard-rkl: NOTRUN -> [SKIP][249] ([i915#9934]) +2 other tests skip
[249]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-3/igt@kms_flip@2x-dpms-vs-vblank-race.html
* igt@kms_flip@2x-flip-vs-dpms-off-vs-modeset-interruptible:
- shard-tglu-1: NOTRUN -> [SKIP][250] ([i915#3637] / [i915#9934]) +3 other tests skip
[250]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-tglu-1/igt@kms_flip@2x-flip-vs-dpms-off-vs-modeset-interruptible.html
* igt@kms_flip@2x-flip-vs-dpms-on-nop:
- shard-tglu-1: NOTRUN -> [SKIP][251] ([i915#9934])
[251]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-tglu-1/igt@kms_flip@2x-flip-vs-dpms-on-nop.html
* igt@kms_flip@2x-flip-vs-wf_vblank-interruptible:
- shard-mtlp: NOTRUN -> [SKIP][252] ([i915#3637] / [i915#9934]) +3 other tests skip
[252]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-mtlp-4/igt@kms_flip@2x-flip-vs-wf_vblank-interruptible.html
* igt@kms_flip@flip-vs-absolute-wf_vblank-interruptible:
- shard-dg1: [PASS][253] -> [FAIL][254] ([i915#14600])
[253]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9114/shard-dg1-18/igt@kms_flip@flip-vs-absolute-wf_vblank-interruptible.html
[254]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg1-12/igt@kms_flip@flip-vs-absolute-wf_vblank-interruptible.html
* igt@kms_flip@flip-vs-absolute-wf_vblank-interruptible@c-hdmi-a3:
- shard-dg1: NOTRUN -> [FAIL][255] ([i915#14600])
[255]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg1-12/igt@kms_flip@flip-vs-absolute-wf_vblank-interruptible@c-hdmi-a3.html
* igt@kms_flip@flip-vs-expired-vblank:
- shard-glk: NOTRUN -> [FAIL][256] ([i915#13027]) +1 other test fail
[256]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-glk3/igt@kms_flip@flip-vs-expired-vblank.html
* igt@kms_flip@flip-vs-fences-interruptible:
- shard-dg1: NOTRUN -> [SKIP][257] ([i915#8381]) +1 other test skip
[257]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg1-18/igt@kms_flip@flip-vs-fences-interruptible.html
- shard-mtlp: NOTRUN -> [SKIP][258] ([i915#8381])
[258]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-mtlp-2/igt@kms_flip@flip-vs-fences-interruptible.html
* igt@kms_flip_scaled_crc@flip-32bpp-4tile-to-32bpp-4tiledg2rcccs-downscaling:
- shard-tglu-1: NOTRUN -> [SKIP][259] ([i915#15643]) +1 other test skip
[259]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-tglu-1/igt@kms_flip_scaled_crc@flip-32bpp-4tile-to-32bpp-4tiledg2rcccs-downscaling.html
* igt@kms_flip_scaled_crc@flip-32bpp-4tile-to-64bpp-4tile-downscaling:
- shard-rkl: NOTRUN -> [SKIP][260] ([i915#14544] / [i915#15643])
[260]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-6/igt@kms_flip_scaled_crc@flip-32bpp-4tile-to-64bpp-4tile-downscaling.html
* igt@kms_flip_scaled_crc@flip-32bpp-yftileccs-to-64bpp-yftile-upscaling:
- shard-tglu: NOTRUN -> [SKIP][261] ([i915#15643]) +4 other tests skip
[261]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-tglu-3/igt@kms_flip_scaled_crc@flip-32bpp-yftileccs-to-64bpp-yftile-upscaling.html
* igt@kms_flip_scaled_crc@flip-32bpp-ytile-to-32bpp-ytilegen12rcccs-downscaling:
- shard-dg2: NOTRUN -> [SKIP][262] ([i915#15643] / [i915#5190])
[262]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg2-4/igt@kms_flip_scaled_crc@flip-32bpp-ytile-to-32bpp-ytilegen12rcccs-downscaling.html
* igt@kms_flip_scaled_crc@flip-64bpp-4tile-to-32bpp-4tiledg2rcccs-downscaling:
- shard-dg1: NOTRUN -> [SKIP][263] ([i915#15643])
[263]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg1-19/igt@kms_flip_scaled_crc@flip-64bpp-4tile-to-32bpp-4tiledg2rcccs-downscaling.html
- shard-mtlp: NOTRUN -> [SKIP][264] ([i915#15643])
[264]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-mtlp-5/igt@kms_flip_scaled_crc@flip-64bpp-4tile-to-32bpp-4tiledg2rcccs-downscaling.html
* igt@kms_flip_scaled_crc@flip-64bpp-4tile-to-32bpp-4tiledg2rcccs-upscaling:
- shard-rkl: NOTRUN -> [SKIP][265] ([i915#15643]) +3 other tests skip
[265]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-4/igt@kms_flip_scaled_crc@flip-64bpp-4tile-to-32bpp-4tiledg2rcccs-upscaling.html
* igt@kms_frontbuffer_tracking@fbc-1p-offscreen-pri-shrfb-draw-mmap-gtt:
- shard-mtlp: NOTRUN -> [SKIP][266] ([i915#15104] / [i915#15990])
[266]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-mtlp-4/igt@kms_frontbuffer_tracking@fbc-1p-offscreen-pri-shrfb-draw-mmap-gtt.html
* igt@kms_frontbuffer_tracking@fbc-2p-primscrn-pri-shrfb-draw-mmap-cpu:
- shard-dg1: NOTRUN -> [SKIP][267] +98 other tests skip
[267]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg1-16/igt@kms_frontbuffer_tracking@fbc-2p-primscrn-pri-shrfb-draw-mmap-cpu.html
* igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-pri-indfb-draw-render:
- shard-dg2: NOTRUN -> [SKIP][268] ([i915#15991] / [i915#5354]) +7 other tests skip
[268]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg2-6/igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-pri-indfb-draw-render.html
* igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-pri-shrfb-draw-mmap-gtt:
- shard-rkl: NOTRUN -> [SKIP][269] ([i915#1825]) +8 other tests skip
[269]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-8/igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-pri-shrfb-draw-mmap-gtt.html
* igt@kms_frontbuffer_tracking@fbc-tiling-4:
- shard-tglu-1: NOTRUN -> [SKIP][270] ([i915#5439])
[270]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-tglu-1/igt@kms_frontbuffer_tracking@fbc-tiling-4.html
* igt@kms_frontbuffer_tracking@fbchdr-1p-offscreen-pri-shrfb-draw-pwrite:
- shard-dg2: NOTRUN -> [SKIP][271] ([i915#15989]) +6 other tests skip
[271]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg2-4/igt@kms_frontbuffer_tracking@fbchdr-1p-offscreen-pri-shrfb-draw-pwrite.html
* igt@kms_frontbuffer_tracking@fbchdr-1p-primscrn-shrfb-plflip-blt:
- shard-rkl: NOTRUN -> [SKIP][272] ([i915#15989]) +18 other tests skip
[272]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-7/igt@kms_frontbuffer_tracking@fbchdr-1p-primscrn-shrfb-plflip-blt.html
* igt@kms_frontbuffer_tracking@fbchdr-1p-primscrn-spr-indfb-draw-pwrite:
- shard-tglu: NOTRUN -> [SKIP][273] ([i915#15989]) +23 other tests skip
[273]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-tglu-10/igt@kms_frontbuffer_tracking@fbchdr-1p-primscrn-spr-indfb-draw-pwrite.html
* igt@kms_frontbuffer_tracking@fbchdr-1p-primscrn-spr-indfb-move:
- shard-rkl: [PASS][274] -> [SKIP][275] ([i915#15989]) +3 other tests skip
[274]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9114/shard-rkl-6/igt@kms_frontbuffer_tracking@fbchdr-1p-primscrn-spr-indfb-move.html
[275]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-7/igt@kms_frontbuffer_tracking@fbchdr-1p-primscrn-spr-indfb-move.html
* igt@kms_frontbuffer_tracking@fbchdr-2p-primscrn-spr-indfb-draw-mmap-gtt:
- shard-dg2: NOTRUN -> [SKIP][276] ([i915#15990]) +8 other tests skip
[276]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg2-3/igt@kms_frontbuffer_tracking@fbchdr-2p-primscrn-spr-indfb-draw-mmap-gtt.html
* igt@kms_frontbuffer_tracking@fbchdr-2p-scndscrn-spr-indfb-draw-mmap-gtt:
- shard-mtlp: NOTRUN -> [SKIP][277] ([i915#15990]) +3 other tests skip
[277]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-mtlp-1/igt@kms_frontbuffer_tracking@fbchdr-2p-scndscrn-spr-indfb-draw-mmap-gtt.html
* igt@kms_frontbuffer_tracking@fbchdr-farfromfence-mmap-gtt:
- shard-dg1: NOTRUN -> [SKIP][278] ([i915#15990]) +27 other tests skip
[278]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg1-14/igt@kms_frontbuffer_tracking@fbchdr-farfromfence-mmap-gtt.html
* igt@kms_frontbuffer_tracking@fbchdr-tiling-y:
- shard-dg2: NOTRUN -> [SKIP][279] ([i915#10055])
[279]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg2-3/igt@kms_frontbuffer_tracking@fbchdr-tiling-y.html
* igt@kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-pri-shrfb-draw-mmap-wc:
- shard-mtlp: NOTRUN -> [SKIP][280] ([i915#15991] / [i915#1825]) +9 other tests skip
[280]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-mtlp-3/igt@kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-pri-shrfb-draw-mmap-wc.html
* igt@kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-spr-indfb-fullscreen:
- shard-tglu: NOTRUN -> [SKIP][281] +114 other tests skip
[281]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-tglu-9/igt@kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-spr-indfb-fullscreen.html
* igt@kms_frontbuffer_tracking@fbcpsr-rgb101010-draw-mmap-wc:
- shard-dg1: NOTRUN -> [SKIP][282] ([i915#15990] / [i915#8708]) +14 other tests skip
[282]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg1-14/igt@kms_frontbuffer_tracking@fbcpsr-rgb101010-draw-mmap-wc.html
* igt@kms_frontbuffer_tracking@fbcpsr-tiling-4:
- shard-dg1: NOTRUN -> [SKIP][283] ([i915#5439])
[283]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg1-12/igt@kms_frontbuffer_tracking@fbcpsr-tiling-4.html
* igt@kms_frontbuffer_tracking@fbcpsrhdr-1p-primscrn-cur-indfb-move:
- shard-dg1: NOTRUN -> [SKIP][284] ([i915#15102]) +46 other tests skip
[284]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg1-18/igt@kms_frontbuffer_tracking@fbcpsrhdr-1p-primscrn-cur-indfb-move.html
* igt@kms_frontbuffer_tracking@fbcpsrhdr-1p-primscrn-spr-indfb-fullscreen:
- shard-mtlp: NOTRUN -> [SKIP][285] ([i915#15989]) +6 other tests skip
[285]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-mtlp-5/igt@kms_frontbuffer_tracking@fbcpsrhdr-1p-primscrn-spr-indfb-fullscreen.html
* igt@kms_frontbuffer_tracking@fbcpsrhdr-2p-primscrn-spr-indfb-draw-render:
- shard-rkl: NOTRUN -> [SKIP][286] ([i915#14544]) +9 other tests skip
[286]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-6/igt@kms_frontbuffer_tracking@fbcpsrhdr-2p-primscrn-spr-indfb-draw-render.html
* igt@kms_frontbuffer_tracking@hdr-1p-primscrn-shrfb-plflip-blt:
- shard-tglu-1: NOTRUN -> [SKIP][287] ([i915#15989]) +12 other tests skip
[287]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-tglu-1/igt@kms_frontbuffer_tracking@hdr-1p-primscrn-shrfb-plflip-blt.html
- shard-dg1: NOTRUN -> [SKIP][288] ([i915#15989]) +17 other tests skip
[288]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg1-17/igt@kms_frontbuffer_tracking@hdr-1p-primscrn-shrfb-plflip-blt.html
* igt@kms_frontbuffer_tracking@hdr-2p-primscrn-cur-indfb-draw-blt:
- shard-glk: [PASS][289] -> [SKIP][290] +4 other tests skip
[289]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9114/shard-glk8/igt@kms_frontbuffer_tracking@hdr-2p-primscrn-cur-indfb-draw-blt.html
[290]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-glk2/igt@kms_frontbuffer_tracking@hdr-2p-primscrn-cur-indfb-draw-blt.html
* igt@kms_frontbuffer_tracking@hdr-2p-primscrn-pri-shrfb-draw-blt:
- shard-dg2: NOTRUN -> [SKIP][291] ([i915#15991]) +11 other tests skip
[291]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg2-5/igt@kms_frontbuffer_tracking@hdr-2p-primscrn-pri-shrfb-draw-blt.html
* igt@kms_frontbuffer_tracking@pipe-fbc-rte:
- shard-dg1: NOTRUN -> [SKIP][292] ([i915#9766])
[292]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg1-19/igt@kms_frontbuffer_tracking@pipe-fbc-rte.html
* igt@kms_frontbuffer_tracking@psr-1p-offscreen-pri-shrfb-draw-mmap-gtt:
- shard-dg1: NOTRUN -> [SKIP][293] ([i915#15104] / [i915#15990]) +1 other test skip
[293]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg1-15/igt@kms_frontbuffer_tracking@psr-1p-offscreen-pri-shrfb-draw-mmap-gtt.html
- shard-dg2: NOTRUN -> [SKIP][294] ([i915#15104] / [i915#15990])
[294]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg2-3/igt@kms_frontbuffer_tracking@psr-1p-offscreen-pri-shrfb-draw-mmap-gtt.html
* igt@kms_frontbuffer_tracking@psr-1p-primscrn-indfb-plflip-blt:
- shard-rkl: NOTRUN -> [SKIP][295] ([i915#15102]) +37 other tests skip
[295]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-2/igt@kms_frontbuffer_tracking@psr-1p-primscrn-indfb-plflip-blt.html
* igt@kms_frontbuffer_tracking@psr-1p-primscrn-spr-indfb-move:
- shard-tglu: NOTRUN -> [SKIP][296] ([i915#15102]) +44 other tests skip
[296]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-tglu-4/igt@kms_frontbuffer_tracking@psr-1p-primscrn-spr-indfb-move.html
* igt@kms_frontbuffer_tracking@psr-1p-rte:
- shard-dg2: NOTRUN -> [SKIP][297] ([i915#15102]) +14 other tests skip
[297]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg2-8/igt@kms_frontbuffer_tracking@psr-1p-rte.html
* igt@kms_frontbuffer_tracking@psr-2p-primscrn-spr-indfb-draw-mmap-gtt:
- shard-dg2: NOTRUN -> [SKIP][298] ([i915#15990] / [i915#8708]) +4 other tests skip
[298]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg2-7/igt@kms_frontbuffer_tracking@psr-2p-primscrn-spr-indfb-draw-mmap-gtt.html
* igt@kms_frontbuffer_tracking@psr-suspend:
- shard-rkl: NOTRUN -> [SKIP][299] ([i915#14544] / [i915#15102]) +6 other tests skip
[299]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-6/igt@kms_frontbuffer_tracking@psr-suspend.html
* igt@kms_frontbuffer_tracking@psrhdr-1p-primscrn-cur-indfb-draw-mmap-wc:
- shard-tglu-1: NOTRUN -> [SKIP][300] ([i915#15102]) +26 other tests skip
[300]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-tglu-1/igt@kms_frontbuffer_tracking@psrhdr-1p-primscrn-cur-indfb-draw-mmap-wc.html
* igt@kms_frontbuffer_tracking@psrhdr-2p-primscrn-cur-indfb-draw-mmap-cpu:
- shard-mtlp: NOTRUN -> [SKIP][301] ([i915#15991]) +13 other tests skip
[301]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-mtlp-5/igt@kms_frontbuffer_tracking@psrhdr-2p-primscrn-cur-indfb-draw-mmap-cpu.html
* igt@kms_hdmi_inject@inject-4k:
- shard-mtlp: [PASS][302] -> [SKIP][303] ([i915#15725])
[302]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9114/shard-mtlp-6/igt@kms_hdmi_inject@inject-4k.html
[303]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-mtlp-1/igt@kms_hdmi_inject@inject-4k.html
* igt@kms_hdr@invalid-hdr:
- shard-tglu: NOTRUN -> [SKIP][304] ([i915#3555] / [i915#8228]) +1 other test skip
[304]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-tglu-3/igt@kms_hdr@invalid-hdr.html
* igt@kms_hdr@invalid-metadata-sizes:
- shard-dg1: NOTRUN -> [SKIP][305] ([i915#3555] / [i915#8228]) +2 other tests skip
[305]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg1-17/igt@kms_hdr@invalid-metadata-sizes.html
* igt@kms_hdr@static-toggle-suspend:
- shard-rkl: NOTRUN -> [SKIP][306] ([i915#16644] / [i915#3555] / [i915#8228]) +1 other test skip
[306]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-5/igt@kms_hdr@static-toggle-suspend.html
* igt@kms_joiner@basic-big-joiner:
- shard-dg1: NOTRUN -> [SKIP][307] ([i915#15460])
[307]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg1-19/igt@kms_joiner@basic-big-joiner.html
* igt@kms_joiner@basic-force-big-joiner:
- shard-tglu: NOTRUN -> [SKIP][308] ([i915#15459])
[308]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-tglu-7/igt@kms_joiner@basic-force-big-joiner.html
* igt@kms_joiner@basic-force-ultra-joiner:
- shard-tglu-1: NOTRUN -> [SKIP][309] ([i915#15458])
[309]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-tglu-1/igt@kms_joiner@basic-force-ultra-joiner.html
* igt@kms_joiner@basic-max-non-joiner:
- shard-tglu: NOTRUN -> [SKIP][310] ([i915#13688])
[310]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-tglu-7/igt@kms_joiner@basic-max-non-joiner.html
- shard-rkl: NOTRUN -> [SKIP][311] ([i915#13688])
[311]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-7/igt@kms_joiner@basic-max-non-joiner.html
* igt@kms_joiner@basic-ultra-joiner:
- shard-tglu: NOTRUN -> [SKIP][312] ([i915#15458])
[312]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-tglu-4/igt@kms_joiner@basic-ultra-joiner.html
* igt@kms_joiner@invalid-modeset-force-big-joiner:
- shard-rkl: NOTRUN -> [SKIP][313] ([i915#15459])
[313]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-8/igt@kms_joiner@invalid-modeset-force-big-joiner.html
* igt@kms_joiner@invalid-modeset-ultra-joiner:
- shard-rkl: NOTRUN -> [SKIP][314] ([i915#15458])
[314]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-5/igt@kms_joiner@invalid-modeset-ultra-joiner.html
* igt@kms_panel_fitting@atomic-fastset:
- shard-rkl: NOTRUN -> [SKIP][315] ([i915#6301])
[315]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-3/igt@kms_panel_fitting@atomic-fastset.html
* igt@kms_panel_fitting@legacy:
- shard-dg2: NOTRUN -> [SKIP][316] ([i915#6301])
[316]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg2-1/igt@kms_panel_fitting@legacy.html
- shard-dg1: NOTRUN -> [SKIP][317] ([i915#6301])
[317]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg1-18/igt@kms_panel_fitting@legacy.html
* igt@kms_pipe_crc_basic@suspend-read-crc:
- shard-glk: NOTRUN -> [INCOMPLETE][318] ([i915#12756] / [i915#13356] / [i915#13409] / [i915#13476] / [i915#16789])
[318]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-glk4/igt@kms_pipe_crc_basic@suspend-read-crc.html
* igt@kms_pipe_crc_basic@suspend-read-crc@pipe-c-hdmi-a-1:
- shard-glk: NOTRUN -> [INCOMPLETE][319] ([i915#12756] / [i915#13356] / [i915#13409] / [i915#16789])
[319]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-glk4/igt@kms_pipe_crc_basic@suspend-read-crc@pipe-c-hdmi-a-1.html
* igt@kms_pipe_stress@stress-xrgb8888-4tiled:
- shard-tglu: NOTRUN -> [SKIP][320] ([i915#14712])
[320]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-tglu-10/igt@kms_pipe_stress@stress-xrgb8888-4tiled.html
* igt@kms_pipe_stress@stress-xrgb8888-untiled:
- shard-glk11: NOTRUN -> [DMESG-WARN][321] ([i915#118])
[321]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-glk11/igt@kms_pipe_stress@stress-xrgb8888-untiled.html
* igt@kms_plane@pixel-format-4-tiled-dg2-mc-ccs-modifier-source-clamping:
- shard-mtlp: NOTRUN -> [SKIP][322] ([i915#15709])
[322]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-mtlp-7/igt@kms_plane@pixel-format-4-tiled-dg2-mc-ccs-modifier-source-clamping.html
* igt@kms_plane@pixel-format-4-tiled-mtl-rc-ccs-cc-modifier:
- shard-tglu-1: NOTRUN -> [SKIP][323] ([i915#15709]) +2 other tests skip
[323]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-tglu-1/igt@kms_plane@pixel-format-4-tiled-mtl-rc-ccs-cc-modifier.html
* igt@kms_plane@pixel-format-x-tiled-modifier@pipe-a-plane-7:
- shard-tglu: NOTRUN -> [SKIP][324] ([i915#16386]) +3 other tests skip
[324]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-tglu-10/igt@kms_plane@pixel-format-x-tiled-modifier@pipe-a-plane-7.html
* igt@kms_plane@pixel-format-y-tiled-gen12-mc-ccs-modifier:
- shard-dg2: NOTRUN -> [SKIP][325] ([i915#15709])
[325]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg2-8/igt@kms_plane@pixel-format-y-tiled-gen12-mc-ccs-modifier.html
- shard-dg1: NOTRUN -> [SKIP][326] ([i915#15709]) +2 other tests skip
[326]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg1-19/igt@kms_plane@pixel-format-y-tiled-gen12-mc-ccs-modifier.html
* igt@kms_plane@pixel-format-yf-tiled-ccs-modifier:
- shard-tglu: NOTRUN -> [SKIP][327] ([i915#15709]) +3 other tests skip
[327]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-tglu-8/igt@kms_plane@pixel-format-yf-tiled-ccs-modifier.html
* igt@kms_plane@pixel-format-yf-tiled-modifier:
- shard-rkl: NOTRUN -> [SKIP][328] ([i915#15709]) +3 other tests skip
[328]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-7/igt@kms_plane@pixel-format-yf-tiled-modifier.html
* igt@kms_plane@planar-pixel-format-settings@nv12-tile4-src-y:
- shard-rkl: NOTRUN -> [SKIP][329] ([i915#16112])
[329]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-5/igt@kms_plane@planar-pixel-format-settings@nv12-tile4-src-y.html
* igt@kms_plane@plane-panning-bottom-right-suspend:
- shard-glk: NOTRUN -> [INCOMPLETE][330] ([i915#13026] / [i915#13356]) +1 other test incomplete
[330]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-glk3/igt@kms_plane@plane-panning-bottom-right-suspend.html
* igt@kms_plane@plane-panning-bottom-right-suspend@pipe-a:
- shard-rkl: [PASS][331] -> [INCOMPLETE][332] ([i915#14412]) +1 other test incomplete
[331]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9114/shard-rkl-5/igt@kms_plane@plane-panning-bottom-right-suspend@pipe-a.html
[332]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-6/igt@kms_plane@plane-panning-bottom-right-suspend@pipe-a.html
* igt@kms_plane_lowres@tiling-yf:
- shard-dg2: NOTRUN -> [SKIP][333] ([i915#3555] / [i915#8821])
[333]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg2-4/igt@kms_plane_lowres@tiling-yf.html
* igt@kms_plane_multiple@2x-tiling-4:
- shard-tglu-1: NOTRUN -> [SKIP][334] ([i915#13958])
[334]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-tglu-1/igt@kms_plane_multiple@2x-tiling-4.html
* igt@kms_plane_multiple@2x-tiling-none:
- shard-rkl: NOTRUN -> [SKIP][335] ([i915#13958])
[335]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-4/igt@kms_plane_multiple@2x-tiling-none.html
* igt@kms_plane_multiple@2x-tiling-y:
- shard-dg1: NOTRUN -> [SKIP][336] ([i915#13958])
[336]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg1-18/igt@kms_plane_multiple@2x-tiling-y.html
* igt@kms_plane_multiple@2x-tiling-yf:
- shard-tglu: NOTRUN -> [SKIP][337] ([i915#13958]) +1 other test skip
[337]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-tglu-9/igt@kms_plane_multiple@2x-tiling-yf.html
* igt@kms_plane_multiple@tiling-4:
- shard-rkl: NOTRUN -> [SKIP][338] ([i915#14259])
[338]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-7/igt@kms_plane_multiple@tiling-4.html
* igt@kms_plane_multiple@tiling-yf:
- shard-tglu-1: NOTRUN -> [SKIP][339] ([i915#14259])
[339]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-tglu-1/igt@kms_plane_multiple@tiling-yf.html
* igt@kms_plane_scaling@intel-max-src-size:
- shard-dg1: NOTRUN -> [SKIP][340] ([i915#6953])
[340]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg1-16/igt@kms_plane_scaling@intel-max-src-size.html
* igt@kms_plane_scaling@plane-downscale-factor-0-5-with-rotation@pipe-c:
- shard-tglu: NOTRUN -> [SKIP][341] ([i915#15329]) +4 other tests skip
[341]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-tglu-9/igt@kms_plane_scaling@plane-downscale-factor-0-5-with-rotation@pipe-c.html
* igt@kms_plane_scaling@plane-downscale-factor-0-75-with-rotation@pipe-a:
- shard-tglu-1: NOTRUN -> [SKIP][342] ([i915#15329]) +4 other tests skip
[342]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-tglu-1/igt@kms_plane_scaling@plane-downscale-factor-0-75-with-rotation@pipe-a.html
* igt@kms_plane_scaling@plane-scaler-unity-scaling-with-rotation@pipe-a:
- shard-glk11: NOTRUN -> [SKIP][343] +121 other tests skip
[343]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-glk11/igt@kms_plane_scaling@plane-scaler-unity-scaling-with-rotation@pipe-a.html
* igt@kms_plane_scaling@plane-scaler-unity-scaling-with-rotation@pipe-b:
- shard-dg1: NOTRUN -> [SKIP][344] ([i915#15329]) +4 other tests skip
[344]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg1-16/igt@kms_plane_scaling@plane-scaler-unity-scaling-with-rotation@pipe-b.html
* igt@kms_plane_scaling@plane-upscale-factor-0-25-with-rotation@pipe-c:
- shard-rkl: NOTRUN -> [SKIP][345] ([i915#15329]) +3 other tests skip
[345]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-2/igt@kms_plane_scaling@plane-upscale-factor-0-25-with-rotation@pipe-c.html
* igt@kms_pm_backlight@brightness-with-dpms:
- shard-tglu-1: NOTRUN -> [SKIP][346] ([i915#12343])
[346]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-tglu-1/igt@kms_pm_backlight@brightness-with-dpms.html
* igt@kms_pm_backlight@fade:
- shard-dg1: NOTRUN -> [SKIP][347] ([i915#12343] / [i915#5354])
[347]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg1-18/igt@kms_pm_backlight@fade.html
* igt@kms_pm_dc@dc5-dpms-suspend-resume:
- shard-glk: NOTRUN -> [INCOMPLETE][348] ([i915#13356] / [i915#16938])
[348]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-glk8/igt@kms_pm_dc@dc5-dpms-suspend-resume.html
- shard-rkl: [PASS][349] -> [INCOMPLETE][350] ([i915#16943])
[349]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9114/shard-rkl-3/igt@kms_pm_dc@dc5-dpms-suspend-resume.html
[350]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-3/igt@kms_pm_dc@dc5-dpms-suspend-resume.html
* igt@kms_pm_dc@dc5-psr:
- shard-rkl: NOTRUN -> [SKIP][351] ([i915#14544] / [i915#15948])
[351]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-6/igt@kms_pm_dc@dc5-psr.html
* igt@kms_pm_dc@dc5-psr-suspend-resume:
- shard-dg1: NOTRUN -> [SKIP][352] ([i915#16914])
[352]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg1-19/igt@kms_pm_dc@dc5-psr-suspend-resume.html
* igt@kms_pm_dc@dc6-dpms:
- shard-dg2: NOTRUN -> [SKIP][353] ([i915#15751])
[353]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg2-1/igt@kms_pm_dc@dc6-dpms.html
- shard-dg1: NOTRUN -> [SKIP][354] ([i915#3361])
[354]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg1-18/igt@kms_pm_dc@dc6-dpms.html
* igt@kms_pm_dc@dc6-psr:
- shard-dg1: NOTRUN -> [SKIP][355] ([i915#15948])
[355]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg1-14/igt@kms_pm_dc@dc6-psr.html
* igt@kms_pm_dc@dc9-dpms:
- shard-rkl: NOTRUN -> [SKIP][356] ([i915#15739])
[356]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-1/igt@kms_pm_dc@dc9-dpms.html
* igt@kms_pm_lpsp@kms-lpsp:
- shard-tglu-1: NOTRUN -> [SKIP][357] ([i915#3828])
[357]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-tglu-1/igt@kms_pm_lpsp@kms-lpsp.html
* igt@kms_pm_lpsp@screens-disabled:
- shard-tglu: NOTRUN -> [SKIP][358] ([i915#8430])
[358]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-tglu-10/igt@kms_pm_lpsp@screens-disabled.html
* igt@kms_pm_rpm@dpms-lpsp:
- shard-dg2: NOTRUN -> [SKIP][359] ([i915#15073])
[359]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg2-8/igt@kms_pm_rpm@dpms-lpsp.html
- shard-dg1: NOTRUN -> [SKIP][360] ([i915#15073])
[360]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg1-17/igt@kms_pm_rpm@dpms-lpsp.html
* igt@kms_pm_rpm@modeset-non-lpsp-stress:
- shard-dg2: [PASS][361] -> [SKIP][362] ([i915#15073]) +1 other test skip
[361]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9114/shard-dg2-3/igt@kms_pm_rpm@modeset-non-lpsp-stress.html
[362]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg2-4/igt@kms_pm_rpm@modeset-non-lpsp-stress.html
* igt@kms_pm_rpm@system-suspend-idle:
- shard-rkl: [PASS][363] -> [INCOMPLETE][364] ([i915#14419])
[363]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9114/shard-rkl-8/igt@kms_pm_rpm@system-suspend-idle.html
[364]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-3/igt@kms_pm_rpm@system-suspend-idle.html
* igt@kms_prime@basic-crc-hybrid:
- shard-tglu-1: NOTRUN -> [SKIP][365] ([i915#6524])
[365]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-tglu-1/igt@kms_prime@basic-crc-hybrid.html
* igt@kms_prime@basic-modeset-hybrid:
- shard-rkl: NOTRUN -> [SKIP][366] ([i915#6524])
[366]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-4/igt@kms_prime@basic-modeset-hybrid.html
* igt@kms_prime@d3hot:
- shard-tglu: NOTRUN -> [SKIP][367] ([i915#6524])
[367]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-tglu-5/igt@kms_prime@d3hot.html
* igt@kms_psr2_sf@fbc-pr-overlay-plane-update-sf-dmg-area:
- shard-glk: NOTRUN -> [SKIP][368] ([i915#11520]) +10 other tests skip
[368]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-glk9/igt@kms_psr2_sf@fbc-pr-overlay-plane-update-sf-dmg-area.html
* igt@kms_psr2_sf@fbc-psr2-cursor-plane-move-continuous-exceed-fully-sf:
- shard-glk10: NOTRUN -> [SKIP][369] ([i915#11520])
[369]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-glk10/igt@kms_psr2_sf@fbc-psr2-cursor-plane-move-continuous-exceed-fully-sf.html
* igt@kms_psr2_sf@fbc-psr2-overlay-plane-move-continuous-sf@pipe-a-edp-1:
- shard-mtlp: NOTRUN -> [SKIP][370] ([i915#9808])
[370]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-mtlp-7/igt@kms_psr2_sf@fbc-psr2-overlay-plane-move-continuous-sf@pipe-a-edp-1.html
* igt@kms_psr2_sf@fbc-psr2-overlay-plane-move-continuous-sf@pipe-b-edp-1:
- shard-mtlp: NOTRUN -> [SKIP][371] ([i915#12316]) +1 other test skip
[371]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-mtlp-7/igt@kms_psr2_sf@fbc-psr2-overlay-plane-move-continuous-sf@pipe-b-edp-1.html
* igt@kms_psr2_sf@fbc-psr2-overlay-primary-update-sf-dmg-area:
- shard-glk11: NOTRUN -> [SKIP][372] ([i915#11520]) +1 other test skip
[372]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-glk11/igt@kms_psr2_sf@fbc-psr2-overlay-primary-update-sf-dmg-area.html
- shard-dg2: NOTRUN -> [SKIP][373] ([i915#11520]) +1 other test skip
[373]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg2-8/igt@kms_psr2_sf@fbc-psr2-overlay-primary-update-sf-dmg-area.html
* igt@kms_psr2_sf@pr-cursor-plane-move-continuous-exceed-fully-sf:
- shard-snb: NOTRUN -> [SKIP][374] ([i915#11520]) +8 other tests skip
[374]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-snb4/igt@kms_psr2_sf@pr-cursor-plane-move-continuous-exceed-fully-sf.html
* igt@kms_psr2_sf@pr-cursor-plane-move-continuous-sf:
- shard-tglu-1: NOTRUN -> [SKIP][375] ([i915#11520]) +5 other tests skip
[375]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-tglu-1/igt@kms_psr2_sf@pr-cursor-plane-move-continuous-sf.html
* igt@kms_psr2_sf@pr-overlay-plane-update-continuous-sf:
- shard-rkl: NOTRUN -> [SKIP][376] ([i915#11520]) +2 other tests skip
[376]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-3/igt@kms_psr2_sf@pr-overlay-plane-update-continuous-sf.html
* igt@kms_psr2_sf@psr2-overlay-plane-move-continuous-exceed-fully-sf:
- shard-tglu: NOTRUN -> [SKIP][377] ([i915#11520]) +7 other tests skip
[377]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-tglu-7/igt@kms_psr2_sf@psr2-overlay-plane-move-continuous-exceed-fully-sf.html
* igt@kms_psr2_sf@psr2-overlay-plane-move-continuous-exceed-sf:
- shard-rkl: NOTRUN -> [SKIP][378] ([i915#11520] / [i915#14544]) +1 other test skip
[378]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-6/igt@kms_psr2_sf@psr2-overlay-plane-move-continuous-exceed-sf.html
* igt@kms_psr2_sf@psr2-overlay-plane-move-continuous-sf:
- shard-dg1: NOTRUN -> [SKIP][379] ([i915#11520]) +6 other tests skip
[379]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg1-18/igt@kms_psr2_sf@psr2-overlay-plane-move-continuous-sf.html
* igt@kms_psr2_su@frontbuffer-xrgb8888:
- shard-rkl: NOTRUN -> [SKIP][380] ([i915#9683]) +1 other test skip
[380]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-8/igt@kms_psr2_su@frontbuffer-xrgb8888.html
* igt@kms_psr2_su@page_flip-xrgb8888:
- shard-tglu: NOTRUN -> [SKIP][381] ([i915#9683]) +1 other test skip
[381]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-tglu-4/igt@kms_psr2_su@page_flip-xrgb8888.html
* igt@kms_psr@fbc-pr-sprite-render:
- shard-dg1: NOTRUN -> [SKIP][382] ([i915#1072] / [i915#9732]) +24 other tests skip
[382]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg1-15/igt@kms_psr@fbc-pr-sprite-render.html
* igt@kms_psr@fbc-psr-cursor-plane-move@edp-1:
- shard-mtlp: NOTRUN -> [SKIP][383] ([i915#9688]) +3 other tests skip
[383]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-mtlp-6/igt@kms_psr@fbc-psr-cursor-plane-move@edp-1.html
* igt@kms_psr@fbc-psr2-primary-blt:
- shard-rkl: NOTRUN -> [SKIP][384] ([i915#1072] / [i915#9732]) +22 other tests skip
[384]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-8/igt@kms_psr@fbc-psr2-primary-blt.html
* igt@kms_psr@pr-primary-page-flip:
- shard-tglu: NOTRUN -> [SKIP][385] ([i915#9732]) +19 other tests skip
[385]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-tglu-4/igt@kms_psr@pr-primary-page-flip.html
* igt@kms_psr@psr-cursor-plane-onoff:
- shard-tglu-1: NOTRUN -> [SKIP][386] ([i915#9732]) +15 other tests skip
[386]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-tglu-1/igt@kms_psr@psr-cursor-plane-onoff.html
* igt@kms_psr@psr-cursor-render:
- shard-dg2: NOTRUN -> [SKIP][387] ([i915#1072] / [i915#9732]) +7 other tests skip
[387]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg2-4/igt@kms_psr@psr-cursor-render.html
* igt@kms_psr@psr-sprite-blt:
- shard-snb: NOTRUN -> [SKIP][388] +512 other tests skip
[388]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-snb4/igt@kms_psr@psr-sprite-blt.html
* igt@kms_psr@psr2-sprite-render:
- shard-rkl: NOTRUN -> [SKIP][389] ([i915#1072] / [i915#14544] / [i915#9732]) +2 other tests skip
[389]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-6/igt@kms_psr@psr2-sprite-render.html
* igt@kms_psr_stress_test@flip-primary-invalidate-overlay:
- shard-rkl: NOTRUN -> [SKIP][390] ([i915#15949])
[390]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-5/igt@kms_psr_stress_test@flip-primary-invalidate-overlay.html
* igt@kms_psr_stress_test@invalidate-primary-flip-overlay:
- shard-dg1: NOTRUN -> [SKIP][391] ([i915#15949])
[391]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg1-12/igt@kms_psr_stress_test@invalidate-primary-flip-overlay.html
* igt@kms_rotation_crc@multiplane-rotation:
- shard-glk: NOTRUN -> [INCOMPLETE][392] ([i915#15492] / [i915#16184])
[392]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-glk2/igt@kms_rotation_crc@multiplane-rotation.html
* igt@kms_rotation_crc@primary-4-tiled-reflect-x-180:
- shard-rkl: NOTRUN -> [SKIP][393] ([i915#5289])
[393]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-2/igt@kms_rotation_crc@primary-4-tiled-reflect-x-180.html
- shard-tglu: NOTRUN -> [SKIP][394] ([i915#5289]) +1 other test skip
[394]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-tglu-7/igt@kms_rotation_crc@primary-4-tiled-reflect-x-180.html
* igt@kms_setmode@invalid-clone-single-crtc:
- shard-dg2: NOTRUN -> [SKIP][395] ([i915#3555])
[395]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg2-6/igt@kms_setmode@invalid-clone-single-crtc.html
- shard-dg1: NOTRUN -> [SKIP][396] ([i915#3555]) +2 other tests skip
[396]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg1-15/igt@kms_setmode@invalid-clone-single-crtc.html
* igt@kms_tiled_display@basic-test-pattern:
- shard-tglu-1: NOTRUN -> [SKIP][397] ([i915#8623])
[397]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-tglu-1/igt@kms_tiled_display@basic-test-pattern.html
- shard-dg1: NOTRUN -> [SKIP][398] ([i915#8623])
[398]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg1-14/igt@kms_tiled_display@basic-test-pattern.html
- shard-dg2: NOTRUN -> [SKIP][399] ([i915#8623])
[399]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg2-3/igt@kms_tiled_display@basic-test-pattern.html
* igt@kms_tiled_display@basic-test-pattern-with-chamelium:
- shard-tglu: NOTRUN -> [SKIP][400] ([i915#8623])
[400]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-tglu-5/igt@kms_tiled_display@basic-test-pattern-with-chamelium.html
* igt@kms_vblank@ts-continuation-dpms-suspend:
- shard-glk11: NOTRUN -> [INCOMPLETE][401] ([i915#12276] / [i915#13356]) +1 other test incomplete
[401]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-glk11/igt@kms_vblank@ts-continuation-dpms-suspend.html
* igt@kms_vblank@ts-continuation-dpms-suspend@pipe-a-hdmi-a-2:
- shard-rkl: [PASS][402] -> [INCOMPLETE][403] ([i915#12276])
[402]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9114/shard-rkl-3/igt@kms_vblank@ts-continuation-dpms-suspend@pipe-a-hdmi-a-2.html
[403]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-4/igt@kms_vblank@ts-continuation-dpms-suspend@pipe-a-hdmi-a-2.html
* igt@kms_vrr@lobf:
- shard-dg1: NOTRUN -> [SKIP][404] ([i915#11920])
[404]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg1-15/igt@kms_vrr@lobf.html
* igt@kms_vrr@negative-basic:
- shard-tglu: NOTRUN -> [SKIP][405] ([i915#3555] / [i915#9906])
[405]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-tglu-7/igt@kms_vrr@negative-basic.html
* igt@kms_vrr@seamless-rr-switch-drrs:
- shard-tglu-1: NOTRUN -> [SKIP][406] ([i915#9906])
[406]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-tglu-1/igt@kms_vrr@seamless-rr-switch-drrs.html
* igt@kms_vrr@seamless-rr-switch-virtual:
- shard-rkl: NOTRUN -> [SKIP][407] ([i915#9906])
[407]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-4/igt@kms_vrr@seamless-rr-switch-virtual.html
* igt@kms_vrr@seamless-rr-switch-vrr:
- shard-tglu: NOTRUN -> [SKIP][408] ([i915#9906])
[408]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-tglu-10/igt@kms_vrr@seamless-rr-switch-vrr.html
* igt@perf@mi-rpc:
- shard-rkl: NOTRUN -> [SKIP][409] ([i915#2434])
[409]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-5/igt@perf@mi-rpc.html
* igt@perf@unprivileged-single-ctx-counters:
- shard-rkl: NOTRUN -> [SKIP][410] ([i915#2433])
[410]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-2/igt@perf@unprivileged-single-ctx-counters.html
* igt@perf_pmu@busy-double-start:
- shard-mtlp: [PASS][411] -> [FAIL][412] ([i915#4349]) +2 other tests fail
[411]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9114/shard-mtlp-1/igt@perf_pmu@busy-double-start.html
[412]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-mtlp-2/igt@perf_pmu@busy-double-start.html
* igt@perf_pmu@busy-double-start@vecs1:
- shard-dg2: [PASS][413] -> [FAIL][414] ([i915#4349]) +4 other tests fail
[413]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9114/shard-dg2-6/igt@perf_pmu@busy-double-start@vecs1.html
[414]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg2-4/igt@perf_pmu@busy-double-start@vecs1.html
* igt@perf_pmu@rc6-all-gts:
- shard-dg1: NOTRUN -> [SKIP][415] ([i915#8516])
[415]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg1-18/igt@perf_pmu@rc6-all-gts.html
* igt@perf_pmu@rc6@other-idle-gt0:
- shard-dg2: NOTRUN -> [SKIP][416] ([i915#8516])
[416]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg2-7/igt@perf_pmu@rc6@other-idle-gt0.html
- shard-tglu: NOTRUN -> [SKIP][417] ([i915#8516])
[417]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-tglu-5/igt@perf_pmu@rc6@other-idle-gt0.html
* igt@prime_mmap@test_aperture_limit@test_aperture_limit-smem:
- shard-mtlp: NOTRUN -> [SKIP][418] ([i915#14121]) +1 other test skip
[418]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-mtlp-7/igt@prime_mmap@test_aperture_limit@test_aperture_limit-smem.html
* igt@prime_udl@share-import:
- shard-dg1: NOTRUN -> [SKIP][419] ([i915#16420]) +1 other test skip
[419]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg1-14/igt@prime_udl@share-import.html
* igt@prime_vgem@basic-gtt:
- shard-mtlp: NOTRUN -> [SKIP][420] ([i915#3708] / [i915#4077])
[420]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-mtlp-5/igt@prime_vgem@basic-gtt.html
- shard-dg2: NOTRUN -> [SKIP][421] ([i915#3708] / [i915#4077])
[421]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg2-5/igt@prime_vgem@basic-gtt.html
- shard-dg1: NOTRUN -> [SKIP][422] ([i915#3708] / [i915#4077])
[422]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg1-14/igt@prime_vgem@basic-gtt.html
* igt@prime_vgem@fence-flip-hang:
- shard-rkl: NOTRUN -> [SKIP][423] ([i915#3708])
[423]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-2/igt@prime_vgem@fence-flip-hang.html
#### Possible fixes ####
* igt@gem_ccs@suspend-resume@linear-compressed-compfmt0-smem-lmem0:
- shard-dg2: [INCOMPLETE][424] ([i915#13356] / [i915#16348]) -> [PASS][425]
[424]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9114/shard-dg2-5/igt@gem_ccs@suspend-resume@linear-compressed-compfmt0-smem-lmem0.html
[425]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg2-1/igt@gem_ccs@suspend-resume@linear-compressed-compfmt0-smem-lmem0.html
* igt@gem_exec_big@single:
- shard-mtlp: [FAIL][426] ([i915#15871]) -> [PASS][427]
[426]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9114/shard-mtlp-7/igt@gem_exec_big@single.html
[427]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-mtlp-8/igt@gem_exec_big@single.html
* igt@gem_exec_suspend@basic-s3-devices:
- shard-mtlp: [ABORT][428] ([i915#17175]) -> [PASS][429] +1 other test pass
[428]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9114/shard-mtlp-5/igt@gem_exec_suspend@basic-s3-devices.html
[429]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-mtlp-8/igt@gem_exec_suspend@basic-s3-devices.html
* igt@gem_exec_suspend@basic-s3@smem:
- shard-snb: [ABORT][430] ([i915#15840]) -> [PASS][431] +1 other test pass
[430]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9114/shard-snb6/igt@gem_exec_suspend@basic-s3@smem.html
[431]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-snb1/igt@gem_exec_suspend@basic-s3@smem.html
- shard-mtlp: [FAIL][432] ([i915#17160]) -> [PASS][433] +1 other test pass
[432]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9114/shard-mtlp-6/igt@gem_exec_suspend@basic-s3@smem.html
[433]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-mtlp-7/igt@gem_exec_suspend@basic-s3@smem.html
* igt@gem_pxp@protected-raw-src-copy-not-readible:
- shard-rkl: [SKIP][434] ([i915#4270]) -> [PASS][435] +1 other test pass
[434]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9114/shard-rkl-8/igt@gem_pxp@protected-raw-src-copy-not-readible.html
[435]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-2/igt@gem_pxp@protected-raw-src-copy-not-readible.html
* igt@gen9_exec_parse@allowed-single:
- shard-glk: [ABORT][436] ([i915#5566]) -> [PASS][437]
[436]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9114/shard-glk2/igt@gen9_exec_parse@allowed-single.html
[437]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-glk2/igt@gen9_exec_parse@allowed-single.html
* igt@i915_module_load@resize-bar:
- shard-dg2: [DMESG-WARN][438] ([i915#14545]) -> [PASS][439]
[438]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9114/shard-dg2-7/igt@i915_module_load@resize-bar.html
[439]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg2-7/igt@i915_module_load@resize-bar.html
* igt@i915_pm_rc6_residency@rc6-accuracy:
- shard-dg2: [FAIL][440] ([i915#12964]) -> [PASS][441] +1 other test pass
[440]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9114/shard-dg2-3/igt@i915_pm_rc6_residency@rc6-accuracy.html
[441]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg2-7/igt@i915_pm_rc6_residency@rc6-accuracy.html
* igt@i915_selftest@perf:
- shard-tglu: [ABORT][442] ([i915#17018]) -> [PASS][443] +1 other test pass
[442]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9114/shard-tglu-3/igt@i915_selftest@perf.html
[443]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-tglu-10/igt@i915_selftest@perf.html
* igt@i915_suspend@fence-restore-untiled:
- shard-rkl: [INCOMPLETE][444] ([i915#4817]) -> [PASS][445]
[444]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9114/shard-rkl-7/igt@i915_suspend@fence-restore-untiled.html
[445]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-5/igt@i915_suspend@fence-restore-untiled.html
* igt@kms_async_flips@async-flip-suspend-resume@pipe-d-edp-1:
- shard-mtlp: [FAIL][446] ([i915#17150]) -> [PASS][447] +1 other test pass
[446]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9114/shard-mtlp-2/igt@kms_async_flips@async-flip-suspend-resume@pipe-d-edp-1.html
[447]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-mtlp-3/igt@kms_async_flips@async-flip-suspend-resume@pipe-d-edp-1.html
* igt@kms_big_fb@4-tiled-64bpp-rotate-180:
- shard-mtlp: [FAIL][448] ([i915#15733] / [i915#5138]) -> [PASS][449]
[448]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9114/shard-mtlp-1/igt@kms_big_fb@4-tiled-64bpp-rotate-180.html
[449]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-mtlp-6/igt@kms_big_fb@4-tiled-64bpp-rotate-180.html
* igt@kms_ccs@crc-primary-suspend-yf-tiled-ccs@pipe-a-hdmi-a-1:
- shard-glk: [INCOMPLETE][450] ([i915#13356] / [i915#15582]) -> [PASS][451]
[450]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9114/shard-glk8/igt@kms_ccs@crc-primary-suspend-yf-tiled-ccs@pipe-a-hdmi-a-1.html
[451]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-glk4/igt@kms_ccs@crc-primary-suspend-yf-tiled-ccs@pipe-a-hdmi-a-1.html
* igt@kms_cursor_crc@cursor-random-128x42:
- shard-rkl: [FAIL][452] ([i915#13566]) -> [PASS][453] +3 other tests pass
[452]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9114/shard-rkl-7/igt@kms_cursor_crc@cursor-random-128x42.html
[453]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-4/igt@kms_cursor_crc@cursor-random-128x42.html
* igt@kms_frontbuffer_tracking@fbchdr-1p-primscrn-pri-shrfb-draw-render:
- shard-glk: [SKIP][454] -> [PASS][455] +12 other tests pass
[454]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9114/shard-glk2/igt@kms_frontbuffer_tracking@fbchdr-1p-primscrn-pri-shrfb-draw-render.html
[455]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-glk8/igt@kms_frontbuffer_tracking@fbchdr-1p-primscrn-pri-shrfb-draw-render.html
* igt@kms_frontbuffer_tracking@hdr-1p-primscrn-cur-indfb-draw-blt:
- shard-rkl: [SKIP][456] ([i915#15989]) -> [PASS][457] +12 other tests pass
[456]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9114/shard-rkl-7/igt@kms_frontbuffer_tracking@hdr-1p-primscrn-cur-indfb-draw-blt.html
[457]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-6/igt@kms_frontbuffer_tracking@hdr-1p-primscrn-cur-indfb-draw-blt.html
* igt@kms_hdmi_audio_bw@audio-bw-hblank160:
- shard-tglu: [FAIL][458] ([i915#17104]) -> [PASS][459]
[458]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9114/shard-tglu-8/igt@kms_hdmi_audio_bw@audio-bw-hblank160.html
[459]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-tglu-5/igt@kms_hdmi_audio_bw@audio-bw-hblank160.html
* igt@kms_pipe_crc_basic@suspend-read-crc:
- shard-mtlp: [INCOMPLETE][460] ([i915#12756] / [i915#13476]) -> [PASS][461]
[460]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9114/shard-mtlp-4/igt@kms_pipe_crc_basic@suspend-read-crc.html
[461]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-mtlp-8/igt@kms_pipe_crc_basic@suspend-read-crc.html
* igt@kms_pipe_crc_basic@suspend-read-crc@pipe-a-edp-1:
- shard-mtlp: [INCOMPLETE][462] -> [PASS][463]
[462]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9114/shard-mtlp-4/igt@kms_pipe_crc_basic@suspend-read-crc@pipe-a-edp-1.html
[463]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-mtlp-8/igt@kms_pipe_crc_basic@suspend-read-crc@pipe-a-edp-1.html
* igt@kms_pm_rpm@dpms-mode-unset-non-lpsp:
- shard-dg2: [SKIP][464] ([i915#15073]) -> [PASS][465] +1 other test pass
[464]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9114/shard-dg2-4/igt@kms_pm_rpm@dpms-mode-unset-non-lpsp.html
[465]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg2-7/igt@kms_pm_rpm@dpms-mode-unset-non-lpsp.html
* igt@kms_pm_rpm@modeset-lpsp-stress:
- shard-dg1: [SKIP][466] ([i915#15073]) -> [PASS][467] +1 other test pass
[466]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9114/shard-dg1-16/igt@kms_pm_rpm@modeset-lpsp-stress.html
[467]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg1-14/igt@kms_pm_rpm@modeset-lpsp-stress.html
* igt@perf_pmu@busy-idle-check-all@vecs0:
- shard-mtlp: [FAIL][468] ([i915#4349]) -> [PASS][469] +3 other tests pass
[468]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9114/shard-mtlp-8/igt@perf_pmu@busy-idle-check-all@vecs0.html
[469]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-mtlp-2/igt@perf_pmu@busy-idle-check-all@vecs0.html
* igt@perf_pmu@gt-awake:
- shard-dg1: [FAIL][470] ([i915#17054]) -> [PASS][471]
[470]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9114/shard-dg1-16/igt@perf_pmu@gt-awake.html
[471]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg1-19/igt@perf_pmu@gt-awake.html
* igt@perf_pmu@render-node-busy-idle@vcs1:
- shard-dg2: [FAIL][472] ([i915#4349]) -> [PASS][473] +5 other tests pass
[472]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9114/shard-dg2-3/igt@perf_pmu@render-node-busy-idle@vcs1.html
[473]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-dg2-6/igt@perf_pmu@render-node-busy-idle@vcs1.html
#### Warnings ####
* igt@gem_ccs@ctrl-surf-copy-new-ctx:
- shard-rkl: [SKIP][474] ([i915#9323]) -> [SKIP][475] ([i915#14544] / [i915#9323]) +1 other test skip
[474]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9114/shard-rkl-8/igt@gem_ccs@ctrl-surf-copy-new-ctx.html
[475]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-6/igt@gem_ccs@ctrl-surf-copy-new-ctx.html
* igt@gem_close_race@multigpu-basic-process:
- shard-rkl: [SKIP][476] ([i915#7697]) -> [SKIP][477] ([i915#14544] / [i915#7697])
[476]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9114/shard-rkl-8/igt@gem_close_race@multigpu-basic-process.html
[477]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-6/igt@gem_close_race@multigpu-basic-process.html
* igt@gem_ctx_sseu@invalid-args:
- shard-rkl: [SKIP][478] ([i915#280]) -> [SKIP][479] ([i915#14544] / [i915#280])
[478]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9114/shard-rkl-8/igt@gem_ctx_sseu@invalid-args.html
[479]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-6/igt@gem_ctx_sseu@invalid-args.html
* igt@gem_exec_balancer@parallel-ordering:
- shard-rkl: [SKIP][480] ([i915#4525]) -> [SKIP][481] ([i915#14544] / [i915#4525])
[480]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9114/shard-rkl-4/igt@gem_exec_balancer@parallel-ordering.html
[481]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-6/igt@gem_exec_balancer@parallel-ordering.html
* igt@gem_exec_balancer@parallel-out-fence:
- shard-rkl: [SKIP][482] ([i915#14544] / [i915#4525]) -> [SKIP][483] ([i915#4525])
[482]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9114/shard-rkl-6/igt@gem_exec_balancer@parallel-out-fence.html
[483]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-8/igt@gem_exec_balancer@parallel-out-fence.html
* igt@gem_exec_reloc@basic-cpu-gtt-noreloc:
- shard-rkl: [SKIP][484] ([i915#3281]) -> [SKIP][485] ([i915#14544] / [i915#3281]) +1 other test skip
[484]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9114/shard-rkl-5/igt@gem_exec_reloc@basic-cpu-gtt-noreloc.html
[485]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-6/igt@gem_exec_reloc@basic-cpu-gtt-noreloc.html
* igt@gem_lmem_evict@dontneed-evict-race:
- shard-rkl: [SKIP][486] ([i915#14544] / [i915#4613] / [i915#7582]) -> [SKIP][487] ([i915#4613] / [i915#7582])
[486]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9114/shard-rkl-6/igt@gem_lmem_evict@dontneed-evict-race.html
[487]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-5/igt@gem_lmem_evict@dontneed-evict-race.html
* igt@gem_lmem_swapping@verify-random:
- shard-rkl: [SKIP][488] ([i915#4613]) -> [SKIP][489] ([i915#14544] / [i915#4613]) +1 other test skip
[488]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9114/shard-rkl-2/igt@gem_lmem_swapping@verify-random.html
[489]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-6/igt@gem_lmem_swapping@verify-random.html
* igt@gem_madvise@dontneed-before-pwrite:
- shard-rkl: [SKIP][490] ([i915#3282]) -> [SKIP][491] ([i915#14544] / [i915#3282]) +1 other test skip
[490]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9114/shard-rkl-2/igt@gem_madvise@dontneed-before-pwrite.html
[491]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-6/igt@gem_madvise@dontneed-before-pwrite.html
* igt@gem_partial_pwrite_pread@write-snoop:
- shard-rkl: [SKIP][492] ([i915#14544] / [i915#3282]) -> [SKIP][493] ([i915#3282]) +3 other tests skip
[492]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9114/shard-rkl-6/igt@gem_partial_pwrite_pread@write-snoop.html
[493]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-7/igt@gem_partial_pwrite_pread@write-snoop.html
* igt@gem_pxp@hw-rejects-pxp-context:
- shard-rkl: [SKIP][494] ([i915#13717]) -> [SKIP][495] ([i915#13717] / [i915#14544])
[494]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9114/shard-rkl-3/igt@gem_pxp@hw-rejects-pxp-context.html
[495]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-6/igt@gem_pxp@hw-rejects-pxp-context.html
* igt@gem_userptr_blits@coherency-sync:
- shard-rkl: [SKIP][496] ([i915#3297]) -> [SKIP][497] ([i915#14544] / [i915#3297]) +1 other test skip
[496]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9114/shard-rkl-3/igt@gem_userptr_blits@coherency-sync.html
[497]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-6/igt@gem_userptr_blits@coherency-sync.html
* igt@gen9_exec_parse@bb-start-cmd:
- shard-rkl: [SKIP][498] ([i915#14544] / [i915#2527]) -> [SKIP][499] ([i915#2527])
[498]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9114/shard-rkl-6/igt@gen9_exec_parse@bb-start-cmd.html
[499]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-2/igt@gen9_exec_parse@bb-start-cmd.html
* igt@i915_query@query-topology-unsupported:
- shard-rkl: [SKIP][500] ([i915#16079]) -> [SKIP][501] ([i915#14544] / [i915#16079])
[500]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9114/shard-rkl-5/igt@i915_query@query-topology-unsupported.html
[501]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-6/igt@i915_query@query-topology-unsupported.html
* igt@intel_hwmon@hwmon-read:
- shard-rkl: [SKIP][502] ([i915#7707]) -> [SKIP][503] ([i915#14544] / [i915#7707])
[502]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9114/shard-rkl-4/igt@intel_hwmon@hwmon-read.html
[503]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-6/igt@intel_hwmon@hwmon-read.html
* igt@kms_big_fb@4-tiled-64bpp-rotate-270:
- shard-rkl: [SKIP][504] ([i915#5286]) -> [SKIP][505] ([i915#14544] / [i915#5286]) +2 other tests skip
[504]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9114/shard-rkl-3/igt@kms_big_fb@4-tiled-64bpp-rotate-270.html
[505]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-6/igt@kms_big_fb@4-tiled-64bpp-rotate-270.html
* igt@kms_big_fb@4-tiled-8bpp-rotate-270:
- shard-rkl: [SKIP][506] ([i915#14544] / [i915#5286]) -> [SKIP][507] ([i915#5286])
[506]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9114/shard-rkl-6/igt@kms_big_fb@4-tiled-8bpp-rotate-270.html
[507]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-7/igt@kms_big_fb@4-tiled-8bpp-rotate-270.html
* igt@kms_big_fb@linear-32bpp-rotate-90:
- shard-rkl: [SKIP][508] ([i915#14544] / [i915#3638]) -> [SKIP][509] ([i915#3638]) +2 other tests skip
[508]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9114/shard-rkl-6/igt@kms_big_fb@linear-32bpp-rotate-90.html
[509]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-2/igt@kms_big_fb@linear-32bpp-rotate-90.html
* igt@kms_big_fb@linear-8bpp-rotate-270:
- shard-rkl: [SKIP][510] ([i915#3638]) -> [SKIP][511] ([i915#14544] / [i915#3638])
[510]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9114/shard-rkl-7/igt@kms_big_fb@linear-8bpp-rotate-270.html
[511]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-6/igt@kms_big_fb@linear-8bpp-rotate-270.html
* igt@kms_ccs@bad-rotation-90-4-tiled-bmg-ccs:
- shard-rkl: [SKIP][512] ([i915#12313] / [i915#14544]) -> [SKIP][513] ([i915#12313])
[512]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9114/shard-rkl-6/igt@kms_ccs@bad-rotation-90-4-tiled-bmg-ccs.html
[513]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-4/igt@kms_ccs@bad-rotation-90-4-tiled-bmg-ccs.html
* igt@kms_ccs@crc-primary-basic-4-tiled-bmg-ccs:
- shard-rkl: [SKIP][514] ([i915#12313]) -> [SKIP][515] ([i915#12313] / [i915#14544])
[514]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9114/shard-rkl-2/igt@kms_ccs@crc-primary-basic-4-tiled-bmg-ccs.html
[515]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-6/igt@kms_ccs@crc-primary-basic-4-tiled-bmg-ccs.html
* igt@kms_ccs@crc-primary-rotation-180-4-tiled-dg2-rc-ccs@pipe-c-hdmi-a-2:
- shard-rkl: [SKIP][516] ([i915#14098] / [i915#6095]) -> [SKIP][517] ([i915#14098] / [i915#14544] / [i915#6095]) +6 other tests skip
[516]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9114/shard-rkl-7/igt@kms_ccs@crc-primary-rotation-180-4-tiled-dg2-rc-ccs@pipe-c-hdmi-a-2.html
[517]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-6/igt@kms_ccs@crc-primary-rotation-180-4-tiled-dg2-rc-ccs@pipe-c-hdmi-a-2.html
* igt@kms_ccs@crc-primary-rotation-180-4-tiled-mtl-rc-ccs@pipe-b-hdmi-a-2:
- shard-rkl: [SKIP][518] ([i915#6095]) -> [SKIP][519] ([i915#14544] / [i915#6095]) +5 other tests skip
[518]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9114/shard-rkl-4/igt@kms_ccs@crc-primary-rotation-180-4-tiled-mtl-rc-ccs@pipe-b-hdmi-a-2.html
[519]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-6/igt@kms_ccs@crc-primary-rotation-180-4-tiled-mtl-rc-ccs@pipe-b-hdmi-a-2.html
* igt@kms_chamelium_audio@dp-audio-after-suspend:
- shard-rkl: [SKIP][520] ([i915#11151]) -> [SKIP][521] ([i915#11151] / [i915#14544])
[520]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9114/shard-rkl-5/igt@kms_chamelium_audio@dp-audio-after-suspend.html
[521]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-6/igt@kms_chamelium_audio@dp-audio-after-suspend.html
* igt@kms_chamelium_color_pipeline@plane-lut1d-ctm3x4:
- shard-rkl: [SKIP][522] ([i915#14544] / [i915#16471]) -> [SKIP][523] ([i915#16471])
[522]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9114/shard-rkl-6/igt@kms_chamelium_color_pipeline@plane-lut1d-ctm3x4.html
[523]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-5/igt@kms_chamelium_color_pipeline@plane-lut1d-ctm3x4.html
* igt@kms_chamelium_edid@dp-mode-timings:
- shard-rkl: [SKIP][524] ([i915#11151] / [i915#14544] / [i915#7828]) -> [SKIP][525] ([i915#11151] / [i915#7828]) +1 other test skip
[524]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9114/shard-rkl-6/igt@kms_chamelium_edid@dp-mode-timings.html
[525]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-4/igt@kms_chamelium_edid@dp-mode-timings.html
* igt@kms_chamelium_hpd@dp-hpd-enable-disable-mode:
- shard-rkl: [SKIP][526] ([i915#11151] / [i915#7828]) -> [SKIP][527] ([i915#11151] / [i915#14544] / [i915#7828]) +5 other tests skip
[526]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9114/shard-rkl-4/igt@kms_chamelium_hpd@dp-hpd-enable-disable-mode.html
[527]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-6/igt@kms_chamelium_hpd@dp-hpd-enable-disable-mode.html
* igt@kms_content_protection@mei-interface:
- shard-rkl: [SKIP][528] ([i915#14544] / [i915#15865]) -> [SKIP][529] ([i915#15865]) +1 other test skip
[528]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9114/shard-rkl-6/igt@kms_content_protection@mei-interface.html
[529]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-4/igt@kms_content_protection@mei-interface.html
* igt@kms_content_protection@uevent-hdcp14:
- shard-rkl: [SKIP][530] ([i915#15865]) -> [SKIP][531] ([i915#14544] / [i915#15865])
[530]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9114/shard-rkl-8/igt@kms_content_protection@uevent-hdcp14.html
[531]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-6/igt@kms_content_protection@uevent-hdcp14.html
* igt@kms_cursor_crc@cursor-offscreen-512x512:
- shard-rkl: [SKIP][532] ([i915#13049] / [i915#14544]) -> [SKIP][533] ([i915#13049])
[532]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9114/shard-rkl-6/igt@kms_cursor_crc@cursor-offscreen-512x512.html
[533]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-7/igt@kms_cursor_crc@cursor-offscreen-512x512.html
* igt@kms_cursor_legacy@modeset-atomic-cursor-hotspot:
- shard-rkl: [SKIP][534] ([i915#9067]) -> [SKIP][535] ([i915#14544] / [i915#9067])
[534]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9114/shard-rkl-7/igt@kms_cursor_legacy@modeset-atomic-cursor-hotspot.html
[535]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-6/igt@kms_cursor_legacy@modeset-atomic-cursor-hotspot.html
* igt@kms_dither@fb-8bpc-vs-panel-6bpc:
- shard-rkl: [SKIP][536] ([i915#14544] / [i915#3555] / [i915#3804]) -> [SKIP][537] ([i915#3555] / [i915#3804])
[536]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9114/shard-rkl-6/igt@kms_dither@fb-8bpc-vs-panel-6bpc.html
[537]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-7/igt@kms_dither@fb-8bpc-vs-panel-6bpc.html
* igt@kms_dither@fb-8bpc-vs-panel-6bpc@pipe-a-hdmi-a-2:
- shard-rkl: [SKIP][538] ([i915#14544] / [i915#3804]) -> [SKIP][539] ([i915#3804])
[538]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9114/shard-rkl-6/igt@kms_dither@fb-8bpc-vs-panel-6bpc@pipe-a-hdmi-a-2.html
[539]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-7/igt@kms_dither@fb-8bpc-vs-panel-6bpc@pipe-a-hdmi-a-2.html
* igt@kms_dsc@dsc-with-formats-bigjoiner:
- shard-rkl: [SKIP][540] ([i915#14544] / [i915#16361]) -> [SKIP][541] ([i915#16361])
[540]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9114/shard-rkl-6/igt@kms_dsc@dsc-with-formats-bigjoiner.html
[541]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-2/igt@kms_dsc@dsc-with-formats-bigjoiner.html
* igt@kms_dsc@dsc-with-output-formats-with-bpc-bigjoiner:
- shard-rkl: [SKIP][542] ([i915#16361]) -> [SKIP][543] ([i915#14544] / [i915#16361]) +1 other test skip
[542]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9114/shard-rkl-3/igt@kms_dsc@dsc-with-output-formats-with-bpc-bigjoiner.html
[543]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-6/igt@kms_dsc@dsc-with-output-formats-with-bpc-bigjoiner.html
* igt@kms_feature_discovery@display-4x:
- shard-rkl: [SKIP][544] ([i915#14544] / [i915#16081]) -> [SKIP][545] ([i915#16081])
[544]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9114/shard-rkl-6/igt@kms_feature_discovery@display-4x.html
[545]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-7/igt@kms_feature_discovery@display-4x.html
* igt@kms_flip@2x-plain-flip:
- shard-rkl: [SKIP][546] ([i915#14544] / [i915#9934]) -> [SKIP][547] ([i915#9934]) +4 other tests skip
[546]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9114/shard-rkl-6/igt@kms_flip@2x-plain-flip.html
[547]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-7/igt@kms_flip@2x-plain-flip.html
* igt@kms_flip_scaled_crc@flip-32bpp-yftile-to-64bpp-yftile-upscaling:
- shard-rkl: [SKIP][548] ([i915#15643]) -> [SKIP][549] ([i915#14544] / [i915#15643])
[548]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9114/shard-rkl-8/igt@kms_flip_scaled_crc@flip-32bpp-yftile-to-64bpp-yftile-upscaling.html
[549]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-6/igt@kms_flip_scaled_crc@flip-32bpp-yftile-to-64bpp-yftile-upscaling.html
* igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-spr-indfb-draw-mmap-gtt:
- shard-rkl: [SKIP][550] ([i915#14544] / [i915#1825]) -> [SKIP][551] ([i915#1825]) +1 other test skip
[550]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9114/shard-rkl-6/igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-spr-indfb-draw-mmap-gtt.html
[551]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-4/igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-spr-indfb-draw-mmap-gtt.html
* igt@kms_frontbuffer_tracking@fbchdr-suspend:
- shard-rkl: [SKIP][552] ([i915#15989]) -> [INCOMPLETE][553] ([i915#16056])
[552]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9114/shard-rkl-3/igt@kms_frontbuffer_tracking@fbchdr-suspend.html
[553]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-6/igt@kms_frontbuffer_tracking@fbchdr-suspend.html
* igt@kms_frontbuffer_tracking@fbcpsr-1p-rte:
- shard-rkl: [SKIP][554] ([i915#15102]) -> [SKIP][555] ([i915#14544] / [i915#15102]) +21 other tests skip
[554]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9114/shard-rkl-5/igt@kms_frontbuffer_tracking@fbcpsr-1p-rte.html
[555]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-6/igt@kms_frontbuffer_tracking@fbcpsr-1p-rte.html
* igt@kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-spr-indfb-draw-mmap-wc:
- shard-rkl: [SKIP][556] ([i915#1825]) -> [SKIP][557] ([i915#14544] / [i915#1825]) +3 other tests skip
[556]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9114/shard-rkl-5/igt@kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-spr-indfb-draw-mmap-wc.html
[557]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-6/igt@kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-spr-indfb-draw-mmap-wc.html
* igt@kms_frontbuffer_tracking@fbcpsr-tiling-4:
- shard-rkl: [SKIP][558] ([i915#14544] / [i915#5439]) -> [SKIP][559] ([i915#5439])
[558]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9114/shard-rkl-6/igt@kms_frontbuffer_tracking@fbcpsr-tiling-4.html
[559]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-2/igt@kms_frontbuffer_tracking@fbcpsr-tiling-4.html
* igt@kms_frontbuffer_tracking@hdr-suspend:
- shard-rkl: [ABORT][560] ([i915#15132]) -> [SKIP][561] ([i915#15989])
[560]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9114/shard-rkl-1/igt@kms_frontbuffer_tracking@hdr-suspend.html
[561]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-2/igt@kms_frontbuffer_tracking@hdr-suspend.html
- shard-glk: [SKIP][562] -> [INCOMPLETE][563] ([i915#13356] / [i915#16056] / [i915#16593])
[562]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9114/shard-glk2/igt@kms_frontbuffer_tracking@hdr-suspend.html
[563]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-glk8/igt@kms_frontbuffer_tracking@hdr-suspend.html
* igt@kms_frontbuffer_tracking@pipe-fbc-rte:
- shard-rkl: [SKIP][564] ([i915#14544] / [i915#9766]) -> [SKIP][565] ([i915#9766])
[564]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9114/shard-rkl-6/igt@kms_frontbuffer_tracking@pipe-fbc-rte.html
[565]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-8/igt@kms_frontbuffer_tracking@pipe-fbc-rte.html
* igt@kms_frontbuffer_tracking@psrhdr-1p-primscrn-shrfb-msflip-blt:
- shard-rkl: [SKIP][566] ([i915#14544] / [i915#15102]) -> [SKIP][567] ([i915#15102]) +6 other tests skip
[566]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9114/shard-rkl-6/igt@kms_frontbuffer_tracking@psrhdr-1p-primscrn-shrfb-msflip-blt.html
[567]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-7/igt@kms_frontbuffer_tracking@psrhdr-1p-primscrn-shrfb-msflip-blt.html
* igt@kms_frontbuffer_tracking@psrhdr-2p-primscrn-cur-indfb-draw-mmap-wc:
- shard-rkl: [SKIP][568] -> [SKIP][569] ([i915#14544]) +39 other tests skip
[568]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9114/shard-rkl-3/igt@kms_frontbuffer_tracking@psrhdr-2p-primscrn-cur-indfb-draw-mmap-wc.html
[569]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-6/igt@kms_frontbuffer_tracking@psrhdr-2p-primscrn-cur-indfb-draw-mmap-wc.html
* igt@kms_frontbuffer_tracking@psrhdr-2p-scndscrn-cur-indfb-move:
- shard-rkl: [SKIP][570] ([i915#14544]) -> [SKIP][571] +16 other tests skip
[570]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9114/shard-rkl-6/igt@kms_frontbuffer_tracking@psrhdr-2p-scndscrn-cur-indfb-move.html
[571]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-8/igt@kms_frontbuffer_tracking@psrhdr-2p-scndscrn-cur-indfb-move.html
* igt@kms_joiner@basic-big-joiner:
- shard-rkl: [SKIP][572] ([i915#14544] / [i915#15460]) -> [SKIP][573] ([i915#15460])
[572]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9114/shard-rkl-6/igt@kms_joiner@basic-big-joiner.html
[573]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-2/igt@kms_joiner@basic-big-joiner.html
* igt@kms_panel_fitting@legacy:
- shard-rkl: [SKIP][574] ([i915#6301]) -> [SKIP][575] ([i915#14544] / [i915#6301])
[574]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9114/shard-rkl-2/igt@kms_panel_fitting@legacy.html
[575]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-6/igt@kms_panel_fitting@legacy.html
* igt@kms_pipe_stress@stress-xrgb8888-4tiled:
- shard-rkl: [SKIP][576] ([i915#14712]) -> [SKIP][577] ([i915#14544] / [i915#14712])
[576]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9114/shard-rkl-5/igt@kms_pipe_stress@stress-xrgb8888-4tiled.html
[577]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-6/igt@kms_pipe_stress@stress-xrgb8888-4tiled.html
* igt@kms_plane@pixel-format-4-tiled-mtl-mc-ccs-modifier:
- shard-rkl: [SKIP][578] ([i915#15709]) -> [SKIP][579] ([i915#14544] / [i915#15709]) +1 other test skip
[578]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9114/shard-rkl-4/igt@kms_plane@pixel-format-4-tiled-mtl-mc-ccs-modifier.html
[579]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-6/igt@kms_plane@pixel-format-4-tiled-mtl-mc-ccs-modifier.html
* igt@kms_plane@pixel-format-yf-tiled-ccs-modifier:
- shard-rkl: [SKIP][580] ([i915#14544] / [i915#15709]) -> [SKIP][581] ([i915#15709])
[580]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9114/shard-rkl-6/igt@kms_plane@pixel-format-yf-tiled-ccs-modifier.html
[581]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-3/igt@kms_plane@pixel-format-yf-tiled-ccs-modifier.html
* igt@kms_plane_lowres@tiling-yf:
- shard-rkl: [SKIP][582] ([i915#3555]) -> [SKIP][583] ([i915#14544] / [i915#3555]) +4 other tests skip
[582]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9114/shard-rkl-2/igt@kms_plane_lowres@tiling-yf.html
[583]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-6/igt@kms_plane_lowres@tiling-yf.html
* igt@kms_pm_backlight@fade:
- shard-rkl: [SKIP][584] ([i915#12343] / [i915#14544] / [i915#5354]) -> [SKIP][585] ([i915#12343] / [i915#5354])
[584]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9114/shard-rkl-6/igt@kms_pm_backlight@fade.html
[585]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-5/igt@kms_pm_backlight@fade.html
* igt@kms_pm_lpsp@screens-disabled:
- shard-rkl: [SKIP][586] ([i915#8430]) -> [SKIP][587] ([i915#14544] / [i915#8430])
[586]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9114/shard-rkl-2/igt@kms_pm_lpsp@screens-disabled.html
[587]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-6/igt@kms_pm_lpsp@screens-disabled.html
* igt@kms_psr2_sf@fbc-psr2-cursor-plane-move-continuous-sf:
- shard-rkl: [SKIP][588] ([i915#11520] / [i915#14544]) -> [SKIP][589] ([i915#11520]) +1 other test skip
[588]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9114/shard-rkl-6/igt@kms_psr2_sf@fbc-psr2-cursor-plane-move-continuous-sf.html
[589]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-5/igt@kms_psr2_sf@fbc-psr2-cursor-plane-move-continuous-sf.html
* igt@kms_psr2_sf@fbc-psr2-overlay-plane-move-continuous-exceed-sf:
- shard-rkl: [SKIP][590] ([i915#11520]) -> [SKIP][591] ([i915#11520] / [i915#14544]) +2 other tests skip
[590]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9114/shard-rkl-8/igt@kms_psr2_sf@fbc-psr2-overlay-plane-move-continuous-exceed-sf.html
[591]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-6/igt@kms_psr2_sf@fbc-psr2-overlay-plane-move-continuous-exceed-sf.html
* igt@kms_psr2_su@page_flip-xrgb8888:
- shard-rkl: [SKIP][592] ([i915#9683]) -> [SKIP][593] ([i915#14544] / [i915#9683])
[592]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9114/shard-rkl-2/igt@kms_psr2_su@page_flip-xrgb8888.html
[593]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-6/igt@kms_psr2_su@page_flip-xrgb8888.html
* igt@kms_psr@fbc-pr-suspend:
- shard-rkl: [SKIP][594] ([i915#1072] / [i915#14544] / [i915#9732]) -> [SKIP][595] ([i915#1072] / [i915#9732]) +5 other tests skip
[594]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9114/shard-rkl-6/igt@kms_psr@fbc-pr-suspend.html
[595]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-5/igt@kms_psr@fbc-pr-suspend.html
* igt@kms_psr@fbc-psr-dpms:
- shard-rkl: [SKIP][596] ([i915#1072] / [i915#9732]) -> [SKIP][597] ([i915#1072] / [i915#14544] / [i915#9732]) +6 other tests skip
[596]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9114/shard-rkl-4/igt@kms_psr@fbc-psr-dpms.html
[597]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-6/igt@kms_psr@fbc-psr-dpms.html
* igt@kms_vrr@max-min:
- shard-rkl: [SKIP][598] ([i915#9906]) -> [SKIP][599] ([i915#14544] / [i915#9906])
[598]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9114/shard-rkl-3/igt@kms_vrr@max-min.html
[599]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-6/igt@kms_vrr@max-min.html
* igt@perf_pmu@rc6-all-gts:
- shard-rkl: [SKIP][600] ([i915#8516]) -> [SKIP][601] ([i915#14544] / [i915#8516])
[600]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9114/shard-rkl-7/igt@perf_pmu@rc6-all-gts.html
[601]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/shard-rkl-6/igt@perf_pmu@rc6-all-gts.html
{name}: This element is suppressed. This means it is ignored when computing
the status of the difference (SUCCESS, WARNING, or FAILURE).
[i915#10055]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/10055
[i915#10307]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/10307
[i915#10434]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/10434
[i915#1072]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/1072
[i915#1099]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/1099
[i915#11078]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/11078
[i915#11151]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/11151
[i915#11520]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/11520
[i915#11681]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/11681
[i915#118]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/118
[i915#11920]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/11920
[i915#12193]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12193
[i915#12276]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12276
[i915#12313]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12313
[i915#12316]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12316
[i915#12343]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12343
[i915#12358]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12358
[i915#12454]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12454
[i915#1257]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/1257
[i915#12655]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12655
[i915#12712]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12712
[i915#12756]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12756
[i915#12761]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12761
[i915#12805]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12805
[i915#12964]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12964
[i915#13026]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13026
[i915#13027]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13027
[i915#13046]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13046
[i915#13049]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13049
[i915#13196]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13196
[i915#13356]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13356
[i915#13390]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13390
[i915#13409]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13409
[i915#13476]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13476
[i915#13566]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13566
[i915#13688]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13688
[i915#13707]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13707
[i915#13717]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13717
[i915#13748]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13748
[i915#13749]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13749
[i915#13781]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13781
[i915#13786]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13786
[i915#13790]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13790
[i915#13809]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13809
[i915#13958]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13958
[i915#14073]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/14073
[i915#14098]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/14098
[i915#14118]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/14118
[i915#14121]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/14121
[i915#14123]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/14123
[i915#14152]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/14152
[i915#14259]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/14259
[i915#14412]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/14412
[i915#14419]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/14419
[i915#14544]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/14544
[i915#14545]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/14545
[i915#14600]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/14600
[i915#14702]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/14702
[i915#14712]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/14712
[i915#15073]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/15073
[i915#15102]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/15102
[i915#15104]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/15104
[i915#15131]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/15131
[i915#15132]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/15132
[i915#15329]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/15329
[i915#15330]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/15330
[i915#15342]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/15342
[i915#15458]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/15458
[i915#15459]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/15459
[i915#15460]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/15460
[i915#15492]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/15492
[i915#15582]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/15582
[i915#15643]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/15643
[i915#15678]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/15678
[i915#15709]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/15709
[i915#15725]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/15725
[i915#15733]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/15733
[i915#15739]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/15739
[i915#15751]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/15751
[i915#15816]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/15816
[i915#15840]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/15840
[i915#15865]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/15865
[i915#15871]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/15871
[i915#15948]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/15948
[i915#15949]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/15949
[i915#15989]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/15989
[i915#15990]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/15990
[i915#15991]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/15991
[i915#16056]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/16056
[i915#16079]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/16079
[i915#16080]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/16080
[i915#16081]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/16081
[i915#16112]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/16112
[i915#16119]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/16119
[i915#16166]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/16166
[i915#16182]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/16182
[i915#16184]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/16184
[i915#16193]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/16193
[i915#16348]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/16348
[i915#16361]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/16361
[i915#16386]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/16386
[i915#16420]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/16420
[i915#16464]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/16464
[i915#16471]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/16471
[i915#16593]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/16593
[i915#16599]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/16599
[i915#16600]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/16600
[i915#16644]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/16644
[i915#16789]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/16789
[i915#16867]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/16867
[i915#16904]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/16904
[i915#16914]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/16914
[i915#16938]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/16938
[i915#16943]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/16943
[i915#16990]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/16990
[i915#17018]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/17018
[i915#17038]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/17038
[i915#17054]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/17054
[i915#17104]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/17104
[i915#17116]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/17116
[i915#17150]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/17150
[i915#17157]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/17157
[i915#17158]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/17158
[i915#17160]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/17160
[i915#17175]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/17175
[i915#17189]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/17189
[i915#1769]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/1769
[i915#1825]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/1825
[i915#2065]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/2065
[i915#2190]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/2190
[i915#2433]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/2433
[i915#2434]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/2434
[i915#2527]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/2527
[i915#2658]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/2658
[i915#2681]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/2681
[i915#280]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/280
[i915#2856]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/2856
[i915#3116]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/3116
[i915#3281]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/3281
[i915#3282]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/3282
[i915#3297]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/3297
[i915#3299]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/3299
[i915#3323]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/3323
[i915#3361]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/3361
[i915#3539]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/3539
[i915#3555]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/3555
[i915#3637]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/3637
[i915#3638]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/3638
[i915#3708]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/3708
[i915#3742]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/3742
[i915#3804]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/3804
[i915#3828]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/3828
[i915#4077]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4077
[i915#4079]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4079
[i915#4083]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4083
[i915#4103]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4103
[i915#4212]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4212
[i915#4213]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4213
[i915#4270]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4270
[i915#4349]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4349
[i915#4525]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4525
[i915#4538]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4538
[i915#4565]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4565
[i915#4613]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4613
[i915#4812]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4812
[i915#4817]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4817
[i915#4852]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4852
[i915#4860]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4860
[i915#4880]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4880
[i915#4881]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4881
[i915#4885]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4885
[i915#4958]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/4958
[i915#5138]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/5138
[i915#5190]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/5190
[i915#5286]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/5286
[i915#5289]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/5289
[i915#5354]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/5354
[i915#5439]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/5439
[i915#5566]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/5566
[i915#5723]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/5723
[i915#6095]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/6095
[i915#6187]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/6187
[i915#6230]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/6230
[i915#6245]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/6245
[i915#6301]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/6301
[i915#6334]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/6334
[i915#6335]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/6335
[i915#6344]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/6344
[i915#6524]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/6524
[i915#658]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/658
[i915#6590]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/6590
[i915#6621]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/6621
[i915#6953]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/6953
[i915#7443]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/7443
[i915#7582]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/7582
[i915#7697]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/7697
[i915#7707]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/7707
[i915#7828]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/7828
[i915#7882]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/7882
[i915#7984]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/7984
[i915#8228]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/8228
[i915#8381]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/8381
[i915#8399]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/8399
[i915#8411]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/8411
[i915#8428]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/8428
[i915#8430]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/8430
[i915#8516]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/8516
[i915#8555]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/8555
[i915#8623]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/8623
[i915#8708]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/8708
[i915#8821]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/8821
[i915#8898]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/8898
[i915#9067]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9067
[i915#9323]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9323
[i915#9531]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9531
[i915#9683]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9683
[i915#9688]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9688
[i915#9723]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9723
[i915#9732]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9732
[i915#9766]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9766
[i915#9808]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9808
[i915#9809]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9809
[i915#9878]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9878
[i915#9906]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9906
[i915#9934]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9934
Build changes
-------------
* CI: CI-20190529 -> None
* IGT: IGT_9114 -> IGTPW_15909
CI-20190529: 20190529
CI_DRM_19232: 972eeb850a4ca07aba05ccb805db28a33eab2c9a @ git://anongit.freedesktop.org/gfx-ci/linux
IGTPW_15909: 36489129f40b37725a6324d29e5a0a3e50d1af82 @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git
IGT_9114: 916c79cfb7675ca01607dcd821f8c49d4f633a6f @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15909/index.html
[-- Attachment #2: Type: text/html, Size: 204115 bytes --]
^ permalink raw reply [flat|nested] 19+ messages in thread