1{ 2 "$id": "cper-json-ia32x54-processor-section", 3 "$schema": "https://json-schema.org/draft/2020-12/schema", 4 "type": "object", 5 "required": ["validationBits", "localAPICID", "cpuidInfo", "processorErrorInfo", "processorContextInfo"], 6 "additionalProperties": false, 7 "properties": { 8 "validationBits": { 9 "type": "object", 10 "required": ["localAPICIDValid", "cpuIDInfoValid", "processorErrorInfoNum", "processorContextInfoNum"], 11 "properties": { 12 "localAPICIDValid": { 13 "type": "boolean" 14 }, 15 "cpuIDInfoValid": { 16 "type": "boolean" 17 }, 18 "processorErrorInfoNum": { 19 "type": "integer", 20 "minimum": 0 21 }, 22 "processorContextInfoNum": { 23 "type": "integer", 24 "minimum": 0 25 } 26 } 27 }, 28 "localAPICID": { 29 "type": "integer" 30 }, 31 "cpuidInfo": { 32 "type": "object", 33 "required": ["eax", "ebx", "ecx", "edx"], 34 "properties": { 35 "eax": { 36 "type": "integer" 37 }, 38 "ebx": { 39 "type": "integer" 40 }, 41 "ecx": { 42 "type": "integer" 43 }, 44 "edx": { 45 "type": "integer" 46 } 47 } 48 }, 49 "processorErrorInfo": { 50 "type": "array", 51 "items": { 52 "type": "object", 53 "required": ["type", "validationBits", "checkInfo", "targetAddressID", "requestorID", "responderID", "instructionPointer"], 54 "additionalProperties": false, 55 "properties": { 56 "type": { 57 "type": "object", 58 "required": ["guid", "name"], 59 "properties": { 60 "guid": { 61 "type": "string" 62 }, 63 "name": { 64 "type": "string" 65 } 66 } 67 }, 68 "validationBits": { 69 "type": "object", 70 "required": ["checkInfoValid", "targetAddressIDValid", "requestorIDValid", "responderIDValid", "instructionPointerValid"], 71 "additionalProperties": false, 72 "properties": { 73 "checkInfoValid": { 74 "type": "boolean" 75 }, 76 "targetAddressIDValid": { 77 "type": "boolean" 78 }, 79 "requestorIDValid": { 80 "type": "boolean" 81 }, 82 "responderIDValid": { 83 "type": "boolean" 84 }, 85 "instructionPointerValid": { 86 "type": "boolean" 87 } 88 } 89 }, 90 "checkInfo": { 91 "type" : "object", 92 "oneOf": [ 93 { 94 "type": "object", 95 "required": ["validationBits", "transactionType", "operation", "level", "processorContextCorrupt", "uncorrected", "preciseIP", "restartableIP", "overflow"], 96 "additionalProperties": false, 97 "properties": { 98 "validationBits": { 99 "type": "object", 100 "required": ["transactionTypeValid", "operationValid", "levelValid", "processorContextCorruptValid", "uncorrectedValid", "preciseIPValid", "restartableIPValid", "overflowValid"], 101 "properties": { 102 "transactionTypeValid": { 103 "type": "boolean" 104 }, 105 "operationValid": { 106 "type": "boolean" 107 }, 108 "levelValid": { 109 "type": "boolean" 110 }, 111 "processorContextCorruptValid": { 112 "type": "boolean" 113 }, 114 "uncorrectedValid": { 115 "type": "boolean" 116 }, 117 "preciseIPValid": { 118 "type": "boolean" 119 }, 120 "restartableIPValid": { 121 "type": "boolean" 122 }, 123 "overflowValid": { 124 "type": "boolean" 125 } 126 } 127 }, 128 "transactionType": { 129 "type": "object", 130 "$ref": "./common/cper-json-nvp.json" 131 }, 132 "operation": { 133 "type": "object", 134 "$ref": "./common/cper-json-nvp.json" 135 }, 136 "level": { 137 "type": "integer", 138 "minimum": 0 139 }, 140 "processorContextCorrupt": { 141 "type": "boolean" 142 }, 143 "uncorrected": { 144 "type": "boolean" 145 }, 146 "preciseIP": { 147 "type": "boolean" 148 }, 149 "restartableIP": { 150 "type": "boolean" 151 }, 152 "overflow": { 153 "type": "boolean" 154 } 155 } 156 }, 157 { 158 "type": "object", 159 "required": ["validationBits", "transactionType", "operation", "level", "processorContextCorrupt", "uncorrected", "preciseIP", "restartableIP", "overflow", "participationType", "timedOut", "addressSpace"], 160 "additionalProperties": false, 161 "properties": { 162 "validationBits": { 163 "type": "object", 164 "required": ["transactionTypeValid", "operationValid", "levelValid", "processorContextCorruptValid", "uncorrectedValid", "preciseIPValid", "restartableIPValid", "overflowValid", "participationTypeValid", "timedOutValid", "addressSpaceValid"], 165 "properties": { 166 "transactionTypeValid": { 167 "type": "boolean" 168 }, 169 "operationValid": { 170 "type": "boolean" 171 }, 172 "levelValid": { 173 "type": "boolean" 174 }, 175 "processorContextCorruptValid": { 176 "type": "boolean" 177 }, 178 "uncorrectedValid": { 179 "type": "boolean" 180 }, 181 "preciseIPValid": { 182 "type": "boolean" 183 }, 184 "restartableIPValid": { 185 "type": "boolean" 186 }, 187 "overflowValid": { 188 "type": "boolean" 189 }, 190 "participationTypeValid": { 191 "type": "boolean" 192 }, 193 "timedOutValid": { 194 "type": "boolean" 195 }, 196 "addressSpaceValid": { 197 "type": "boolean" 198 } 199 } 200 }, 201 "transactionType": { 202 "type": "object", 203 "$ref": "./common/cper-json-nvp.json" 204 }, 205 "operation": { 206 "type": "object", 207 "$ref": "./common/cper-json-nvp.json" 208 }, 209 "level": { 210 "type": "integer", 211 "minimum": 0 212 }, 213 "processorContextCorrupt": { 214 "type": "boolean" 215 }, 216 "uncorrected": { 217 "type": "boolean" 218 }, 219 "preciseIP": { 220 "type": "boolean" 221 }, 222 "restartableIP": { 223 "type": "boolean" 224 }, 225 "overflow": { 226 "type": "boolean" 227 }, 228 "participationType": { 229 "type": "object", 230 "$ref": "./common/cper-json-nvp.json" 231 }, 232 "addressSpace": { 233 "type": "object", 234 "$ref": "./common/cper-json-nvp.json" 235 }, 236 "timedOut": { 237 "type": "boolean" 238 } 239 } 240 }, 241 { 242 "type": "object", 243 "required": [], 244 "additionalProperties": false, 245 "properties": { 246 "validationBits": { 247 "type": "object", 248 "required": ["errorTypeValid", "processorContextCorruptValid", "uncorrectedValid", "preciseIPValid", "restartableIPValid", "overflowValid"], 249 "properties": { 250 "errorTypeValid": { 251 "type": "boolean" 252 }, 253 "processorContextCorruptValid": { 254 "type": "boolean" 255 }, 256 "uncorrectedValid": { 257 "type": "boolean" 258 }, 259 "preciseIPValid": { 260 "type": "boolean" 261 }, 262 "restartableIPValid": { 263 "type": "boolean" 264 }, 265 "overflowValid": { 266 "type": "boolean" 267 } 268 } 269 }, 270 "errorType": { 271 "type": "object", 272 "$ref": "./common/cper-json-nvp.json" 273 }, 274 "processorContextCorrupt": { 275 "type": "boolean" 276 }, 277 "uncorrected": { 278 "type": "boolean" 279 }, 280 "preciseIP": { 281 "type": "boolean" 282 }, 283 "restartableIP": { 284 "type": "boolean" 285 }, 286 "overflow": { 287 "type": "boolean" 288 } 289 } 290 } 291 ] 292 }, 293 "targetAddressID": { 294 "type": "integer" 295 }, 296 "requestorID": { 297 "type": "integer" 298 }, 299 "responderID": { 300 "type": "integer" 301 }, 302 "instructionPointer": { 303 "type": "integer" 304 } 305 } 306 } 307 }, 308 "processorContextInfo": { 309 "type": "array", 310 "items": { 311 "type": "object", 312 "required": ["registerContextType", "registerArraySize", "msrAddress", "mmRegisterAddress"], 313 "additionalProperties": false, 314 "properties": { 315 "registerContextType": { 316 "type": "object", 317 "$ref": "./common/cper-json-nvp.json" 318 }, 319 "registerArraySize": { 320 "type": "integer" 321 }, 322 "msrAddress": { 323 "type": "integer" 324 }, 325 "mmRegisterAddress": { 326 "type": "integer" 327 }, 328 "registerArray": { 329 "type": "object", 330 "oneOf": [ 331 { 332 "type": "object", 333 "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"], 334 "additionalProperties": false, 335 "properties": { 336 "eax": { "type": "integer" }, 337 "ebx": { "type": "integer" }, 338 "ecx": { "type": "integer" }, 339 "edx": { "type": "integer" }, 340 "esi": { "type": "integer" }, 341 "edi": { "type": "integer" }, 342 "ebp": { "type": "integer" }, 343 "esp": { "type": "integer" }, 344 "cs": { "type": "integer" }, 345 "ds": { "type": "integer" }, 346 "ss": { "type": "integer" }, 347 "es": { "type": "integer" }, 348 "fs": { "type": "integer" }, 349 "gs": { "type": "integer" }, 350 "eflags": { "type": "integer" }, 351 "eip": { "type": "integer" }, 352 "cr0": { "type": "integer" }, 353 "cr1": { "type": "integer" }, 354 "cr2": { "type": "integer" }, 355 "cr3": { "type": "integer" }, 356 "cr4": { "type": "integer" }, 357 "gdtr": { "type": "integer" }, 358 "idtr": { "type": "integer" }, 359 "ldtr": { "type": "integer" }, 360 "tr": { "type": "integer" } 361 } 362 }, 363 { 364 "type": "object", 365 "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"], 366 "additionalProperties": false, 367 "properties": { 368 "rax": { "type": "integer" }, 369 "rbx": { "type": "integer" }, 370 "rcx": { "type": "integer" }, 371 "rdx": { "type": "integer" }, 372 "rsi": { "type": "integer" }, 373 "rdi": { "type": "integer" }, 374 "rbp": { "type": "integer" }, 375 "rsp": { "type": "integer" }, 376 "r8": { "type": "integer" }, 377 "r9": { "type": "integer" }, 378 "r10": { "type": "integer" }, 379 "r11": { "type": "integer" }, 380 "r12": { "type": "integer" }, 381 "r13": { "type": "integer" }, 382 "r14": { "type": "integer" }, 383 "r15": { "type": "integer" }, 384 "cs": { "type": "integer" }, 385 "ds": { "type": "integer" }, 386 "ss": { "type": "integer" }, 387 "es": { "type": "integer" }, 388 "fs": { "type": "integer" }, 389 "gs": { "type": "integer" }, 390 "rflags": { "type": "integer" }, 391 "eip": { "type": "integer" }, 392 "cr0": { "type": "integer" }, 393 "cr1": { "type": "integer" }, 394 "cr2": { "type": "integer" }, 395 "cr3": { "type": "integer" }, 396 "cr4": { "type": "integer" }, 397 "cr8": { "type": "integer" }, 398 "gdtr_0": { "type": "integer" }, 399 "gdtr_1": { "type": "integer" }, 400 "idtr_0": { "type": "integer" }, 401 "idtr_1": { "type": "integer" }, 402 "ldtr": { "type": "integer" }, 403 "tr": { "type": "integer" } 404 } 405 }, 406 { 407 "type": "object", 408 "required": ["data"], 409 "additionalProperties": false, 410 "properties": { 411 "data": { 412 "type": "string" 413 } 414 } 415 } 416 ] 417 } 418 } 419 } 420 } 421 } 422}