CVE-2022-48931

configfs: fix a race in configfs_{,un}register_subsystem()

State
Published
Severity
Not scored
Published
Aug 22, 2024
Updated
May 11, 2026
Reserved
Aug 21, 2024

Read the record on cve.org

Description

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

configfs: fix a race in configfs_{,un}register_subsystem()

When configfs_register_subsystem() or configfs_unregister_subsystem() is executing link_group() or unlink_group(), it is possible that two processes add or delete list concurrently. Some unfortunate interleavings of them can cause kernel panic.

One of cases is: A --> B --> C --> D A <-- B <-- C <-- D

delete list_head *B | delete list_head *C --------------------------------|----------------------------------- configfs_unregister_subsystem | configfs_unregister_subsystem unlink_group | unlink_group unlink_obj | unlink_obj list_del_init | list_del_init __list_del_entry | __list_del_entry __list_del | __list_del // next == C | next->prev = prev | | next->prev = prev prev->next = next | | // prev == B | prev->next = next

Fix this by adding mutex when calling link_group() or unlink_group(), but parent configfs_subsystem is NULL when config_item is root. So I create a mutex configfs_subsystem_mutex.

Scores

The record has no CVSS score.

Weaknesses

The record names no weakness.

Affected Products

ProductVersions
LinuxLinux
  • 7063fbf2261194f72ee75afca67b3b38b554b5fa to before 40805099af11f68c5ca7dbcfacf455da8f99f622Affected
  • 7063fbf2261194f72ee75afca67b3b38b554b5fa to before d1654de19d42f513b6cfe955cc77e7f427e05a77Affected
  • 7063fbf2261194f72ee75afca67b3b38b554b5fa to before a37024f7757c25550accdebf49e497ad6ae239feAffected
  • 7063fbf2261194f72ee75afca67b3b38b554b5fa to before b7e2b91fcb5c78c414e33dc8d50642e307ca0c5aAffected
  • 7063fbf2261194f72ee75afca67b3b38b554b5fa to before a7ab53d3c27dfe83bb594456b9f38a37796ec39bAffected
  • 7063fbf2261194f72ee75afca67b3b38b554b5fa to before e7a66dd2687758718eddd79b542a95cf3aa488ccAffected
  • 7063fbf2261194f72ee75afca67b3b38b554b5fa to before 3aadfd46858b1f64d4d6a0654b863e21aabff975Affected
  • 7063fbf2261194f72ee75afca67b3b38b554b5fa to before 84ec758fb2daa236026506868c8796b0500c047dAffected
LinuxLinux
  • 2.6.16Affected
  • before 2.6.16Not affected
  • 4.9.304 through 4.9.*Not affected
  • 4.14.269 through 4.14.*Not affected
  • 4.19.232 through 4.19.*Not affected
  • 5.4.182 through 5.4.*Not affected
  • 5.10.103 through 5.10.*Not affected
  • 5.15.26 through 5.15.*Not affected
  • 5.16.12 through 5.16.*Not affected
  • 5.17 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.