Display the matrix of inter-domain distances in the SLIT table. This is
used to complement the SRAT table on NUMA machines. MFC after: 1 week
This commit is contained in:
parent
49f903d5fc
commit
338666582f
Notes:
svn2git
2020-12-20 02:59:44 +00:00
svn path=/head/; revision=241198
@ -63,6 +63,7 @@ static void acpi_handle_madt(ACPI_TABLE_HEADER *sdp);
|
||||
static void acpi_handle_ecdt(ACPI_TABLE_HEADER *sdp);
|
||||
static void acpi_handle_hpet(ACPI_TABLE_HEADER *sdp);
|
||||
static void acpi_handle_mcfg(ACPI_TABLE_HEADER *sdp);
|
||||
static void acpi_handle_slit(ACPI_TABLE_HEADER *sdp);
|
||||
static void acpi_print_srat_cpu(uint32_t apic_id, uint32_t proximity_domain,
|
||||
uint32_t flags);
|
||||
static void acpi_print_srat_memory(ACPI_SRAT_MEM_AFFINITY *mp);
|
||||
@ -518,6 +519,33 @@ acpi_handle_mcfg(ACPI_TABLE_HEADER *sdp)
|
||||
printf(END_COMMENT);
|
||||
}
|
||||
|
||||
static void
|
||||
acpi_handle_slit(ACPI_TABLE_HEADER *sdp)
|
||||
{
|
||||
ACPI_TABLE_SLIT *slit;
|
||||
UINT64 i, j;
|
||||
|
||||
printf(BEGIN_COMMENT);
|
||||
acpi_print_sdt(sdp);
|
||||
slit = (ACPI_TABLE_SLIT *)sdp;
|
||||
printf("\tLocality Count=%jd\n", slit->LocalityCount);
|
||||
printf("\n\t ");
|
||||
for (i = 0; i < slit->LocalityCount; i++)
|
||||
printf(" %3jd", i);
|
||||
printf("\n\t +");
|
||||
for (i = 0; i < slit->LocalityCount; i++)
|
||||
printf("----");
|
||||
printf("\n");
|
||||
for (i = 0; i < slit->LocalityCount; i++) {
|
||||
printf("\t %3jd |", i);
|
||||
for (j = 0; j < slit->LocalityCount; j++)
|
||||
printf(" %3d",
|
||||
slit->Entry[i * slit->LocalityCount + j]);
|
||||
printf("\n");
|
||||
}
|
||||
printf(END_COMMENT);
|
||||
}
|
||||
|
||||
static void
|
||||
acpi_print_srat_cpu(uint32_t apic_id, uint32_t proximity_domain,
|
||||
uint32_t flags)
|
||||
@ -1092,6 +1120,8 @@ acpi_handle_rsdt(ACPI_TABLE_HEADER *rsdp)
|
||||
acpi_handle_ecdt(sdp);
|
||||
else if (!memcmp(sdp->Signature, ACPI_SIG_MCFG, 4))
|
||||
acpi_handle_mcfg(sdp);
|
||||
else if (!memcmp(sdp->Signature, ACPI_SIG_SLIT, 4))
|
||||
acpi_handle_slit(sdp);
|
||||
else if (!memcmp(sdp->Signature, ACPI_SIG_SRAT, 4))
|
||||
acpi_handle_srat(sdp);
|
||||
else if (!memcmp(sdp->Signature, ACPI_SIG_TCPA, 4))
|
||||
|
Loading…
Reference in New Issue
Block a user