[{"data":1,"prerenderedAt":810},["ShallowReactive",2],{"$fZ45dVynlw7vqugaAb2RL4M9NX4Bs5aruDfyFKA_j-O8":3},{"title":4,"description":5,"parent":6,"type":7,"xrefs":8,"body":9,"_type":809,"_id":4},"VkDeviceFaultInfoKHR","Structure specifying device fault information","VK_KHR_device_fault","structs",[],{"type":10,"children":11,"toc":807},"root",[12,28,434,587,606,655,680,749,801],{"type":13,"tag":14,"props":15,"children":16},"element","p",{},[17,20,26],{"type":18,"value":19},"text","The ",{"type":13,"tag":21,"props":22,"children":24},"code",{"className":23},[],[25],{"type":18,"value":4},{"type":18,"value":27}," structure is defined as:",{"type":13,"tag":29,"props":30,"children":31},"code-group",{},[32,169],{"type":13,"tag":33,"props":34,"children":40},"pre",{"className":35,"code":36,"filename":37,"language":38,"meta":39,"style":39},"language-c shiki shiki-themes github-light-default github-dark-default","typedef struct VkDeviceFaultInfoKHR {\n VkStructureType sType;\n void* pNext;\n VkDeviceFaultFlagsKHR flags;\n uint64_t groupId;\n char description[VK_MAX_DESCRIPTION_SIZE];\n VkDeviceFaultAddressInfoKHR faultAddressInfo;\n VkDeviceFaultAddressInfoKHR instructionAddressInfo;\n VkDeviceFaultVendorInfoKHR vendorInfo;\n} VkDeviceFaultInfoKHR;\n","C","c","",[41],{"type":13,"tag":21,"props":42,"children":43},{"__ignoreMap":39},[44,67,76,90,99,113,133,142,151,160],{"type":13,"tag":45,"props":46,"children":49},"span",{"class":47,"line":48},"line",1,[50,56,61],{"type":13,"tag":45,"props":51,"children":53},{"style":52},"--shiki-default:#CF222E;--shiki-dark:#FF7B72",[54],{"type":18,"value":55},"typedef",{"type":13,"tag":45,"props":57,"children":58},{"style":52},[59],{"type":18,"value":60}," struct",{"type":13,"tag":45,"props":62,"children":64},{"style":63},"--shiki-default:#1F2328;--shiki-dark:#E6EDF3",[65],{"type":18,"value":66}," VkDeviceFaultInfoKHR {\n",{"type":13,"tag":45,"props":68,"children":70},{"class":47,"line":69},2,[71],{"type":13,"tag":45,"props":72,"children":73},{"style":63},[74],{"type":18,"value":75}," VkStructureType sType;\n",{"type":13,"tag":45,"props":77,"children":79},{"class":47,"line":78},3,[80,85],{"type":13,"tag":45,"props":81,"children":82},{"style":52},[83],{"type":18,"value":84}," void*",{"type":13,"tag":45,"props":86,"children":87},{"style":63},[88],{"type":18,"value":89}," pNext;\n",{"type":13,"tag":45,"props":91,"children":93},{"class":47,"line":92},4,[94],{"type":13,"tag":45,"props":95,"children":96},{"style":63},[97],{"type":18,"value":98}," VkDeviceFaultFlagsKHR flags;\n",{"type":13,"tag":45,"props":100,"children":102},{"class":47,"line":101},5,[103,108],{"type":13,"tag":45,"props":104,"children":105},{"style":52},[106],{"type":18,"value":107}," uint64_t",{"type":13,"tag":45,"props":109,"children":110},{"style":63},[111],{"type":18,"value":112}," groupId;\n",{"type":13,"tag":45,"props":114,"children":116},{"class":47,"line":115},6,[117,122,128],{"type":13,"tag":45,"props":118,"children":119},{"style":52},[120],{"type":18,"value":121}," char",{"type":13,"tag":45,"props":123,"children":125},{"style":124},"--shiki-default:#953800;--shiki-dark:#FFA657",[126],{"type":18,"value":127}," description",{"type":13,"tag":45,"props":129,"children":130},{"style":63},[131],{"type":18,"value":132},"[VK_MAX_DESCRIPTION_SIZE];\n",{"type":13,"tag":45,"props":134,"children":136},{"class":47,"line":135},7,[137],{"type":13,"tag":45,"props":138,"children":139},{"style":63},[140],{"type":18,"value":141}," VkDeviceFaultAddressInfoKHR faultAddressInfo;\n",{"type":13,"tag":45,"props":143,"children":145},{"class":47,"line":144},8,[146],{"type":13,"tag":45,"props":147,"children":148},{"style":63},[149],{"type":18,"value":150}," VkDeviceFaultAddressInfoKHR instructionAddressInfo;\n",{"type":13,"tag":45,"props":152,"children":154},{"class":47,"line":153},9,[155],{"type":13,"tag":45,"props":156,"children":157},{"style":63},[158],{"type":18,"value":159}," VkDeviceFaultVendorInfoKHR vendorInfo;\n",{"type":13,"tag":45,"props":161,"children":163},{"class":47,"line":162},10,[164],{"type":13,"tag":45,"props":165,"children":166},{"style":63},[167],{"type":18,"value":168},"} VkDeviceFaultInfoKHR;\n",{"type":13,"tag":33,"props":170,"children":175},{"className":171,"code":172,"filename":173,"language":174,"meta":39,"style":39},"language-rs shiki shiki-themes github-light-default github-dark-default","pub struct DeviceFaultInfoKHR {\n s_type: vk::StructureType,\n p_next: *mut c_void,\n flags: vk::DeviceFaultFlagsKHR,\n group_id: u64,\n description: [c_char; VK_MAX_DESCRIPTION_SIZE], // Free-form description of the fault\n fault_address_info: vk::DeviceFaultAddressInfoKHR,\n instruction_address_info: vk::DeviceFaultAddressInfoKHR,\n vendor_info: vk::DeviceFaultVendorInfoKHR,\n}\n","Rust","rs",[176],{"type":13,"tag":21,"props":177,"children":178},{"__ignoreMap":39},[179,201,234,256,285,306,340,369,397,426],{"type":13,"tag":45,"props":180,"children":181},{"class":47,"line":48},[182,187,191,196],{"type":13,"tag":45,"props":183,"children":184},{"style":52},[185],{"type":18,"value":186},"pub",{"type":13,"tag":45,"props":188,"children":189},{"style":52},[190],{"type":18,"value":60},{"type":13,"tag":45,"props":192,"children":193},{"style":124},[194],{"type":18,"value":195}," DeviceFaultInfoKHR",{"type":13,"tag":45,"props":197,"children":198},{"style":63},[199],{"type":18,"value":200}," {\n",{"type":13,"tag":45,"props":202,"children":203},{"class":47,"line":69},[204,209,214,219,224,229],{"type":13,"tag":45,"props":205,"children":206},{"style":63},[207],{"type":18,"value":208}," s_type",{"type":13,"tag":45,"props":210,"children":211},{"style":52},[212],{"type":18,"value":213},":",{"type":13,"tag":45,"props":215,"children":216},{"style":124},[217],{"type":18,"value":218}," vk",{"type":13,"tag":45,"props":220,"children":221},{"style":52},[222],{"type":18,"value":223},"::",{"type":13,"tag":45,"props":225,"children":226},{"style":124},[227],{"type":18,"value":228},"StructureType",{"type":13,"tag":45,"props":230,"children":231},{"style":63},[232],{"type":18,"value":233},",\n",{"type":13,"tag":45,"props":235,"children":236},{"class":47,"line":78},[237,242,246,251],{"type":13,"tag":45,"props":238,"children":239},{"style":63},[240],{"type":18,"value":241}," p_next",{"type":13,"tag":45,"props":243,"children":244},{"style":52},[245],{"type":18,"value":213},{"type":13,"tag":45,"props":247,"children":248},{"style":52},[249],{"type":18,"value":250}," *mut",{"type":13,"tag":45,"props":252,"children":253},{"style":63},[254],{"type":18,"value":255}," c_void,\n",{"type":13,"tag":45,"props":257,"children":258},{"class":47,"line":92},[259,264,268,272,276,281],{"type":13,"tag":45,"props":260,"children":261},{"style":63},[262],{"type":18,"value":263}," flags",{"type":13,"tag":45,"props":265,"children":266},{"style":52},[267],{"type":18,"value":213},{"type":13,"tag":45,"props":269,"children":270},{"style":124},[271],{"type":18,"value":218},{"type":13,"tag":45,"props":273,"children":274},{"style":52},[275],{"type":18,"value":223},{"type":13,"tag":45,"props":277,"children":278},{"style":124},[279],{"type":18,"value":280},"DeviceFaultFlagsKHR",{"type":13,"tag":45,"props":282,"children":283},{"style":63},[284],{"type":18,"value":233},{"type":13,"tag":45,"props":286,"children":287},{"class":47,"line":101},[288,293,297,302],{"type":13,"tag":45,"props":289,"children":290},{"style":63},[291],{"type":18,"value":292}," group_id",{"type":13,"tag":45,"props":294,"children":295},{"style":52},[296],{"type":18,"value":213},{"type":13,"tag":45,"props":298,"children":299},{"style":124},[300],{"type":18,"value":301}," u64",{"type":13,"tag":45,"props":303,"children":304},{"style":63},[305],{"type":18,"value":233},{"type":13,"tag":45,"props":307,"children":308},{"class":47,"line":115},[309,314,318,323,329,334],{"type":13,"tag":45,"props":310,"children":311},{"style":63},[312],{"type":18,"value":313}," description",{"type":13,"tag":45,"props":315,"children":316},{"style":52},[317],{"type":18,"value":213},{"type":13,"tag":45,"props":319,"children":320},{"style":63},[321],{"type":18,"value":322}," [c_char; ",{"type":13,"tag":45,"props":324,"children":326},{"style":325},"--shiki-default:#0550AE;--shiki-dark:#79C0FF",[327],{"type":18,"value":328},"VK_MAX_DESCRIPTION_SIZE",{"type":13,"tag":45,"props":330,"children":331},{"style":63},[332],{"type":18,"value":333},"], ",{"type":13,"tag":45,"props":335,"children":337},{"style":336},"--shiki-default:#6E7781;--shiki-dark:#8B949E",[338],{"type":18,"value":339},"// Free-form description of the fault\n",{"type":13,"tag":45,"props":341,"children":342},{"class":47,"line":135},[343,348,352,356,360,365],{"type":13,"tag":45,"props":344,"children":345},{"style":63},[346],{"type":18,"value":347}," fault_address_info",{"type":13,"tag":45,"props":349,"children":350},{"style":52},[351],{"type":18,"value":213},{"type":13,"tag":45,"props":353,"children":354},{"style":124},[355],{"type":18,"value":218},{"type":13,"tag":45,"props":357,"children":358},{"style":52},[359],{"type":18,"value":223},{"type":13,"tag":45,"props":361,"children":362},{"style":124},[363],{"type":18,"value":364},"DeviceFaultAddressInfoKHR",{"type":13,"tag":45,"props":366,"children":367},{"style":63},[368],{"type":18,"value":233},{"type":13,"tag":45,"props":370,"children":371},{"class":47,"line":144},[372,377,381,385,389,393],{"type":13,"tag":45,"props":373,"children":374},{"style":63},[375],{"type":18,"value":376}," instruction_address_info",{"type":13,"tag":45,"props":378,"children":379},{"style":52},[380],{"type":18,"value":213},{"type":13,"tag":45,"props":382,"children":383},{"style":124},[384],{"type":18,"value":218},{"type":13,"tag":45,"props":386,"children":387},{"style":52},[388],{"type":18,"value":223},{"type":13,"tag":45,"props":390,"children":391},{"style":124},[392],{"type":18,"value":364},{"type":13,"tag":45,"props":394,"children":395},{"style":63},[396],{"type":18,"value":233},{"type":13,"tag":45,"props":398,"children":399},{"class":47,"line":153},[400,405,409,413,417,422],{"type":13,"tag":45,"props":401,"children":402},{"style":63},[403],{"type":18,"value":404}," vendor_info",{"type":13,"tag":45,"props":406,"children":407},{"style":52},[408],{"type":18,"value":213},{"type":13,"tag":45,"props":410,"children":411},{"style":124},[412],{"type":18,"value":218},{"type":13,"tag":45,"props":414,"children":415},{"style":52},[416],{"type":18,"value":223},{"type":13,"tag":45,"props":418,"children":419},{"style":124},[420],{"type":18,"value":421},"DeviceFaultVendorInfoKHR",{"type":13,"tag":45,"props":423,"children":424},{"style":63},[425],{"type":18,"value":233},{"type":13,"tag":45,"props":427,"children":428},{"class":47,"line":162},[429],{"type":13,"tag":45,"props":430,"children":431},{"style":63},[432],{"type":18,"value":433},"}\n",{"type":13,"tag":435,"props":436,"children":437},"ul",{},[438,459,478,497,508,534,553,569],{"type":13,"tag":439,"props":440,"children":441},"li",{},[442,448,450,457],{"type":13,"tag":21,"props":443,"children":445},{"className":444},[],[446],{"type":18,"value":447},"sType",{"type":18,"value":449}," is a ",{"type":13,"tag":451,"props":452,"children":454},"a",{"href":453},"/man/VkStructureType",[455],{"type":18,"value":456},"VkStructureType",{"type":18,"value":458}," value identifying this structure.",{"type":13,"tag":439,"props":460,"children":461},{},[462,468,470,476],{"type":13,"tag":21,"props":463,"children":465},{"className":464},[],[466],{"type":18,"value":467},"pNext",{"type":18,"value":469}," is ",{"type":13,"tag":21,"props":471,"children":473},{"className":472},[],[474],{"type":18,"value":475},"NULL",{"type":18,"value":477}," or a pointer to a structure extending this\nstructure.",{"type":13,"tag":439,"props":479,"children":480},{},[481,487,489,495],{"type":13,"tag":21,"props":482,"children":484},{"className":483},[],[485],{"type":18,"value":486},"flags",{"type":18,"value":488}," is a bitmask of ",{"type":13,"tag":451,"props":490,"children":492},{"href":491},"/man/VkDeviceFaultFlagBitsKHR",[493],{"type":18,"value":494},"VkDeviceFaultFlagBitsKHR",{"type":18,"value":496}," values giving\ninformation as to the type of fault and which additional fields have\nbeen populated by the driver provide further information.",{"type":13,"tag":439,"props":498,"children":499},{},[500,506],{"type":13,"tag":21,"props":501,"children":503},{"className":502},[],[504],{"type":18,"value":505},"groupID",{"type":18,"value":507}," is a monotonically increasing value for associating\nmultiple entries with a single fault.",{"type":13,"tag":439,"props":509,"children":510},{},[511,517,519,524,526,532],{"type":13,"tag":21,"props":512,"children":514},{"className":513},[],[515],{"type":18,"value":516},"description",{"type":18,"value":518}," is an array of ",{"type":13,"tag":21,"props":520,"children":522},{"className":521},[],[523],{"type":18,"value":328},{"type":18,"value":525}," ",{"type":13,"tag":21,"props":527,"children":529},{"className":528},[],[530],{"type":18,"value":531},"char",{"type":18,"value":533},"\ncontaining a null-terminated UTF-8 string which is a human readable\ndescription of the fault.",{"type":13,"tag":439,"props":535,"children":536},{},[537,543,545,551],{"type":13,"tag":21,"props":538,"children":540},{"className":539},[],[541],{"type":18,"value":542},"faultAddressInfo",{"type":18,"value":544}," a ",{"type":13,"tag":451,"props":546,"children":548},{"href":547},"/man/VkDeviceFaultAddressInfoKHR",[549],{"type":18,"value":550},"VkDeviceFaultAddressInfoKHR",{"type":18,"value":552}," structure\nproviding details of the memory access which caused a fault.",{"type":13,"tag":439,"props":554,"children":555},{},[556,562,563,567],{"type":13,"tag":21,"props":557,"children":559},{"className":558},[],[560],{"type":18,"value":561},"instructionAddressInfo",{"type":18,"value":544},{"type":13,"tag":451,"props":564,"children":565},{"href":547},[566],{"type":18,"value":550},{"type":18,"value":568},"\nstructure providing details of the GPU instruction which cause a fault.",{"type":13,"tag":439,"props":570,"children":571},{},[572,578,579,585],{"type":13,"tag":21,"props":573,"children":575},{"className":574},[],[576],{"type":18,"value":577},"vendorInfo",{"type":18,"value":544},{"type":13,"tag":451,"props":580,"children":582},{"href":581},"/man/VkDeviceFaultVendorInfoKHR",[583],{"type":18,"value":584},"VkDeviceFaultVendorInfoKHR",{"type":18,"value":586}," structure providing\nvendor specific fault information.",{"type":13,"tag":14,"props":588,"children":589},{},[590,592,597,599,604],{"type":18,"value":591},"An implementation ",{"type":13,"tag":593,"props":594,"children":596},"normative",{"type":595},"should",[],{"type":18,"value":598}," populate as many members of\n",{"type":13,"tag":451,"props":600,"children":602},{"href":601},"/man/VkDeviceFaultInfoKHR",[603],{"type":18,"value":4},{"type":18,"value":605}," as possible, given the information available at\nthe time of the fault and the constraints of the implementation itself.",{"type":13,"tag":14,"props":607,"children":608},{},[609,611,615,617,622,624,627,629,635,637,642,643,646,648,653],{"type":18,"value":610},"A single error ",{"type":13,"tag":593,"props":612,"children":614},{"type":613},"may",[],{"type":18,"value":616}," generate multiple instances of\n",{"type":13,"tag":21,"props":618,"children":620},{"className":619},[],[621],{"type":18,"value":4},{"type":18,"value":623},".\nFor example, multiple page faults ",{"type":13,"tag":593,"props":625,"children":626},{"type":613},[],{"type":18,"value":628}," be generated, with the\n",{"type":13,"tag":21,"props":630,"children":632},{"className":631},[],[633],{"type":18,"value":634},"faultAddress",{"type":18,"value":636}," member of each instance identifying a different memory\naddress.\nIn this case, all instances of ",{"type":13,"tag":21,"props":638,"children":640},{"className":639},[],[641],{"type":18,"value":4},{"type":18,"value":525},{"type":13,"tag":593,"props":644,"children":645},{"type":595},[],{"type":18,"value":647}," share the\nsame ",{"type":13,"tag":21,"props":649,"children":651},{"className":650},[],[652],{"type":18,"value":505},{"type":18,"value":654}," where the implementation can reasonably ascertain this\nassociation.",{"type":13,"tag":14,"props":656,"children":657},{},[658,660,665,667,672,674,678],{"type":18,"value":659},"Due to hardware limitations, ",{"type":13,"tag":21,"props":661,"children":663},{"className":662},[],[664],{"type":18,"value":542},{"type":18,"value":666}," and\n",{"type":13,"tag":21,"props":668,"children":670},{"className":669},[],[671],{"type":18,"value":561},{"type":18,"value":673}," describe ranges of GPU virtual address space,\nrather than precise addresses.\nThe precise memory address accessed or the precise value of the instruction\npointer ",{"type":13,"tag":593,"props":675,"children":677},{"type":676},"must",[],{"type":18,"value":679}," lie within the region described.",{"type":13,"tag":681,"props":682,"children":683},"note",{},[684,703,716],{"type":13,"tag":14,"props":685,"children":686},{},[687,689,694,696,701],{"type":18,"value":688},"Each ",{"type":13,"tag":21,"props":690,"children":692},{"className":691},[],[693],{"type":18,"value":4},{"type":18,"value":695}," reported may (depending on the ",{"type":13,"tag":21,"props":697,"children":699},{"className":698},[],[700],{"type":18,"value":486},{"type":18,"value":702},"\nset) provide:",{"type":13,"tag":435,"props":704,"children":705},{},[706,711],{"type":13,"tag":439,"props":707,"children":708},{},[709],{"type":18,"value":710},"A memory access which may have triggered a page fault and may have\ncontributed to device loss",{"type":13,"tag":439,"props":712,"children":713},{},[714],{"type":18,"value":715},"The value of an active instruction pointer at the time a fault occurred.\nThis value may be indicative of the active pipeline or shader at the\ntime of device loss",{"type":13,"tag":14,"props":717,"children":718},{},[719,721,726,728,733,735,741,743,747],{"type":18,"value":720},"Comparison of the GPU virtual addresses described by ",{"type":13,"tag":21,"props":722,"children":724},{"className":723},[],[725],{"type":18,"value":542},{"type":18,"value":727},"\nor ",{"type":13,"tag":21,"props":729,"children":731},{"className":730},[],[732],{"type":18,"value":561},{"type":18,"value":734}," to GPU virtual address ranges reported by\nthe ",{"type":13,"tag":451,"props":736,"children":738},{"href":737},"/extensions/VK_EXT_device_address_binding_report",[739],{"type":18,"value":740},"VK_EXT_device_address_binding_report",{"type":18,"value":742}," extension may allow\napplications to correlate between these addresses and Vulkan objects.\nApplications should be aware that these addresses may also correspond to\nresources internal to an implementation, which will not be reported via the\n",{"type":13,"tag":451,"props":744,"children":745},{"href":737},[746],{"type":18,"value":740},{"type":18,"value":748}," extension.",{"type":13,"tag":750,"props":751,"children":753},"validity-group",{"name":752},"Valid Usage (Implicit)",[754,779],{"type":13,"tag":755,"props":756,"children":758},"validity-field",{"name":757},"VUID-VkDeviceFaultInfoKHR-sType-sType",[759],{"type":13,"tag":14,"props":760,"children":761},{},[762,767,768,771,773],{"type":13,"tag":21,"props":763,"children":765},{"className":764},[],[766],{"type":18,"value":447},{"type":18,"value":525},{"type":13,"tag":593,"props":769,"children":770},{"type":676},[],{"type":18,"value":772}," be ",{"type":13,"tag":21,"props":774,"children":776},{"className":775},[],[777],{"type":18,"value":778},"VK_STRUCTURE_TYPE_DEVICE_FAULT_INFO_KHR",{"type":13,"tag":755,"props":780,"children":782},{"name":781},"VUID-VkDeviceFaultInfoKHR-pNext-pNext",[783],{"type":13,"tag":14,"props":784,"children":785},{},[786,791,792,795,796],{"type":13,"tag":21,"props":787,"children":789},{"className":788},[],[790],{"type":18,"value":467},{"type":18,"value":525},{"type":13,"tag":593,"props":793,"children":794},{"type":676},[],{"type":18,"value":772},{"type":13,"tag":21,"props":797,"children":799},{"className":798},[],[800],{"type":18,"value":475},{"type":13,"tag":802,"props":803,"children":804},"style",{},[805],{"type":18,"value":806},"html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"title":39,"searchDepth":69,"depth":69,"links":808},[],"markdown",1773997218254]