CVE-2022-50151: usb: cdns3: fix random warning message when driver load
In the Linux kernel, the following vulnerability has been resolved:
usb: cdns3: fix random warning message when driver load
Warning log:
[ 4.141392] Unexpected gfp: 0x4 (GFP_DMA32). Fixing up to gfp: 0xa20 (GFP_ATOMIC). Fix your code!
[ 4.150340] CPU: 1 PID: 175 Comm: 1-0050 Not tainted 5.15.5-00039-g2fd9ae1b568c #20
[ 4.158010] Hardware name: Freescale i.MX8QXP MEK (DT)
[ 4.163155] Call trace:
[ 4.165600] dump_backtrace+0x0/0x1b0
[ 4.169286] show_stack+0x18/0x68
[ 4.172611] dump_stack_lvl+0x68/0x84
[ 4.176286] dump_stack+0x18/0x34
[ 4.179613] kmalloc_fix_flags+0x60/0x88
[ 4.183550] new_slab+0x334/0x370
[ 4.186878] ___slab_alloc.part.108+0x4d4/0x748
[ 4.191419] __slab_alloc.isra.109+0x30/0x78
[ 4.195702] kmem_cache_alloc+0x40c/0x420
[ 4.199725] dma_pool_alloc+0xac/0x1f8
[ 4.203486] cdns3_allocate_trb_pool+0xb4/0xd0
pool_alloc_page(struct dma_pool *pool, gfp_t mem_flags)
{
...
page = kmalloc(sizeof(*page), mem_flags);
page->vaddr = dma_alloc_coherent(pool->dev, pool->allocation,
&page->dma, mem_flags);
...
}
kmalloc was called with mem_flags, which is passed down in
cdns3_allocate_trb_pool() and have GFP_DMA32 flags.
kmall_fix_flags() report warning.
GFP_DMA32 is not useful at all. dma_alloc_coherent() will handle
DMA memory region correctly by pool->dev. GFP_DMA32 can be removed
safely.
Security readout for executives and security teams
Plain-English summary
This CVE covers a Linux kernel USB driver issue where loading the Cadence USB3 driver could produce a kernel warning caused by an inappropriate memory-allocation flag. The provided sources describe a cleanup fix, not a demonstrated compromise path or service outage.
Executive priority
Handle through normal kernel patch governance. Escalate only for products that depend on the cdns3 USB driver, have strict boot-log health requirements, or receive vendor guidance assigning security impact.
Technical view
In cdns3_allocate_trb_pool(), GFP_DMA32 could be passed into dma_pool_alloc() and then kmalloc(), triggering kmalloc_fix_flags() warnings. The fix removes GFP_DMA32 because dma_alloc_coherent() uses the device context to select the correct DMA region.
Likely exposure
Exposure appears limited to Linux kernels in the affected ranges where the Cadence cdns3 USB driver is present and loaded. The bundle lists Linux kernel versions including 5.3, 5.15.63, 5.19.2, and 6.0 as affected.
Exploitation context
The sources do not report active exploitation, public exploit activity, or inclusion in CISA KEV. They also do not describe attacker prerequisites or a direct exploit primitive. Treat this as an operational kernel maintenance item unless vendor guidance states otherwise.
Researcher notes
Evidence is incomplete for security impact. The source text frames the issue as a warning during driver load and says GFP_DMA32 can be safely removed. No CVSS, CWE, exploitability details, or attacker model are provided.
Mitigation direction
Update to a kernel build containing the referenced stable fixes.
Check Linux distribution advisories for backported fixes.
Prioritize embedded or appliance builds using the cdns3 USB driver.
Avoid direct deployment tooling outside the vendor-supported update path.
Validation and detection
Confirm the running kernel includes one of the referenced stable commits or a vendor backport.
Review kernel configuration or module inventory for cdns3 USB driver use.
Check boot logs for the documented GFP_DMA32 warning.
Track distribution security notes for final severity or affected-version clarifications.
Generated from the cited source records. This long-tail analysis has not been individually reviewed by a named human.
Potential ATT&CK relevance
Conservative CVE-to-ATT&CK context
These mappings and lookup hints may be relevant to the vulnerability behavior, CWE, affected product, or exposure path. Glexia-inferred context is not an official MITRE, ATT&CK, CWE, or CVE Program mapping.
ATT&CK lookup starting points
Use these exact CWE pages and searches to review the Glexia ATT&CK library from this CVE's weakness and description context.
cve · low confidence lookup
CVE-2022-50151 mapping review
Open the CVE-to-ATT&CK bridge for reviewed, inferred, or future official mappings tied to this CVE.
These fields come from the CVE record and ADP containers, not from Glexia's Take. They preserve time-varying source decisions such as CISA SSVC, KEV status, CVSS metrics, and provider references.
0CVSS vectors
3Timeline events
0ADP providers
4Source links
Vulnerability timeline
Timeline events are normalized from CVE metadata, CNA source timelines, ADP timelines, and KEV metadata when present.
CVE reservedCVE Program
The CVE ID was reserved by the assigning CNA.
CVE publishedCVE Program
The CVE record was published.
Jun 18, 2025, 11:03 UTC (UTC+00:00)
CVE updatedCVE Program
The CVE record metadata indicates this as the latest update time.