In the Linux kernel, the following vulnerability has been resolved:
media: vivid: check for vb2isbusy() when toggling caps
The vividupdateformat_cap/out() functions must only be called if the capture/output queue are not busy. But for the controls that select the CROP/COMPOSE/SCALE capability that is not checked.
Only when streaming starts will they be set to 'grabbed' and it is impossible to change the control, but between REQBUFS and STREAMON you are still allowed to set these controls. Since vividupdateformat_cap/out will change the format, this can cause unexpected results.
Besides adding these checks, also add a WARNON in vividupdateformatcap/out() if the queue is busy.
I'm 90% certain that this is the cause of this syzbot bug:
https://syzkaller.appspot.com/bug?extid=dac8f5eaa46837e97b89
But since we never have reproducers, it is hard to be certain. In any case, these checks are needed regardless.
{
"osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/68xxx/CVE-2026-68204.json",
"cna_assigner": "Linux"
}