Skip to content
Heist/ feed
High

drop_monitor: replace spin_lock by raw_spin_lock

Type: advisorySource: Official CVE List1 source record

In the Linux kernel, the following vulnerability has been resolved: drop_monitor: replace spin_lock by raw_spin_lock trace_drop_common() is called with preemption disabled, and it acquires a spin_lock. This is problematic for RT kernels because spin_locks are sleeping locks in this configuration, which causes the following splat: BUG: sleeping function called from invalid context at kernel/locking/spinlock_rt.c:48 in_atomic(): 1, irqs_disabled(): 1, non_block: 0, pid: 449, name: rcuc/47 preempt_count: 1, expected: 0 RCU nest depth: 2, expected: 2 5 locks held by rcuc/47/449: #0: ff1100086ec30a60 ((softirq_ctrl.lock)){+.+.}-{2:2}, at: __local_bh_disable_ip+0x105/0x210 #1: ffffffffb394a280 (rcu_read_lock){....}-{1:2}, at: rt_spin_lock+0xbf/0x130 #2: ffffffffb394a280 (rcu_read_lock){....}-{1:2}, at: __local_bh_disable_ip+0x11c/0x210 #3: ffffffffb394a160 (rcu_callback){....}-{0:0}, at: rcu_do_batch+0x360/0xc70 #4: ff1100086ee07520 (&data->lock){+.+.}-{2:2}, at: trace_drop_common.constprop.0+0xb5/0x290 irq event stamp: 139909 hardirqs last enabled at (139908): [] _raw_spin_unlock_irqrestore+0x63/0x80 hardirqs last disabled at (139909): [] trace_drop_common.constprop.0+0x26d/0x290 softirqs last enabled at (139892): [] __local_bh_enable_ip+0x103/0x170 softirqs last disabled at (139898): [] rcu_cpu_kthread+0x93/0x1f0 Preemption disabled at: [] rt_mutex_slowunlock+0xab/0x2e0 CPU: 47 PID: 449 Comm: rcuc/47 Not tainted 6.9.0-rc2-rt1+ #7 Hardware name: Dell Inc. PowerEdge R650/0Y2G81, BI

Announced Group revision 1
Original source ↗

CVE-2024-40980

Primary source · Revision 1

Imported from structured advisory data. Source references identify upstream records or fields; verify affected versions and your deployed configuration.

Security context

Source reference: cve:CVE-2024-40980

Linux

Source reference: /containers/cna/affected/0/product

Affected versions
Not stated in this record
Fixed versions
Not stated in this record
Prerequisites
Not stated in this record

Linux

Source reference: /containers/cna/affected/1/product

Affected versions
Not stated in this record
Fixed versions
Not stated in this record
Prerequisites
Not stated in this record

Structured affected-version data

Original package identities and version rules from this source.

[
  {
    "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
    "vendor": "Linux",
    "product": "Linux",
    "versions": [
      {
        "status": "affected",
        "version": "4ea7e38696c7e798c47ebbecadfd392f23f814f9",
        "lessThan": "594e47957f3fe034645e6885393ce96c12286334",
        "versionType": "git"
      },
      {
        "status": "affected",
        "version": "4ea7e38696c7e798c47ebbecadfd392f23f814f9",
        "lessThan": "96941f29ebcc1e9cbf570dc903f30374909562f5",
        "versionType": "git"
      },
      {
        "status": "affected",
        "version": "4ea7e38696c7e798c47ebbecadfd392f23f814f9",
        "lessThan": "b3722fb69468693555f531cddda5c30444726dac",
        "versionType": "git"
      },
      {
        "status": "affected",
        "version": "4ea7e38696c7e798c47ebbecadfd392f23f814f9",
        "lessThan": "f251ccef1d864790e5253386e95544420b7cd8f3",
        "versionType": "git"
      },
      {
        "status": "affected",
        "version": "4ea7e38696c7e798c47ebbecadfd392f23f814f9",
        "lessThan": "76ce2f9125244e1708d29c1d3f9d1d50b347bda0",
        "versionType": "git"
      },
      {
        "status": "affected",
        "version": "4ea7e38696c7e798c47ebbecadfd392f23f814f9",
        "lessThan": "07ea878684dfb78a9d4f564c39d07e855a9e242e",
        "versionType": "git"
      },
      {
        "status": "affected",
        "version": "4ea7e38696c7e798c47ebbecadfd392f23f814f9",
        "lessThan": "f1e197a665c2148ebc25fe09c53689e60afea195",
        "versionType": "git"
      }
    ],
    "programFiles": [
      "net/core/drop_monitor.c"
    ],
    "defaultStatus": "unaffected"
  },
  {
    "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
    "vendor": "Linux",
    "product": "Linux",
    "versions": [
      {
        "status": "affected",
        "version": "2.6.31"
      },
      {
        "status": "unaffected",
        "version": "0",
        "lessThan": "2.6.31",
        "versionType": "semver"
      },
      {
        "status": "unaffected",
        "version": "5.4.279",
        "versionType": "semver",
        "lessThanOrEqual": "5.4.*"
      },
      {
        "status": "unaffected",
        "version": "5.10.221",
        "versionType": "semver",
        "lessThanOrEqual": "5.10.*"
      },
      {
        "status": "unaffected",
        "version": "5.15.162",
        "versionType": "semver",
        "lessThanOrEqual": "5.15.*"
      },
      {
        "status": "unaffected",
        "version": "6.1.96",
        "versionType": "semver",
        "lessThanOrEqual": "6.1.*"
      },
      {
        "status": "unaffected",
        "version": "6.6.36",
        "versionType": "semver",
        "lessThanOrEqual": "6.6.*"
      },
      {
        "status": "unaffected",
        "version": "6.9.7",
        "versionType": "semver",
        "lessThanOrEqual": "6.9.*"
      },
      {
        "status": "unaffected",
        "version": "6.10",
        "versionType": "original_commit_for_fix",
        "lessThanOrEqual": "*"
      }
    ],
    "programFiles": [
      "net/core/drop_monitor.c"
    ],
    "defaultStatus": "affected"
  }
]
Related CVEs
CVE-2024-40980

Source reference: /cveMetadata/cveId

Publisher severity

high

Source reference: /containers/cna/metrics

Event
#26650 · Revision 1
Added to Heist Feed
Publisher date
Read the original announcement