In the Linux kernel, the following vulnerability has been resolved:
ptdma: ptcoreexecute_cmd() should use spinlock
The interrupt handler (ptcoreirqhandler()) of the ptdma driver can be called from interrupt context. The code flow in this function can lead down to ptcoreexecutecmd() which will attempt to grab a mutex, which is not appropriate in interrupt context and ultimately leads to a kernel panic. The fix here changes this mutex to a spinlock, which has been verified to resolve the issue.
[
{
"digest": {
"line_hashes": [
"179813254366049625472261559191873039942",
"286059074451871187415020849676988119456",
"41786139999362594308238997625932968376",
"40280157417842297567645848933509120461",
"277688516060053321520978506401318481785",
"340071100064068420259760240050394263521",
"213458573176065078264844888774870048624",
"290304052850774850797063693646084188066",
"219073536030399368539503198768176727671",
"84009101123767353038171572524707668792",
"271664342271015623387235486022472537906",
"331847846119452938324236466002833811045",
"305567779607694044988549601242438926354",
"214554164786555086201251206387880634663",
"85634986558340633982220345102321401694",
"45455333883957631134007788940146980969",
"320415373634725179199089044354193847476"
],
"threshold": 0.9
},
"deprecated": false,
"id": "CVE-2023-53013-075c596c",
"target": {
"file": "drivers/dma/ptdma/ptdma-dev.c"
},
"signature_type": "Line",
"signature_version": "v1",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@95e5fda3b5f9ed8239b145da3fa01e641cf5d53c"
},
{
"digest": {
"line_hashes": [
"179813254366049625472261559191873039942",
"286059074451871187415020849676988119456",
"41786139999362594308238997625932968376",
"40280157417842297567645848933509120461",
"277688516060053321520978506401318481785",
"340071100064068420259760240050394263521",
"213458573176065078264844888774870048624",
"290304052850774850797063693646084188066",
"219073536030399368539503198768176727671",
"84009101123767353038171572524707668792",
"271664342271015623387235486022472537906",
"331847846119452938324236466002833811045",
"305567779607694044988549601242438926354",
"214554164786555086201251206387880634663",
"85634986558340633982220345102321401694",
"45455333883957631134007788940146980969",
"320415373634725179199089044354193847476"
],
"threshold": 0.9
},
"deprecated": false,
"id": "CVE-2023-53013-407138d6",
"target": {
"file": "drivers/dma/ptdma/ptdma-dev.c"
},
"signature_type": "Line",
"signature_version": "v1",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@13ba563c2c8055ba8a637c9f70bb833b43cb4207"
},
{
"digest": {
"line_hashes": [
"240711450262338053481338815765246588687",
"208704841389477934495244826021411784055",
"186767319938883385251153475766185481027",
"297182456966345928777845109027545251245"
],
"threshold": 0.9
},
"deprecated": false,
"id": "CVE-2023-53013-5481af88",
"target": {
"file": "drivers/dma/ptdma/ptdma.h"
},
"signature_type": "Line",
"signature_version": "v1",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@13ba563c2c8055ba8a637c9f70bb833b43cb4207"
},
{
"digest": {
"length": 2284.0,
"function_hash": "50056846876833667207643808596292659330"
},
"deprecated": false,
"id": "CVE-2023-53013-55dd9dc7",
"target": {
"function": "pt_core_init",
"file": "drivers/dma/ptdma/ptdma-dev.c"
},
"signature_type": "Function",
"signature_version": "v1",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@95e5fda3b5f9ed8239b145da3fa01e641cf5d53c"
},
{
"digest": {
"line_hashes": [
"240711450262338053481338815765246588687",
"208704841389477934495244826021411784055",
"186767319938883385251153475766185481027",
"297182456966345928777845109027545251245"
],
"threshold": 0.9
},
"deprecated": false,
"id": "CVE-2023-53013-57b606c5",
"target": {
"file": "drivers/dma/ptdma/ptdma.h"
},
"signature_type": "Line",
"signature_version": "v1",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@95e5fda3b5f9ed8239b145da3fa01e641cf5d53c"
},
{
"digest": {
"length": 609.0,
"function_hash": "301973427236733114006946417753139037461"
},
"deprecated": false,
"id": "CVE-2023-53013-882901d0",
"target": {
"function": "pt_core_execute_cmd",
"file": "drivers/dma/ptdma/ptdma-dev.c"
},
"signature_type": "Function",
"signature_version": "v1",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@13ba563c2c8055ba8a637c9f70bb833b43cb4207"
},
{
"digest": {
"length": 609.0,
"function_hash": "301973427236733114006946417753139037461"
},
"deprecated": false,
"id": "CVE-2023-53013-972d522a",
"target": {
"function": "pt_core_execute_cmd",
"file": "drivers/dma/ptdma/ptdma-dev.c"
},
"signature_type": "Function",
"signature_version": "v1",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@ed0d8f731e0bf1bb12a7a37698ac613db20e2794"
},
{
"digest": {
"length": 2284.0,
"function_hash": "50056846876833667207643808596292659330"
},
"deprecated": false,
"id": "CVE-2023-53013-b7906a64",
"target": {
"function": "pt_core_init",
"file": "drivers/dma/ptdma/ptdma-dev.c"
},
"signature_type": "Function",
"signature_version": "v1",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@ed0d8f731e0bf1bb12a7a37698ac613db20e2794"
},
{
"digest": {
"length": 609.0,
"function_hash": "301973427236733114006946417753139037461"
},
"deprecated": false,
"id": "CVE-2023-53013-ce1129db",
"target": {
"function": "pt_core_execute_cmd",
"file": "drivers/dma/ptdma/ptdma-dev.c"
},
"signature_type": "Function",
"signature_version": "v1",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@95e5fda3b5f9ed8239b145da3fa01e641cf5d53c"
},
{
"digest": {
"line_hashes": [
"240711450262338053481338815765246588687",
"208704841389477934495244826021411784055",
"186767319938883385251153475766185481027",
"297182456966345928777845109027545251245"
],
"threshold": 0.9
},
"deprecated": false,
"id": "CVE-2023-53013-da56098d",
"target": {
"file": "drivers/dma/ptdma/ptdma.h"
},
"signature_type": "Line",
"signature_version": "v1",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@ed0d8f731e0bf1bb12a7a37698ac613db20e2794"
},
{
"digest": {
"length": 2284.0,
"function_hash": "50056846876833667207643808596292659330"
},
"deprecated": false,
"id": "CVE-2023-53013-eb82f0b9",
"target": {
"function": "pt_core_init",
"file": "drivers/dma/ptdma/ptdma-dev.c"
},
"signature_type": "Function",
"signature_version": "v1",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@13ba563c2c8055ba8a637c9f70bb833b43cb4207"
},
{
"digest": {
"line_hashes": [
"179813254366049625472261559191873039942",
"286059074451871187415020849676988119456",
"41786139999362594308238997625932968376",
"40280157417842297567645848933509120461",
"277688516060053321520978506401318481785",
"340071100064068420259760240050394263521",
"213458573176065078264844888774870048624",
"290304052850774850797063693646084188066",
"219073536030399368539503198768176727671",
"84009101123767353038171572524707668792",
"271664342271015623387235486022472537906",
"331847846119452938324236466002833811045",
"305567779607694044988549601242438926354",
"214554164786555086201251206387880634663",
"85634986558340633982220345102321401694",
"45455333883957631134007788940146980969",
"320415373634725179199089044354193847476"
],
"threshold": 0.9
},
"deprecated": false,
"id": "CVE-2023-53013-ef5b5ce0",
"target": {
"file": "drivers/dma/ptdma/ptdma-dev.c"
},
"signature_type": "Line",
"signature_version": "v1",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@ed0d8f731e0bf1bb12a7a37698ac613db20e2794"
}
]