1079d581eSLawrence Tang{ 2079d581eSLawrence Tang "$id": "cper-json-ia32x54-processor-section", 3079d581eSLawrence Tang "$schema": "https://json-schema.org/draft/2020-12/schema", 4079d581eSLawrence Tang "type": "object", 5079d581eSLawrence Tang "required": ["validationBits", "localAPICID", "cpuidInfo", "processorErrorInfo", "processorContextInfo"], 6079d581eSLawrence Tang "additionalProperties": false, 7079d581eSLawrence Tang "properties": { 8079d581eSLawrence Tang "validationBits": { 9079d581eSLawrence Tang "type": "object", 10079d581eSLawrence Tang "required": ["localAPICIDValid", "cpuIDInfoValid", "processorErrorInfoNum", "processorContextInfoNum"], 11079d581eSLawrence Tang "properties": { 12079d581eSLawrence Tang "localAPICIDValid": { 13079d581eSLawrence Tang "type": "boolean" 14079d581eSLawrence Tang }, 15079d581eSLawrence Tang "cpuIDInfoValid": { 16079d581eSLawrence Tang "type": "boolean" 17079d581eSLawrence Tang }, 18079d581eSLawrence Tang "processorErrorInfoNum": { 19079d581eSLawrence Tang "type": "integer", 20079d581eSLawrence Tang "minimum": 0 21079d581eSLawrence Tang }, 22079d581eSLawrence Tang "processorContextInfoNum": { 23079d581eSLawrence Tang "type": "integer", 24079d581eSLawrence Tang "minimum": 0 25079d581eSLawrence Tang } 26079d581eSLawrence Tang } 27079d581eSLawrence Tang }, 28079d581eSLawrence Tang "localAPICID": { 29079d581eSLawrence Tang "type": "integer" 30079d581eSLawrence Tang }, 31079d581eSLawrence Tang "cpuidInfo": { 32079d581eSLawrence Tang "type": "object", 33079d581eSLawrence Tang "required": ["eax", "ebx", "ecx", "edx"], 34079d581eSLawrence Tang "properties": { 35079d581eSLawrence Tang "eax": { 36079d581eSLawrence Tang "type": "integer" 37079d581eSLawrence Tang }, 38079d581eSLawrence Tang "ebx": { 39079d581eSLawrence Tang "type": "integer" 40079d581eSLawrence Tang }, 41079d581eSLawrence Tang "ecx": { 42079d581eSLawrence Tang "type": "integer" 43079d581eSLawrence Tang }, 44079d581eSLawrence Tang "edx": { 45079d581eSLawrence Tang "type": "integer" 46079d581eSLawrence Tang } 47079d581eSLawrence Tang } 48079d581eSLawrence Tang }, 49079d581eSLawrence Tang "processorErrorInfo": { 50079d581eSLawrence Tang "type": "array", 51079d581eSLawrence Tang "items": { 52079d581eSLawrence Tang "type": "object", 53079d581eSLawrence Tang "required": ["type", "validationBits", "checkInfo", "targetAddressID", "requestorID", "responderID", "instructionPointer"], 54079d581eSLawrence Tang "additionalProperties": false, 55079d581eSLawrence Tang "properties": { 56079d581eSLawrence Tang "type": { 57079d581eSLawrence Tang "type": "string" 58079d581eSLawrence Tang }, 59079d581eSLawrence Tang "validationBits": { 60079d581eSLawrence Tang "type": "object", 61079d581eSLawrence Tang "required": ["checkInfoValid", "targetAddressIDValid", "requestorIDValid", "responderIDValid", "instructionPointerValid"], 62079d581eSLawrence Tang "additionalProperties": false, 63079d581eSLawrence Tang "properties": { 64079d581eSLawrence Tang "checkInfoValid": { 65079d581eSLawrence Tang "type": "boolean" 66079d581eSLawrence Tang }, 67079d581eSLawrence Tang "targetAddressIDValid": { 68079d581eSLawrence Tang "type": "boolean" 69079d581eSLawrence Tang }, 70079d581eSLawrence Tang "requestorIDValid": { 71079d581eSLawrence Tang "type": "boolean" 72079d581eSLawrence Tang }, 73079d581eSLawrence Tang "responderIDValid": { 74079d581eSLawrence Tang "type": "boolean" 75079d581eSLawrence Tang }, 76079d581eSLawrence Tang "instructionPointerValid": { 77079d581eSLawrence Tang "type": "boolean" 78079d581eSLawrence Tang } 79079d581eSLawrence Tang } 80079d581eSLawrence Tang }, 81079d581eSLawrence Tang "checkInfo": { 82079d581eSLawrence Tang "type" : "object", 83079d581eSLawrence Tang "oneOf": [ 84079d581eSLawrence Tang { 85079d581eSLawrence Tang "type": "object", 86079d581eSLawrence Tang "required": ["validationBits", "transactionType", "operation", "level", "processorContextCorrupt", "uncorrected", "preciseIP", "restartableIP", "overflow"], 87079d581eSLawrence Tang "additionalProperties": false, 88079d581eSLawrence Tang "properties": { 89079d581eSLawrence Tang "validationBits": { 90079d581eSLawrence Tang "type": "object", 91079d581eSLawrence Tang "required": ["transactionTypeValid", "operationValid", "levelValid", "processorContextCorruptValid", "uncorrectedValid", "preciseIPValid", "restartableIPValid", "overflowValid"], 92079d581eSLawrence Tang "properties": { 93079d581eSLawrence Tang "transactionTypeValid": { 94079d581eSLawrence Tang "type": "boolean" 95079d581eSLawrence Tang }, 96079d581eSLawrence Tang "operationValid": { 97079d581eSLawrence Tang "type": "boolean" 98079d581eSLawrence Tang }, 99079d581eSLawrence Tang "levelValid": { 100079d581eSLawrence Tang "type": "boolean" 101079d581eSLawrence Tang }, 102079d581eSLawrence Tang "processorContextCorruptValid": { 103079d581eSLawrence Tang "type": "boolean" 104079d581eSLawrence Tang }, 105079d581eSLawrence Tang "uncorrectedValid": { 106079d581eSLawrence Tang "type": "boolean" 107079d581eSLawrence Tang }, 108079d581eSLawrence Tang "preciseIPValid": { 109079d581eSLawrence Tang "type": "boolean" 110079d581eSLawrence Tang }, 111079d581eSLawrence Tang "restartableIPValid": { 112079d581eSLawrence Tang "type": "boolean" 113079d581eSLawrence Tang }, 114079d581eSLawrence Tang "overflowValid": { 115079d581eSLawrence Tang "type": "boolean" 116079d581eSLawrence Tang } 117079d581eSLawrence Tang } 118079d581eSLawrence Tang }, 119079d581eSLawrence Tang "transactionType": { 120079d581eSLawrence Tang "type": "object", 1218a2d737cSLawrence Tang "$ref": "./common/cper-json-nvp.json" 122079d581eSLawrence Tang }, 123079d581eSLawrence Tang "operation": { 124079d581eSLawrence Tang "type": "object", 1258a2d737cSLawrence Tang "$ref": "./common/cper-json-nvp.json" 126079d581eSLawrence Tang }, 127079d581eSLawrence Tang "level": { 128079d581eSLawrence Tang "type": "integer", 129079d581eSLawrence Tang "minimum": 0 130079d581eSLawrence Tang }, 131079d581eSLawrence Tang "processorContextCorrupt": { 132079d581eSLawrence Tang "type": "boolean" 133079d581eSLawrence Tang }, 134079d581eSLawrence Tang "uncorrected": { 135079d581eSLawrence Tang "type": "boolean" 136079d581eSLawrence Tang }, 137079d581eSLawrence Tang "preciseIP": { 138079d581eSLawrence Tang "type": "boolean" 139079d581eSLawrence Tang }, 140079d581eSLawrence Tang "restartableIP": { 141079d581eSLawrence Tang "type": "boolean" 142079d581eSLawrence Tang }, 143079d581eSLawrence Tang "overflow": { 144079d581eSLawrence Tang "type": "boolean" 145079d581eSLawrence Tang } 146079d581eSLawrence Tang } 147079d581eSLawrence Tang }, 148079d581eSLawrence Tang { 149079d581eSLawrence Tang "type": "object", 150079d581eSLawrence Tang "required": ["validationBits", "transactionType", "operation", "level", "processorContextCorrupt", "uncorrected", "preciseIP", "restartableIP", "overflow", "participationType", "timedOut", "addressSpace"], 151079d581eSLawrence Tang "additionalProperties": false, 152079d581eSLawrence Tang "properties": { 153079d581eSLawrence Tang "validationBits": { 154079d581eSLawrence Tang "type": "object", 155*d34f2b11SLawrence Tang "required": ["transactionTypeValid", "operationValid", "levelValid", "processorContextCorruptValid", "uncorrectedValid", "preciseIPValid", "restartableIPValid", "overflowValid", "participationTypeValid", "timedOutValid", "addressSpaceValid"], 156079d581eSLawrence Tang "properties": { 157079d581eSLawrence Tang "transactionTypeValid": { 158079d581eSLawrence Tang "type": "boolean" 159079d581eSLawrence Tang }, 160079d581eSLawrence Tang "operationValid": { 161079d581eSLawrence Tang "type": "boolean" 162079d581eSLawrence Tang }, 163079d581eSLawrence Tang "levelValid": { 164079d581eSLawrence Tang "type": "boolean" 165079d581eSLawrence Tang }, 166079d581eSLawrence Tang "processorContextCorruptValid": { 167079d581eSLawrence Tang "type": "boolean" 168079d581eSLawrence Tang }, 169079d581eSLawrence Tang "uncorrectedValid": { 170079d581eSLawrence Tang "type": "boolean" 171079d581eSLawrence Tang }, 172079d581eSLawrence Tang "preciseIPValid": { 173079d581eSLawrence Tang "type": "boolean" 174079d581eSLawrence Tang }, 175079d581eSLawrence Tang "restartableIPValid": { 176079d581eSLawrence Tang "type": "boolean" 177079d581eSLawrence Tang }, 178079d581eSLawrence Tang "overflowValid": { 179079d581eSLawrence Tang "type": "boolean" 180079d581eSLawrence Tang }, 181079d581eSLawrence Tang "participationTypeValid": { 182079d581eSLawrence Tang "type": "boolean" 183079d581eSLawrence Tang }, 184079d581eSLawrence Tang "timedOutValid": { 185079d581eSLawrence Tang "type": "boolean" 186*d34f2b11SLawrence Tang }, 187*d34f2b11SLawrence Tang "addressSpaceValid": { 188*d34f2b11SLawrence Tang "type": "boolean" 189079d581eSLawrence Tang } 190079d581eSLawrence Tang } 191079d581eSLawrence Tang }, 192079d581eSLawrence Tang "transactionType": { 193079d581eSLawrence Tang "type": "object", 1948a2d737cSLawrence Tang "$ref": "./common/cper-json-nvp.json" 195079d581eSLawrence Tang }, 196079d581eSLawrence Tang "operation": { 197079d581eSLawrence Tang "type": "object", 1988a2d737cSLawrence Tang "$ref": "./common/cper-json-nvp.json" 199079d581eSLawrence Tang }, 200079d581eSLawrence Tang "level": { 201079d581eSLawrence Tang "type": "integer", 202079d581eSLawrence Tang "minimum": 0 203079d581eSLawrence Tang }, 204079d581eSLawrence Tang "processorContextCorrupt": { 205079d581eSLawrence Tang "type": "boolean" 206079d581eSLawrence Tang }, 207079d581eSLawrence Tang "uncorrected": { 208079d581eSLawrence Tang "type": "boolean" 209079d581eSLawrence Tang }, 210079d581eSLawrence Tang "preciseIP": { 211079d581eSLawrence Tang "type": "boolean" 212079d581eSLawrence Tang }, 213079d581eSLawrence Tang "restartableIP": { 214079d581eSLawrence Tang "type": "boolean" 215079d581eSLawrence Tang }, 216079d581eSLawrence Tang "overflow": { 217079d581eSLawrence Tang "type": "boolean" 218079d581eSLawrence Tang }, 219079d581eSLawrence Tang "participationType": { 220079d581eSLawrence Tang "type": "object", 2218a2d737cSLawrence Tang "$ref": "./common/cper-json-nvp.json" 222079d581eSLawrence Tang }, 223079d581eSLawrence Tang "addressSpace": { 224079d581eSLawrence Tang "type": "object", 2258a2d737cSLawrence Tang "$ref": "./common/cper-json-nvp.json" 226079d581eSLawrence Tang }, 227079d581eSLawrence Tang "timedOut": { 228079d581eSLawrence Tang "type": "boolean" 229079d581eSLawrence Tang } 230079d581eSLawrence Tang } 231079d581eSLawrence Tang }, 232079d581eSLawrence Tang { 233079d581eSLawrence Tang "type": "object", 234079d581eSLawrence Tang "required": [], 235079d581eSLawrence Tang "additionalProperties": false, 236079d581eSLawrence Tang "properties": { 237079d581eSLawrence Tang "validationBits": { 238079d581eSLawrence Tang "type": "object", 239079d581eSLawrence Tang "required": ["errorTypeValid", "processorContextCorruptValid", "uncorrectedValid", "preciseIPValid", "restartableIPValid", "overflowValid"], 240079d581eSLawrence Tang "properties": { 241079d581eSLawrence Tang "errorTypeValid": { 242079d581eSLawrence Tang "type": "boolean" 243079d581eSLawrence Tang }, 244079d581eSLawrence Tang "processorContextCorruptValid": { 245079d581eSLawrence Tang "type": "boolean" 246079d581eSLawrence Tang }, 247079d581eSLawrence Tang "uncorrectedValid": { 248079d581eSLawrence Tang "type": "boolean" 249079d581eSLawrence Tang }, 250079d581eSLawrence Tang "preciseIPValid": { 251079d581eSLawrence Tang "type": "boolean" 252079d581eSLawrence Tang }, 253079d581eSLawrence Tang "restartableIPValid": { 254079d581eSLawrence Tang "type": "boolean" 255079d581eSLawrence Tang }, 256079d581eSLawrence Tang "overflowValid": { 257079d581eSLawrence Tang "type": "boolean" 258079d581eSLawrence Tang } 259079d581eSLawrence Tang } 260079d581eSLawrence Tang }, 261079d581eSLawrence Tang "errorType": { 262079d581eSLawrence Tang "type": "object", 2638a2d737cSLawrence Tang "$ref": "./common/cper-json-nvp.json" 264079d581eSLawrence Tang }, 265079d581eSLawrence Tang "processorContextCorrupt": { 266079d581eSLawrence Tang "type": "boolean" 267079d581eSLawrence Tang }, 268079d581eSLawrence Tang "uncorrected": { 269079d581eSLawrence Tang "type": "boolean" 270079d581eSLawrence Tang }, 271079d581eSLawrence Tang "preciseIP": { 272079d581eSLawrence Tang "type": "boolean" 273079d581eSLawrence Tang }, 274079d581eSLawrence Tang "restartableIP": { 275079d581eSLawrence Tang "type": "boolean" 276079d581eSLawrence Tang }, 277079d581eSLawrence Tang "overflow": { 278079d581eSLawrence Tang "type": "boolean" 279079d581eSLawrence Tang } 280079d581eSLawrence Tang } 281079d581eSLawrence Tang } 282079d581eSLawrence Tang ] 283079d581eSLawrence Tang }, 284079d581eSLawrence Tang "targetAddressID": { 285079d581eSLawrence Tang "type": "integer" 286079d581eSLawrence Tang }, 287079d581eSLawrence Tang "requestorID": { 288079d581eSLawrence Tang "type": "integer" 289079d581eSLawrence Tang }, 290079d581eSLawrence Tang "responderID": { 291079d581eSLawrence Tang "type": "integer" 292079d581eSLawrence Tang }, 293079d581eSLawrence Tang "instructionPointer": { 294079d581eSLawrence Tang "type": "integer" 295079d581eSLawrence Tang } 296079d581eSLawrence Tang } 297079d581eSLawrence Tang } 298079d581eSLawrence Tang }, 299079d581eSLawrence Tang "processorContextInfo": { 300079d581eSLawrence Tang "type": "array", 301079d581eSLawrence Tang "items": { 302079d581eSLawrence Tang "type": "object", 303079d581eSLawrence Tang "required": ["registerContextType", "registerArraySize", "msrAddress", "mmRegisterAddress"], 304079d581eSLawrence Tang "additionalProperties": false, 305079d581eSLawrence Tang "properties": { 306079d581eSLawrence Tang "registerContextType": { 307079d581eSLawrence Tang "type": "object", 3088a2d737cSLawrence Tang "$ref": "./common/cper-json-nvp.json" 309079d581eSLawrence Tang }, 310079d581eSLawrence Tang "registerArraySize": { 311079d581eSLawrence Tang "type": "integer" 312079d581eSLawrence Tang }, 313079d581eSLawrence Tang "msrAddress": { 314079d581eSLawrence Tang "type": "integer" 315079d581eSLawrence Tang }, 316079d581eSLawrence Tang "mmRegisterAddress": { 317079d581eSLawrence Tang "type": "integer" 318079d581eSLawrence Tang }, 319079d581eSLawrence Tang "registerArray": { 320079d581eSLawrence Tang "type": "object", 321079d581eSLawrence Tang "oneOf": [ 322079d581eSLawrence Tang { 323079d581eSLawrence Tang "type": "object", 324079d581eSLawrence Tang "required": ["eax", "ebx", "ecx", "edx", "esi", "edi", "ebp", "esp", "cs", "ds", "ss", "es", "fs", "gs", "eflags", "eip", "cr0", "cr1", "cr2", "cr3", "cr4", "gdtr", "idtr", "ldtr", "tr"], 325079d581eSLawrence Tang "additionalProperties": false, 326079d581eSLawrence Tang "properties": { 327079d581eSLawrence Tang "eax": { "type": "integer" }, 328079d581eSLawrence Tang "ebx": { "type": "integer" }, 329079d581eSLawrence Tang "ecx": { "type": "integer" }, 330079d581eSLawrence Tang "edx": { "type": "integer" }, 331079d581eSLawrence Tang "esi": { "type": "integer" }, 332079d581eSLawrence Tang "edi": { "type": "integer" }, 333079d581eSLawrence Tang "ebp": { "type": "integer" }, 334079d581eSLawrence Tang "esp": { "type": "integer" }, 335079d581eSLawrence Tang "cs": { "type": "integer" }, 336079d581eSLawrence Tang "ds": { "type": "integer" }, 337079d581eSLawrence Tang "ss": { "type": "integer" }, 338079d581eSLawrence Tang "es": { "type": "integer" }, 339079d581eSLawrence Tang "fs": { "type": "integer" }, 340079d581eSLawrence Tang "gs": { "type": "integer" }, 341079d581eSLawrence Tang "eflags": { "type": "integer" }, 342079d581eSLawrence Tang "eip": { "type": "integer" }, 343079d581eSLawrence Tang "cr0": { "type": "integer" }, 344079d581eSLawrence Tang "cr1": { "type": "integer" }, 345079d581eSLawrence Tang "cr2": { "type": "integer" }, 346079d581eSLawrence Tang "cr3": { "type": "integer" }, 347079d581eSLawrence Tang "cr4": { "type": "integer" }, 348079d581eSLawrence Tang "gdtr": { "type": "integer" }, 349079d581eSLawrence Tang "idtr": { "type": "integer" }, 350079d581eSLawrence Tang "ldtr": { "type": "integer" }, 351079d581eSLawrence Tang "tr": { "type": "integer" } 352079d581eSLawrence Tang } 353079d581eSLawrence Tang }, 354079d581eSLawrence Tang { 355079d581eSLawrence Tang "type": "object", 356079d581eSLawrence Tang "required": ["rax", "rbx", "rcx", "rdx", "rsi", "rdi", "rbp", "rsp", "r8", "r9", "r10", "r11", "r12", "r13", "r14", "r15", "cs", "ds", "es", "fs", "gs", "rflags", "eip", "cr0", "cr1", "cr2", "cr3", "cr4", "cr8", "gdtr_0", "gdtr_1", "idtr_0", "idtr_1", "ldtr", "tr"], 357079d581eSLawrence Tang "additionalProperties": false, 358079d581eSLawrence Tang "properties": { 359079d581eSLawrence Tang "rax": { "type": "integer" }, 360079d581eSLawrence Tang "rbx": { "type": "integer" }, 361079d581eSLawrence Tang "rcx": { "type": "integer" }, 362079d581eSLawrence Tang "rdx": { "type": "integer" }, 363079d581eSLawrence Tang "rsi": { "type": "integer" }, 364079d581eSLawrence Tang "rdi": { "type": "integer" }, 365079d581eSLawrence Tang "rbp": { "type": "integer" }, 366079d581eSLawrence Tang "rsp": { "type": "integer" }, 367079d581eSLawrence Tang "r8": { "type": "integer" }, 368079d581eSLawrence Tang "r9": { "type": "integer" }, 369079d581eSLawrence Tang "r10": { "type": "integer" }, 370079d581eSLawrence Tang "r11": { "type": "integer" }, 371079d581eSLawrence Tang "r12": { "type": "integer" }, 372079d581eSLawrence Tang "r13": { "type": "integer" }, 373079d581eSLawrence Tang "r14": { "type": "integer" }, 374079d581eSLawrence Tang "r15": { "type": "integer" }, 375079d581eSLawrence Tang "cs": { "type": "integer" }, 376079d581eSLawrence Tang "ds": { "type": "integer" }, 377079d581eSLawrence Tang "ss": { "type": "integer" }, 378079d581eSLawrence Tang "es": { "type": "integer" }, 379079d581eSLawrence Tang "fs": { "type": "integer" }, 380079d581eSLawrence Tang "gs": { "type": "integer" }, 381079d581eSLawrence Tang "rflags": { "type": "integer" }, 382079d581eSLawrence Tang "eip": { "type": "integer" }, 383079d581eSLawrence Tang "cr0": { "type": "integer" }, 384079d581eSLawrence Tang "cr1": { "type": "integer" }, 385079d581eSLawrence Tang "cr2": { "type": "integer" }, 386079d581eSLawrence Tang "cr3": { "type": "integer" }, 387079d581eSLawrence Tang "cr4": { "type": "integer" }, 388079d581eSLawrence Tang "cr8": { "type": "integer" }, 389079d581eSLawrence Tang "gdtr_0": { "type": "integer" }, 390079d581eSLawrence Tang "gdtr_1": { "type": "integer" }, 391079d581eSLawrence Tang "idtr_0": { "type": "integer" }, 392079d581eSLawrence Tang "idtr_1": { "type": "integer" }, 393079d581eSLawrence Tang "ldtr": { "type": "integer" }, 394079d581eSLawrence Tang "tr": { "type": "integer" } 395079d581eSLawrence Tang } 396079d581eSLawrence Tang }, 397079d581eSLawrence Tang { 398079d581eSLawrence Tang "type": "object", 399079d581eSLawrence Tang "required": ["data"], 400079d581eSLawrence Tang "additionalProperties": false, 401079d581eSLawrence Tang "properties": { 402079d581eSLawrence Tang "data": { 403079d581eSLawrence Tang "type": "string" 404079d581eSLawrence Tang } 405079d581eSLawrence Tang } 406079d581eSLawrence Tang } 407079d581eSLawrence Tang ] 408079d581eSLawrence Tang } 409079d581eSLawrence Tang } 410079d581eSLawrence Tang } 411079d581eSLawrence Tang } 412079d581eSLawrence Tang } 413079d581eSLawrence Tang}