CVE-2026-98662 affecting package kernel 6.6.157.1-1
In the Linux kernel, the following vulnerability has been resolved: iio: light: gp2ap020a00f: drain irq_work after free_irq The threaded IRQ handler queues data->work through irq_work_queue() so the trigger is polled from a per-CPU context. free_irq() does not flush an irq_work the handler already queued, so after gp2ap020a00f_remove() returns that work may still run and call iio_trigger_poll() on data->trig, which the devm cleanup has already freed, causing a use-after-free. Add irq_work_sync(&data->work) after free_irq() in remove() and in the probe error path, mirroring commit 78601726d4a5 ("iio: trigger: sysfs: fix use-after-free on remove"). Found by an in-house static analysis tool, confirmed by manual review.
- Products
- kernel
- Affected versions
- Not specified
- Fixed versions
- Not specified
- CVEs
- CVE-2026-98662
- Confirmed fixed CVEs
- Not specified
- Updated in this feed
- 1 Nov 2026, 17:23 UTC · Revision 1
Source evidence
CVE-2026-98662 affecting package kernel 6.6.157.1-1
core-osv · Original sourcePublished 18 Oct 2026, 16:17 UTC
In the Linux kernel, the following vulnerability has been resolved: iio: light: gp2ap020a00f: drain irq_work after free_irq The threaded IRQ handler queues data->work through irq_work_queue() so the trigger is polled from a per-CPU context. free_irq() does not flush an irq_work the handler already queued, so after gp2ap020a00f_remove() returns that work may still run and call iio_trigger_poll() on data->trig, which the devm cleanup has already freed, causing a use-after-free. Add irq_work_sync(&data->work) after free_irq() in remove() and in the probe error path, mirroring commit 78601726d4a5 ("iio: trigger: sysfs: fix use-after-free on remove"). Found by an in-house static analysis tool, confirmed by manual review.
osv:AZL-108587
kernel
Fixed versions: Not specified
Complete source record
{
"id": "eeb999f6cc123d4c1f609069a967ab62f7668df72c4bbab028fa942c4009f21c",
"url": "https://osv.dev/vulnerability/AZL-108587",
"method": "structured",
"payload": {
"kind": "advisory",
"title": "CVE-2026-98662 affecting package kernel 6.6.157.1-1",
"summary": "In the Linux kernel, the following vulnerability has been resolved: iio: light: gp2ap020a00f: drain irq_work after free_irq The threaded IRQ handler queues data->work through irq_work_queue() so the trigger is polled from a per-CPU context. free_irq() does not flush an irq_work the handler already queued, so after gp2ap020a00f_remove() returns that work may still run and call iio_trigger_poll() on data->trig, which the devm cleanup has already freed, causing a use-after-free. Add irq_work_sync(&data->work) after free_irq() in remove() and in the probe error path, mirroring commit 78601726d4a5 (\"iio: trigger: sysfs: fix use-after-free on remove\"). Found by an in-house static analysis tool, confirmed by manual review.",
"evidence": "osv:AZL-108587",
"products": [
{
"name": {
"value": "kernel",
"evidence": "/affected/0/package/name"
},
"prerequisites": [],
"fixed_versions": [],
"affected_versions": []
}
],
"severity": "unknown",
"structured": {
"id": "AZL-108587",
"aliases": [
"AZL-108587"
],
"affected": [
{
"ranges": [
{
"type": "ECOSYSTEM",
"events": [
{
"introduced": "0"
},
{
"last_affected": "6.6.157.1-1"
}
]
}
],
"package": {
"name": "kernel",
"purl": "pkg:rpm/azure-linux/kernel",
"ecosystem": "Azure Linux:3"
},
"database_specific": {
"source": "https://github.com/microsoft/AzureLinuxVulnerabilityData/blob/main/osv/AZL-108587.json"
}
}
],
"modified": "2026-10-27T05:36:16Z",
"provider": "osv",
"upstream": [
"CVE-2026-98662"
],
"references": [
"https://nvd.nist.gov/vuln/detail/CVE-2026-98662"
]
},
"related_cves": [
{
"value": "CVE-2026-98662",
"evidence": "/upstream"
}
],
"security_relevant": true,
"severity_evidence": null
},
"source_id": "core-osv",
"document_id": 460387,
"published_at": "2026-10-18T16:17:19+00:00"
}