In the Linux kernel, the following vulnerability has been resolved:
dmaengine: fsl-qdma: init irq after reg initialization
Initialize the qDMA irqs after the registers are configured so that interrupts that may have been pending from a primary kernel don't get processed by the irq handler before it is ready to and cause panic with the following trace:
Call trace: fslqdmaqueuehandler+0xf8/0x3e8 _handleirqeventpercpu+0x78/0x2b0 handleirqeventpercpu+0x1c/0x68 handleirqevent+0x44/0x78 handlefasteoiirq+0xc8/0x178 generichandleirq+0x24/0x38 _handledomainirq+0x90/0x100 gichandleirq+0x5c/0xb8 el1irq+0xb8/0x180 rawspinunlockirqrestore+0x14/0x40 _setupirq+0x4bc/0x798 requestthreadedirq+0xd8/0x190 devmrequestthreadedirq+0x74/0xe8 fslqdmaprobe+0x4d4/0xca8 platformdrvprobe+0x50/0xa0 reallyprobe+0xe0/0x3f8 driverprobedevice+0x64/0x130 devicedriverattach+0x6c/0x78 _driverattach+0xbc/0x158 busforeachdev+0x5c/0x98 driverattach+0x20/0x28 busadddriver+0x158/0x220 driverregister+0x60/0x110 _platformdriverregister+0x44/0x50 fslqdmadriverinit+0x18/0x20 dooneinitcall+0x48/0x258 kernelinitfreeable+0x1a4/0x23c kernelinit+0x10/0xf8 retfromfork+0x10/0x18
[
{
"signature_type": "Line",
"digest": {
"threshold": 0.9,
"line_hashes": [
"226015602768368474254703207930772913381",
"315820795593425452727885272782641683956",
"253717371657752937917974650807378635832",
"271111556565421634096459381727729656208",
"141692930338603652998714494607599874815",
"67506294616436594813300520422173953854",
"176672235679251418958505973208691200945",
"89789324033172431264178425359732201530",
"262649014104872683831486697267810720616",
"2539578594302800788524758210779819561",
"266405708665169936094726417986553584743",
"38691866889017833475019347747198295676",
"109974531101185636614885880663524354185",
"241836639943044175926812063314544967778",
"202234928432235538198194180460300555946",
"115338529877967113802749663438591584075",
"17327337170431531751068174926179977193",
"93678822535478133413327254312718120512"
]
},
"target": {
"file": "drivers/dma/fsl-qdma.c"
},
"signature_version": "v1",
"id": "CVE-2024-26788-1896dc69",
"deprecated": false,
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@4529c084a320be78ff2c5e64297ae998c6fdf66b"
},
{
"signature_type": "Function",
"digest": {
"function_hash": "270299601808316243228651898780108015427",
"length": 3805.0
},
"target": {
"file": "drivers/dma/fsl-qdma.c",
"function": "fsl_qdma_probe"
},
"signature_version": "v1",
"id": "CVE-2024-26788-227e50b3",
"deprecated": false,
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@4529c084a320be78ff2c5e64297ae998c6fdf66b"
},
{
"signature_type": "Line",
"digest": {
"threshold": 0.9,
"line_hashes": [
"226015602768368474254703207930772913381",
"315820795593425452727885272782641683956",
"253717371657752937917974650807378635832",
"271111556565421634096459381727729656208",
"141692930338603652998714494607599874815",
"67506294616436594813300520422173953854",
"176672235679251418958505973208691200945",
"89789324033172431264178425359732201530",
"262649014104872683831486697267810720616",
"2539578594302800788524758210779819561",
"266405708665169936094726417986553584743",
"38691866889017833475019347747198295676",
"109974531101185636614885880663524354185",
"241836639943044175926812063314544967778",
"202234928432235538198194180460300555946",
"115338529877967113802749663438591584075",
"17327337170431531751068174926179977193",
"93678822535478133413327254312718120512"
]
},
"target": {
"file": "drivers/dma/fsl-qdma.c"
},
"signature_version": "v1",
"id": "CVE-2024-26788-5878bd9e",
"deprecated": false,
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@9579a21e99fe8dab22a253050ddff28d340d74e1"
},
{
"signature_type": "Line",
"digest": {
"threshold": 0.9,
"line_hashes": [
"226015602768368474254703207930772913381",
"315820795593425452727885272782641683956",
"253717371657752937917974650807378635832",
"271111556565421634096459381727729656208",
"141692930338603652998714494607599874815",
"67506294616436594813300520422173953854",
"176672235679251418958505973208691200945",
"89789324033172431264178425359732201530",
"262649014104872683831486697267810720616",
"2539578594302800788524758210779819561",
"266405708665169936094726417986553584743",
"38691866889017833475019347747198295676",
"109974531101185636614885880663524354185",
"241836639943044175926812063314544967778",
"202234928432235538198194180460300555946",
"115338529877967113802749663438591584075",
"17327337170431531751068174926179977193",
"93678822535478133413327254312718120512"
]
},
"target": {
"file": "drivers/dma/fsl-qdma.c"
},
"signature_version": "v1",
"id": "CVE-2024-26788-5b073990",
"deprecated": false,
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@474d521da890b3e3585335fb80a6044cb2553d99"
},
{
"signature_type": "Function",
"digest": {
"function_hash": "78897745071364409035998760567500336036",
"length": 3614.0
},
"target": {
"file": "drivers/dma/fsl-qdma.c",
"function": "fsl_qdma_probe"
},
"signature_version": "v1",
"id": "CVE-2024-26788-5f1c202f",
"deprecated": false,
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@a69c8bbb946936ac4eb6a6ae1e849435aa8d947d"
},
{
"signature_type": "Function",
"digest": {
"function_hash": "270299601808316243228651898780108015427",
"length": 3805.0
},
"target": {
"file": "drivers/dma/fsl-qdma.c",
"function": "fsl_qdma_probe"
},
"signature_version": "v1",
"id": "CVE-2024-26788-849d1005",
"deprecated": false,
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@474d521da890b3e3585335fb80a6044cb2553d99"
},
{
"signature_type": "Line",
"digest": {
"threshold": 0.9,
"line_hashes": [
"226015602768368474254703207930772913381",
"315820795593425452727885272782641683956",
"253717371657752937917974650807378635832",
"271111556565421634096459381727729656208",
"141692930338603652998714494607599874815",
"67506294616436594813300520422173953854",
"176672235679251418958505973208691200945",
"89789324033172431264178425359732201530",
"262649014104872683831486697267810720616",
"2539578594302800788524758210779819561",
"266405708665169936094726417986553584743",
"38691866889017833475019347747198295676",
"109974531101185636614885880663524354185",
"241836639943044175926812063314544967778",
"202234928432235538198194180460300555946",
"115338529877967113802749663438591584075",
"17327337170431531751068174926179977193",
"93678822535478133413327254312718120512"
]
},
"target": {
"file": "drivers/dma/fsl-qdma.c"
},
"signature_version": "v1",
"id": "CVE-2024-26788-9dc466e4",
"deprecated": false,
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@a69c8bbb946936ac4eb6a6ae1e849435aa8d947d"
},
{
"signature_type": "Function",
"digest": {
"function_hash": "78897745071364409035998760567500336036",
"length": 3614.0
},
"target": {
"file": "drivers/dma/fsl-qdma.c",
"function": "fsl_qdma_probe"
},
"signature_version": "v1",
"id": "CVE-2024-26788-9f5b591c",
"deprecated": false,
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@87a39071e0b639f45e05d296cc0538eef44ec0bd"
},
{
"signature_type": "Line",
"digest": {
"threshold": 0.9,
"line_hashes": [
"226015602768368474254703207930772913381",
"315820795593425452727885272782641683956",
"253717371657752937917974650807378635832",
"271111556565421634096459381727729656208",
"141692930338603652998714494607599874815",
"67506294616436594813300520422173953854",
"176672235679251418958505973208691200945",
"89789324033172431264178425359732201530",
"262649014104872683831486697267810720616",
"2539578594302800788524758210779819561",
"266405708665169936094726417986553584743",
"38691866889017833475019347747198295676",
"109974531101185636614885880663524354185",
"241836639943044175926812063314544967778",
"202234928432235538198194180460300555946",
"115338529877967113802749663438591584075",
"17327337170431531751068174926179977193",
"93678822535478133413327254312718120512"
]
},
"target": {
"file": "drivers/dma/fsl-qdma.c"
},
"signature_version": "v1",
"id": "CVE-2024-26788-a87d0e4f",
"deprecated": false,
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@87a39071e0b639f45e05d296cc0538eef44ec0bd"
},
{
"signature_type": "Function",
"digest": {
"function_hash": "270299601808316243228651898780108015427",
"length": 3805.0
},
"target": {
"file": "drivers/dma/fsl-qdma.c",
"function": "fsl_qdma_probe"
},
"signature_version": "v1",
"id": "CVE-2024-26788-b7309d92",
"deprecated": false,
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@9579a21e99fe8dab22a253050ddff28d340d74e1"
},
{
"signature_type": "Function",
"digest": {
"function_hash": "270299601808316243228651898780108015427",
"length": 3805.0
},
"target": {
"file": "drivers/dma/fsl-qdma.c",
"function": "fsl_qdma_probe"
},
"signature_version": "v1",
"id": "CVE-2024-26788-be2ad4d7",
"deprecated": false,
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@3cc5fb824c2125aa3740d905b3e5b378c8a09478"
},
{
"signature_type": "Line",
"digest": {
"threshold": 0.9,
"line_hashes": [
"226015602768368474254703207930772913381",
"315820795593425452727885272782641683956",
"253717371657752937917974650807378635832",
"271111556565421634096459381727729656208",
"141692930338603652998714494607599874815",
"67506294616436594813300520422173953854",
"176672235679251418958505973208691200945",
"89789324033172431264178425359732201530",
"262649014104872683831486697267810720616",
"2539578594302800788524758210779819561",
"266405708665169936094726417986553584743",
"38691866889017833475019347747198295676",
"109974531101185636614885880663524354185",
"241836639943044175926812063314544967778",
"202234928432235538198194180460300555946",
"115338529877967113802749663438591584075",
"17327337170431531751068174926179977193",
"93678822535478133413327254312718120512"
]
},
"target": {
"file": "drivers/dma/fsl-qdma.c"
},
"signature_version": "v1",
"id": "CVE-2024-26788-e64a48c2",
"deprecated": false,
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@3cc5fb824c2125aa3740d905b3e5b378c8a09478"
},
{
"signature_type": "Function",
"digest": {
"function_hash": "78897745071364409035998760567500336036",
"length": 3614.0
},
"target": {
"file": "drivers/dma/fsl-qdma.c",
"function": "fsl_qdma_probe"
},
"signature_version": "v1",
"id": "CVE-2024-26788-fb4b478a",
"deprecated": false,
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@677102a930643c31f1b4c512b041407058bdfef8"
},
{
"signature_type": "Line",
"digest": {
"threshold": 0.9,
"line_hashes": [
"226015602768368474254703207930772913381",
"315820795593425452727885272782641683956",
"253717371657752937917974650807378635832",
"271111556565421634096459381727729656208",
"141692930338603652998714494607599874815",
"67506294616436594813300520422173953854",
"176672235679251418958505973208691200945",
"89789324033172431264178425359732201530",
"262649014104872683831486697267810720616",
"2539578594302800788524758210779819561",
"266405708665169936094726417986553584743",
"38691866889017833475019347747198295676",
"109974531101185636614885880663524354185",
"241836639943044175926812063314544967778",
"202234928432235538198194180460300555946",
"115338529877967113802749663438591584075",
"17327337170431531751068174926179977193",
"93678822535478133413327254312718120512"
]
},
"target": {
"file": "drivers/dma/fsl-qdma.c"
},
"signature_version": "v1",
"id": "CVE-2024-26788-fbd7ed1b",
"deprecated": false,
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@677102a930643c31f1b4c512b041407058bdfef8"
}
]