In the Linux kernel, the following vulnerability has been resolved:
clk: qcom: gcc-sm6350: Add missing parent_map for two clocks
If a clkrcg2 has a parent, it should also have parentmap defined, otherwise we'll get a NULL pointer dereference when calling clksetrate like the following:
[ 3.388105] Call trace: [ 3.390664] qcomfindsrcindex+0x3c/0x70 (P) [ 3.395301] qcomfindsrcindex+0x1c/0x70 (L) [ 3.399934] freqtbldeterminerate+0x48/0x100 [ 3.404753] clkrcg2determinerate+0x1c/0x28 [ 3.409387] clkcoredetermineroundnolock+0x58/0xe4 [ 3.421414] clkcoreroundratenolock+0x48/0xfc [ 3.432974] clkcoreroundratenolock+0xd0/0xfc [ 3.444483] clkcoresetratenolock+0x8c/0x300 [ 3.455886] clkset_rate+0x38/0x14c
Add the parentmap property for two clocks where it's missing and also un-inline the parentdata as well to keep the matching parentmap and parentdata together.
[
{
"id": "CVE-2024-58076-364c423f",
"signature_version": "v1",
"digest": {
"threshold": 0.9,
"line_hashes": [
"205361486261641702262608255075184483300",
"260823030269491195101246284592186974048",
"15769538621811799752472874617983535244",
"76183435520267704803425124129841142954",
"318954028980060109418410162338379481402",
"19042322204250000031362474217969724627",
"270515173989826863679576618905188772641",
"4088197234355152282599661174830092668",
"175219931777645776849504482410617869995",
"334237610248509820317379629610186492331",
"183738990658915741691600023463584943368",
"140855957684189824538849453464216974663",
"170461359481959814521752893581710686032",
"195826494554946020061653353243685110534",
"203468361522589209889579231081704498545",
"253316255119784430734083168005215848636",
"85422234033467612338807419870191715972",
"202669731542989556087847711122062205453",
"211226020959702359780232036554446310842",
"18866198154321649747504920063872748303",
"37157852389912703276166800636153947615",
"183738990658915741691600023463584943368",
"140855957684189824538849453464216974663",
"170461359481959814521752893581710686032",
"195826494554946020061653353243685110534"
]
},
"deprecated": false,
"signature_type": "Line",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@08b77ed7cfaac62bba51ac7a0487409ec9fcbc84",
"target": {
"file": "drivers/clk/qcom/gcc-sm6350.c"
}
},
{
"id": "CVE-2024-58076-36ddec9b",
"signature_version": "v1",
"digest": {
"threshold": 0.9,
"line_hashes": [
"205361486261641702262608255075184483300",
"260823030269491195101246284592186974048",
"15769538621811799752472874617983535244",
"76183435520267704803425124129841142954",
"318954028980060109418410162338379481402",
"19042322204250000031362474217969724627",
"270515173989826863679576618905188772641",
"4088197234355152282599661174830092668",
"175219931777645776849504482410617869995",
"334237610248509820317379629610186492331",
"183738990658915741691600023463584943368",
"140855957684189824538849453464216974663",
"170461359481959814521752893581710686032",
"195826494554946020061653353243685110534",
"203468361522589209889579231081704498545",
"253316255119784430734083168005215848636",
"85422234033467612338807419870191715972",
"202669731542989556087847711122062205453",
"211226020959702359780232036554446310842",
"18866198154321649747504920063872748303",
"37157852389912703276166800636153947615",
"183738990658915741691600023463584943368",
"140855957684189824538849453464216974663",
"170461359481959814521752893581710686032",
"195826494554946020061653353243685110534"
]
},
"deprecated": false,
"signature_type": "Line",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@175af15551ed5aa6af16ff97aff75cfffb42da21",
"target": {
"file": "drivers/clk/qcom/gcc-sm6350.c"
}
},
{
"id": "CVE-2024-58076-56c39c28",
"signature_version": "v1",
"digest": {
"threshold": 0.9,
"line_hashes": [
"205361486261641702262608255075184483300",
"260823030269491195101246284592186974048",
"15769538621811799752472874617983535244",
"76183435520267704803425124129841142954",
"318954028980060109418410162338379481402",
"19042322204250000031362474217969724627",
"270515173989826863679576618905188772641",
"4088197234355152282599661174830092668",
"175219931777645776849504482410617869995",
"334237610248509820317379629610186492331",
"183738990658915741691600023463584943368",
"140855957684189824538849453464216974663",
"170461359481959814521752893581710686032",
"195826494554946020061653353243685110534",
"203468361522589209889579231081704498545",
"253316255119784430734083168005215848636",
"85422234033467612338807419870191715972",
"202669731542989556087847711122062205453",
"211226020959702359780232036554446310842",
"18866198154321649747504920063872748303",
"37157852389912703276166800636153947615",
"183738990658915741691600023463584943368",
"140855957684189824538849453464216974663",
"170461359481959814521752893581710686032",
"195826494554946020061653353243685110534"
]
},
"deprecated": false,
"signature_type": "Line",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@39336edd14a59dc086fb19957655e0f340bb28e8",
"target": {
"file": "drivers/clk/qcom/gcc-sm6350.c"
}
},
{
"id": "CVE-2024-58076-64a5a837",
"signature_version": "v1",
"digest": {
"threshold": 0.9,
"line_hashes": [
"205361486261641702262608255075184483300",
"260823030269491195101246284592186974048",
"15769538621811799752472874617983535244",
"76183435520267704803425124129841142954",
"318954028980060109418410162338379481402",
"19042322204250000031362474217969724627",
"270515173989826863679576618905188772641",
"4088197234355152282599661174830092668",
"175219931777645776849504482410617869995",
"334237610248509820317379629610186492331",
"183738990658915741691600023463584943368",
"140855957684189824538849453464216974663",
"170461359481959814521752893581710686032",
"195826494554946020061653353243685110534",
"203468361522589209889579231081704498545",
"253316255119784430734083168005215848636",
"85422234033467612338807419870191715972",
"202669731542989556087847711122062205453",
"211226020959702359780232036554446310842",
"18866198154321649747504920063872748303",
"37157852389912703276166800636153947615",
"183738990658915741691600023463584943368",
"140855957684189824538849453464216974663",
"170461359481959814521752893581710686032",
"195826494554946020061653353243685110534"
]
},
"deprecated": false,
"signature_type": "Line",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@3e567032233a240b903dc11c9f18eeb3faa10ffa",
"target": {
"file": "drivers/clk/qcom/gcc-sm6350.c"
}
},
{
"id": "CVE-2024-58076-8cc5d90d",
"signature_version": "v1",
"digest": {
"threshold": 0.9,
"line_hashes": [
"205361486261641702262608255075184483300",
"260823030269491195101246284592186974048",
"15769538621811799752472874617983535244",
"76183435520267704803425124129841142954",
"318954028980060109418410162338379481402",
"19042322204250000031362474217969724627",
"270515173989826863679576618905188772641",
"4088197234355152282599661174830092668",
"175219931777645776849504482410617869995",
"334237610248509820317379629610186492331",
"183738990658915741691600023463584943368",
"140855957684189824538849453464216974663",
"170461359481959814521752893581710686032",
"195826494554946020061653353243685110534",
"203468361522589209889579231081704498545",
"253316255119784430734083168005215848636",
"85422234033467612338807419870191715972",
"202669731542989556087847711122062205453",
"211226020959702359780232036554446310842",
"18866198154321649747504920063872748303",
"37157852389912703276166800636153947615",
"183738990658915741691600023463584943368",
"140855957684189824538849453464216974663",
"170461359481959814521752893581710686032",
"195826494554946020061653353243685110534"
]
},
"deprecated": false,
"signature_type": "Line",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@96fe1a7ee477d701cfc98ab9d3c730c35d966861",
"target": {
"file": "drivers/clk/qcom/gcc-sm6350.c"
}
},
{
"id": "CVE-2024-58076-d22f03aa",
"signature_version": "v1",
"digest": {
"threshold": 0.9,
"line_hashes": [
"205361486261641702262608255075184483300",
"260823030269491195101246284592186974048",
"15769538621811799752472874617983535244",
"76183435520267704803425124129841142954",
"318954028980060109418410162338379481402",
"19042322204250000031362474217969724627",
"270515173989826863679576618905188772641",
"4088197234355152282599661174830092668",
"175219931777645776849504482410617869995",
"334237610248509820317379629610186492331",
"183738990658915741691600023463584943368",
"140855957684189824538849453464216974663",
"170461359481959814521752893581710686032",
"195826494554946020061653353243685110534",
"203468361522589209889579231081704498545",
"253316255119784430734083168005215848636",
"85422234033467612338807419870191715972",
"202669731542989556087847711122062205453",
"211226020959702359780232036554446310842",
"18866198154321649747504920063872748303",
"37157852389912703276166800636153947615",
"183738990658915741691600023463584943368",
"140855957684189824538849453464216974663",
"170461359481959814521752893581710686032",
"195826494554946020061653353243685110534"
]
},
"deprecated": false,
"signature_type": "Line",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@b6fe13566bf5676b1e3b72d2a06d875733e93ee6",
"target": {
"file": "drivers/clk/qcom/gcc-sm6350.c"
}
}
]