Goal Reached Thanks to every supporter — we hit 100%!

Goal: 1000 CNY · Raised: 1000 CNY

100.0%

CVE-2022-50145— dmaengine: sf-pdma: Add multithread support for a DMA channel

EPSS 0.06% · P19
Get alerts for future matching vulnerabilitiesLog in to subscribe

I. Basic Information for CVE-2022-50145

Vulnerability Information

Have questions about the vulnerability? See if Shenlong's analysis helps!
View Shenlong Deep Dive ↗

Although we use advanced large model technology, its output may still contain inaccurate or outdated information.Shenlong tries to ensure data accuracy, but please verify and judge based on the actual situation.

Vulnerability Title
dmaengine: sf-pdma: Add multithread support for a DMA channel
Source: NVD (National Vulnerability Database)
Vulnerability Description
In the Linux kernel, the following vulnerability has been resolved: dmaengine: sf-pdma: Add multithread support for a DMA channel When we get a DMA channel and try to use it in multiple threads it will cause oops and hanging the system. % echo 64 > /sys/module/dmatest/parameters/threads_per_chan % echo 10000 > /sys/module/dmatest/parameters/iterations % echo 1 > /sys/module/dmatest/parameters/run [ 89.480664] Unable to handle kernel NULL pointer dereference at virtual address 00000000000000a0 [ 89.488725] Oops [#1] [ 89.494708] CPU: 2 PID: 1008 Comm: dma0chan0-copy0 Not tainted 5.17.0-rc5 [ 89.509385] epc : vchan_find_desc+0x32/0x46 [ 89.513553] ra : sf_pdma_tx_status+0xca/0xd6 This happens because of data race. Each thread rewrite channels's descriptor as soon as device_prep_dma_memcpy() is called. It leads to the situation when the driver thinks that it uses right descriptor that actually is freed or substituted for other one. With current fixes a descriptor changes its value only when it has been used. A new descriptor is acquired from vc->desc_issued queue that is already filled with descriptors that are ready to be sent. Threads have no direct access to DMA channel descriptor. Now it is just possible to queue a descriptor for further processing.
Source: NVD (National Vulnerability Database)
CVSS Information
N/A
Source: NVD (National Vulnerability Database)
Vulnerability Type
N/A
Source: NVD (National Vulnerability Database)
Vulnerability Title
Linux kernel 安全漏洞
Source: CNNVD (China National Vulnerability Database)
Vulnerability Description
Linux kernel是美国Linux基金会的开源操作系统Linux所使用的内核。 Linux kernel存在安全漏洞,该漏洞源于sf-pdma未正确处理多线程访问,可能导致数据竞争。
Source: CNNVD (China National Vulnerability Database)
CVSS Information
N/A
Source: CNNVD (China National Vulnerability Database)
Vulnerability Type
N/A
Source: CNNVD (China National Vulnerability Database)

Affected Products

VendorProductAffected VersionsCPESubscribe
LinuxLinux 6973886ad58e6b4988813331abb76ae0b364a9c2 ~ b9b4992f897be9b0b9e3a3b956cab6b75ccc3f11 -
LinuxLinux 5.5 -

II. Public POCs for CVE-2022-50145

#POC DescriptionSource LinkShenlong Link
AI-Generated POCPremium

No public POC found.

Login to generate AI POC

III. Intelligence Information for CVE-2022-50145

登录查看更多情报信息。

Same Patch Batch · Linux · 2025-06-18 · 362 CVEs total

CVE-2022-50103sched, cpuset: Fix dl_cpu_busy() panic due to empty cs->cpus_allowed
CVE-2022-50114net: 9p: fix refcount leak in p9_read_work() error handling
CVE-2022-50113ASoc: audio-graph-card2: Fix refcount leak bug in __graph_get_type()
CVE-2022-50112rpmsg: qcom_smd: Fix refcount leak in qcom_smd_parse_edge
CVE-2022-50111ASoC: mt6359: Fix refcount leak bug
CVE-2022-50110watchdog: sp5100_tco: Fix a memory leak of EFCH MMIO resource
CVE-2022-50109video: fbdev: amba-clcd: Fix refcount leak bugs
CVE-2022-50108mfd: max77620: Fix refcount leak in max77620_initialise_fps
CVE-2022-50106powerpc/cell/axon_msi: Fix refcount leak in setup_msi_msg_address
CVE-2022-50107cifs: Fix memory leak when using fscache
CVE-2022-50105powerpc/spufs: Fix refcount leak in spufs_init_isolated_loader
CVE-2022-50104powerpc/xive: Fix refcount leak in xive_get_max_prio
CVE-2022-50098scsi: qla2xxx: Fix crash due to stale SRB access around I/O timeouts
CVE-2022-50093iommu/vt-d: avoid invalid memory access via node_online(NUMA_NO_NODE)
CVE-2022-50095posix-cpu-timers: Cleanup CPU timers before freeing them during exec
CVE-2022-50094spmi: trace: fix stack-out-of-bound access in SPMI tracing functions
CVE-2022-50096x86/kprobes: Update kcb status flag after singlestepping
CVE-2022-50097video: fbdev: s3fb: Check the size of screen before memset_io()
CVE-2022-50100sched/core: Do not requeue task on CPU excluded from cpus_mask
CVE-2022-50102video: fbdev: arkfb: Fix a divide-by-zero bug in ark_set_pixclock()

Showing top 20 of 362 CVEs. View all on vendor page → →

IV. Related Vulnerabilities

V. Comments for CVE-2022-50145

No comments yet


Leave a comment