diff mbox series

[meta,04/06] linux-yocto/7.2: drm/client: avoid spurious vblank-timeout warning

Message ID 20260917051340.1472139-5-bruce.ashfield@gmail.com
State New
Headers show
Series linux-yocto: cosolidated pull request | expand

Commit Message

Bruce Ashfield Sept. 17, 2026, 5:13 a.m. UTC
From: Bruce Ashfield <bruce.ashfield@gmail.com>

Integrating the following commit(s) to linux-yocto/7.2:

1/1 [
    Author: Krystian Kaniewski
    Email: krystianmkaniewski@gmail.com
    Subject: drm/client: Avoid warning on vblank timeout during modeset client waits
    Date: Wed, 12 Aug 2026 10:05:19 +0000

    [ Backport of a fix posted on LKML; not yet merged upstream. ]

    Commit d8c4bddcd8bc ("drm/fb-helper: Synchronize dirty worker with
    vblank") added a vblank wait to the fb-helper damage worker via
    drm_client_modeset_wait_for_vblank(). On virtualized/emulated displays
    (the Yocto QEMU autobuilder) and on PREEMPT_RT, the vblank can fail to
    arrive within the 1s timeout even though this is harmless optional
    throttling, producing a spurious warning:

      WARNING: drivers/gpu/drm/drm_vblank.c:1329 drm_crtc_wait_one_vblank
      vblank wait timed out on crtc 0
       drm_crtc_wait_one_vblank
       drm_client_modeset_wait_for_vblank
       drm_fb_helper_damage_work

    The traceback is picked up by Yocto's parselogs and fails runtime tests.

    Add a non-warning drm_crtc_wait_one_vblank_internal() and use it from the
    client modeset wait path, where a timeout is expected and does not
    indicate a kernel bug. The warning is preserved for all other callers of
    drm_crtc_wait_one_vblank(), whose external behaviour is unchanged.

    Link: https://lore.kernel.org/all/ad8b0286-7779-4682-9516-da4280f1d846@mail.kernel.org
    Fixes: d8c4bddcd8bc ("drm/fb-helper: Synchronize dirty worker with vblank")
    Signed-off-by: Krystian Kaniewski <krystianmkaniewski@gmail.com>
    Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
]

Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
---
 .../recipes-kernel/linux/linux-yocto-rt_7.2.bb |  2 +-
 .../linux/linux-yocto-tiny_7.2.bb              |  2 +-
 meta/recipes-kernel/linux/linux-yocto_7.2.bb   | 18 +++++++++---------
 3 files changed, 11 insertions(+), 11 deletions(-)
diff mbox series

Patch

diff --git a/meta/recipes-kernel/linux/linux-yocto-rt_7.2.bb b/meta/recipes-kernel/linux/linux-yocto-rt_7.2.bb
index da34435770..438c896749 100644
--- a/meta/recipes-kernel/linux/linux-yocto-rt_7.2.bb
+++ b/meta/recipes-kernel/linux/linux-yocto-rt_7.2.bb
@@ -15,7 +15,7 @@  python () {
         raise bb.parse.SkipRecipe("Set PREFERRED_PROVIDER_virtual/kernel to linux-yocto-rt to enable it")
 }
 
-SRCREV_machine ?= "5391c0d4e57d3cacdd66e7d5a016dba8c6f5956e"
+SRCREV_machine ?= "c2f967f4c1065d41084f300d3eca7cd413635dc3"
 SRCREV_meta ?= "b5d69636e3e56aa6a5b8f987b4587e7a56c4782a"
 
 SRC_URI = "git://git.yoctoproject.org/linux-yocto.git;branch=${KBRANCH};name=machine;protocol=https \
diff --git a/meta/recipes-kernel/linux/linux-yocto-tiny_7.2.bb b/meta/recipes-kernel/linux/linux-yocto-tiny_7.2.bb
index 3a8f086d5c..0a9595a749 100644
--- a/meta/recipes-kernel/linux/linux-yocto-tiny_7.2.bb
+++ b/meta/recipes-kernel/linux/linux-yocto-tiny_7.2.bb
@@ -18,7 +18,7 @@  DEPENDS += "openssl-native util-linux-native"
 KMETA = "kernel-meta"
 KCONF_BSP_AUDIT_LEVEL = "2"
 
-SRCREV_machine ?= "c591fbeae3281cba1d1e16470afd6541ab445b46"
+SRCREV_machine ?= "d8a1ec518ab72fadb60dbe9eed3775b68975defd"
 SRCREV_meta ?= "b5d69636e3e56aa6a5b8f987b4587e7a56c4782a"
 
 PV = "${LINUX_VERSION}+git"
diff --git a/meta/recipes-kernel/linux/linux-yocto_7.2.bb b/meta/recipes-kernel/linux/linux-yocto_7.2.bb
index 550ba49ebc..f1c2d475c1 100644
--- a/meta/recipes-kernel/linux/linux-yocto_7.2.bb
+++ b/meta/recipes-kernel/linux/linux-yocto_7.2.bb
@@ -17,17 +17,17 @@  KBRANCH:qemux86-64 ?= "v7.2/standard/base"
 KBRANCH:qemuloongarch64  ?= "v7.2/standard/base"
 KBRANCH:qemumips64 ?= "v7.2/standard/mti-malta"
 
-SRCREV_machine:qemuarm ?= "0e60d19f0d15f5fbef845da9454998c76b37bd97"
-SRCREV_machine:qemuarm64 ?= "c591fbeae3281cba1d1e16470afd6541ab445b46"
-SRCREV_machine:qemuloongarch64 ?= "c591fbeae3281cba1d1e16470afd6541ab445b46"
+SRCREV_machine:qemuarm ?= "56c7106647e505ca1fb15fd433b0bc991024764c"
+SRCREV_machine:qemuarm64 ?= "d8a1ec518ab72fadb60dbe9eed3775b68975defd"
+SRCREV_machine:qemuloongarch64 ?= "d8a1ec518ab72fadb60dbe9eed3775b68975defd"
 SRCREV_machine:qemumips ?= "ab0e33fefa2a3d0366b2b8deb7cfb3be2d8dc436"
-SRCREV_machine:qemuppc ?= "c591fbeae3281cba1d1e16470afd6541ab445b46"
-SRCREV_machine:qemuriscv64 ?= "c591fbeae3281cba1d1e16470afd6541ab445b46"
-SRCREV_machine:qemuriscv32 ?= "c591fbeae3281cba1d1e16470afd6541ab445b46"
-SRCREV_machine:qemux86 ?= "c591fbeae3281cba1d1e16470afd6541ab445b46"
-SRCREV_machine:qemux86-64 ?= "c591fbeae3281cba1d1e16470afd6541ab445b46"
+SRCREV_machine:qemuppc ?= "d8a1ec518ab72fadb60dbe9eed3775b68975defd"
+SRCREV_machine:qemuriscv64 ?= "d8a1ec518ab72fadb60dbe9eed3775b68975defd"
+SRCREV_machine:qemuriscv32 ?= "d8a1ec518ab72fadb60dbe9eed3775b68975defd"
+SRCREV_machine:qemux86 ?= "d8a1ec518ab72fadb60dbe9eed3775b68975defd"
+SRCREV_machine:qemux86-64 ?= "d8a1ec518ab72fadb60dbe9eed3775b68975defd"
 SRCREV_machine:qemumips64 ?= "ab0e33fefa2a3d0366b2b8deb7cfb3be2d8dc436"
-SRCREV_machine ?= "c591fbeae3281cba1d1e16470afd6541ab445b46"
+SRCREV_machine ?= "d8a1ec518ab72fadb60dbe9eed3775b68975defd"
 SRCREV_meta ?= "b5d69636e3e56aa6a5b8f987b4587e7a56c4782a"
 
 # set your preferred provider of linux-yocto to 'linux-yocto-upstream', and you'll