Hello,

kernel test robot noticed "WARNING:possible_recursive_locking_detected" on:

commit: 432c7653afa4afe08e59d608db7cbbc321c52149 ("[PATCH 1/2] drm: Introduce a 
new connector status")
url: 
https://github.com/intel-lab-lkp/linux/commits/Marius-Vlad/drm-Introduce-a-new-connector-status/20250923-163922
base: git://anongit.freedesktop.org/drm/drm-misc drm-misc-next
patch link: 
https://lore.kernel.org/all/[email protected]/
patch subject: [PATCH 1/2] drm: Introduce a new connector status

in testcase: boot

config: x86_64-randconfig-074-20250924
compiler: gcc-14
test machine: qemu-system-x86_64 -enable-kvm -cpu SandyBridge -smp 2 -m 16G

(please refer to attached dmesg/kmsg for entire log/backtrace)



If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <[email protected]>
| Closes: https://lore.kernel.org/oe-lkp/[email protected]


[   19.416092][    T1] WARNING: possible recursive locking detected
[   19.416406][    T1] 6.17.0-rc2-00290-g432c7653afa4 #1 Not tainted
[   19.416406][    T1] --------------------------------------------
[   19.416406][    T1] swapper/0/1 is trying to acquire lock:
[ 19.416406][ T1] ffff88813b9c84d0 (&dev->mode_config.mutex){+.+.}-{4:4}, at: 
drm_helper_probe_single_connector_modes 
(drivers/gpu/drm/drm_probe_helper.c:633) 
[   19.416406][    T1]
[   19.416406][    T1] but task is already holding lock:
[ 19.416406][ T1] ffff88813b9c84d0 (&dev->mode_config.mutex){+.+.}-{4:4}, at: 
drm_client_modeset_probe (drivers/gpu/drm/drm_client_modeset.c:869) 
[   19.416406][    T1]
[   19.416406][    T1] other info that might help us debug this:
[   19.416406][    T1]  Possible unsafe locking scenario:
[   19.416406][    T1]
[   19.416406][    T1]        CPU0
[   19.416406][    T1]        ----
[   19.416406][    T1]   lock(&dev->mode_config.mutex);
[   19.416406][    T1]
[   19.416406][    T1]  *** DEADLOCK ***
[   19.416406][    T1]
[   19.416406][    T1]  May be due to missing lock nesting notation
[   19.416406][    T1]
[   19.416406][    T1] 6 locks held by swapper/0/1:
[ 19.416406][ T1] #0: ffff88813b9c8320 (&dev->clientlist_mutex){+.+.}-{4:4}, 
at: drm_client_register (include/linux/list.h:169 
drivers/gpu/drm/drm_client.c:128) 
[ 19.416406][ T1] #1: ffff888108a882a0 (&helper->lock){+.+.}-{4:4}, at: 
drm_fb_helper_initial_config (drivers/gpu/drm/drm_fb_helper.c:1917) 
[ 19.416406][ T1] #2: ffff888108a88098 (&client->modeset_mutex){+.+.}-{4:4}, 
at: drm_client_modeset_probe (drivers/gpu/drm/drm_client_modeset.c:867) 
[ 19.416406][ T1] #3: ffff88813b9c84d0 (&dev->mode_config.mutex){+.+.}-{4:4}, 
at: drm_client_modeset_probe (drivers/gpu/drm/drm_client_modeset.c:869) 
[ 19.416406][ T1] #4: ffffc9000001fa78 (crtc_ww_class_acquire){+.+.}-{0:0}, at: 
drm_helper_probe_single_connector_modes 
(drivers/gpu/drm/drm_probe_helper.c:572) 
[ 19.416406][ T1] #5: ffffc9000001faa8 (crtc_ww_class_mutex){+.+.}-{4:4}, at: 
drm_helper_probe_single_connector_modes 
(drivers/gpu/drm/drm_probe_helper.c:572) 
[   19.416406][    T1]
[   19.416406][    T1] stack backtrace:
[   19.416406][    T1] CPU: 0 UID: 0 PID: 1 Comm: swapper/0 Not tainted 
6.17.0-rc2-00290-g432c7653afa4 #1 PREEMPT(none)
[   19.416406][    T1] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), 
BIOS 1.16.3-debian-1.16.3-2 04/01/2014
[   19.416406][    T1] Call Trace:
[   19.416406][    T1]  <TASK>
[ 19.416406][ T1] dump_stack_lvl (lib/dump_stack.c:122) 
[ 19.416406][ T1] print_deadlock_bug.cold (kernel/locking/lockdep.c:3044) 
[ 19.416406][ T1] validate_chain (kernel/locking/lockdep.c:3898) 
[ 19.416406][ T1] __lock_acquire (kernel/locking/lockdep.c:5237 (discriminator 
1)) 
[ 19.416406][ T1] lock_acquire (kernel/locking/lockdep.c:470 
kernel/locking/lockdep.c:5870) 
[ 19.416406][ T1] ? drm_helper_probe_single_connector_modes 
(drivers/gpu/drm/drm_probe_helper.c:633) 
[ 19.416406][ T1] ? sched_show_task (kernel/sched/core.c:8912) 
[ 19.416406][ T1] ? look_up_lock_class (kernel/locking/lockdep.c:933 
(discriminator 28)) 
[ 19.416406][ T1] __mutex_lock (arch/x86/include/asm/atomic.h:23 
include/linux/atomic/atomic-arch-fallback.h:457 include/linux/jump_label.h:262 
include/trace/events/lock.h:95 kernel/locking/mutex.c:600 
kernel/locking/mutex.c:760) 
[ 19.416406][ T1] ? drm_helper_probe_single_connector_modes 
(drivers/gpu/drm/drm_probe_helper.c:633) 
[ 19.416406][ T1] ? look_up_lock_class (kernel/locking/lockdep.c:933 
(discriminator 28)) 
[ 19.416406][ T1] ? mutex_lock_io_nested (kernel/locking/mutex.c:759) 
[ 19.416406][ T1] ? drm_print_bits (drivers/gpu/drm/drm_print.c:334) 
[ 19.416406][ T1] ? ww_mutex_lock (kernel/locking/mutex.c:887) 
[ 19.416406][ T1] ? drm_helper_probe_single_connector_modes 
(drivers/gpu/drm/drm_probe_helper.c:633) 
[ 19.416406][ T1] drm_helper_probe_single_connector_modes 
(drivers/gpu/drm/drm_probe_helper.c:633) 
[ 19.416406][ T1] ? __drm_helper_update_and_validate 
(drivers/gpu/drm/drm_probe_helper.c:561) 
[ 19.416406][ T1] ? __kmalloc_noprof (include/trace/events/kmem.h:54 
(discriminator 2) mm/slub.c:4366 (discriminator 2) mm/slub.c:4377 
(discriminator 2)) 
[ 19.416406][ T1] drm_client_modeset_probe 
(drivers/gpu/drm/drm_client_modeset.c:869 (discriminator 1)) 
[ 19.416406][ T1] ? drm_client_firmware_config 
(drivers/gpu/drm/drm_client_modeset.c:818) 
[ 19.416406][ T1] __drm_fb_helper_initial_config_and_unlock 
(drivers/gpu/drm/drm_fb_helper.c:1830) 
[ 19.416406][ T1] drm_fbdev_client_hotplug 
(drivers/gpu/drm/clients/drm_fbdev_client.c:53) 
[ 19.416406][ T1] drm_client_register (drivers/gpu/drm/drm_client.c:141) 
[ 19.416406][ T1] drm_fbdev_client_setup 
(drivers/gpu/drm/clients/drm_fbdev_client.c:167) 
[ 19.416406][ T1] drm_client_setup 
(drivers/gpu/drm/clients/drm_client_setup.c:47) 
[ 19.416406][ T1] vkms_create (drivers/gpu/drm/vkms/vkms_drv.c:203) 
[ 19.416406][ T1] ? drm_display_helper_module_init 
(drivers/gpu/drm/vkms/vkms_drv.c:213) 
[ 19.416406][ T1] vkms_init (drivers/gpu/drm/vkms/vkms_drv.c:221) 
[ 19.416406][ T1] do_one_initcall (init/main.c:1269) 
[ 19.416406][ T1] ? trace_event_raw_event_initcall_level (init/main.c:1260) 
[ 19.416406][ T1] do_initcalls (init/main.c:1330 (discriminator 3) 
init/main.c:1347 (discriminator 3)) 
[ 19.416406][ T1] kernel_init_freeable (init/main.c:1583) 
[ 19.416406][ T1] ? rest_init (init/main.c:1461) 
[ 19.416406][ T1] kernel_init (init/main.c:1471) 
[ 19.416406][ T1] ? rest_init (init/main.c:1461) 
[ 19.416406][ T1] ret_from_fork (arch/x86/kernel/process.c:154) 
[ 19.416406][ T1] ? rest_init (init/main.c:1461) 
[ 19.416406][ T1] ret_from_fork_asm (arch/x86/entry/entry_64.S:255) 
[   19.416406][    T1]  </TASK>
[  984.236393][   T23] INFO: task swapper/0:1 blocked for more than 491 seconds.
[  984.237354][   T23]       Not tainted 6.17.0-rc2-00290-g432c7653afa4 #1
[  984.238322][   T23] "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" 
disables this message.
[  984.239375][   T23] task:swapper/0       state:D stack:0     pid:1     
tgid:1     ppid:0      task_flags:0x0140 flags:0x00004000
[  984.240834][   T23] Call Trace:
[  984.241228][   T23]  <TASK>
[ 984.241634][ T23] __schedule (kernel/sched/core.c:5357 
kernel/sched/core.c:6961) 
[ 984.242202][ T23] ? io_schedule_timeout (kernel/sched/core.c:6817) 
[ 984.242846][ T23] ? lock_acquire (include/trace/events/lock.h:24 
(discriminator 2) kernel/locking/lockdep.c:5831 (discriminator 2)) 
[ 984.243441][ T23] schedule (kernel/sched/core.c:7044 
kernel/sched/core.c:7058) 
[ 984.243975][ T23] schedule_preempt_disabled (kernel/sched/core.c:7116) 
[ 984.244639][ T23] __mutex_lock (kernel/locking/mutex.c:183 
kernel/locking/mutex.c:678 kernel/locking/mutex.c:760) 
[ 984.245258][ T23] ? drm_helper_probe_single_connector_modes 
(drivers/gpu/drm/drm_probe_helper.c:633) 
[ 984.246160][ T23] ? mutex_lock_io_nested (kernel/locking/mutex.c:759) 
[ 984.246876][ T23] ? drm_print_bits (drivers/gpu/drm/drm_print.c:334) 
[ 984.247486][ T23] ? ww_mutex_lock (kernel/locking/mutex.c:887) 
[ 984.248132][ T23] ? ww_mutex_lock (kernel/locking/mutex.c:887) 
[ 984.248681][ T23] ? drm_helper_probe_single_connector_modes 
(drivers/gpu/drm/drm_probe_helper.c:633) 
[ 984.249557][ T23] drm_helper_probe_single_connector_modes 
(drivers/gpu/drm/drm_probe_helper.c:633) 
[ 984.250457][ T23] ? __drm_helper_update_and_validate 
(drivers/gpu/drm/drm_probe_helper.c:561) 
[ 984.251275][ T23] ? __kmalloc_noprof (include/trace/events/kmem.h:54 
(discriminator 2) mm/slub.c:4366 (discriminator 2) mm/slub.c:4377 
(discriminator 2)) 
[ 984.251990][ T23] drm_client_modeset_probe 
(drivers/gpu/drm/drm_client_modeset.c:869 (discriminator 1)) 
[ 984.252659][ T23] ? drm_client_firmware_config 
(drivers/gpu/drm/drm_client_modeset.c:818) 
[ 984.253433][ T23] __drm_fb_helper_initial_config_and_unlock 
(drivers/gpu/drm/drm_fb_helper.c:1830) 
[ 984.254309][ T23] drm_fbdev_client_hotplug 
(drivers/gpu/drm/clients/drm_fbdev_client.c:53) 
[ 984.255079][ T23] drm_client_register (drivers/gpu/drm/drm_client.c:141) 
[ 984.255737][ T23] drm_fbdev_client_setup 
(drivers/gpu/drm/clients/drm_fbdev_client.c:167) 
[ 984.256474][ T23] drm_client_setup 
(drivers/gpu/drm/clients/drm_client_setup.c:47) 
[ 984.257080][ T23] vkms_create (drivers/gpu/drm/vkms/vkms_drv.c:203) 
[ 984.257646][ T23] ? drm_display_helper_module_init 
(drivers/gpu/drm/vkms/vkms_drv.c:213) 
[ 984.258477][ T23] vkms_init (drivers/gpu/drm/vkms/vkms_drv.c:221) 
[ 984.258979][ T23] do_one_initcall (init/main.c:1269) 
[ 984.259580][ T23] ? trace_event_raw_event_initcall_level (init/main.c:1260) 
[ 984.260457][ T23] do_initcalls (init/main.c:1330 (discriminator 3) 
init/main.c:1347 (discriminator 3)) 
[ 984.261031][ T23] kernel_init_freeable (init/main.c:1583) 
[ 984.261730][ T23] ? rest_init (init/main.c:1461) 
[ 984.262250][ T23] kernel_init (init/main.c:1471) 
[ 984.262775][ T23] ? rest_init (init/main.c:1461) 
[ 984.263366][ T23] ret_from_fork (arch/x86/kernel/process.c:154) 
[ 984.263966][ T23] ? rest_init (init/main.c:1461) 
[ 984.264445][ T23] ret_from_fork_asm (arch/x86/entry/entry_64.S:255) 
[  984.265087][   T23]  </TASK>
[  984.265460][   T23] INFO: task swapper/0:1 is blocked on a mutex likely 
owned by task swapper/0:1.
[  984.266569][   T23] task:swapper/0       state:D stack:0     pid:1     
tgid:1     ppid:0      task_flags:0x0140 flags:0x00004000
[  984.267995][   T23] Call Trace:
[  984.268440][   T23]  <TASK>
[ 984.268818][ T23] __schedule (kernel/sched/core.c:5357 
kernel/sched/core.c:6961) 
[ 984.269392][ T23] ? io_schedule_timeout (kernel/sched/core.c:6817) 
[ 984.270076][ T23] ? lock_acquire (include/trace/events/lock.h:24 
(discriminator 2) kernel/locking/lockdep.c:5831 (discriminator 2)) 
[ 984.270650][ T23] schedule (kernel/sched/core.c:7044 
kernel/sched/core.c:7058) 
[ 984.271187][ T23] schedule_preempt_disabled (kernel/sched/core.c:7116) 
[ 984.271938][ T23] __mutex_lock (kernel/locking/mutex.c:183 
kernel/locking/mutex.c:678 kernel/locking/mutex.c:760) 
[ 984.272512][ T23] ? drm_helper_probe_single_connector_modes 
(drivers/gpu/drm/drm_probe_helper.c:633) 
[ 984.273417][ T23] ? mutex_lock_io_nested (kernel/locking/mutex.c:759) 
[ 984.274100][ T23] ? drm_print_bits (drivers/gpu/drm/drm_print.c:334) 
[ 984.274700][ T23] ? ww_mutex_lock (kernel/locking/mutex.c:887) 
[ 984.275321][ T23] ? ww_mutex_lock (kernel/locking/mutex.c:887) 
[ 984.275900][ T23] ? drm_helper_probe_single_connector_modes 
(drivers/gpu/drm/drm_probe_helper.c:633) 
[ 984.276788][ T23] drm_helper_probe_single_connector_modes 
(drivers/gpu/drm/drm_probe_helper.c:633) 
[ 984.277636][ T23] ? __drm_helper_update_and_validate 
(drivers/gpu/drm/drm_probe_helper.c:561) 
[ 984.278471][ T23] ? __kmalloc_noprof (include/trace/events/kmem.h:54 
(discriminator 2) mm/slub.c:4366 (discriminator 2) mm/slub.c:4377 
(discriminator 2)) 
[ 984.279094][ T23] drm_client_modeset_probe 
(drivers/gpu/drm/drm_client_modeset.c:869 (discriminator 1)) 
[ 984.279852][ T23] ? drm_client_firmware_config 
(drivers/gpu/drm/drm_client_modeset.c:818) 
[ 984.280602][ T23] __drm_fb_helper_initial_config_and_unlock 
(drivers/gpu/drm/drm_fb_helper.c:1830) 
[ 984.281537][ T23] drm_fbdev_client_hotplug 
(drivers/gpu/drm/clients/drm_fbdev_client.c:53) 
[ 984.282238][ T23] drm_client_register (drivers/gpu/drm/drm_client.c:141) 
[ 984.282887][ T23] drm_fbdev_client_setup 
(drivers/gpu/drm/clients/drm_fbdev_client.c:167) 
[ 984.283611][ T23] drm_client_setup 
(drivers/gpu/drm/clients/drm_client_setup.c:47) 
[ 984.284232][ T23] vkms_create (drivers/gpu/drm/vkms/vkms_drv.c:203) 
[ 984.284846][ T23] ? drm_display_helper_module_init 
(drivers/gpu/drm/vkms/vkms_drv.c:213) 
[ 984.285609][ T23] vkms_init (drivers/gpu/drm/vkms/vkms_drv.c:221) 
[ 984.286136][ T23] do_one_initcall (init/main.c:1269) 
[ 984.286773][ T23] ? trace_event_raw_event_initcall_level (init/main.c:1260) 
[ 984.287581][ T23] do_initcalls (init/main.c:1330 (discriminator 3) 
init/main.c:1347 (discriminator 3)) 
[ 984.288212][ T23] kernel_init_freeable (init/main.c:1583) 
[ 984.288856][ T23] ? rest_init (init/main.c:1461) 
[ 984.289412][ T23] kernel_init (init/main.c:1471) 
[ 984.289983][ T23] ? rest_init (init/main.c:1461) 
[ 984.290537][ T23] ret_from_fork (arch/x86/kernel/process.c:154) 
[ 984.291124][ T23] ? rest_init (init/main.c:1461) 
[ 984.291735][ T23] ret_from_fork_asm (arch/x86/entry/entry_64.S:255) 
[  984.292371][   T23]  </TASK>
[  984.292826][   T23] INFO: lockdep is turned off.
[ 1045.677903][    C0] BUG: workqueue lockup - pool cpus=0 node=0 flags=0x0 
nice=0 stuck for 59s!
[ 1045.680667][    C0] Showing busy workqueues and worker pools:
[ 1045.684192][    C0] workqueue events_power_efficient: flags=0x80
[ 1045.684971][    C0]   pwq 2: cpus=0 node=0 flags=0x0 nice=0 active=3 refcnt=4
[ 1045.684987][    C0]     pending: neigh_managed_work, neigh_periodic_work, 
do_cache_clean
[ 1045.685083][    C0] Showing backtraces of running workers in stalled 
CPU-bound worker pools:
[ 1076.396346][    C0] BUG: workqueue lockup - pool cpus=0 node=0 flags=0x0 
nice=0 stuck for 89s!
[ 1076.400410][    C0] Showing busy workqueues and worker pools:
[ 1076.401145][    C0] workqueue events: flags=0x0
[ 1076.401765][    C0]   pwq 2: cpus=0 node=0 flags=0x0 nice=0 active=1 refcnt=2
[ 1076.401781][    C0]     pending: stop_one_cpu_nowait_workfn
[ 1076.401795][    C0] workqueue events_power_efficient: flags=0x80
[ 1076.404125][    C0]   pwq 2: cpus=0 node=0 flags=0x0 nice=0 active=3 refcnt=4
[ 1076.404141][    C0]     pending: neigh_managed_work, neigh_periodic_work, 
do_cache_clean
[ 1076.411517][    C0] Showing backtraces of running workers in stalled 
CPU-bound worker pools:



The kernel config and materials to reproduce are available at:
https://download.01.org/0day-ci/archive/20250925/[email protected]



-- 
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki

Reply via email to