In the Linux kernel, the following vulnerability has been resolved:
mfd: intelsocpmic_bxtwc: Use IRQ domain for USB Type-C device
While design wise the idea of converting the driver to use the hierarchy of the IRQ chips is correct, the implementation has (inherited) flaws. This was unveiled when platformgetirq() had started WARN() on IRQ 0 that is supposed to be a Linux IRQ number (also known as vIRQ).
Rework the driver to respect IRQ domain when creating each MFD device separately, as the domain is not the same for all of them.
[
{
"signature_type": "Line",
"deprecated": false,
"target": {
"file": "drivers/usb/typec/tcpm/wcove.c"
},
"signature_version": "v1",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@0b648968bfa4f5c9c4983bca9f2de17626ed6fb6",
"digest": {
"line_hashes": [
"243455912362160748322498253740981938106",
"299511839700552926942090021100228181605",
"321244806625814640452931261020878172027",
"332647428532117390630683452896421851506",
"252616047735166668900219218511275230046",
"20029158505805110147587628666662766122"
],
"threshold": 0.9
},
"id": "CVE-2024-56691-04226897"
},
{
"signature_type": "Line",
"deprecated": false,
"target": {
"file": "drivers/mfd/intel_soc_pmic_bxtwc.c"
},
"signature_version": "v1",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@c310e6916c0b297011d0fec03f168a6b24e9e984",
"digest": {
"line_hashes": [
"315761337187673110306367135635174965511",
"139850961455561910664627275552004498591",
"178464018940191006528881644877483765166",
"114781808763223601279538461726860857186",
"303724527380191945595631901692540904045",
"222486744935731256455824118804797535832",
"263144405480800047032177799638327541957",
"258952985643756804534259891856613047461",
"302481903409553526402961622569156442847",
"6906392019165316690252723132578751452",
"65798051988628486185168049132421199736",
"220465819271519764028819033309411228023",
"63161478930868862052316447870171896101",
"262278651523405938128433422888434930473",
"16777158367074984436109645405862468237",
"128164836986557487945490594721807395230",
"310725609490902060527178588129679429874",
"307653192701575007227857100323655979622",
"286207016739537464443934781918781487572",
"159824776620281446260957081577547408217",
"253262544587653083703831538009147860619",
"200389549644328794270271613612098218380",
"67728429709195285880232366382363698167",
"191351641237137741521069670868232694070",
"177818644572841695775754075952363359645",
"294108339908731860145696693834973071476",
"227061381703689004119579789976688260375",
"184123445852855469811206738338345720357",
"312834253052359425696968988010016740021"
],
"threshold": 0.9
},
"id": "CVE-2024-56691-06958729"
},
{
"signature_type": "Function",
"deprecated": false,
"target": {
"file": "drivers/mfd/intel_soc_pmic_bxtwc.c",
"function": "bxtwc_probe"
},
"signature_version": "v1",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@0b648968bfa4f5c9c4983bca9f2de17626ed6fb6",
"digest": {
"length": 2976.0,
"function_hash": "203890841321450571720970490116195167283"
},
"id": "CVE-2024-56691-0cfa03e0"
},
{
"signature_type": "Line",
"deprecated": false,
"target": {
"file": "drivers/usb/typec/tcpm/wcove.c"
},
"signature_version": "v1",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@87a07a5b0b296e489c606ca95ffc16c18821975b",
"digest": {
"line_hashes": [
"243455912362160748322498253740981938106",
"299511839700552926942090021100228181605",
"321244806625814640452931261020878172027",
"332647428532117390630683452896421851506",
"252616047735166668900219218511275230046",
"20029158505805110147587628666662766122"
],
"threshold": 0.9
},
"id": "CVE-2024-56691-326f6900"
},
{
"signature_type": "Function",
"deprecated": false,
"target": {
"file": "drivers/mfd/intel_soc_pmic_bxtwc.c",
"function": "bxtwc_probe"
},
"signature_version": "v1",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@c310e6916c0b297011d0fec03f168a6b24e9e984",
"digest": {
"length": 2705.0,
"function_hash": "124294244900226157709387435271142778558"
},
"id": "CVE-2024-56691-489215cd"
},
{
"signature_type": "Function",
"deprecated": false,
"target": {
"file": "drivers/mfd/intel_soc_pmic_bxtwc.c",
"function": "bxtwc_probe"
},
"signature_version": "v1",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@e1ef62e8d262e3f27446d26742208c1c81e9ee18",
"digest": {
"length": 2705.0,
"function_hash": "124294244900226157709387435271142778558"
},
"id": "CVE-2024-56691-56b42271"
},
{
"signature_type": "Line",
"deprecated": false,
"target": {
"file": "drivers/mfd/intel_soc_pmic_bxtwc.c"
},
"signature_version": "v1",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@e1ef62e8d262e3f27446d26742208c1c81e9ee18",
"digest": {
"line_hashes": [
"315761337187673110306367135635174965511",
"139850961455561910664627275552004498591",
"178464018940191006528881644877483765166",
"114781808763223601279538461726860857186",
"303724527380191945595631901692540904045",
"222486744935731256455824118804797535832",
"263144405480800047032177799638327541957",
"258952985643756804534259891856613047461",
"302481903409553526402961622569156442847",
"6906392019165316690252723132578751452",
"65798051988628486185168049132421199736",
"220465819271519764028819033309411228023",
"63161478930868862052316447870171896101",
"262278651523405938128433422888434930473",
"16777158367074984436109645405862468237",
"128164836986557487945490594721807395230",
"310725609490902060527178588129679429874",
"307653192701575007227857100323655979622",
"286207016739537464443934781918781487572",
"159824776620281446260957081577547408217",
"253262544587653083703831538009147860619",
"200389549644328794270271613612098218380",
"67728429709195285880232366382363698167",
"191351641237137741521069670868232694070",
"177818644572841695775754075952363359645",
"294108339908731860145696693834973071476",
"227061381703689004119579789976688260375",
"184123445852855469811206738338345720357",
"312834253052359425696968988010016740021"
],
"threshold": 0.9
},
"id": "CVE-2024-56691-70f8936c"
},
{
"signature_type": "Function",
"deprecated": false,
"target": {
"file": "drivers/usb/typec/tcpm/wcove.c",
"function": "wcove_typec_probe"
},
"signature_version": "v1",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@c310e6916c0b297011d0fec03f168a6b24e9e984",
"digest": {
"length": 1770.0,
"function_hash": "274470369650135206244054627874967302910"
},
"id": "CVE-2024-56691-71a67f61"
},
{
"signature_type": "Function",
"deprecated": false,
"target": {
"file": "drivers/mfd/intel_soc_pmic_bxtwc.c",
"function": "bxtwc_probe"
},
"signature_version": "v1",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@87a07a5b0b296e489c606ca95ffc16c18821975b",
"digest": {
"length": 2705.0,
"function_hash": "124294244900226157709387435271142778558"
},
"id": "CVE-2024-56691-743f6efd"
},
{
"signature_type": "Function",
"deprecated": false,
"target": {
"file": "drivers/usb/typec/tcpm/wcove.c",
"function": "wcove_typec_probe"
},
"signature_version": "v1",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@e1ef62e8d262e3f27446d26742208c1c81e9ee18",
"digest": {
"length": 1770.0,
"function_hash": "274470369650135206244054627874967302910"
},
"id": "CVE-2024-56691-8b713f73"
},
{
"signature_type": "Function",
"deprecated": false,
"target": {
"file": "drivers/usb/typec/tcpm/wcove.c",
"function": "wcove_typec_probe"
},
"signature_version": "v1",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@0b648968bfa4f5c9c4983bca9f2de17626ed6fb6",
"digest": {
"length": 1770.0,
"function_hash": "274470369650135206244054627874967302910"
},
"id": "CVE-2024-56691-a7e55653"
},
{
"signature_type": "Line",
"deprecated": false,
"target": {
"file": "drivers/usb/typec/tcpm/wcove.c"
},
"signature_version": "v1",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@c310e6916c0b297011d0fec03f168a6b24e9e984",
"digest": {
"line_hashes": [
"243455912362160748322498253740981938106",
"299511839700552926942090021100228181605",
"321244806625814640452931261020878172027",
"332647428532117390630683452896421851506",
"252616047735166668900219218511275230046",
"20029158505805110147587628666662766122"
],
"threshold": 0.9
},
"id": "CVE-2024-56691-b228913b"
},
{
"signature_type": "Line",
"deprecated": false,
"target": {
"file": "drivers/mfd/intel_soc_pmic_bxtwc.c"
},
"signature_version": "v1",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@0b648968bfa4f5c9c4983bca9f2de17626ed6fb6",
"digest": {
"line_hashes": [
"315761337187673110306367135635174965511",
"139850961455561910664627275552004498591",
"178464018940191006528881644877483765166",
"114781808763223601279538461726860857186",
"303724527380191945595631901692540904045",
"222486744935731256455824118804797535832",
"263144405480800047032177799638327541957",
"258952985643756804534259891856613047461",
"302481903409553526402961622569156442847",
"6906392019165316690252723132578751452",
"65798051988628486185168049132421199736",
"220465819271519764028819033309411228023",
"63161478930868862052316447870171896101",
"262278651523405938128433422888434930473",
"16777158367074984436109645405862468237",
"128164836986557487945490594721807395230",
"310725609490902060527178588129679429874",
"307653192701575007227857100323655979622",
"286207016739537464443934781918781487572",
"159824776620281446260957081577547408217",
"253262544587653083703831538009147860619",
"200389549644328794270271613612098218380",
"67728429709195285880232366382363698167",
"191351641237137741521069670868232694070",
"177818644572841695775754075952363359645",
"294108339908731860145696693834973071476",
"227061381703689004119579789976688260375",
"184123445852855469811206738338345720357",
"312834253052359425696968988010016740021"
],
"threshold": 0.9
},
"id": "CVE-2024-56691-b482645d"
},
{
"signature_type": "Function",
"deprecated": false,
"target": {
"file": "drivers/usb/typec/tcpm/wcove.c",
"function": "wcove_typec_probe"
},
"signature_version": "v1",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@87a07a5b0b296e489c606ca95ffc16c18821975b",
"digest": {
"length": 1770.0,
"function_hash": "274470369650135206244054627874967302910"
},
"id": "CVE-2024-56691-c6a280cf"
},
{
"signature_type": "Line",
"deprecated": false,
"target": {
"file": "drivers/mfd/intel_soc_pmic_bxtwc.c"
},
"signature_version": "v1",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@87a07a5b0b296e489c606ca95ffc16c18821975b",
"digest": {
"line_hashes": [
"315761337187673110306367135635174965511",
"139850961455561910664627275552004498591",
"178464018940191006528881644877483765166",
"114781808763223601279538461726860857186",
"303724527380191945595631901692540904045",
"222486744935731256455824118804797535832",
"263144405480800047032177799638327541957",
"258952985643756804534259891856613047461",
"302481903409553526402961622569156442847",
"6906392019165316690252723132578751452",
"65798051988628486185168049132421199736",
"220465819271519764028819033309411228023",
"63161478930868862052316447870171896101",
"262278651523405938128433422888434930473",
"16777158367074984436109645405862468237",
"128164836986557487945490594721807395230",
"310725609490902060527178588129679429874",
"307653192701575007227857100323655979622",
"286207016739537464443934781918781487572",
"159824776620281446260957081577547408217",
"253262544587653083703831538009147860619",
"200389549644328794270271613612098218380",
"67728429709195285880232366382363698167",
"191351641237137741521069670868232694070",
"177818644572841695775754075952363359645",
"294108339908731860145696693834973071476",
"227061381703689004119579789976688260375",
"184123445852855469811206738338345720357",
"312834253052359425696968988010016740021"
],
"threshold": 0.9
},
"id": "CVE-2024-56691-cadf2444"
},
{
"signature_type": "Line",
"deprecated": false,
"target": {
"file": "drivers/usb/typec/tcpm/wcove.c"
},
"signature_version": "v1",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@e1ef62e8d262e3f27446d26742208c1c81e9ee18",
"digest": {
"line_hashes": [
"243455912362160748322498253740981938106",
"299511839700552926942090021100228181605",
"321244806625814640452931261020878172027",
"332647428532117390630683452896421851506",
"252616047735166668900219218511275230046",
"20029158505805110147587628666662766122"
],
"threshold": 0.9
},
"id": "CVE-2024-56691-fa695eed"
}
]