* [syzbot] [media?] INFO: trying to register non-static key in __vb2_queue_cancel
@ 2026-07-15 3:16 syzbot
2026-07-15 9:15 ` Forwarded: " syzbot
` (5 more replies)
0 siblings, 6 replies; 7+ messages in thread
From: syzbot @ 2026-07-15 3:16 UTC (permalink / raw)
To: linux-kernel, linux-media, m.szyprowski, mchehab, syzkaller-bugs,
tfiga
Hello,
syzbot found the following issue on:
HEAD commit: cc2b5f627e8c Add linux-next specific files for 20260714
git tree: linux-next
console output: https://syzkaller.appspot.com/x/log.txt?x=17fb04b9580000
kernel config: https://syzkaller.appspot.com/x/.config?x=2290ccbf984c524f
dashboard link: https://syzkaller.appspot.com/bug?extid=2302c5dc59995fbb8089
compiler: Debian clang version 22.1.8 (++20260613092233+e80beda6e255-1~exp1~20260613092250.77), Debian LLD 22.1.8
syz repro: https://syzkaller.appspot.com/x/repro.syz?x=12d598b9580000
C reproducer: https://syzkaller.appspot.com/x/repro.c?x=14500789580000
Downloadable assets:
disk image: https://storage.googleapis.com/syzbot-assets/6836f8efb1da/disk-cc2b5f62.raw.xz
vmlinux: https://storage.googleapis.com/syzbot-assets/0109d3477cc7/vmlinux-cc2b5f62.xz
kernel image: https://storage.googleapis.com/syzbot-assets/c2e49e350bbf/bzImage-cc2b5f62.xz
IMPORTANT: if you fix the issue, please add the following tag to the commit:
Reported-by: syzbot+2302c5dc59995fbb8089@syzkaller.appspotmail.com
em28xx 1-1:0.132: AC97 chip type couldn't be determined
em28xx 1-1:0.132: No AC97 audio processor
usb 1-1: Decoder not found
em28xx 1-1:0.132: failed to create media graph
em28xx 1-1:0.132: V4L2 device video103 deregistered
INFO: trying to register non-static key.
The code is fine but needs lockdep annotation, or maybe
you didn't initialize this object before use?
turning off the locking correctness validator.
CPU: 1 UID: 0 PID: 5649 Comm: kworker/1:3 Not tainted syzkaller #0 PREEMPT_{RT,(full)}
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 06/25/2026
Workqueue: events request_module_async
Call Trace:
<TASK>
dump_stack_lvl+0xe8/0x150 lib/dump_stack.c:120
assign_lock_key+0x133/0x150 kernel/locking/lockdep.c:1000
register_lock_class+0xcc/0x2e0 kernel/locking/lockdep.c:1315
__lock_acquire+0xaf/0x2e40 kernel/locking/lockdep.c:5128
lock_acquire+0x115/0x350 kernel/locking/lockdep.c:5906
rt_spin_lock+0x83/0x400 kernel/locking/spinlock_rt.c:56
spin_lock include/linux/spinlock_rt.h:45 [inline]
__wake_up_common_lock+0x2f/0x1f0 kernel/sched/wait.c:124
__vb2_queue_cancel+0x2de/0xdc0 drivers/media/common/videobuf2/videobuf2-core.c:2244
vb2_core_queue_release+0x2f/0x150 drivers/media/common/videobuf2/videobuf2-core.c:2677
vb2_queue_release drivers/media/common/videobuf2/videobuf2-v4l2.c:956 [inline]
vb2_video_unregister_device+0x15b/0x200 drivers/media/common/videobuf2/videobuf2-v4l2.c:1292
em28xx_v4l2_init+0x1c60/0x3140 drivers/media/usb/em28xx/em28xx-video.c:3097
em28xx_init_extension+0x120/0x1d0 drivers/media/usb/em28xx/em28xx-core.c:1248
process_one_work+0xaaf/0x1480 kernel/workqueue.c:3379
process_scheduled_works kernel/workqueue.c:3462 [inline]
worker_thread+0xb05/0x10d0 kernel/workqueue.c:3543
kthread+0x388/0x470 kernel/kthread.c:436
ret_from_fork+0x514/0xb70 arch/x86/kernel/process.c:158
ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:245
</TASK>
Oops: general protection fault, probably for non-canonical address 0xdffffc0000000000: 0000 [#1] SMP KASAN PTI
KASAN: null-ptr-deref in range [0x0000000000000000-0x0000000000000007]
CPU: 1 UID: 0 PID: 5649 Comm: kworker/1:3 Not tainted syzkaller #0 PREEMPT_{RT,(full)}
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 06/25/2026
Workqueue: events request_module_async
RIP: 0010:__wake_up_common kernel/sched/wait.c:104 [inline]
RIP: 0010:__wake_up_common_lock+0xd6/0x1f0 kernel/sched/wait.c:125
Code: 0f 84 d4 00 00 00 44 8b 7c 24 04 eb 13 48 ba 00 00 00 00 00 fc ff df 4c 39 ed 0f 84 ba 00 00 00 49 89 ee 48 89 e8 48 c1 e8 03 <80> 3c 10 00 74 12 4c 89 f7 e8 1c ce 93 00 48 ba 00 00 00 00 00 fc
RSP: 0018:ffffc9000595f908 EFLAGS: 00010246
RAX: 0000000000000000 RBX: 0000000000000000 RCX: 0000000000000000
RDX: dffffc0000000000 RSI: ffffffff8bcbd060 RDI: 00000000ffffffff
RBP: 0000000000000000 R08: 0000000000000000 R09: 0000000000000000
R10: dffffc0000000000 R11: fffffbfff1fa1890 R12: ffff88803e181b14
R13: ffff88803e181c28 R14: 0000000000000000 R15: 0000000000000000
FS: 0000000000000000(0000) GS:ffff888125af2000(0000) knlGS:0000000000000000
CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 00005625301fb660 CR3: 000000003774e000 CR4: 00000000003526f0
Call Trace:
<TASK>
__vb2_queue_cancel+0x2de/0xdc0 drivers/media/common/videobuf2/videobuf2-core.c:2244
vb2_core_queue_release+0x2f/0x150 drivers/media/common/videobuf2/videobuf2-core.c:2677
vb2_queue_release drivers/media/common/videobuf2/videobuf2-v4l2.c:956 [inline]
vb2_video_unregister_device+0x15b/0x200 drivers/media/common/videobuf2/videobuf2-v4l2.c:1292
em28xx_v4l2_init+0x1c60/0x3140 drivers/media/usb/em28xx/em28xx-video.c:3097
em28xx_init_extension+0x120/0x1d0 drivers/media/usb/em28xx/em28xx-core.c:1248
process_one_work+0xaaf/0x1480 kernel/workqueue.c:3379
process_scheduled_works kernel/workqueue.c:3462 [inline]
worker_thread+0xb05/0x10d0 kernel/workqueue.c:3543
kthread+0x388/0x470 kernel/kthread.c:436
ret_from_fork+0x514/0xb70 arch/x86/kernel/process.c:158
ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:245
</TASK>
Modules linked in:
---[ end trace 0000000000000000 ]---
RIP: 0010:__wake_up_common kernel/sched/wait.c:104 [inline]
RIP: 0010:__wake_up_common_lock+0xd6/0x1f0 kernel/sched/wait.c:125
Code: 0f 84 d4 00 00 00 44 8b 7c 24 04 eb 13 48 ba 00 00 00 00 00 fc ff df 4c 39 ed 0f 84 ba 00 00 00 49 89 ee 48 89 e8 48 c1 e8 03 <80> 3c 10 00 74 12 4c 89 f7 e8 1c ce 93 00 48 ba 00 00 00 00 00 fc
RSP: 0018:ffffc9000595f908 EFLAGS: 00010246
RAX: 0000000000000000 RBX: 0000000000000000 RCX: 0000000000000000
RDX: dffffc0000000000 RSI: ffffffff8bcbd060 RDI: 00000000ffffffff
RBP: 0000000000000000 R08: 0000000000000000 R09: 0000000000000000
R10: dffffc0000000000 R11: fffffbfff1fa1890 R12: ffff88803e181b14
R13: ffff88803e181c28 R14: 0000000000000000 R15: 0000000000000000
FS: 0000000000000000(0000) GS:ffff888125af2000(0000) knlGS:0000000000000000
CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 00005625301fb660 CR3: 000000003774e000 CR4: 00000000003526f0
----------------
Code disassembly (best guess):
0: 0f 84 d4 00 00 00 je 0xda
6: 44 8b 7c 24 04 mov 0x4(%rsp),%r15d
b: eb 13 jmp 0x20
d: 48 ba 00 00 00 00 00 movabs $0xdffffc0000000000,%rdx
14: fc ff df
17: 4c 39 ed cmp %r13,%rbp
1a: 0f 84 ba 00 00 00 je 0xda
20: 49 89 ee mov %rbp,%r14
23: 48 89 e8 mov %rbp,%rax
26: 48 c1 e8 03 shr $0x3,%rax
* 2a: 80 3c 10 00 cmpb $0x0,(%rax,%rdx,1) <-- trapping instruction
2e: 74 12 je 0x42
30: 4c 89 f7 mov %r14,%rdi
33: e8 1c ce 93 00 call 0x93ce54
38: 48 rex.W
39: ba 00 00 00 00 mov $0x0,%edx
3e: 00 fc add %bh,%ah
---
This report is generated by a bot. It may contain errors.
See https://goo.gl/tpsmEJ for more information about syzbot.
syzbot engineers can be reached at syzkaller@googlegroups.com.
syzbot will keep track of this issue. See:
https://goo.gl/tpsmEJ#status for how to communicate with syzbot.
If the report is already addressed, let syzbot know by replying with:
#syz fix: exact-commit-title
If you want syzbot to run the reproducer, reply with:
#syz test: git://repo/address.git branch-or-commit-hash
If you attach or paste a git patch, syzbot will apply it before testing.
If you want to overwrite report's subsystems, reply with:
#syz set subsystems: new-subsystem
(See the list of subsystem names on the web dashboard)
If the report is a duplicate of another one, reply with:
#syz dup: exact-subject-of-another-report
If you want to undo deduplication, reply with:
#syz undup
^ permalink raw reply [flat|nested] 7+ messages in thread
* Forwarded: Re: [syzbot] [media?] INFO: trying to register non-static key in __vb2_queue_cancel
2026-07-15 3:16 [syzbot] [media?] INFO: trying to register non-static key in __vb2_queue_cancel syzbot
@ 2026-07-15 9:15 ` syzbot
2026-07-15 12:17 ` syzbot
` (4 subsequent siblings)
5 siblings, 0 replies; 7+ messages in thread
From: syzbot @ 2026-07-15 9:15 UTC (permalink / raw)
To: linux-kernel
For archival purposes, forwarding an incoming command email to
linux-kernel@vger.kernel.org.
***
Subject: Re: [syzbot] [media?] INFO: trying to register non-static key in __vb2_queue_cancel
Author: gautambhadori9@gmail.com
#syz test:
https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git
cc2b5f627e8ccbae1188ef2d8be3e451d7f933a5
^ permalink raw reply [flat|nested] 7+ messages in thread
* Forwarded: Re: [syzbot] [media?] INFO: trying to register non-static key in __vb2_queue_cancel
2026-07-15 3:16 [syzbot] [media?] INFO: trying to register non-static key in __vb2_queue_cancel syzbot
2026-07-15 9:15 ` Forwarded: " syzbot
@ 2026-07-15 12:17 ` syzbot
2026-07-15 14:15 ` syzbot
` (3 subsequent siblings)
5 siblings, 0 replies; 7+ messages in thread
From: syzbot @ 2026-07-15 12:17 UTC (permalink / raw)
To: linux-kernel
For archival purposes, forwarding an incoming command email to
linux-kernel@vger.kernel.org.
***
Subject: Re: [syzbot] [media?] INFO: trying to register non-static key in __vb2_queue_cancel
Author: gautambhadori9@gmail.com
#syz test: git://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git
cc2b5f627e8ccbae1188ef2d8be3e451d7f933a5
^ permalink raw reply [flat|nested] 7+ messages in thread
* Forwarded: Re: [syzbot] [media?] INFO: trying to register non-static key in __vb2_queue_cancel
2026-07-15 3:16 [syzbot] [media?] INFO: trying to register non-static key in __vb2_queue_cancel syzbot
2026-07-15 9:15 ` Forwarded: " syzbot
2026-07-15 12:17 ` syzbot
@ 2026-07-15 14:15 ` syzbot
2026-07-15 15:36 ` syzbot
` (2 subsequent siblings)
5 siblings, 0 replies; 7+ messages in thread
From: syzbot @ 2026-07-15 14:15 UTC (permalink / raw)
To: linux-kernel
For archival purposes, forwarding an incoming command email to
linux-kernel@vger.kernel.org.
***
Subject: Re: [syzbot] [media?] INFO: trying to register non-static key in __vb2_queue_cancel
Author: gautambhadori9@gmail.com
#syz test
^ permalink raw reply [flat|nested] 7+ messages in thread
* Forwarded: Re: [syzbot] [media?] INFO: trying to register non-static key in __vb2_queue_cancel
2026-07-15 3:16 [syzbot] [media?] INFO: trying to register non-static key in __vb2_queue_cancel syzbot
` (2 preceding siblings ...)
2026-07-15 14:15 ` syzbot
@ 2026-07-15 15:36 ` syzbot
2026-07-16 4:35 ` syzbot
2026-07-16 11:24 ` syzbot
5 siblings, 0 replies; 7+ messages in thread
From: syzbot @ 2026-07-15 15:36 UTC (permalink / raw)
To: linux-kernel
For archival purposes, forwarding an incoming command email to
linux-kernel@vger.kernel.org.
***
Subject: Re: [syzbot] [media?] INFO: trying to register non-static key in __vb2_queue_cancel
Author: gautambhadori9@gmail.com
#syz test: git://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git
cc2b5f627e8ccbae1188ef2d8be3e451d7f933a5
^ permalink raw reply [flat|nested] 7+ messages in thread
* Forwarded: Re: [syzbot] [media?] INFO: trying to register non-static key in __vb2_queue_cancel
2026-07-15 3:16 [syzbot] [media?] INFO: trying to register non-static key in __vb2_queue_cancel syzbot
` (3 preceding siblings ...)
2026-07-15 15:36 ` syzbot
@ 2026-07-16 4:35 ` syzbot
2026-07-16 11:24 ` syzbot
5 siblings, 0 replies; 7+ messages in thread
From: syzbot @ 2026-07-16 4:35 UTC (permalink / raw)
To: linux-kernel
For archival purposes, forwarding an incoming command email to
linux-kernel@vger.kernel.org.
***
Subject: Re: [syzbot] [media?] INFO: trying to register non-static key in __vb2_queue_cancel
Author: gautambhadori9@gmail.com
#syz test
^ permalink raw reply [flat|nested] 7+ messages in thread
* Forwarded: Re: [syzbot] [media?] INFO: trying to register non-static key in __vb2_queue_cancel
2026-07-15 3:16 [syzbot] [media?] INFO: trying to register non-static key in __vb2_queue_cancel syzbot
` (4 preceding siblings ...)
2026-07-16 4:35 ` syzbot
@ 2026-07-16 11:24 ` syzbot
5 siblings, 0 replies; 7+ messages in thread
From: syzbot @ 2026-07-16 11:24 UTC (permalink / raw)
To: linux-kernel
For archival purposes, forwarding an incoming command email to
linux-kernel@vger.kernel.org.
***
Subject: Re: [syzbot] [media?] INFO: trying to register non-static key in __vb2_queue_cancel
Author: gautambhadori9@gmail.com
#syz test: git://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git
cc2b5f627e8ccbae1188ef2d8be3e451d7f933a5
diff --git a/drivers/media/usb/em28xx/em28xx-video.c
b/drivers/media/usb/em28xx/em28xx-video.c
index c418add65b..d93f1b5049 100644
--- a/drivers/media/usb/em28xx/em28xx-video.c
+++ b/drivers/media/usb/em28xx/em28xx-video.c
@@ -1410,6 +1410,9 @@ static int em28xx_vb2_setup(struct em28xx *dev)
if (rc < 0)
return rc;
+ if (!em28xx_vbi_supported(dev))
+ return 0;
+
/* Setup Videobuf2 for VBI capture */
q = &v4l2->vb_vbiq;
q->type = V4L2_BUF_TYPE_VBI_CAPTURE;
@@ -2416,7 +2419,7 @@ static int em28xx_v4l2_fini(struct em28xx *dev)
if (video_is_registered(&v4l2->radio_dev)) {
dev_info(&dev->intf->dev, "V4L2 device %s deregistered\n",
video_device_node_name(&v4l2->radio_dev));
- vb2_video_unregister_device(&v4l2->radio_dev);
+ video_unregister_device(&v4l2->radio_dev);
}
if (video_is_registered(&v4l2->vbi_dev)) {
dev_info(&dev->intf->dev, "V4L2 device %s deregistered\n",
@@ -2954,6 +2957,7 @@ static int em28xx_v4l2_init(struct em28xx *dev)
mutex_init(&v4l2->vb_vbi_queue_lock);
v4l2->vdev.queue = &v4l2->vb_vidq;
v4l2->vdev.queue->lock = &v4l2->vb_queue_lock;
+ v4l2->vb_vbiq.lock = &v4l2->vb_vbi_queue_lock;
v4l2->vdev.device_caps = V4L2_CAP_READWRITE | V4L2_CAP_VIDEO_CAPTURE |
V4L2_CAP_STREAMING;
if (dev->int_audio_type != EM28XX_INT_AUDIO_NONE)
@@ -2983,6 +2987,11 @@ static int em28xx_v4l2_init(struct em28xx *dev)
if (dev->chip_id == CHIP_ID_EM2828X || dev->board.decoder == EM28XX_BUILTIN)
v4l2_disable_ioctl(&v4l2->vdev, VIDIOC_ENUM_FRAMESIZES);
+ /* Initialize the queues before registering devices that reference them. */
+ ret = em28xx_vb2_setup(dev);
+ if (ret)
+ goto unregister_dev;
+
/* register v4l2 video video_device */
ret = video_register_device(&v4l2->vdev, VFL_TYPE_VIDEO,
video_nr[dev->devno]);
@@ -3068,9 +3077,6 @@ static int em28xx_v4l2_init(struct em28xx *dev)
/* Save some power by putting tuner to sleep */
v4l2_device_call_all(&v4l2->v4l2_dev, 0, tuner, standby);
- /* initialize videobuf2 stuff */
- em28xx_vb2_setup(dev);
-
dev_info(&dev->intf->dev,
"V4L2 extension successfully initialized\n");
@@ -3082,7 +3088,7 @@ static int em28xx_v4l2_init(struct em28xx *dev)
dev_info(&dev->intf->dev,
"V4L2 device %s deregistered\n",
video_device_node_name(&v4l2->radio_dev));
- vb2_video_unregister_device(&v4l2->radio_dev);
+ video_unregister_device(&v4l2->radio_dev);
}
if (video_is_registered(&v4l2->vbi_dev)) {
dev_info(&dev->intf->dev,
^ permalink raw reply related [flat|nested] 7+ messages in thread
end of thread, other threads:[~2026-07-16 11:24 UTC | newest]
Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-07-15 3:16 [syzbot] [media?] INFO: trying to register non-static key in __vb2_queue_cancel syzbot
2026-07-15 9:15 ` Forwarded: " syzbot
2026-07-15 12:17 ` syzbot
2026-07-15 14:15 ` syzbot
2026-07-15 15:36 ` syzbot
2026-07-16 4:35 ` syzbot
2026-07-16 11:24 ` syzbot
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.