<?xml version='1.0' encoding='UTF-8'?>
<?xml-stylesheet href="/static/style.xsl" type="text/xsl"?>
<rss xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/" version="2.0">
  <channel>
    <title>Most recent entries from all</title>
    <link>https://vulnerability.circl.lu</link>
    <description>Contains only the most 10 recent entries.</description>
    <docs>http://www.rssboard.org/rss-specification</docs>
    <generator>python-feedgen</generator>
    <language>en</language>
    <lastBuildDate>Tue, 29 Sep 2026 14:36:45 +0000</lastBuildDate>
    <item>
      <title>CVE-2026-68217 — media: pwc: Drain fill_buf on start_streaming() failure</title>
      <link>https://vulnerability.circl.lu/vuln/cve-2026-68217</link>
      <description>&lt;p&gt;&lt;strong&gt;Affected:&lt;/strong&gt; Linux&lt;/p&gt;
&lt;p&gt;In the Linux kernel, the following vulnerability has been resolved:&lt;/p&gt;
&lt;p&gt;media: pwc: Drain fill_buf on start_streaming() failure&lt;/p&gt;
&lt;p&gt;pwc_isoc_init() submits its isochronous URBs with
usb_submit_urb(.., GFP_KERNEL) in a loop. After the first URB is
submitted, its completion handler pwc_isoc_handler() can run on another
CPU before the loop finishes:&lt;/p&gt;
&lt;p&gt;start_streaming()
    pwc_isoc_init()
      usb_submit_urb(urbs[0], GFP_KERNEL)
                                  pwc_isoc_handler(urbs[0])
                                    pdev-&amp;gt;fill_buf =
                                      pwc_get_next_fill_buf(pdev)
      usb_submit_urb(urbs[i&amp;gt;0], ..)  -&amp;gt; fails
      pwc_isoc_cleanup(pdev)           /* kills URBs */
      return ret;
    pwc_cleanup_queued_bufs(pdev, VB2_BUF_STATE_QUEUED)&lt;/p&gt;
&lt;p&gt;pwc_get_next_fill_buf() detaches a buffer from pdev-&amp;gt;queued_bufs and
stores it in pdev-&amp;gt;fill_buf. The error path in start_streaming() only
drains pdev-&amp;gt;queued_bufs, so the buffer parked in pdev-&amp;gt;fill_buf is
leaked. vb2_start_streaming() then triggers
WARN_ON(owned_by_drv_count).&lt;/p&gt;
&lt;p&gt;stop_streaming() already handles this since commit 80b0963e1698
(&amp;#34;[media] pwc: fix WARN_ON&amp;#34;), which added the fill_buf drain in the
teardown path but not in the start_streaming() error path. Mirror that
handling on failure so start_streaming() returns with no buffer owned
by the driver.&lt;/p&gt;
&lt;p&gt;Issue identified by automated review of the INV-003 series at
https://sashiko.dev/&lt;/p&gt;</description>
      <content:encoded>&lt;p&gt;&lt;strong&gt;Affected:&lt;/strong&gt; Linux&lt;/p&gt;
&lt;p&gt;In the Linux kernel, the following vulnerability has been resolved:&lt;/p&gt;
&lt;p&gt;media: pwc: Drain fill_buf on start_streaming() failure&lt;/p&gt;
&lt;p&gt;pwc_isoc_init() submits its isochronous URBs with
usb_submit_urb(.., GFP_KERNEL) in a loop. After the first URB is
submitted, its completion handler pwc_isoc_handler() can run on another
CPU before the loop finishes:&lt;/p&gt;
&lt;p&gt;start_streaming()
    pwc_isoc_init()
      usb_submit_urb(urbs[0], GFP_KERNEL)
                                  pwc_isoc_handler(urbs[0])
                                    pdev-&amp;gt;fill_buf =
                                      pwc_get_next_fill_buf(pdev)
      usb_submit_urb(urbs[i&amp;gt;0], ..)  -&amp;gt; fails
      pwc_isoc_cleanup(pdev)           /* kills URBs */
      return ret;
    pwc_cleanup_queued_bufs(pdev, VB2_BUF_STATE_QUEUED)&lt;/p&gt;
&lt;p&gt;pwc_get_next_fill_buf() detaches a buffer from pdev-&amp;gt;queued_bufs and
stores it in pdev-&amp;gt;fill_buf. The error path in start_streaming() only
drains pdev-&amp;gt;queued_bufs, so the buffer parked in pdev-&amp;gt;fill_buf is
leaked. vb2_start_streaming() then triggers
WARN_ON(owned_by_drv_count).&lt;/p&gt;
&lt;p&gt;stop_streaming() already handles this since commit 80b0963e1698
(&amp;#34;[media] pwc: fix WARN_ON&amp;#34;), which added the fill_buf drain in the
teardown path but not in the start_streaming() error path. Mirror that
handling on failure so start_streaming() returns with no buffer owned
by the driver.&lt;/p&gt;
&lt;p&gt;Issue identified by automated review of the INV-003 series at
https://sashiko.dev/&lt;/p&gt;</content:encoded>
      <guid isPermaLink="false">https://vulnerability.circl.lu/vuln/cve-2026-68217</guid>
    </item>
  </channel>
</rss>
