Commit e91ea02
committed
fix: waylib: back off failed Vulkan render imports under load
Avoid treating failed Vulkan render attempts as completed frames when the
Vulkan+GL bridge is under pressure. If acquiring the output render target
fails, skip the current frame without committing or clearing the dirty state.
If output commit fails after rendering a buffer, mark the output dirty again
and retry with a short frame-based backoff.
Also validate GL texture creation for Vulkan dmabuf imports and readback
fallbacks before handing them to Qt RHI, preventing invalid texture IDs from
reaching QQuickRenderTarget. Surface texture updates now keep the previous
texture and briefly back off Vulkan-only retries when imports fail, avoiding
tight retry loops during heavy CPU/GPU pressure.
The GLES2 path is still left unchanged.1 parent e1c334d commit e91ea02
3 files changed
Lines changed: 155 additions & 4 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
204 | 204 | | |
205 | 205 | | |
206 | 206 | | |
| 207 | + | |
| 208 | + | |
| 209 | + | |
| 210 | + | |
| 211 | + | |
| 212 | + | |
| 213 | + | |
| 214 | + | |
| 215 | + | |
| 216 | + | |
| 217 | + | |
| 218 | + | |
| 219 | + | |
| 220 | + | |
| 221 | + | |
| 222 | + | |
| 223 | + | |
| 224 | + | |
| 225 | + | |
| 226 | + | |
| 227 | + | |
| 228 | + | |
| 229 | + | |
| 230 | + | |
| 231 | + | |
| 232 | + | |
| 233 | + | |
| 234 | + | |
| 235 | + | |
| 236 | + | |
| 237 | + | |
| 238 | + | |
| 239 | + | |
| 240 | + | |
| 241 | + | |
| 242 | + | |
207 | 243 | | |
208 | 244 | | |
209 | 245 | | |
| |||
273 | 309 | | |
274 | 310 | | |
275 | 311 | | |
| 312 | + | |
| 313 | + | |
| 314 | + | |
| 315 | + | |
276 | 316 | | |
277 | 317 | | |
278 | 318 | | |
| |||
1548 | 1588 | | |
1549 | 1589 | | |
1550 | 1590 | | |
| 1591 | + | |
| 1592 | + | |
| 1593 | + | |
| 1594 | + | |
| 1595 | + | |
1551 | 1596 | | |
1552 | 1597 | | |
1553 | 1598 | | |
| 1599 | + | |
| 1600 | + | |
| 1601 | + | |
| 1602 | + | |
| 1603 | + | |
| 1604 | + | |
| 1605 | + | |
| 1606 | + | |
| 1607 | + | |
| 1608 | + | |
| 1609 | + | |
1554 | 1610 | | |
1555 | 1611 | | |
1556 | 1612 | | |
| |||
1635 | 1691 | | |
1636 | 1692 | | |
1637 | 1693 | | |
| 1694 | + | |
| 1695 | + | |
| 1696 | + | |
1638 | 1697 | | |
1639 | | - | |
| 1698 | + | |
| 1699 | + | |
| 1700 | + | |
1640 | 1701 | | |
1641 | 1702 | | |
1642 | 1703 | | |
| |||
1649 | 1710 | | |
1650 | 1711 | | |
1651 | 1712 | | |
1652 | | - | |
| 1713 | + | |
1653 | 1714 | | |
1654 | 1715 | | |
1655 | 1716 | | |
1656 | 1717 | | |
| 1718 | + | |
| 1719 | + | |
| 1720 | + | |
| 1721 | + | |
| 1722 | + | |
| 1723 | + | |
1657 | 1724 | | |
1658 | 1725 | | |
1659 | 1726 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
177 | 177 | | |
178 | 178 | | |
179 | 179 | | |
| 180 | + | |
| 181 | + | |
| 182 | + | |
| 183 | + | |
| 184 | + | |
| 185 | + | |
| 186 | + | |
| 187 | + | |
| 188 | + | |
| 189 | + | |
| 190 | + | |
180 | 191 | | |
181 | 192 | | |
182 | 193 | | |
| |||
334 | 345 | | |
335 | 346 | | |
336 | 347 | | |
| 348 | + | |
337 | 349 | | |
| 350 | + | |
| 351 | + | |
| 352 | + | |
| 353 | + | |
| 354 | + | |
| 355 | + | |
338 | 356 | | |
339 | 357 | | |
340 | 358 | | |
341 | 359 | | |
342 | 360 | | |
| 361 | + | |
| 362 | + | |
| 363 | + | |
| 364 | + | |
| 365 | + | |
| 366 | + | |
343 | 367 | | |
344 | 368 | | |
345 | 369 | | |
| |||
1433 | 1457 | | |
1434 | 1458 | | |
1435 | 1459 | | |
| 1460 | + | |
1436 | 1461 | | |
| 1462 | + | |
| 1463 | + | |
| 1464 | + | |
1437 | 1465 | | |
1438 | 1466 | | |
1439 | 1467 | | |
| |||
1444 | 1472 | | |
1445 | 1473 | | |
1446 | 1474 | | |
| 1475 | + | |
| 1476 | + | |
| 1477 | + | |
| 1478 | + | |
1447 | 1479 | | |
1448 | 1480 | | |
1449 | 1481 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
223 | 223 | | |
224 | 224 | | |
225 | 225 | | |
| 226 | + | |
| 227 | + | |
| 228 | + | |
| 229 | + | |
226 | 230 | | |
227 | 231 | | |
228 | 232 | | |
| |||
333 | 337 | | |
334 | 338 | | |
335 | 339 | | |
| 340 | + | |
| 341 | + | |
| 342 | + | |
| 343 | + | |
| 344 | + | |
| 345 | + | |
| 346 | + | |
| 347 | + | |
| 348 | + | |
| 349 | + | |
| 350 | + | |
| 351 | + | |
| 352 | + | |
| 353 | + | |
| 354 | + | |
| 355 | + | |
| 356 | + | |
| 357 | + | |
| 358 | + | |
| 359 | + | |
| 360 | + | |
| 361 | + | |
| 362 | + | |
| 363 | + | |
| 364 | + | |
| 365 | + | |
| 366 | + | |
| 367 | + | |
| 368 | + | |
| 369 | + | |
| 370 | + | |
336 | 371 | | |
337 | 372 | | |
338 | 373 | | |
| |||
377 | 412 | | |
378 | 413 | | |
379 | 414 | | |
| 415 | + | |
| 416 | + | |
| 417 | + | |
| 418 | + | |
380 | 419 | | |
381 | 420 | | |
382 | 421 | | |
| |||
516 | 555 | | |
517 | 556 | | |
518 | 557 | | |
| 558 | + | |
| 559 | + | |
| 560 | + | |
| 561 | + | |
519 | 562 | | |
520 | 563 | | |
521 | 564 | | |
| |||
602 | 645 | | |
603 | 646 | | |
604 | 647 | | |
605 | | - | |
| 648 | + | |
| 649 | + | |
| 650 | + | |
| 651 | + | |
| 652 | + | |
| 653 | + | |
606 | 654 | | |
607 | 655 | | |
608 | 656 | | |
609 | 657 | | |
610 | 658 | | |
611 | 659 | | |
612 | 660 | | |
613 | | - | |
| 661 | + | |
| 662 | + | |
| 663 | + | |
| 664 | + | |
614 | 665 | | |
| 666 | + | |
615 | 667 | | |
616 | 668 | | |
617 | 669 | | |
| |||
0 commit comments