In the Linux kernel, the following vulnerability has been resolved:
dmaengine: fsl-qdma: fix SoC may hang on 16 byte unaligned read
There is chip (ls1028a) errata:
The SoC may hang on 16 byte unaligned read transactions by QDMA.
Unaligned read transactions initiated by QDMA may stall in the NOC (Network On-Chip), causing a deadlock condition. Stalled transactions will trigger completion timeouts in PCIe controller.
Workaround: Enable prefetch by setting the source descriptor prefetchable bit ( SD[PF] = 1 ).
Implement this workaround.
[
{
"id": "CVE-2024-26790-2397cc15",
"deprecated": false,
"signature_type": "Function",
"target": {
"file": "drivers/dma/fsl-qdma.c",
"function": "fsl_qdma_comp_fill_memcpy"
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@ad2f8920c314e0a2d9e984fc94b729eca3cda471",
"digest": {
"length": 1092.0,
"function_hash": "32034075927355061839615671615544689015"
},
"signature_version": "v1"
},
{
"id": "CVE-2024-26790-2c1962b1",
"deprecated": false,
"signature_type": "Line",
"target": {
"file": "drivers/dma/fsl-qdma.c"
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@ad2f8920c314e0a2d9e984fc94b729eca3cda471",
"digest": {
"line_hashes": [
"307278841319103585792456862161143616868",
"284033402597746318595491789723031646663",
"50089718650073464008699761524741040961",
"249241518694606456627397017472753241211",
"171069835714272173539974785415318607469",
"254118421711486052961707088518401466542",
"33427922943178182360939930432370025588"
],
"threshold": 0.9
},
"signature_version": "v1"
},
{
"id": "CVE-2024-26790-3c374c99",
"deprecated": false,
"signature_type": "Function",
"target": {
"file": "drivers/dma/fsl-qdma.c",
"function": "fsl_qdma_comp_fill_memcpy"
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@5b696e9c388251f1c7373be92293769a489fd367",
"digest": {
"length": 1092.0,
"function_hash": "32034075927355061839615671615544689015"
},
"signature_version": "v1"
},
{
"id": "CVE-2024-26790-4142847f",
"deprecated": false,
"signature_type": "Function",
"target": {
"file": "drivers/dma/fsl-qdma.c",
"function": "fsl_qdma_comp_fill_memcpy"
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@518d78b4fac68cac29a263554d7f3b19da99d0da",
"digest": {
"length": 1092.0,
"function_hash": "32034075927355061839615671615544689015"
},
"signature_version": "v1"
},
{
"id": "CVE-2024-26790-5cb5f0d6",
"deprecated": false,
"signature_type": "Line",
"target": {
"file": "drivers/dma/fsl-qdma.c"
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@106c1ac953a66556ec77456c46e818208d3a9bce",
"digest": {
"line_hashes": [
"261164907843929101904797197646479389926",
"284033402597746318595491789723031646663",
"50089718650073464008699761524741040961",
"249241518694606456627397017472753241211",
"171069835714272173539974785415318607469",
"254118421711486052961707088518401466542",
"33427922943178182360939930432370025588"
],
"threshold": 0.9
},
"signature_version": "v1"
},
{
"id": "CVE-2024-26790-6f213a88",
"deprecated": false,
"signature_type": "Line",
"target": {
"file": "drivers/dma/fsl-qdma.c"
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@bb3a06e9b9a30e33d96aadc0e077be095a4f8580",
"digest": {
"line_hashes": [
"261164907843929101904797197646479389926",
"284033402597746318595491789723031646663",
"50089718650073464008699761524741040961",
"249241518694606456627397017472753241211",
"171069835714272173539974785415318607469",
"254118421711486052961707088518401466542",
"33427922943178182360939930432370025588"
],
"threshold": 0.9
},
"signature_version": "v1"
},
{
"id": "CVE-2024-26790-7b98249a",
"deprecated": false,
"signature_type": "Function",
"target": {
"file": "drivers/dma/fsl-qdma.c",
"function": "fsl_qdma_comp_fill_memcpy"
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@9d739bccf261dd93ec1babf82f5c5d71dd4caa3e",
"digest": {
"length": 1092.0,
"function_hash": "32034075927355061839615671615544689015"
},
"signature_version": "v1"
},
{
"id": "CVE-2024-26790-7f500af7",
"deprecated": false,
"signature_type": "Function",
"target": {
"file": "drivers/dma/fsl-qdma.c",
"function": "fsl_qdma_comp_fill_memcpy"
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@106c1ac953a66556ec77456c46e818208d3a9bce",
"digest": {
"length": 1092.0,
"function_hash": "32034075927355061839615671615544689015"
},
"signature_version": "v1"
},
{
"id": "CVE-2024-26790-8ad2be71",
"deprecated": false,
"signature_type": "Line",
"target": {
"file": "drivers/dma/fsl-qdma.c"
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@518d78b4fac68cac29a263554d7f3b19da99d0da",
"digest": {
"line_hashes": [
"216482621133287453251109606580646465799",
"251618816560544107671814774807114269766",
"134811581202308133326014154004215277423",
"249241518694606456627397017472753241211",
"171069835714272173539974785415318607469",
"254118421711486052961707088518401466542",
"33427922943178182360939930432370025588"
],
"threshold": 0.9
},
"signature_version": "v1"
},
{
"id": "CVE-2024-26790-af825f7e",
"deprecated": false,
"signature_type": "Line",
"target": {
"file": "drivers/dma/fsl-qdma.c"
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@9d739bccf261dd93ec1babf82f5c5d71dd4caa3e",
"digest": {
"line_hashes": [
"307278841319103585792456862161143616868",
"284033402597746318595491789723031646663",
"50089718650073464008699761524741040961",
"249241518694606456627397017472753241211",
"171069835714272173539974785415318607469",
"254118421711486052961707088518401466542",
"33427922943178182360939930432370025588"
],
"threshold": 0.9
},
"signature_version": "v1"
},
{
"id": "CVE-2024-26790-b6534f5e",
"deprecated": false,
"signature_type": "Line",
"target": {
"file": "drivers/dma/fsl-qdma.c"
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@5b696e9c388251f1c7373be92293769a489fd367",
"digest": {
"line_hashes": [
"307278841319103585792456862161143616868",
"284033402597746318595491789723031646663",
"50089718650073464008699761524741040961",
"249241518694606456627397017472753241211",
"171069835714272173539974785415318607469",
"254118421711486052961707088518401466542",
"33427922943178182360939930432370025588"
],
"threshold": 0.9
},
"signature_version": "v1"
},
{
"id": "CVE-2024-26790-d82c68c1",
"deprecated": false,
"signature_type": "Line",
"target": {
"file": "drivers/dma/fsl-qdma.c"
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@237ecf1afe6c22534fa43abdf2bf0b0f52de0aaa",
"digest": {
"line_hashes": [
"261164907843929101904797197646479389926",
"284033402597746318595491789723031646663",
"50089718650073464008699761524741040961",
"249241518694606456627397017472753241211",
"171069835714272173539974785415318607469",
"254118421711486052961707088518401466542",
"33427922943178182360939930432370025588"
],
"threshold": 0.9
},
"signature_version": "v1"
},
{
"id": "CVE-2024-26790-e4f3fbf3",
"deprecated": false,
"signature_type": "Function",
"target": {
"file": "drivers/dma/fsl-qdma.c",
"function": "fsl_qdma_comp_fill_memcpy"
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@bb3a06e9b9a30e33d96aadc0e077be095a4f8580",
"digest": {
"length": 1092.0,
"function_hash": "32034075927355061839615671615544689015"
},
"signature_version": "v1"
},
{
"id": "CVE-2024-26790-e9db90bf",
"deprecated": false,
"signature_type": "Function",
"target": {
"file": "drivers/dma/fsl-qdma.c",
"function": "fsl_qdma_comp_fill_memcpy"
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@237ecf1afe6c22534fa43abdf2bf0b0f52de0aaa",
"digest": {
"length": 1092.0,
"function_hash": "32034075927355061839615671615544689015"
},
"signature_version": "v1"
}
]