<?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 07:24:43 +0000</lastBuildDate>
    <item>
      <title>CVE-2026-80628 — ALSA: seq: oss: Serialize readq reset state with q-&gt;lock</title>
      <link>https://vulnerability.circl.lu/vuln/cve-2026-80628</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;ALSA: seq: oss: Serialize readq reset state with q-&amp;gt;lock&lt;/p&gt;
&lt;p&gt;snd_seq_oss_readq_clear() resets qlen, head, and tail without
q-&amp;gt;lock even though the normal reader and producer paths serialize the
same ring state under that spinlock. A reset can therefore race
snd_seq_oss_readq_free() or snd_seq_oss_readq_put_event() and leave
stale records in the queue, drop freshly queued ones, or report the
wrong readiness after wakeup. KCSAN reports a data race between
snd_seq_oss_readq_clear() and snd_seq_oss_readq_free().&lt;/p&gt;
&lt;p&gt;Take q-&amp;gt;lock while clearing the ring and resetting input_time. Factor
the enqueue logic into a caller-locked helper so
snd_seq_oss_readq_put_timestamp() updates its suppression state under
the same lock instead of racing the reset path.&lt;/p&gt;
&lt;p&gt;The buggy scenario involves two paths, with each column showing the
order within that path:&lt;/p&gt;
&lt;p&gt;reset path:                      locked readq updater:
1. snd_seq_oss_reset() or        1. A reader or callback producer
   release reaches                  takes q-&amp;gt;lock on the same queue.
   snd_seq_oss_readq_clear().
2. snd_seq_oss_readq_clear()     2. The updater tests or modifies
   resets qlen, head, tail,         qlen, head, and tail.
   and input_time.
3. snd_seq_oss_readq_clear()     3. The updater completes its
   wakes sleepers on                read-modify-write sequence.
   q-&amp;gt;midi_sleep.
4. Without q-&amp;gt;lock, the reset    4. The resulting ring state drives
   can overl…&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;ALSA: seq: oss: Serialize readq reset state with q-&amp;gt;lock&lt;/p&gt;
&lt;p&gt;snd_seq_oss_readq_clear() resets qlen, head, and tail without
q-&amp;gt;lock even though the normal reader and producer paths serialize the
same ring state under that spinlock. A reset can therefore race
snd_seq_oss_readq_free() or snd_seq_oss_readq_put_event() and leave
stale records in the queue, drop freshly queued ones, or report the
wrong readiness after wakeup. KCSAN reports a data race between
snd_seq_oss_readq_clear() and snd_seq_oss_readq_free().&lt;/p&gt;
&lt;p&gt;Take q-&amp;gt;lock while clearing the ring and resetting input_time. Factor
the enqueue logic into a caller-locked helper so
snd_seq_oss_readq_put_timestamp() updates its suppression state under
the same lock instead of racing the reset path.&lt;/p&gt;
&lt;p&gt;The buggy scenario involves two paths, with each column showing the
order within that path:&lt;/p&gt;
&lt;p&gt;reset path:                      locked readq updater:
1. snd_seq_oss_reset() or        1. A reader or callback producer
   release reaches                  takes q-&amp;gt;lock on the same queue.
   snd_seq_oss_readq_clear().
2. snd_seq_oss_readq_clear()     2. The updater tests or modifies
   resets qlen, head, tail,         qlen, head, and tail.
   and input_time.
3. snd_seq_oss_readq_clear()     3. The updater completes its
   wakes sleepers on                read-modify-write sequence.
   q-&amp;gt;midi_sleep.
4. Without q-&amp;gt;lock, the reset    4. The resulting ring state drives
   can overl…&lt;/p&gt;</content:encoded>
      <guid isPermaLink="false">https://vulnerability.circl.lu/vuln/cve-2026-80628</guid>
    </item>
  </channel>
</rss>
