An issue was discovered in drivers/media/dvb-core/dvbfrontend.c in the Linux kernel 6.2. There is a blocking operation when a task is in !TASKRUNNING. In dvbfrontendgetevent, waiteventinterruptible is called; the condition is dvbfrontendtestevent(fepriv,events). In dvbfrontendtestevent, down(&fepriv->sem) is called. However, waitevent_interruptible would put the process to sleep, and down(&fepriv->sem) may block the process.
[
{
"deprecated": false,
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git@b8c75e4a1b325ea0a9433fa8834be97b5836b946",
"id": "CVE-2023-31084-163e8c20",
"target": {
"file": "drivers/media/dvb-core/dvb_frontend.c",
"function": "dvb_frontend_get_event"
},
"digest": {
"function_hash": "69497078295077727493377097508260441514",
"length": 625.0
},
"signature_type": "Function",
"signature_version": "v1"
},
{
"deprecated": false,
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git@b8c75e4a1b325ea0a9433fa8834be97b5836b946",
"id": "CVE-2023-31084-a5dcacf9",
"target": {
"file": "drivers/media/dvb-core/dvb_frontend.c"
},
"digest": {
"line_hashes": [
"137454736078996076568991647231085449912",
"218846069800734245040126254921689151149",
"67632841185311949725222859187454499038",
"263522357284339027855295125838424705109",
"205078060303145100322161692819426452783",
"96582598198862868014752313609816951250",
"145916905205151832720714359413914926257",
"193667437356478264649653129365506222746"
],
"threshold": 0.9
},
"signature_type": "Line",
"signature_version": "v1"
}
]
"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2023-31084.json"