CVE-2022-50371 (GCVE-0-2022-50371)
Vulnerability from cvelistv5
Published
2025-09-17 14:56
Modified
2025-09-17 14:56
Severity ?
VLAI Severity ?
EPSS score ?
Summary
In the Linux kernel, the following vulnerability has been resolved:
led: qcom-lpg: Fix sleeping in atomic
lpg_brighness_set() function can sleep, while led's brightness_set()
callback must be non-blocking. Change LPG driver to use
brightness_set_blocking() instead.
BUG: sleeping function called from invalid context at kernel/locking/mutex.c:580
in_atomic(): 1, irqs_disabled(): 0, non_block: 0, pid: 0, name: swapper/0
preempt_count: 101, expected: 0
INFO: lockdep is turned off.
CPU: 0 PID: 0 Comm: swapper/0 Tainted: G W 6.1.0-rc1-00014-gbe99b089c6fc-dirty #85
Hardware name: Qualcomm Technologies, Inc. DB820c (DT)
Call trace:
dump_backtrace.part.0+0xe4/0xf0
show_stack+0x18/0x40
dump_stack_lvl+0x88/0xb4
dump_stack+0x18/0x34
__might_resched+0x170/0x254
__might_sleep+0x48/0x9c
__mutex_lock+0x4c/0x400
mutex_lock_nested+0x2c/0x40
lpg_brightness_single_set+0x40/0x90
led_set_brightness_nosleep+0x34/0x60
led_heartbeat_function+0x80/0x170
call_timer_fn+0xb8/0x340
__run_timers.part.0+0x20c/0x254
run_timer_softirq+0x3c/0x7c
_stext+0x14c/0x578
____do_softirq+0x10/0x20
call_on_irq_stack+0x2c/0x5c
do_softirq_own_stack+0x1c/0x30
__irq_exit_rcu+0x164/0x170
irq_exit_rcu+0x10/0x40
el1_interrupt+0x38/0x50
el1h_64_irq_handler+0x18/0x2c
el1h_64_irq+0x64/0x68
cpuidle_enter_state+0xc8/0x380
cpuidle_enter+0x38/0x50
do_idle+0x244/0x2d0
cpu_startup_entry+0x24/0x30
rest_init+0x128/0x1a0
arch_post_acpi_subsys_init+0x0/0x18
start_kernel+0x6f4/0x734
__primary_switched+0xbc/0xc4
References
Impacted products
{ "containers": { "cna": { "affected": [ { "defaultStatus": "unaffected", "product": "Linux", "programFiles": [ "drivers/leds/rgb/leds-qcom-lpg.c" ], "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git", "vendor": "Linux", "versions": [ { "lessThan": "9deba7b51d5ee7a2d93fabb69f9b8189241f90e3", "status": "affected", "version": "24e2d05d1b68981f22c984c766fabc5a93c83dba", "versionType": "git" }, { "lessThan": "380304391fa7fb084745f26b4b9a59f4666520c1", "status": "affected", "version": "24e2d05d1b68981f22c984c766fabc5a93c83dba", "versionType": "git" }, { "lessThan": "3031993b3474794ecb71b6f969a3e60e4bda9d8a", "status": "affected", "version": "24e2d05d1b68981f22c984c766fabc5a93c83dba", "versionType": "git" } ] }, { "defaultStatus": "affected", "product": "Linux", "programFiles": [ "drivers/leds/rgb/leds-qcom-lpg.c" ], "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git", "vendor": "Linux", "versions": [ { "status": "affected", "version": "5.19" }, { "lessThan": "5.19", "status": "unaffected", "version": "0", "versionType": "semver" }, { "lessThanOrEqual": "6.0.*", "status": "unaffected", "version": "6.0.16", "versionType": "semver" }, { "lessThanOrEqual": "6.1.*", "status": "unaffected", "version": "6.1.2", "versionType": "semver" }, { "lessThanOrEqual": "*", "status": "unaffected", "version": "6.2", "versionType": "original_commit_for_fix" } ] } ], "cpeApplicability": [ { "nodes": [ { "cpeMatch": [ { "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*", "versionEndExcluding": "6.0.16", "versionStartIncluding": "5.19", "vulnerable": true }, { "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*", "versionEndExcluding": "6.1.2", "versionStartIncluding": "5.19", "vulnerable": true }, { "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*", "versionEndExcluding": "6.2", "versionStartIncluding": "5.19", "vulnerable": true } ], "negate": false, "operator": "OR" } ] } ], "descriptions": [ { "lang": "en", "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nled: qcom-lpg: Fix sleeping in atomic\n\nlpg_brighness_set() function can sleep, while led\u0027s brightness_set()\ncallback must be non-blocking. Change LPG driver to use\nbrightness_set_blocking() instead.\n\nBUG: sleeping function called from invalid context at kernel/locking/mutex.c:580\nin_atomic(): 1, irqs_disabled(): 0, non_block: 0, pid: 0, name: swapper/0\npreempt_count: 101, expected: 0\nINFO: lockdep is turned off.\nCPU: 0 PID: 0 Comm: swapper/0 Tainted: G W 6.1.0-rc1-00014-gbe99b089c6fc-dirty #85\nHardware name: Qualcomm Technologies, Inc. DB820c (DT)\nCall trace:\n dump_backtrace.part.0+0xe4/0xf0\n show_stack+0x18/0x40\n dump_stack_lvl+0x88/0xb4\n dump_stack+0x18/0x34\n __might_resched+0x170/0x254\n __might_sleep+0x48/0x9c\n __mutex_lock+0x4c/0x400\n mutex_lock_nested+0x2c/0x40\n lpg_brightness_single_set+0x40/0x90\n led_set_brightness_nosleep+0x34/0x60\n led_heartbeat_function+0x80/0x170\n call_timer_fn+0xb8/0x340\n __run_timers.part.0+0x20c/0x254\n run_timer_softirq+0x3c/0x7c\n _stext+0x14c/0x578\n ____do_softirq+0x10/0x20\n call_on_irq_stack+0x2c/0x5c\n do_softirq_own_stack+0x1c/0x30\n __irq_exit_rcu+0x164/0x170\n irq_exit_rcu+0x10/0x40\n el1_interrupt+0x38/0x50\n el1h_64_irq_handler+0x18/0x2c\n el1h_64_irq+0x64/0x68\n cpuidle_enter_state+0xc8/0x380\n cpuidle_enter+0x38/0x50\n do_idle+0x244/0x2d0\n cpu_startup_entry+0x24/0x30\n rest_init+0x128/0x1a0\n arch_post_acpi_subsys_init+0x0/0x18\n start_kernel+0x6f4/0x734\n __primary_switched+0xbc/0xc4" } ], "providerMetadata": { "dateUpdated": "2025-09-17T14:56:26.854Z", "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67", "shortName": "Linux" }, "references": [ { "url": "https://git.kernel.org/stable/c/9deba7b51d5ee7a2d93fabb69f9b8189241f90e3" }, { "url": "https://git.kernel.org/stable/c/380304391fa7fb084745f26b4b9a59f4666520c1" }, { "url": "https://git.kernel.org/stable/c/3031993b3474794ecb71b6f969a3e60e4bda9d8a" } ], "title": "led: qcom-lpg: Fix sleeping in atomic", "x_generator": { "engine": "bippy-1.2.0" } } }, "cveMetadata": { "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67", "assignerShortName": "Linux", "cveId": "CVE-2022-50371", "datePublished": "2025-09-17T14:56:26.854Z", "dateReserved": "2025-09-17T14:53:06.995Z", "dateUpdated": "2025-09-17T14:56:26.854Z", "state": "PUBLISHED" }, "dataType": "CVE_RECORD", "dataVersion": "5.1", "vulnerability-lookup:meta": { "nvd": "{\"cve\":{\"id\":\"CVE-2022-50371\",\"sourceIdentifier\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"published\":\"2025-09-17T15:15:36.070\",\"lastModified\":\"2025-09-18T13:43:34.310\",\"vulnStatus\":\"Awaiting Analysis\",\"cveTags\":[],\"descriptions\":[{\"lang\":\"en\",\"value\":\"In the Linux kernel, the following vulnerability has been resolved:\\n\\nled: qcom-lpg: Fix sleeping in atomic\\n\\nlpg_brighness_set() function can sleep, while led\u0027s brightness_set()\\ncallback must be non-blocking. Change LPG driver to use\\nbrightness_set_blocking() instead.\\n\\nBUG: sleeping function called from invalid context at kernel/locking/mutex.c:580\\nin_atomic(): 1, irqs_disabled(): 0, non_block: 0, pid: 0, name: swapper/0\\npreempt_count: 101, expected: 0\\nINFO: lockdep is turned off.\\nCPU: 0 PID: 0 Comm: swapper/0 Tainted: G W 6.1.0-rc1-00014-gbe99b089c6fc-dirty #85\\nHardware name: Qualcomm Technologies, Inc. DB820c (DT)\\nCall trace:\\n dump_backtrace.part.0+0xe4/0xf0\\n show_stack+0x18/0x40\\n dump_stack_lvl+0x88/0xb4\\n dump_stack+0x18/0x34\\n __might_resched+0x170/0x254\\n __might_sleep+0x48/0x9c\\n __mutex_lock+0x4c/0x400\\n mutex_lock_nested+0x2c/0x40\\n lpg_brightness_single_set+0x40/0x90\\n led_set_brightness_nosleep+0x34/0x60\\n led_heartbeat_function+0x80/0x170\\n call_timer_fn+0xb8/0x340\\n __run_timers.part.0+0x20c/0x254\\n run_timer_softirq+0x3c/0x7c\\n _stext+0x14c/0x578\\n ____do_softirq+0x10/0x20\\n call_on_irq_stack+0x2c/0x5c\\n do_softirq_own_stack+0x1c/0x30\\n __irq_exit_rcu+0x164/0x170\\n irq_exit_rcu+0x10/0x40\\n el1_interrupt+0x38/0x50\\n el1h_64_irq_handler+0x18/0x2c\\n el1h_64_irq+0x64/0x68\\n cpuidle_enter_state+0xc8/0x380\\n cpuidle_enter+0x38/0x50\\n do_idle+0x244/0x2d0\\n cpu_startup_entry+0x24/0x30\\n rest_init+0x128/0x1a0\\n arch_post_acpi_subsys_init+0x0/0x18\\n start_kernel+0x6f4/0x734\\n __primary_switched+0xbc/0xc4\"}],\"metrics\":{},\"references\":[{\"url\":\"https://git.kernel.org/stable/c/3031993b3474794ecb71b6f969a3e60e4bda9d8a\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/380304391fa7fb084745f26b4b9a59f4666520c1\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/9deba7b51d5ee7a2d93fabb69f9b8189241f90e3\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"}]}}" } }
Loading…
Loading…
Sightings
Author | Source | Type | Date |
---|
Nomenclature
- Seen: The vulnerability was mentioned, discussed, or seen somewhere by the user.
- Confirmed: The vulnerability is confirmed from an analyst perspective.
- Published Proof of Concept: A public proof of concept is available for this vulnerability.
- Exploited: This vulnerability was exploited and seen by the user reporting the sighting.
- Patched: This vulnerability was successfully patched by the user reporting the sighting.
- Not exploited: This vulnerability was not exploited or seen by the user reporting the sighting.
- Not confirmed: The user expresses doubt about the veracity of the vulnerability.
- Not patched: This vulnerability was not successfully patched by the user reporting the sighting.
Loading…
Loading…