<html>
<head>
<base href="https://bugs.freedesktop.org/">
</head>
<body><span class="vcard"><a class="email" href="mailto:arkadiusz.hiler@intel.com" title="Arek Hiler <arkadiusz.hiler@intel.com>"> <span class="fn">Arek Hiler</span></a>
</span> changed
<a class="bz_bug_link
bz_status_NEW "
title="NEW - [CI][RESUME] igt@kms_setmode@invalid-clone-single-crtc-stealing - fail - Failed assertion: ret == 0, Last errno: 22, Invalid argument"
href="https://bugs.freedesktop.org/show_bug.cgi?id=110391">bug 110391</a>
<br>
<table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>What</th>
<th>Removed</th>
<th>Added</th>
</tr>
<tr>
<td style="text-align:right;">Priority</td>
<td>high
</td>
<td>medium
</td>
</tr></table>
<p>
<div>
<b><a class="bz_bug_link
bz_status_NEW "
title="NEW - [CI][RESUME] igt@kms_setmode@invalid-clone-single-crtc-stealing - fail - Failed assertion: ret == 0, Last errno: 22, Invalid argument"
href="https://bugs.freedesktop.org/show_bug.cgi?id=110391#c3">Comment # 3</a>
on <a class="bz_bug_link
bz_status_NEW "
title="NEW - [CI][RESUME] igt@kms_setmode@invalid-clone-single-crtc-stealing - fail - Failed assertion: ret == 0, Last errno: 22, Invalid argument"
href="https://bugs.freedesktop.org/show_bug.cgi?id=110391">bug 110391</a>
from <span class="vcard"><a class="email" href="mailto:arkadiusz.hiler@intel.com" title="Arek Hiler <arkadiusz.hiler@intel.com>"> <span class="fn">Arek Hiler</span></a>
</span></b>
<pre>The failure is likely caused by this function that gets mode to set on all
connectors:
static void get_mode_for_crtc(struct crtc_config *crtc,
drmModeModeInfo *mode_ret)
{
drmModeModeInfo mode;
int i;
/*
* First try to select a default mode that is supported by all
* connectors.
*/
for (i = 0; i < crtc->connector_count; i++) {
mode = crtc->cconfs[i].default_mode;
if (crtc_supports_mode(crtc, &mode))
goto found;
}
/*
* Then just fall back to find any that is supported by all
* connectors.
*/
for (i = 0; i < crtc->cconfs[0].connector->count_modes; i++) {
mode = crtc->cconfs[0].connector->modes[i];
if (crtc_supports_mode(crtc, &mode))
goto found;
}
/*
* If none is found then just pick the default mode of the first
* connector and hope the other connectors can support it by scaling
* etc.
*/
mode = crtc->cconfs[0].default_mode;
found:
*mode_ret = mode;
}
eDP quite likely supports 36bpp but DP does not. Because of the wrong
assumptions above we try to set this 36bpp mode on the DP connector, failing on
the first drmModeSetCrtc().
The test should be fixed by being more clever about mode selection or just
skipping if connector happens to not support given mode, instead of asserting
straight away.
Dropping priority to medium, as this is a test issue.</pre>
</div>
</p>
<hr>
<span>You are receiving this mail because:</span>
<ul>
<li>You are the QA Contact for the bug.</li>
<li>You are on the CC list for the bug.</li>
<li>You are the assignee for the bug.</li>
</ul>
</body>
</html>