CVE-2024-43889

padata: Fix possible divide-by-0 panic in padata_mt_helper()

State
Published
Severity
Not scored
Published
Aug 26, 2024
Updated
Oct 15, 2026
Reserved
Aug 17, 2024

Read the record on cve.org

Description

In the Linux kernel, the following vulnerability has been resolved:

padata: Fix possible divide-by-0 panic in padata_mt_helper()

We are hit with a not easily reproducible divide-by-0 panic in padata.c at bootup time.

[ 10.017908] Oops: divide error: 0000 1 PREEMPT SMP NOPTI [ 10.017908] CPU: 26 PID: 2627 Comm: kworker/u1666:1 Not tainted 6.10.0-15.el10.x86_64 #1 [ 10.017908] Hardware name: Lenovo ThinkSystem SR950 [7X12CTO1WW]/[7X12CTO1WW], BIOS [PSE140J-2.30] 07/20/2021 [ 10.017908] Workqueue: events_unbound padata_mt_helper [ 10.017908] RIP: 0010:padata_mt_helper+0x39/0xb0 : [ 10.017963] Call Trace: [ 10.017968] <TASK> [ 10.018004] ? padata_mt_helper+0x39/0xb0 [ 10.018084] process_one_work+0x174/0x330 [ 10.018093] worker_thread+0x266/0x3a0 [ 10.018111] kthread+0xcf/0x100 [ 10.018124] ret_from_fork+0x31/0x50 [ 10.018138] ret_from_fork_asm+0x1a/0x30 [ 10.018147] </TASK>

Looking at the padata_mt_helper() function, the only way a divide-by-0 panic can happen is when ps->chunk_size is 0. The way that chunk_size is initialized in padata_do_multithreaded(), chunk_size can be 0 when the min_chunk in the passed-in padata_mt_job structure is 0.

Fix this divide-by-0 panic by making sure that chunk_size will be at least 1 no matter what the input parameters are.

Scores

The record has no CVSS score.

Weaknesses

The record names no weakness.

Affected Products

ProductVersions
LinuxLinux
  • 004ed42638f4428e70ead59d170f3d17ff761a0f to before ab8b397d5997d8c37610252528edc54bebf9f6d3Affected
  • 004ed42638f4428e70ead59d170f3d17ff761a0f to before 8f5ffd2af7274853ff91d6cd62541191d9fbd10dAffected
  • 004ed42638f4428e70ead59d170f3d17ff761a0f to before a29cfcb848c31f22b4de6a531c3e1d68c9bfe09fAffected
  • 004ed42638f4428e70ead59d170f3d17ff761a0f to before 924f788c906dccaca30acab86c7124371e1d6f2cAffected
  • 004ed42638f4428e70ead59d170f3d17ff761a0f to before da0ffe84fcc1627a7dff82c80b823b94236af905Affected
  • 004ed42638f4428e70ead59d170f3d17ff761a0f to before 6d45e1c948a8b7ed6ceddb14319af69424db730cAffected
LinuxLinux
  • 5.8Affected
  • before 5.8Not affected
  • 5.10.224 through 5.10.*Not affected
  • 5.15.165 through 5.15.*Not affected
  • 6.1.105 through 6.1.*Not affected
  • 6.6.46 through 6.6.*Not affected
  • 6.10.5 through 6.10.*Not affected
  • 6.11 and laterNot affected

References

Every record here comes from the CVE Program’s CVE List. © 1999–2026 The MITRE Corporation. CVE is a registered trademark of The MITRE Corporation. The records are reproduced under the CVE Program terms of use.