<?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://db.gcve.eu</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>Mon, 28 Sep 2026 23:55:57 +0000</lastBuildDate>
    <item>
      <title>CVE-2022-50381 — md: fix a crash in mempool_free</title>
      <link>https://db.gcve.eu/vuln/cve-2022-50381</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;md: fix a crash in mempool_free&lt;/p&gt;
&lt;p&gt;There&amp;#39;s a crash in mempool_free when running the lvm test
shell/lvchange-rebuild-raid.sh.&lt;/p&gt;
&lt;p&gt;The reason for the crash is this:
* super_written calls atomic_dec_and_test(&amp;amp;mddev-&amp;gt;pending_writes) and
  wake_up(&amp;amp;mddev-&amp;gt;sb_wait). Then it calls rdev_dec_pending(rdev, mddev)
  and bio_put(bio).
* so, the process that waited on sb_wait and that is woken up is racing
  with bio_put(bio).
* if the process wins the race, it calls bioset_exit before bio_put(bio)
  is executed.
* bio_put(bio) attempts to free a bio into a destroyed bio set - causing
  a crash in mempool_free.&lt;/p&gt;
&lt;p&gt;We fix this bug by moving bio_put before atomic_dec_and_test.&lt;/p&gt;
&lt;p&gt;We also move rdev_dec_pending before atomic_dec_and_test as suggested by
Neil Brown.&lt;/p&gt;
&lt;p&gt;The function md_end_flush has a similar bug - we must call bio_put before
we decrement the number of in-progress bios.&lt;/p&gt;
&lt;p&gt;BUG: kernel NULL pointer dereference, address: 0000000000000000
 #PF: supervisor write access in kernel mode
 #PF: error_code(0x0002) - not-present page
 PGD 11557f0067 P4D 11557f0067 PUD 0
 Oops: 0002 [#1] PREEMPT SMP
 CPU: 0 PID: 73 Comm: kworker/0:1 Not tainted 6.1.0-rc3 #5
 Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.14.0-2 04/01/2014
 Workqueue: kdelayd flush_expired_bios [dm_delay]
 RIP: 0010:mempool_free+0x47/0x80
 Code: 48 89 ef 5b 5d ff e0 f3 c3 48 89 f7 e8 32 45 3f 00 48 63 53 08 48 89 c6 3b 53 04 7d 2d 48 8b 43 10 8d 4a 01…&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;md: fix a crash in mempool_free&lt;/p&gt;
&lt;p&gt;There&amp;#39;s a crash in mempool_free when running the lvm test
shell/lvchange-rebuild-raid.sh.&lt;/p&gt;
&lt;p&gt;The reason for the crash is this:
* super_written calls atomic_dec_and_test(&amp;amp;mddev-&amp;gt;pending_writes) and
  wake_up(&amp;amp;mddev-&amp;gt;sb_wait). Then it calls rdev_dec_pending(rdev, mddev)
  and bio_put(bio).
* so, the process that waited on sb_wait and that is woken up is racing
  with bio_put(bio).
* if the process wins the race, it calls bioset_exit before bio_put(bio)
  is executed.
* bio_put(bio) attempts to free a bio into a destroyed bio set - causing
  a crash in mempool_free.&lt;/p&gt;
&lt;p&gt;We fix this bug by moving bio_put before atomic_dec_and_test.&lt;/p&gt;
&lt;p&gt;We also move rdev_dec_pending before atomic_dec_and_test as suggested by
Neil Brown.&lt;/p&gt;
&lt;p&gt;The function md_end_flush has a similar bug - we must call bio_put before
we decrement the number of in-progress bios.&lt;/p&gt;
&lt;p&gt;BUG: kernel NULL pointer dereference, address: 0000000000000000
 #PF: supervisor write access in kernel mode
 #PF: error_code(0x0002) - not-present page
 PGD 11557f0067 P4D 11557f0067 PUD 0
 Oops: 0002 [#1] PREEMPT SMP
 CPU: 0 PID: 73 Comm: kworker/0:1 Not tainted 6.1.0-rc3 #5
 Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.14.0-2 04/01/2014
 Workqueue: kdelayd flush_expired_bios [dm_delay]
 RIP: 0010:mempool_free+0x47/0x80
 Code: 48 89 ef 5b 5d ff e0 f3 c3 48 89 f7 e8 32 45 3f 00 48 63 53 08 48 89 c6 3b 53 04 7d 2d 48 8b 43 10 8d 4a 01…&lt;/p&gt;</content:encoded>
      <guid isPermaLink="false">https://db.gcve.eu/vuln/cve-2022-50381</guid>
    </item>
  </channel>
</rss>
