static int __init acpi_parse_slit(struct acpi_table_header *table) { struct acpi_table_slit *slit; if (!table) return -EINVAL; slit = (struct acpi_table_slit *)table; if (!slit_valid(slit)) { printk(KERN_INFO "ACPI: SLIT table looks invalid. Not used.\n"); return -EINVAL; } acpi_numa_slit_init(slit); return 0; }
static int __init acpi_parse_slit(struct acpi_table_header *table) { struct acpi_table_slit *slit; u32 localities; if (!table) return -EINVAL; slit = (struct acpi_table_slit *)table; /* downcast just for %llu vs %lu for i386/ia64 */ localities = (u32) slit->locality_count; acpi_numa_slit_init(slit); return 0; }
static int __init acpi_parse_slit (unsigned long phys_addr, unsigned long size) { struct acpi_table_slit *slit; u32 localities; if (!phys_addr || !size) return -EINVAL; slit = (struct acpi_table_slit *) __va(phys_addr); /* downcast just for %llu vs %lu for i386/ia64 */ localities = (u32) slit->localities; acpi_numa_slit_init(slit); return 0; }
static int __init acpi_parse_slit(struct acpi_table_header *table) { struct acpi_table_slit *slit; if (!table) return -EINVAL; slit = (struct acpi_table_slit *)table; if (!slit_valid(slit)) { #ifdef CONFIG_DEBUG_PRINTK printk(KERN_INFO "ACPI: SLIT table looks invalid. Not used.\n"); #else ; #endif return -EINVAL; } acpi_numa_slit_init(slit); return 0; }
static int __init acpi_parse_slit(struct acpi_table_header *table) { acpi_numa_slit_init((struct acpi_table_slit *)table); return 0; }