In the Linux kernel, the following vulnerability has been resolved:
drm/amdgpu: change vm->task_info handling
This patch changes the handling and lifecycle of vm->taskinfo object. The major changes are: - vm->taskinfo is a dynamically allocated ptr now, and its uasge is reference counted. - introducing two new helper funcs for taskinfo lifecycle management - amdgpuvmgettaskinfo: reference counts up taskinfo before returning this info - amdgpuvmputtaskinfo: reference counts down taskinfo - last put to taskinfo() frees task_info from the vm.
This patch also does logistical changes required for existing usage of vm->task_info.
V2: Do not block all the prints when task_info not found (Felix)
V3: Fixed review comments from Felix - Fix wrong indentation - No debug message for -ENOMEM - Add NULL check for taskinfo - Do not duplicate the debug messages (ti vs no ti) - Get first reference of taskinfo in vminit(), put last in vmfini()
V4: Fixed review comments from Felix - fix double reference increment in createtaskinfo - change amdgpuvmgettaskinfopasid - additional changes in amdgpugem.c while porting
{
"cna_assigner": "Linux",
"osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2024/41xxx/CVE-2024-41008.json"
}[
{
"id": "CVE-2024-41008-01f721f3",
"digest": {
"length": 775.0,
"function_hash": "190923598961986972114330095329384423602"
},
"deprecated": false,
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@b8f67b9ddf4f8fe6dd536590712b5912ad78f99c",
"target": {
"file": "drivers/gpu/drm/amd/amdgpu/sdma_v4_4_2.c",
"function": "sdma_v4_4_2_print_iv_entry"
},
"signature_version": "v1",
"signature_type": "Function"
},
{
"id": "CVE-2024-41008-0286bb67",
"digest": {
"length": 301.0,
"function_hash": "276008822470357779999190569447180561447"
},
"deprecated": false,
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@b8f67b9ddf4f8fe6dd536590712b5912ad78f99c",
"target": {
"file": "drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c",
"function": "amdgpu_vm_get_task_info"
},
"signature_version": "v1",
"signature_type": "Function"
},
{
"id": "CVE-2024-41008-0992f9e2",
"digest": {
"threshold": 0.9,
"line_hashes": [
"267590218367219980574371618668718949271",
"71757056901220457232784761062347644734",
"206969343160858435652816680428106742170",
"262180018768224481496151913536341919550"
]
},
"deprecated": false,
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@b8f67b9ddf4f8fe6dd536590712b5912ad78f99c",
"target": {
"file": "drivers/gpu/drm/amd/amdgpu/amdgpu_vm_pt.c"
},
"signature_version": "v1",
"signature_type": "Line"
},
{
"id": "CVE-2024-41008-13d37c21",
"digest": {
"length": 1552.0,
"function_hash": "125743978704771565929374202573772782231"
},
"deprecated": false,
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@b8f67b9ddf4f8fe6dd536590712b5912ad78f99c",
"target": {
"file": "drivers/gpu/drm/amd/amdgpu/amdgpu_job.c",
"function": "amdgpu_job_timedout"
},
"signature_version": "v1",
"signature_type": "Function"
},
{
"id": "CVE-2024-41008-168ac842",
"digest": {
"length": 2253.0,
"function_hash": "181115159970148122753923547496955621081"
},
"deprecated": false,
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@b8f67b9ddf4f8fe6dd536590712b5912ad78f99c",
"target": {
"file": "drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c",
"function": "amdgpu_vm_init"
},
"signature_version": "v1",
"signature_type": "Function"
},
{
"id": "CVE-2024-41008-172f3ce2",
"digest": {
"length": 1209.0,
"function_hash": "179104509977950298936547366460422791591"
},
"deprecated": false,
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@b8f67b9ddf4f8fe6dd536590712b5912ad78f99c",
"target": {
"file": "drivers/gpu/drm/amd/amdgpu/amdgpu_gem.c",
"function": "amdgpu_gem_object_open"
},
"signature_version": "v1",
"signature_type": "Function"
},
{
"id": "CVE-2024-41008-36b49929",
"digest": {
"threshold": 0.9,
"line_hashes": [
"5150754563206339689882557998610299639",
"249309112786091527184373072292475550757",
"310552972733151995457904440822009696750",
"338066376498414172466479648479413480986",
"283502013751401631798081584668158313255",
"140848999554514470172758407243506761119",
"204369098148423870311369213264355602288",
"129214524188026790708142960541897079164",
"332839609158866926456636681828321624494",
"11219589565106699399704092821121882473",
"241997593709919709988990011388013294471",
"118639047028112167512108065600376693841",
"176710479265779745012583519393036039985"
]
},
"deprecated": false,
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@b8f67b9ddf4f8fe6dd536590712b5912ad78f99c",
"target": {
"file": "drivers/gpu/drm/amd/amdgpu/gmc_v8_0.c"
},
"signature_version": "v1",
"signature_type": "Line"
},
{
"id": "CVE-2024-41008-484f7652",
"digest": {
"length": 376.0,
"function_hash": "273101553494566912896419912588528503485"
},
"deprecated": false,
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@b8f67b9ddf4f8fe6dd536590712b5912ad78f99c",
"target": {
"file": "drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c",
"function": "amdgpu_vm_set_task_info"
},
"signature_version": "v1",
"signature_type": "Function"
},
{
"id": "CVE-2024-41008-4a4ba5f5",
"digest": {
"length": 2060.0,
"function_hash": "1548498412739586667365823559367086589"
},
"deprecated": false,
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@b8f67b9ddf4f8fe6dd536590712b5912ad78f99c",
"target": {
"file": "drivers/gpu/drm/amd/amdgpu/gmc_v8_0.c",
"function": "gmc_v8_0_process_interrupt"
},
"signature_version": "v1",
"signature_type": "Function"
},
{
"id": "CVE-2024-41008-4a8658da",
"digest": {
"threshold": 0.9,
"line_hashes": [
"253500945450900884066641799230473756805",
"81776486850427134240725765578095801668",
"327952788477124118486868998558218286395",
"18181339585680685642087408485328445544",
"186774212132812892037135776015461010150",
"317385307900800853846076489066259139781",
"259864688070318725058713607747769618560",
"337224521445026226133997947064604896024",
"183261064308352931328064663860912630851",
"232925925809474187408907590313862144189",
"254554216002723093946976093675658052083",
"18242816585220056096205912080833672896",
"226575680300576433673629508648350859800",
"317415971233223271033896862063722364797",
"110402492316455525572161735953660946784",
"125021058681350779637328599423410857463"
]
},
"deprecated": false,
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@b8f67b9ddf4f8fe6dd536590712b5912ad78f99c",
"target": {
"file": "drivers/gpu/drm/amd/amdgpu/amdgpu_vm.h"
},
"signature_version": "v1",
"signature_type": "Line"
},
{
"id": "CVE-2024-41008-571afd07",
"digest": {
"threshold": 0.9,
"line_hashes": [
"37061886396451270732242138635505859458",
"291365387194513197496356688031862759793",
"115912598624107408759021116216682831987",
"264157998515083911968592150158137326557",
"50526892426135832814503625281052450875",
"244272905670961974472480810240292543610",
"95236777156688465820499568304665125630",
"190773700827265667273153605965499081143",
"253005313428367138769865958300290222273",
"49031187851587899138642885121453552926",
"160095170608042355917632015760370306179",
"319523319376002021567238078300600439923",
"125035951448434274299176003260769045104",
"16037543123765006944121474710537182716",
"7458307001720253944315215624985475132"
]
},
"deprecated": false,
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@b8f67b9ddf4f8fe6dd536590712b5912ad78f99c",
"target": {
"file": "drivers/gpu/drm/amd/amdgpu/sdma_v4_0.c"
},
"signature_version": "v1",
"signature_type": "Line"
},
{
"id": "CVE-2024-41008-5c6a2d55",
"digest": {
"threshold": 0.9,
"line_hashes": [
"322378718692743116582113637840888137365",
"234618767506549736247638425060906443928",
"312899616708678822873263577825909230399",
"310129057215941890246120625927523552708",
"163067798153967326120518895219956405050"
]
},
"deprecated": false,
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@b8f67b9ddf4f8fe6dd536590712b5912ad78f99c",
"target": {
"file": "drivers/gpu/drm/amd/amdgpu/amdgpu_reset.c"
},
"signature_version": "v1",
"signature_type": "Line"
},
{
"id": "CVE-2024-41008-6e265395",
"digest": {
"threshold": 0.9,
"line_hashes": [
"251700610164397449145896160604173627823",
"48430167679416143893665545793249081652",
"125027858138016724213531693838718623207",
"105507255400386154632066199480383384054",
"326881175684920448149052510511031882287",
"156770391823073544144922922660734461733",
"43912433799427711606595225969314885975",
"100799225978938108935725697117739448478",
"335993013593592788523178298135141057421",
"267694986650855290231217297975010157321",
"70451671785472367212825839196533242590",
"9223182531291917271642383341160127602",
"181626665487980716800570516524713982856",
"165109292965528077600909839358000921310",
"28132500953569675340749695827703250200",
"125743597726790330057863805859817826894",
"244639130440903219263735567115987762732"
]
},
"deprecated": false,
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@b8f67b9ddf4f8fe6dd536590712b5912ad78f99c",
"target": {
"file": "drivers/gpu/drm/amd/amdgpu/amdgpu_job.c"
},
"signature_version": "v1",
"signature_type": "Line"
},
{
"id": "CVE-2024-41008-707340c3",
"digest": {
"threshold": 0.9,
"line_hashes": [
"86035668131052889273067990624645004917",
"205051185830020040778144813056296456813",
"147676484566382175527239943450143116810",
"331518706891232771312624811156903002717",
"238938642607716518122547780347412035489",
"198187411873164194680290007745304742508",
"100749220358669853449679053257442709516",
"265465864209315836323048796314286635743",
"317454717153175733574227547556289653444",
"34684053138201027099325375750038754060",
"115974229165140941966875472298905841935",
"38477248923128281498626268522810066220",
"23984181212637444054970711397813199236",
"274509027137477100195409265229826158259",
"37050028384396051395583528266932205212"
]
},
"deprecated": false,
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@b8f67b9ddf4f8fe6dd536590712b5912ad78f99c",
"target": {
"file": "drivers/gpu/drm/amd/amdgpu/gmc_v9_0.c"
},
"signature_version": "v1",
"signature_type": "Line"
},
{
"id": "CVE-2024-41008-78a6d63d",
"digest": {
"threshold": 0.9,
"line_hashes": [
"228689617213238958451582159971383511789",
"49968123304336402385838106228381549717",
"44795690128268758546473580051453349637",
"139328628804273407259828902749604360144",
"301449319113311107844751902209103674352",
"126908336055547696408939901812680973124",
"23683887213817041822754802746463717551",
"23832851869921653074279480707633759963",
"206623030639295827709596767822703516854",
"224139560778148094642249174383947497956"
]
},
"deprecated": false,
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@b8f67b9ddf4f8fe6dd536590712b5912ad78f99c",
"target": {
"file": "drivers/gpu/drm/amd/amdkfd/kfd_smi_events.c"
},
"signature_version": "v1",
"signature_type": "Line"
},
{
"id": "CVE-2024-41008-83886851",
"digest": {
"length": 775.0,
"function_hash": "190923598961986972114330095329384423602"
},
"deprecated": false,
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@b8f67b9ddf4f8fe6dd536590712b5912ad78f99c",
"target": {
"file": "drivers/gpu/drm/amd/amdgpu/sdma_v4_0.c",
"function": "sdma_v4_0_print_iv_entry"
},
"signature_version": "v1",
"signature_type": "Function"
},
{
"id": "CVE-2024-41008-84a723fc",
"digest": {
"length": 635.0,
"function_hash": "156242756153677804861009556269241631020"
},
"deprecated": false,
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@b8f67b9ddf4f8fe6dd536590712b5912ad78f99c",
"target": {
"file": "drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c",
"function": "amdgpu_debugfs_vm_info_show"
},
"signature_version": "v1",
"signature_type": "Function"
},
{
"id": "CVE-2024-41008-84ac15fc",
"digest": {
"length": 1414.0,
"function_hash": "107426665769111964199698918439512648194"
},
"deprecated": false,
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@b8f67b9ddf4f8fe6dd536590712b5912ad78f99c",
"target": {
"file": "drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c",
"function": "amdgpu_vm_fini"
},
"signature_version": "v1",
"signature_type": "Function"
},
{
"id": "CVE-2024-41008-8920319f",
"digest": {
"length": 572.0,
"function_hash": "112711468810286964941363401666601991385"
},
"deprecated": false,
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@b8f67b9ddf4f8fe6dd536590712b5912ad78f99c",
"target": {
"file": "drivers/gpu/drm/amd/amdgpu/amdgpu_reset.c",
"function": "amdgpu_coredump"
},
"signature_version": "v1",
"signature_type": "Function"
},
{
"id": "CVE-2024-41008-90f760ad",
"digest": {
"length": 4647.0,
"function_hash": "325285921462239452989873638512787043226"
},
"deprecated": false,
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@b8f67b9ddf4f8fe6dd536590712b5912ad78f99c",
"target": {
"file": "drivers/gpu/drm/amd/amdgpu/gmc_v9_0.c",
"function": "gmc_v9_0_process_interrupt"
},
"signature_version": "v1",
"signature_type": "Function"
},
{
"id": "CVE-2024-41008-9148423d",
"digest": {
"threshold": 0.9,
"line_hashes": [
"141647570485545482768753343639113585935",
"324821141703836239287306524856170567413",
"32196535093797337351637841944057519863",
"125137519938972833328410054660409000635",
"238938642607716518122547780347412035489",
"198187411873164194680290007745304742508",
"100749220358669853449679053257442709516",
"44167203024919035362956167240480025113",
"154686001746979406072425966893359353042",
"221070174488777616154413888262324729964",
"243401675893228793619326015672699716106",
"287037150035953937189162558216248157128",
"156987333576541120306665607105725393378",
"120585295959405652377084055327972395339",
"142728121247864128688856919626892007645",
"294107048912189681181808774863419708698",
"30605478287576135705084020771377370951",
"61576258709974646092035977058645944531"
]
},
"deprecated": false,
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@b8f67b9ddf4f8fe6dd536590712b5912ad78f99c",
"target": {
"file": "drivers/gpu/drm/amd/amdgpu/gmc_v10_0.c"
},
"signature_version": "v1",
"signature_type": "Line"
},
{
"id": "CVE-2024-41008-9f134830",
"digest": {
"length": 1326.0,
"function_hash": "69642343370073324069985593719199822039"
},
"deprecated": false,
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@b8f67b9ddf4f8fe6dd536590712b5912ad78f99c",
"target": {
"file": "drivers/gpu/drm/amd/amdgpu/gmc_v11_0.c",
"function": "gmc_v11_0_process_interrupt"
},
"signature_version": "v1",
"signature_type": "Function"
},
{
"id": "CVE-2024-41008-9f829b18",
"digest": {
"threshold": 0.9,
"line_hashes": [
"98897699386507251531458242369459868558",
"153050231867227737571081396644778175957",
"110310126859002727895148646310926509949",
"285033099004715717663457239256946439988",
"215872397004558106349157392587817448594",
"43529473892653101394352123631667244669",
"93473143868251536669975526069948240497",
"258685689893118526956897816424600535015",
"143069637404935532434220719534939983854",
"47488874894459752830538268020272246338",
"300985711529150072486867956850537487524",
"205555889322302246274409734706358444198",
"112599233462989429160009059494207692498",
"311970216108029304952331453713690747258",
"280294189700335070113192826500955275637",
"40769531186571077640849368742649722146",
"112727319014114714966630669534377468852",
"16474480580594432141251950514417181030",
"54104715457134419404904021890788382472",
"138582087345734026161479761795115904723",
"147742827100836675371606753183996859118",
"121884501782142510801459716347028836019",
"138853989912657111765634208452035496305",
"222050855564469532240079224748436195869",
"170548826117282244296341159400932383717",
"26554579631478567772945098167921595432",
"252690170591439377191570066532378065704",
"337218420245249665000531016197525204016",
"233737036494418204661583502606481670608",
"221606024451200216144936380600559968342",
"63911684957284340124306133922384704017",
"160019246368947931723934048932974408712",
"262486400373244624038634746130214891776",
"294438822408345068298376433240816360173",
"14963543675655218666959602035259953881",
"207103591950098999888542601377317131623",
"41613826989542667824534755270179372768",
"10124056077462770327537586024867339114",
"303997557997063255506158102462463394111",
"77079867937690290567429921409431149291"
]
},
"deprecated": false,
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@b8f67b9ddf4f8fe6dd536590712b5912ad78f99c",
"target": {
"file": "drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c"
},
"signature_version": "v1",
"signature_type": "Line"
},
{
"id": "CVE-2024-41008-ac826085",
"digest": {
"length": 1883.0,
"function_hash": "288885937074758912471373221587028178692"
},
"deprecated": false,
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@b8f67b9ddf4f8fe6dd536590712b5912ad78f99c",
"target": {
"file": "drivers/gpu/drm/amd/amdgpu/gmc_v10_0.c",
"function": "gmc_v10_0_process_interrupt"
},
"signature_version": "v1",
"signature_type": "Function"
},
{
"id": "CVE-2024-41008-d5c0e482",
"digest": {
"threshold": 0.9,
"line_hashes": [
"167512179778518052872092662362683505643",
"338522440883756145446106353678000686097",
"251955595073891219666157549359898001144",
"163983891896413915146195391202976061844",
"325586493764012145927723793887628986792",
"86172746925223835957452268235276712185"
]
},
"deprecated": false,
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@b8f67b9ddf4f8fe6dd536590712b5912ad78f99c",
"target": {
"file": "drivers/gpu/drm/amd/amdgpu/amdgpu_gem.c"
},
"signature_version": "v1",
"signature_type": "Line"
},
{
"id": "CVE-2024-41008-e1d7f6cc",
"digest": {
"threshold": 0.9,
"line_hashes": [
"224326402941315876688623157032479471282",
"181969647277685284516694403903800517096",
"283599542412336108863237917205730029046",
"215086835196944311446393111787430462717",
"116411587498306994704743982210961025509",
"264634968641649033183207217307346660829"
]
},
"deprecated": false,
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@b8f67b9ddf4f8fe6dd536590712b5912ad78f99c",
"target": {
"file": "drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c"
},
"signature_version": "v1",
"signature_type": "Line"
},
{
"id": "CVE-2024-41008-ef7c8c22",
"digest": {
"length": 1510.0,
"function_hash": "46128144200930018716740657072725209781"
},
"deprecated": false,
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@b8f67b9ddf4f8fe6dd536590712b5912ad78f99c",
"target": {
"file": "drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c",
"function": "amdgpu_vm_validate"
},
"signature_version": "v1",
"signature_type": "Function"
},
{
"id": "CVE-2024-41008-f215a3c7",
"digest": {
"threshold": 0.9,
"line_hashes": [
"37061886396451270732242138635505859458",
"291365387194513197496356688031862759793",
"198487528901174439285504427425335431307",
"229187556743060013667111067985209715877",
"50526892426135832814503625281052450875",
"244272905670961974472480810240292543610",
"95236777156688465820499568304665125630",
"190773700827265667273153605965499081143",
"253005313428367138769865958300290222273",
"49031187851587899138642885121453552926",
"160095170608042355917632015760370306179",
"319523319376002021567238078300600439923",
"125035951448434274299176003260769045104",
"16037543123765006944121474710537182716",
"290394695742165870345500968343864998283"
]
},
"deprecated": false,
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@b8f67b9ddf4f8fe6dd536590712b5912ad78f99c",
"target": {
"file": "drivers/gpu/drm/amd/amdgpu/sdma_v4_4_2.c"
},
"signature_version": "v1",
"signature_type": "Line"
},
{
"id": "CVE-2024-41008-f4b3bf09",
"digest": {
"length": 270.0,
"function_hash": "72695588716014136212831880922425118918"
},
"deprecated": false,
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@b8f67b9ddf4f8fe6dd536590712b5912ad78f99c",
"target": {
"file": "drivers/gpu/drm/amd/amdkfd/kfd_smi_events.c",
"function": "kfd_smi_event_update_vmfault"
},
"signature_version": "v1",
"signature_type": "Function"
},
{
"id": "CVE-2024-41008-f6d9bb45",
"digest": {
"threshold": 0.9,
"line_hashes": [
"176635124466527231488036161743025718496",
"305897915208615322392888688558296592205",
"310552972733151995457904440822009696750",
"125244641767562551224838228618032739868",
"44167203024919035362956167240480025113",
"154686001746979406072425966893359353042",
"221070174488777616154413888262324729964",
"243401675893228793619326015672699716106",
"287037150035953937189162558216248157128",
"100541186607690621061292505139250524170",
"241071438731065490028418521278019441794",
"50066172782684403833667223001222727235",
"76295951128200336217359141656334667047",
"135066147200876990618705404450059222884"
]
},
"deprecated": false,
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@b8f67b9ddf4f8fe6dd536590712b5912ad78f99c",
"target": {
"file": "drivers/gpu/drm/amd/amdgpu/gmc_v11_0.c"
},
"signature_version": "v1",
"signature_type": "Line"
},
{
"id": "CVE-2024-41008-fe9f20a1",
"digest": {
"length": 2364.0,
"function_hash": "311273133877616220076450368494271905101"
},
"deprecated": false,
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@b8f67b9ddf4f8fe6dd536590712b5912ad78f99c",
"target": {
"file": "drivers/gpu/drm/amd/amdgpu/amdgpu_vm_pt.c",
"function": "amdgpu_vm_ptes_update"
},
"signature_version": "v1",
"signature_type": "Function"
}
]