CVE-2026-63798
irqchip/imgpdc: Fix resource leak, add missing chained handler cleanup on remove
Description
In the Linux kernel, the following vulnerability has been resolved: irqchip/imgpdc: Fix resource leak, add missing chained handler cleanup on remove The driver allocates domain generic chips using irq_alloc_domain_generic_chips() during probe and sets up chained handlers using irq_set_chained_handler_and_data(). However, on driver removal, the generic chips are not freed and the chained handlers are not removed. The generic chips remain on the global gc_list and may later be accessed by generic interrupt chip suspend, resume, or shutdown callbacks after the driver has been removed, potentially resulting in a use-after-free and kernel crash. The chained handlers that were installed in probe for peripheral and syswake interrupts are also left dangling, which can lead to spurious interrupts accessing freed memory. Fix these issues by: - Setting IRQ_DOMAIN_FLAG_DESTROY_GC flag in domain->flags, so the core code automatically removes generic chips when irq_domain_remove() is called - Clearing all chained handlers with NULL in pdc_intc_remove()
INFO
Published Date :
July 19, 2026, 12:16 p.m.
Last Modified :
July 19, 2026, 12:16 p.m.
Remotely Exploit :
No
Source :
416baaa9-dc9f-4396-8d5f-8c081fb06d67
Affected Products
The following products are affected by CVE-2026-63798
vulnerability.
Even if cvefeed.io is aware of the exact versions of the
products
that
are
affected, the information is not represented in the table below.
No affected product recoded yet
Solution
- Set IRQ_DOMAIN_FLAG_DESTROY_GC flag.
- Remove driver.
- Clear all chained handlers with NULL.
- Call irq_domain_remove().
References to Advisories, Solutions, and Tools
Here, you will find a curated list of external links that provide in-depth
information, practical solutions, and valuable tools related to
CVE-2026-63798.
CWE - Common Weakness Enumeration
While CVE identifies
specific instances of vulnerabilities, CWE categorizes the common flaws or
weaknesses that can lead to vulnerabilities. CVE-2026-63798 is
associated with the following CWEs:
Common Attack Pattern Enumeration and Classification (CAPEC)
Common Attack Pattern Enumeration and Classification
(CAPEC)
stores attack patterns, which are descriptions of the common attributes and
approaches employed by adversaries to exploit the CVE-2026-63798
weaknesses.
We scan GitHub repositories to detect new proof-of-concept exploits. Following list is a collection of public exploits and proof-of-concepts, which have been published on GitHub (sorted by the most recently updated).
Results are limited to the first 15 repositories due to potential performance issues.
The following list is the news that have been mention
CVE-2026-63798 vulnerability anywhere in the article.
The following table lists the changes that have been made to the
CVE-2026-63798 vulnerability over time.
Vulnerability history details can be useful for understanding the evolution of a vulnerability, and for identifying the most recent changes that may impact the vulnerability's severity, exploitability, or other characteristics.
-
New CVE Received by 416baaa9-dc9f-4396-8d5f-8c081fb06d67
Jul. 19, 2026
Action Type Old Value New Value Added Affected [{'repo': 'https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git', 'vendor': 'Linux', 'product': 'Linux', 'versions': [{'status': 'affected', 'version': 'b6ef9161e43ad58c3824bd76dc87716276f0cd70', 'lessThan': '8176773dfceae7978b01c20b233693e072053700', 'versionType': 'git'}, {'status': 'affected', 'version': 'b6ef9161e43ad58c3824bd76dc87716276f0cd70', 'lessThan': 'c2c7733101bb8c0b29ac9ee41073eaf602821a59', 'versionType': 'git'}, {'status': 'affected', 'version': 'b6ef9161e43ad58c3824bd76dc87716276f0cd70', 'lessThan': '83d7ec14b0938ad8cae008058fd6f912f4a9a312', 'versionType': 'git'}, {'status': 'affected', 'version': 'b6ef9161e43ad58c3824bd76dc87716276f0cd70', 'lessThan': '44567537a2623dcd2b4018a7f043cf8069579e5d', 'versionType': 'git'}, {'status': 'affected', 'version': 'b6ef9161e43ad58c3824bd76dc87716276f0cd70', 'lessThan': '41826e5297e67cd96a0a46fde06a5069a8ce436a', 'versionType': 'git'}, {'status': 'affected', 'version': 'b6ef9161e43ad58c3824bd76dc87716276f0cd70', 'lessThan': 'b3a3831b2eb884641906fc5e46207b205b6aea13', 'versionType': 'git'}, {'status': 'affected', 'version': 'b6ef9161e43ad58c3824bd76dc87716276f0cd70', 'lessThan': '0405a65e4ebd9eac13a765f9f02ac05851ca5421', 'versionType': 'git'}, {'status': 'affected', 'version': 'b6ef9161e43ad58c3824bd76dc87716276f0cd70', 'lessThan': '37738fdf2ab1e504d1c63ce5bc0aeb6452d8f057', 'versionType': 'git'}], 'programFiles': ['drivers/irqchip/irq-imgpdc.c'], 'defaultStatus': 'unaffected'}, {'repo': 'https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git', 'vendor': 'Linux', 'product': 'Linux', 'versions': [{'status': 'affected', 'version': '3.12'}, {'status': 'unaffected', 'version': '0', 'lessThan': '3.12', 'versionType': 'semver'}, {'status': 'unaffected', 'version': '5.10.260', 'versionType': 'semver', 'lessThanOrEqual': '5.10.*'}, {'status': 'unaffected', 'version': '5.15.211', 'versionType': 'semver', 'lessThanOrEqual': '5.15.*'}, {'status': 'unaffected', 'version': '6.1.177', 'versionType': 'semver', 'lessThanOrEqual': '6.1.*'}, {'status': 'unaffected', 'version': '6.6.144', 'versionType': 'semver', 'lessThanOrEqual': '6.6.*'}, {'status': 'unaffected', 'version': '6.12.95', 'versionType': 'semver', 'lessThanOrEqual': '6.12.*'}, {'status': 'unaffected', 'version': '6.18.38', 'versionType': 'semver', 'lessThanOrEqual': '6.18.*'}, {'status': 'unaffected', 'version': '7.1.3', 'versionType': 'semver', 'lessThanOrEqual': '7.1.*'}, {'status': 'unaffected', 'version': '7.2-rc1', 'versionType': 'original_commit_for_fix', 'lessThanOrEqual': '*'}], 'programFiles': ['drivers/irqchip/irq-imgpdc.c'], 'defaultStatus': 'affected'}] Added Description In the Linux kernel, the following vulnerability has been resolved: irqchip/imgpdc: Fix resource leak, add missing chained handler cleanup on remove The driver allocates domain generic chips using irq_alloc_domain_generic_chips() during probe and sets up chained handlers using irq_set_chained_handler_and_data(). However, on driver removal, the generic chips are not freed and the chained handlers are not removed. The generic chips remain on the global gc_list and may later be accessed by generic interrupt chip suspend, resume, or shutdown callbacks after the driver has been removed, potentially resulting in a use-after-free and kernel crash. The chained handlers that were installed in probe for peripheral and syswake interrupts are also left dangling, which can lead to spurious interrupts accessing freed memory. Fix these issues by: - Setting IRQ_DOMAIN_FLAG_DESTROY_GC flag in domain->flags, so the core code automatically removes generic chips when irq_domain_remove() is called - Clearing all chained handlers with NULL in pdc_intc_remove() Added Reference https://git.kernel.org/stable/c/0405a65e4ebd9eac13a765f9f02ac05851ca5421 Added Reference https://git.kernel.org/stable/c/37738fdf2ab1e504d1c63ce5bc0aeb6452d8f057 Added Reference https://git.kernel.org/stable/c/41826e5297e67cd96a0a46fde06a5069a8ce436a Added Reference https://git.kernel.org/stable/c/44567537a2623dcd2b4018a7f043cf8069579e5d Added Reference https://git.kernel.org/stable/c/8176773dfceae7978b01c20b233693e072053700 Added Reference https://git.kernel.org/stable/c/83d7ec14b0938ad8cae008058fd6f912f4a9a312 Added Reference https://git.kernel.org/stable/c/b3a3831b2eb884641906fc5e46207b205b6aea13 Added Reference https://git.kernel.org/stable/c/c2c7733101bb8c0b29ac9ee41073eaf602821a59