1{ 2 "$id": "cper-json-ia32x54-processor-section", 3 "$schema": "https://json-schema.org/draft/2020-12/schema", 4 "type": "object", 5 "required": [ 6 "validationBits", 7 "localAPICID", 8 "cpuidInfo", 9 "processorErrorInfo", 10 "processorContextInfo" 11 ], 12 "additionalProperties": false, 13 "properties": { 14 "validationBits": { 15 "type": "object", 16 "required": [ 17 "localAPICIDValid", 18 "cpuIDInfoValid", 19 "processorErrorInfoNum", 20 "processorContextInfoNum" 21 ], 22 "properties": { 23 "localAPICIDValid": { 24 "type": "boolean" 25 }, 26 "cpuIDInfoValid": { 27 "type": "boolean" 28 }, 29 "processorErrorInfoNum": { 30 "type": "integer", 31 "minimum": 0 32 }, 33 "processorContextInfoNum": { 34 "type": "integer", 35 "minimum": 0 36 } 37 } 38 }, 39 "localAPICID": { 40 "type": "integer" 41 }, 42 "cpuidInfo": { 43 "type": "object", 44 "required": ["eax", "ebx", "ecx", "edx"], 45 "properties": { 46 "eax": { 47 "type": "integer" 48 }, 49 "ebx": { 50 "type": "integer" 51 }, 52 "ecx": { 53 "type": "integer" 54 }, 55 "edx": { 56 "type": "integer" 57 } 58 } 59 }, 60 "processorErrorInfo": { 61 "type": "array", 62 "items": { 63 "type": "object", 64 "required": [ 65 "type", 66 "validationBits", 67 "checkInfo", 68 "targetAddressID", 69 "requestorID", 70 "responderID", 71 "instructionPointer" 72 ], 73 "additionalProperties": false, 74 "properties": { 75 "type": { 76 "type": "object", 77 "required": ["guid", "name"], 78 "properties": { 79 "guid": { 80 "type": "string" 81 }, 82 "name": { 83 "type": "string" 84 } 85 } 86 }, 87 "validationBits": { 88 "type": "object", 89 "required": [ 90 "checkInfoValid", 91 "targetAddressIDValid", 92 "requestorIDValid", 93 "responderIDValid", 94 "instructionPointerValid" 95 ], 96 "additionalProperties": false, 97 "properties": { 98 "checkInfoValid": { 99 "type": "boolean" 100 }, 101 "targetAddressIDValid": { 102 "type": "boolean" 103 }, 104 "requestorIDValid": { 105 "type": "boolean" 106 }, 107 "responderIDValid": { 108 "type": "boolean" 109 }, 110 "instructionPointerValid": { 111 "type": "boolean" 112 } 113 } 114 }, 115 "checkInfo": { 116 "type": "object", 117 "oneOf": [ 118 { 119 "type": "object", 120 "required": [ 121 "validationBits", 122 "transactionType", 123 "operation", 124 "level", 125 "processorContextCorrupt", 126 "uncorrected", 127 "preciseIP", 128 "restartableIP", 129 "overflow" 130 ], 131 "additionalProperties": false, 132 "properties": { 133 "validationBits": { 134 "type": "object", 135 "required": [ 136 "transactionTypeValid", 137 "operationValid", 138 "levelValid", 139 "processorContextCorruptValid", 140 "uncorrectedValid", 141 "preciseIPValid", 142 "restartableIPValid", 143 "overflowValid" 144 ], 145 "properties": { 146 "transactionTypeValid": { 147 "type": "boolean" 148 }, 149 "operationValid": { 150 "type": "boolean" 151 }, 152 "levelValid": { 153 "type": "boolean" 154 }, 155 "processorContextCorruptValid": { 156 "type": "boolean" 157 }, 158 "uncorrectedValid": { 159 "type": "boolean" 160 }, 161 "preciseIPValid": { 162 "type": "boolean" 163 }, 164 "restartableIPValid": { 165 "type": "boolean" 166 }, 167 "overflowValid": { 168 "type": "boolean" 169 } 170 } 171 }, 172 "transactionType": { 173 "type": "object", 174 "$ref": "./common/cper-json-nvp.json" 175 }, 176 "operation": { 177 "type": "object", 178 "$ref": "./common/cper-json-nvp.json" 179 }, 180 "level": { 181 "type": "integer", 182 "minimum": 0 183 }, 184 "processorContextCorrupt": { 185 "type": "boolean" 186 }, 187 "uncorrected": { 188 "type": "boolean" 189 }, 190 "preciseIP": { 191 "type": "boolean" 192 }, 193 "restartableIP": { 194 "type": "boolean" 195 }, 196 "overflow": { 197 "type": "boolean" 198 } 199 } 200 }, 201 { 202 "type": "object", 203 "required": [ 204 "validationBits", 205 "transactionType", 206 "operation", 207 "level", 208 "processorContextCorrupt", 209 "uncorrected", 210 "preciseIP", 211 "restartableIP", 212 "overflow", 213 "participationType", 214 "timedOut", 215 "addressSpace" 216 ], 217 "additionalProperties": false, 218 "properties": { 219 "validationBits": { 220 "type": "object", 221 "required": [ 222 "transactionTypeValid", 223 "operationValid", 224 "levelValid", 225 "processorContextCorruptValid", 226 "uncorrectedValid", 227 "preciseIPValid", 228 "restartableIPValid", 229 "overflowValid", 230 "participationTypeValid", 231 "timedOutValid", 232 "addressSpaceValid" 233 ], 234 "properties": { 235 "transactionTypeValid": { 236 "type": "boolean" 237 }, 238 "operationValid": { 239 "type": "boolean" 240 }, 241 "levelValid": { 242 "type": "boolean" 243 }, 244 "processorContextCorruptValid": { 245 "type": "boolean" 246 }, 247 "uncorrectedValid": { 248 "type": "boolean" 249 }, 250 "preciseIPValid": { 251 "type": "boolean" 252 }, 253 "restartableIPValid": { 254 "type": "boolean" 255 }, 256 "overflowValid": { 257 "type": "boolean" 258 }, 259 "participationTypeValid": { 260 "type": "boolean" 261 }, 262 "timedOutValid": { 263 "type": "boolean" 264 }, 265 "addressSpaceValid": { 266 "type": "boolean" 267 } 268 } 269 }, 270 "transactionType": { 271 "type": "object", 272 "$ref": "./common/cper-json-nvp.json" 273 }, 274 "operation": { 275 "type": "object", 276 "$ref": "./common/cper-json-nvp.json" 277 }, 278 "level": { 279 "type": "integer", 280 "minimum": 0 281 }, 282 "processorContextCorrupt": { 283 "type": "boolean" 284 }, 285 "uncorrected": { 286 "type": "boolean" 287 }, 288 "preciseIP": { 289 "type": "boolean" 290 }, 291 "restartableIP": { 292 "type": "boolean" 293 }, 294 "overflow": { 295 "type": "boolean" 296 }, 297 "participationType": { 298 "type": "object", 299 "$ref": "./common/cper-json-nvp.json" 300 }, 301 "addressSpace": { 302 "type": "object", 303 "$ref": "./common/cper-json-nvp.json" 304 }, 305 "timedOut": { 306 "type": "boolean" 307 } 308 } 309 }, 310 { 311 "type": "object", 312 "required": [], 313 "additionalProperties": false, 314 "properties": { 315 "validationBits": { 316 "type": "object", 317 "required": [ 318 "errorTypeValid", 319 "processorContextCorruptValid", 320 "uncorrectedValid", 321 "preciseIPValid", 322 "restartableIPValid", 323 "overflowValid" 324 ], 325 "properties": { 326 "errorTypeValid": { 327 "type": "boolean" 328 }, 329 "processorContextCorruptValid": { 330 "type": "boolean" 331 }, 332 "uncorrectedValid": { 333 "type": "boolean" 334 }, 335 "preciseIPValid": { 336 "type": "boolean" 337 }, 338 "restartableIPValid": { 339 "type": "boolean" 340 }, 341 "overflowValid": { 342 "type": "boolean" 343 } 344 } 345 }, 346 "errorType": { 347 "type": "object", 348 "$ref": "./common/cper-json-nvp.json" 349 }, 350 "processorContextCorrupt": { 351 "type": "boolean" 352 }, 353 "uncorrected": { 354 "type": "boolean" 355 }, 356 "preciseIP": { 357 "type": "boolean" 358 }, 359 "restartableIP": { 360 "type": "boolean" 361 }, 362 "overflow": { 363 "type": "boolean" 364 } 365 } 366 } 367 ] 368 }, 369 "targetAddressID": { 370 "type": "integer" 371 }, 372 "requestorID": { 373 "type": "integer" 374 }, 375 "responderID": { 376 "type": "integer" 377 }, 378 "instructionPointer": { 379 "type": "integer" 380 } 381 } 382 } 383 }, 384 "processorContextInfo": { 385 "type": "array", 386 "items": { 387 "type": "object", 388 "required": [ 389 "registerContextType", 390 "registerArraySize", 391 "msrAddress", 392 "mmRegisterAddress" 393 ], 394 "additionalProperties": false, 395 "properties": { 396 "registerContextType": { 397 "type": "object", 398 "$ref": "./common/cper-json-nvp.json" 399 }, 400 "registerArraySize": { 401 "type": "integer" 402 }, 403 "msrAddress": { 404 "type": "integer" 405 }, 406 "mmRegisterAddress": { 407 "type": "integer" 408 }, 409 "registerArray": { 410 "type": "object", 411 "oneOf": [ 412 { 413 "type": "object", 414 "required": [ 415 "eax", 416 "ebx", 417 "ecx", 418 "edx", 419 "esi", 420 "edi", 421 "ebp", 422 "esp", 423 "cs", 424 "ds", 425 "ss", 426 "es", 427 "fs", 428 "gs", 429 "eflags", 430 "eip", 431 "cr0", 432 "cr1", 433 "cr2", 434 "cr3", 435 "cr4", 436 "gdtr", 437 "idtr", 438 "ldtr", 439 "tr" 440 ], 441 "additionalProperties": false, 442 "properties": { 443 "eax": { "type": "integer" }, 444 "ebx": { "type": "integer" }, 445 "ecx": { "type": "integer" }, 446 "edx": { "type": "integer" }, 447 "esi": { "type": "integer" }, 448 "edi": { "type": "integer" }, 449 "ebp": { "type": "integer" }, 450 "esp": { "type": "integer" }, 451 "cs": { "type": "integer" }, 452 "ds": { "type": "integer" }, 453 "ss": { "type": "integer" }, 454 "es": { "type": "integer" }, 455 "fs": { "type": "integer" }, 456 "gs": { "type": "integer" }, 457 "eflags": { "type": "integer" }, 458 "eip": { "type": "integer" }, 459 "cr0": { "type": "integer" }, 460 "cr1": { "type": "integer" }, 461 "cr2": { "type": "integer" }, 462 "cr3": { "type": "integer" }, 463 "cr4": { "type": "integer" }, 464 "gdtr": { "type": "integer" }, 465 "idtr": { "type": "integer" }, 466 "ldtr": { "type": "integer" }, 467 "tr": { "type": "integer" } 468 } 469 }, 470 { 471 "type": "object", 472 "required": [ 473 "rax", 474 "rbx", 475 "rcx", 476 "rdx", 477 "rsi", 478 "rdi", 479 "rbp", 480 "rsp", 481 "r8", 482 "r9", 483 "r10", 484 "r11", 485 "r12", 486 "r13", 487 "r14", 488 "r15", 489 "cs", 490 "ds", 491 "es", 492 "fs", 493 "gs", 494 "rflags", 495 "eip", 496 "cr0", 497 "cr1", 498 "cr2", 499 "cr3", 500 "cr4", 501 "cr8", 502 "gdtr_0", 503 "gdtr_1", 504 "idtr_0", 505 "idtr_1", 506 "ldtr", 507 "tr" 508 ], 509 "additionalProperties": false, 510 "properties": { 511 "rax": { "type": "integer" }, 512 "rbx": { "type": "integer" }, 513 "rcx": { "type": "integer" }, 514 "rdx": { "type": "integer" }, 515 "rsi": { "type": "integer" }, 516 "rdi": { "type": "integer" }, 517 "rbp": { "type": "integer" }, 518 "rsp": { "type": "integer" }, 519 "r8": { "type": "integer" }, 520 "r9": { "type": "integer" }, 521 "r10": { "type": "integer" }, 522 "r11": { "type": "integer" }, 523 "r12": { "type": "integer" }, 524 "r13": { "type": "integer" }, 525 "r14": { "type": "integer" }, 526 "r15": { "type": "integer" }, 527 "cs": { "type": "integer" }, 528 "ds": { "type": "integer" }, 529 "ss": { "type": "integer" }, 530 "es": { "type": "integer" }, 531 "fs": { "type": "integer" }, 532 "gs": { "type": "integer" }, 533 "rflags": { "type": "integer" }, 534 "eip": { "type": "integer" }, 535 "cr0": { "type": "integer" }, 536 "cr1": { "type": "integer" }, 537 "cr2": { "type": "integer" }, 538 "cr3": { "type": "integer" }, 539 "cr4": { "type": "integer" }, 540 "cr8": { "type": "integer" }, 541 "gdtr_0": { "type": "integer" }, 542 "gdtr_1": { "type": "integer" }, 543 "idtr_0": { "type": "integer" }, 544 "idtr_1": { "type": "integer" }, 545 "ldtr": { "type": "integer" }, 546 "tr": { "type": "integer" } 547 } 548 }, 549 { 550 "type": "object", 551 "required": ["data"], 552 "additionalProperties": false, 553 "properties": { 554 "data": { 555 "type": "string" 556 } 557 } 558 } 559 ] 560 } 561 } 562 } 563 } 564 } 565} 566