Processor identity, socket, status, voltage, cache handles, and topology counts.
lazybiosGetType4 returns a lazybiosType4Array_t holding every matching structure. Iterate entries using count. A non-NULL result whose count is zero means the table contains no structure of this type; NULL means the arguments were unusable or an allocation failed. Release the set with lazybiosFreeType4, or assign it to ctx->Type4 and let lazybiosCleanup own it.
Every record carries its own SMBIOS handle and the structure length the firmware reported.
Encoded fields are decoded during parsing into decoded, which mirrors the raw member names (processor_family, processor_family_2, processor_type, processor_upgrade). The raw value stays alongside it, so both the encoding and its meaning are available.
Processor manufacturer, version, ID, serial number, asset tag, and part number are preserved from SMBIOS. Use decoded.processor_family with processor_family_2 when processor_family is 0xFE; otherwise use the 8-bit processor_family value. The extended family field requires SMBIOS 2.6 or newer.
socket_designation is the installed socket label. processor_upgrade is the enumerated upgrade/socket form decoded by decoded.processor_upgrade. The separate socket_type string is an SMBIOS 3.8 field and must not be confused with processor_upgrade.
decoded.status reports socket population and processor status. decoded.voltage handles both current-voltage and supported- voltage encodings. decoded.processor_characteristics decodes the processor characteristics bit field.
The 8-bit core, enabled-core, and thread counts use 0xFF to select their matching 16-bit extended fields. thread_enabled is a separate SMBIOS 3.6 field.
L1, L2, and L3 members are SMBIOS handles referring to Type 7 structures. They are not indexes in the Type 7 array. Match them against raw structure handles when correlating processor and cache records. A 0xFFFF value means that no Type 7 reference was provided and reports LAZYBIOS_FIELD_ABSENT. For SMBIOS 2.3 and later, this does not prove that the processor has no cache; it only means that cache attributes are unavailable through a referenced Type 7 structure.