syzbot
possible deadlock in nbd_ioctl
Status:
auto-obsoleted due to no activity on 2025/09/09 00:24
Subsystems:
nbd
[Documentation on labels]
Reported-by: syzbot+7f46fdd7673b5fec63ac@syzkaller.appspotmail.com
First crash: 481d, last: 481d
Sample crash report:
îÕz�jýz/w$²â(>¼ÒT”|Ôh‹ÊýÍ3ÓÀ7ð`(*ûì¦úéxÃk"ÞºùGzR…òú±AoOäź™:m@dcÜ~້Éî–]°F#§„ø<ÉÐÈHÓKœS¿_ }å ¥&4�Ò½¥:–Bƒ@Y»a‹èH{€I�êȃ¢1À/Žt‡683Ù-ªHèÓ‡ÕŸOŽ6dÓÖg;ü„zÕá¿æG·Xê4WÐ6BÛg‘í³\¨"\‹V[1¯C³ç¡ cÀ½[H+í´ó™QçˆK°¾lÍ,NJçèTt0ôêáO3 «~ÿ7ÄT7æ˜iò†[ 234.907471][T11482]
‚ìÃBJ*à©—Mï<O[ 234.908368][T11482] ======================================================
Ëbù4Ï2Ù¬…x/àÉ[ 234.911186][T11482] WARNING: possible circular locking dependency detected
ÏÖ:+¨€Þ‰ãß3l"0Ë[ 234.913886][T11482] 6.15.0-syzkaller-10402-g4cb6c8af8591 #0 Not tainted
Z�¿d®O#ýÃ̵G<'„[ 234.917367][T11482] ------------------------------------------------------
-ÊP„%¶p»žÀmxB?=[ 234.921230][T11482] syz.2.1726/11482 is trying to acquire lock:
ÌžêKÏå;¢¤Âm$[ 234.947847][T11482] nbd_config_put+0x31/0x750 drivers/block/nbd.c:1423
8¡™µ¹·ªI@¿;¥�ÍŠ[ 234.950419][T11482] nbd_release+0xb7/0x190 drivers/block/nbd.c:1735
rmDD"…÷©ÿÄeÑ€>w[ 234.952630][T11482] blkdev_put_whole+0xad/0xf0 block/bdev.c:721
ÿåj&/oc¹ÿáiˆ!i[ 234.954759][T11482] bdev_release+0x47e/0x6d0 block/bdev.c:1144
òP_yQ2¨3@†�Sèº[ 234.956801][T11482] blkdev_release+0x15/0x20 block/fops.c:684
v³—yAe]Q3œL.Õùp[ 234.958866][T11482] __fput+0x402/0xb70 fs/file_table.c:465
9^€:êèl‚‘Ÿ~ð[ 234.960790][T11482] fput_close_sync+0x118/0x260 fs/file_table.c:570
XöƒŒ±zÔÂ~MÿÏ&[ 234.963382][T11482] __do_sys_close fs/open.c:1589 [inline]
XöƒŒ±zÔÂ~MÿÏ&[ 234.963382][T11482] __se_sys_close fs/open.c:1574 [inline]
XöƒŒ±zÔÂ~MÿÏ&[ 234.963382][T11482] __x64_sys_close+0x8b/0x120 fs/open.c:1574
H~‚hó !Ôc·N'á²[ 234.965568][T11482] do_syscall_x64 arch/x86/entry/syscall_64.c:63 [inline]
H~‚hó !Ôc·N'á²[ 234.965568][T11482] do_syscall_64+0xcd/0x490 arch/x86/entry/syscall_64.c:94
оZ8à £a–êµõÏ€L[ 234.967679][T11482] entry_SYSCALL_64_after_hwframe+0x77/0x7f
Rß%Å(Þ…Ðÿ]åÃZ[ 234.970149][T11482]
G”ÖÓ…�Ô–°ºjç[ 234.973111][T11482] __mutex_lock_common kernel/locking/mutex.c:601 [inline]
G”ÖÓ…�Ô–°ºjç[ 234.973111][T11482] __mutex_lock+0x199/0xb90 kernel/locking/mutex.c:746
ÁŸ®3¿ùDõ“C9à[ 234.975247][T11482] __del_gendisk+0xf5/0xbd0 block/genhd.c:706
°ü§R8„M¹2æxZý²[ 234.977457][T11482] del_gendisk+0x13e/0x1e0 block/genhd.c:819
bÀŒ%„#Rž»|fÍÅæ[ 234.979465][T11482] loop_remove drivers/block/loop.c:2081 [inline]
bÀŒ%„#Rž»|fÍÅæ[ 234.979465][T11482] loop_control_remove drivers/block/loop.c:2140 [inline]
bÀŒ%„#Rž»|fÍÅæ[ 234.979465][T11482] loop_control_ioctl+0x4eb/0x630 drivers/block/loop.c:2178
¼®ä·“Èl_Ià�\G_b[ 234.981839][T11482] __do_compat_sys_ioctl fs/ioctl.c:1005 [inline]
¼®ä·“Èl_Ià�\G_b[ 234.981839][T11482] __se_compat_sys_ioctl fs/ioctl.c:948 [inline]
¼®ä·“Èl_Ià�\G_b[ 234.981839][T11482] __ia32_compat_sys_ioctl+0x23f/0x370 fs/ioctl.c:948
‘h§Vi×ô?ÓNfgV¾Bp[ 234.984163][T11482] do_syscall_32_irqs_on arch/x86/entry/syscall_32.c:83 [inline]
‘h§Vi×ô?ÓNfgV¾Bp[ 234.984163][T11482] __do_fast_syscall_32+0x7c/0x3a0 arch/x86/entry/syscall_32.c:306
I+¢ëh9ãµ?ªæ [ 234.986400][T11482] do_fast_syscall_32+0x32/0x80 arch/x86/entry/syscall_32.c:331
ïMvÀsîÀ½¹>Å'Çp›[ 234.988602][T11482] entry_SYSENTER_compat_after_hwframe+0x84/0x8e
MX¥sQâ�.™`ì�Ìlä[ 234.991286][T11482]
qëx©ÖIóê¶z4Rg[ƒ[ 234.994371][T11482] check_prev_add kernel/locking/lockdep.c:3168 [inline]
qëx©ÖIóê¶z4Rg[ƒ[ 234.994371][T11482] check_prevs_add kernel/locking/lockdep.c:3287 [inline]
qëx©ÖIóê¶z4Rg[ƒ[ 234.994371][T11482] validate_chain kernel/locking/lockdep.c:3911 [inline]
qëx©ÖIóê¶z4Rg[ƒ[ 234.994371][T11482] __lock_acquire+0x126f/0x1c90 kernel/locking/lockdep.c:5240
Òªa_®^íAHzôÎz/[ 234.996519][T11482] lock_acquire kernel/locking/lockdep.c:5871 [inline]
Òªa_®^íAHzôÎz/[ 234.996519][T11482] lock_acquire+0x179/0x350 kernel/locking/lockdep.c:5828
fš2=ah×ÂeRW³ô³Î[ 234.998553][T11482] down_write+0x92/0x200 kernel/locking/rwsem.c:1577
5:
&É6„k,c’š›æ[ 235.000504][T11482] blk_mq_update_nr_hw_queues+0x32/0xcb0 block/blk-mq.c:5041
À#�‡VIVHF¿¦Ã[ 235.002954][T11482] nbd_start_device+0x172/0xcd0 drivers/block/nbd.c:1476
`à²ó�ù±‚
éWè[ 235.005099][T11482] nbd_start_device_ioctl drivers/block/nbd.c:1527 [inline]
éWè[ 235.005099][T11482] __nbd_ioctl drivers/block/nbd.c:1602 [inline]
éWè[ 235.005099][T11482] nbd_ioctl+0x219/0xda0 drivers/block/nbd.c:1642
Vo&Wõ’l�ÚËëIirŠ•[ 235.007199][T11482] compat_blkdev_ioctl+0x2ee/0x7a0 block/ioctl.c:760
‚·³æ�Údÿcÿ¦áË[ 235.009416][T11482] __do_compat_sys_ioctl fs/ioctl.c:1005 [inline]
‚·³æ�Údÿcÿ¦áË[ 235.009416][T11482] __se_compat_sys_ioctl fs/ioctl.c:948 [inline]
‚·³æ�Údÿcÿ¦áË[ 235.009416][T11482] __ia32_compat_sys_ioctl+0x23f/0x370 fs/ioctl.c:948
Ø2È-¤»Äðeƒd[ 235.011817][T11482] do_syscall_32_irqs_on arch/x86/entry/syscall_32.c:83 [inline]
Ø2È-¤»Äðeƒd[ 235.011817][T11482] __do_fast_syscall_32+0x7c/0x3a0 arch/x86/entry/syscall_32.c:306
¸ŒDÛ*Žñ.=÷8ó—´¦[ 235.014044][T11482] do_fast_syscall_32+0x32/0x80 arch/x86/entry/syscall_32.c:331
ùÝ;øÓ?íw¤ž¡»1)[ 235.016183][T11482] entry_SYSENTER_compat_after_hwframe+0x84/0x8e
nÊß±[§uyøS W¸Òq…[ 235.018768][T11482]
·¦5ï'Zb·ÊŒÀ—0yùm[ 235.022468][T11482] Chain exists of:
:åå}kk™´ |æ´V“[ 235.027258][T11482] Possible unsafe locking scenario:
×’;¬%×+îlÀ;·H[ 235.030064][T11482] CPU0 CPU1
аï�#°ìoŸFœù€J[ 235.032316][T11482] ---- ----
÷;öÎ
!YgŽòe4[ 235.034467][T11482] lock(&nbd->config_lock);
Ëóð<;ýÏ�¹®ˆØ#~[ 235.036367][T11482] lock(&disk->open_mutex);
•¦™OpµLª}qü(Qê¶[ 235.039016][T11482] lock(&nbd->config_lock);
;‡¤gj<Ìó�N%Žü[ 235.041733][T11482] lock(&set->update_nr_hwq_lock);
QÁ=@£~NHNß„0‘4[ 235.043812][T11482]
Ùè¿ ‚³›†gÅ«Êø¯[ 235.046785][T11482] 1 lock held by syz.2.1726/11482:
GÇ,S0lâ,«åÃ�wm"[ 235.048846][T11482] #0: ffff888022f0b230 (&nbd->config_lock){+.+.}-{4:4}, at: nbd_ioctl+0x150/0xda0 drivers/block/nbd.c:1635
;öæÚïoÓÑûùæ¶ [ 235.052525][T11482]
`Ž�Hà7íÑvòÐå‘Ãâ½Iüj϶Uß(Á˜³þ³‹[ 235.055507][T11482] CPU: 0 UID: 0 PID: 11482 Comm: syz.2.1726 Not tainted 6.15.0-syzkaller-10402-g4cb6c8af8591 #0 PREEMPT(full)
cçÞ—ŒYm�O[ïA¾[ 235.055528][T11482] Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 1.16.3-debian-1.16.3-2~bpo12+1 04/01/2014
•YÉœ•0Ï€`‘Ø;‰W±[ 235.055536][T11482] Call Trace:
©dÀªð×!ÐxX~# µ�–[ 235.055541][T11482] <TASK>
Ëÿ;ûàäÌâ`VHëˆ[ 235.055547][T11482] __dump_stack lib/dump_stack.c:94 [inline]
Ëÿ;ûàäÌâ`VHëˆ[ 235.055547][T11482] dump_stack_lvl+0x116/0x1f0 lib/dump_stack.c:120
dUü„“°+ê“ø*í[ 235.055563][T11482] print_circular_bug+0x275/0x350 kernel/locking/lockdep.c:2046
us‡�ãþ^[6;מù9[<[ 235.055603][T11482] check_prev_add kernel/locking/lockdep.c:3168 [inline]
us‡�ãþ^[6;מù9[<[ 235.055603][T11482] check_prevs_add kernel/locking/lockdep.c:3287 [inline]
us‡�ãþ^[6;מù9[<[ 235.055603][T11482] validate_chain kernel/locking/lockdep.c:3911 [inline]
us‡�ãþ^[6;מù9[<[ 235.055603][T11482] __lock_acquire+0x126f/0x1c90 kernel/locking/lockdep.c:5240
µûíÁ¯*I41Á=„Æ[ 235.055617][T11482] lock_acquire kernel/locking/lockdep.c:5871 [inline]
µûíÁ¯*I41Á=„Æ[ 235.055617][T11482] lock_acquire+0x179/0x350 kernel/locking/lockdep.c:5828
E0´A¥²Ï�êÆÆPn‚Á][ 235.055645][T11482] ? __pfx___might_resched+0x10/0x10 kernel/sched/core.c:5899
“-„Y¹’¥ÔÃÍŒýï@z=[ 235.055677][T11482] down_write+0x92/0x200 kernel/locking/rwsem.c:1577
ðïÅò‰Õ8·†àÞ�É[ 235.055690][T11482] ? blk_mq_update_nr_hw_queues+0x32/0xcb0 block/blk-mq.c:5041
�[wñÝ+¯»´ØØ¿ÑbMU[ 235.055718][T11482] ? __mutex_lock_common kernel/locking/mutex.c:611 [inline]
�[wñÝ+¯»´ØØ¿ÑbMU[ 235.055718][T11482] ? __mutex_lock+0x1ca/0xb90 kernel/locking/mutex.c:746
lì•æÐe*ß4xå �[ 235.055752][T11482] blk_mq_update_nr_hw_queues+0x32/0xcb0 block/blk-mq.c:5041
½ƒÓ8³Xü�p€|&ÿd_[ 235.055767][T11482] ? __pfx___mutex_lock+0x10/0x10 usercopy_64.c:-1
ÊšÖµ�ÀËùì->…Eè[ 235.055797][T11482] nbd_start_device+0x172/0xcd0 drivers/block/nbd.c:1476
¡k]«Pת” _pvš«[ 235.055814][T11482] ? bpf_lsm_capable+0x9/0x10 include/linux/lsm_hook_defs.h:44
S.ÄÊRúû^üfx,^[ 235.055843][T11482] ? __pfx_nbd_ioctl+0x10/0x10 drivers/block/nbd.c:828
É}m÷VŸ5p/Ó¯ù¾Y[ 235.055862][T11482] ? find_held_lock+0x2b/0x80 kernel/locking/lockdep.c:5353
NÄÇ�ŠS°9i`ØP[ 235.055891][T11482] compat_blkdev_ioctl+0x2ee/0x7a0 block/ioctl.c:760
€!‘(œm[,|"¥ûáF[ 235.055904][T11482] ? __pfx_compat_blkdev_ioctl+0x10/0x10 block/ioctl.c:702
¸çw]×eü4w¼~ÉÒh[ 235.055931][T11482] __do_compat_sys_ioctl fs/ioctl.c:1005 [inline]
¸çw]×eü4w¼~ÉÒh[ 235.055931][T11482] __se_compat_sys_ioctl fs/ioctl.c:948 [inline]
¸çw]×eü4w¼~ÉÒh[ 235.055931][T11482] __ia32_compat_sys_ioctl+0x23f/0x370 fs/ioctl.c:948
¡ÜÜ29 œ¨½bÅÚ¬[ 235.055950][T11482] do_syscall_32_irqs_on arch/x86/entry/syscall_32.c:83 [inline]
¡ÜÜ29 œ¨½bÅÚ¬[ 235.055950][T11482] __do_fast_syscall_32+0x7c/0x3a0 arch/x86/entry/syscall_32.c:306
@ñ™×¯˜?ÐðTÄÑ[ 235.055964][T11482] do_fast_syscall_32+0x32/0x80 arch/x86/entry/syscall_32.c:331
æR¯›¶>KÒÛÚyZ+bt[ 235.055977][T11482] entry_SYSENTER_compat_after_hwframe+0x84/0x8e
«ÚžW Â-bQõÕŠ [ 235.055992][T11482] RIP: 0023:0xf7fc5579
~ìf£i�†hv‡^€ç|/[ 235.056012][T11482] RSP: 002b:00000000f50e655c EFLAGS: 00000296 ORIG_RAX: 0000000000000036
˜xÅ$,YÕÕí 㣖[ 235.056023][T11482] RAX: ffffffffffffffda RBX: 0000000000000003 RCX: 000000000000ab03
ƒAœêÉ´ÃVÊGáHL[ 235.056030][T11482] RDX: 0000000000000000 RSI: 0000000000000000 RDI: 0000000000000000
SMK�Ì*SuÝÊã—[ 235.056036][T11482] RBP: 0000000000000000 R08: 0000000000000000 R09: 0000000000000000
L§ãÝð8*Ì1m&ÞúQì[ 235.056049][T11482] R13: 0000000000000000 R14: 0000000000000000 R15: 0000000000000000
ópÏ¿5ƒæµ=ùXŸ¥ú¤
Œ:==öB>];�oFÒÈçåjö+ X„þsëm‘ogI OPï¿½ç€ŽŽ›‹p±=w•«ñ“ûúå§©!z÷¢÷�[ȱׂG$ë[�ûniUJœ\œB԰ǯJ¨Ûïz¢�ä�²žG«èYE¿]Apaxeê‰&1]Á/hâKDRkZ*°îE°k7ŸÜªcÐ,Ùk*Êu?'«†rÏ“kV}'r¦eàùSJÖÞ¦kpá„”ý¦³ð¿Ròó��œ$šH$ëÿ.Ä�<WýG@ú?^Â'ýë‘!Ža‘)È�éˆ�}Ž"ð“�Ü© XäxɉR´ G³B;è™â�ÿöj“a:NõÃÖ!Ï&ØÝç8°ó– ÀBÏërºÒSߨ|'V~z04`e«¯›Ãô„u*î¨�‡wBùJµÑ»Q͇bÂù™H12÷¿$¥Ïsaئr´º¢ðq˜{SαE±ÖMá<ë® ±?õøN¶î1ðjÒ³Õ±°D„%ÆK¢K¬£_ªÑ€mLØ’ËYͼ_²QMÄÀ㇡Ú;\�×*Pt¢û3ë¯+¬Ã|¢œ¸Sn±Òl?ò(�CG°ßÞv_0®ÚØ”÷ÇÙ§xðã±}"ß-Rß!ð‰O‡÷k/¤Sˆ¤ö™wñÃ&Ïð]-z�®~ß¡L‹/'÷ A’TÖH%�ÍÀ
·;gz&(üM=cÊaDÉ=ži ‡»YÕG¶CÓ«�[>`ü›�{“´“«Ô^¾ýàç¦DYëÆÝÏ ÿïÛ†Idmy/kQm¶ëÌÏÒ£Ê9¹†�t�à�ÄôF˜VÜ�|¦A\`K—Gëô‰ÿJÓè˜%ô.í©RDh)ŽøT"/0ê¤Kâ�h»BçöÕûô&ýƈ“ÒJ¶+a
z9ÝY2®«z—˜…Å ÄÚã�dXÑ[E�
SYZFAIL: failed to recv rpc
fd=3 want=4 recv=0 n=0 (errno 9: Bad file descriptor)
E³<�r�‹V9 'NuÌxq¢Þ=xƒðŠm§íTlzø=œÁÔcpzŒ>¢J¸ižVAoU˜m4T„[Ó-½>`Ѥg-;¨“3e-�ú4$¾ë…‹ô’¯º6#<¬ï¿½ï¿½[ 235.199512][T11481] netlink: 4 bytes leftover after parsing attributes in process `syz.6.1727'.
* Struck through repros no longer work on HEAD.