forked from Minki/linux
Merge branch 'x86-apic-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
Pull x86/apic updates from Ingo Molnar: "Misc cleanups and a small fix" * 'x86-apic-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: x86/apic: Remove the unused struct apic::apic_id_mask field x86/apic: Fix misspelled APIC x86/ioapic: Simplify ioapic_setup_resources()
This commit is contained in:
commit
425dbc6db3
@ -300,7 +300,6 @@ struct apic {
|
|||||||
|
|
||||||
unsigned int (*get_apic_id)(unsigned long x);
|
unsigned int (*get_apic_id)(unsigned long x);
|
||||||
unsigned long (*set_apic_id)(unsigned int id);
|
unsigned long (*set_apic_id)(unsigned int id);
|
||||||
unsigned long apic_id_mask;
|
|
||||||
|
|
||||||
int (*cpu_mask_to_apicid_and)(const struct cpumask *cpumask,
|
int (*cpu_mask_to_apicid_and)(const struct cpumask *cpumask,
|
||||||
const struct cpumask *andmask,
|
const struct cpumask *andmask,
|
||||||
|
@ -2045,7 +2045,7 @@ int generic_processor_info(int apicid, int version)
|
|||||||
int thiscpu = max + disabled_cpus - 1;
|
int thiscpu = max + disabled_cpus - 1;
|
||||||
|
|
||||||
pr_warning(
|
pr_warning(
|
||||||
"ACPI: NR_CPUS/possible_cpus limit of %i almost"
|
"APIC: NR_CPUS/possible_cpus limit of %i almost"
|
||||||
" reached. Keeping one slot for boot cpu."
|
" reached. Keeping one slot for boot cpu."
|
||||||
" Processor %d/0x%x ignored.\n", max, thiscpu, apicid);
|
" Processor %d/0x%x ignored.\n", max, thiscpu, apicid);
|
||||||
|
|
||||||
@ -2057,7 +2057,7 @@ int generic_processor_info(int apicid, int version)
|
|||||||
int thiscpu = max + disabled_cpus;
|
int thiscpu = max + disabled_cpus;
|
||||||
|
|
||||||
pr_warning(
|
pr_warning(
|
||||||
"ACPI: NR_CPUS/possible_cpus limit of %i reached."
|
"APIC: NR_CPUS/possible_cpus limit of %i reached."
|
||||||
" Processor %d/0x%x ignored.\n", max, thiscpu, apicid);
|
" Processor %d/0x%x ignored.\n", max, thiscpu, apicid);
|
||||||
|
|
||||||
disabled_cpus++;
|
disabled_cpus++;
|
||||||
@ -2085,7 +2085,7 @@ int generic_processor_info(int apicid, int version)
|
|||||||
if (topology_update_package_map(apicid, cpu) < 0) {
|
if (topology_update_package_map(apicid, cpu) < 0) {
|
||||||
int thiscpu = max + disabled_cpus;
|
int thiscpu = max + disabled_cpus;
|
||||||
|
|
||||||
pr_warning("ACPI: Package limit reached. Processor %d/0x%x ignored.\n",
|
pr_warning("APIC: Package limit reached. Processor %d/0x%x ignored.\n",
|
||||||
thiscpu, apicid);
|
thiscpu, apicid);
|
||||||
disabled_cpus++;
|
disabled_cpus++;
|
||||||
return -ENOSPC;
|
return -ENOSPC;
|
||||||
|
@ -181,7 +181,6 @@ static struct apic apic_flat = {
|
|||||||
|
|
||||||
.get_apic_id = flat_get_apic_id,
|
.get_apic_id = flat_get_apic_id,
|
||||||
.set_apic_id = set_apic_id,
|
.set_apic_id = set_apic_id,
|
||||||
.apic_id_mask = 0xFFu << 24,
|
|
||||||
|
|
||||||
.cpu_mask_to_apicid_and = flat_cpu_mask_to_apicid_and,
|
.cpu_mask_to_apicid_and = flat_cpu_mask_to_apicid_and,
|
||||||
|
|
||||||
@ -278,7 +277,6 @@ static struct apic apic_physflat = {
|
|||||||
|
|
||||||
.get_apic_id = flat_get_apic_id,
|
.get_apic_id = flat_get_apic_id,
|
||||||
.set_apic_id = set_apic_id,
|
.set_apic_id = set_apic_id,
|
||||||
.apic_id_mask = 0xFFu << 24,
|
|
||||||
|
|
||||||
.cpu_mask_to_apicid_and = default_cpu_mask_to_apicid_and,
|
.cpu_mask_to_apicid_and = default_cpu_mask_to_apicid_and,
|
||||||
|
|
||||||
|
@ -141,7 +141,6 @@ struct apic apic_noop = {
|
|||||||
|
|
||||||
.get_apic_id = noop_get_apic_id,
|
.get_apic_id = noop_get_apic_id,
|
||||||
.set_apic_id = NULL,
|
.set_apic_id = NULL,
|
||||||
.apic_id_mask = 0x0F << 24,
|
|
||||||
|
|
||||||
.cpu_mask_to_apicid_and = flat_cpu_mask_to_apicid_and,
|
.cpu_mask_to_apicid_and = flat_cpu_mask_to_apicid_and,
|
||||||
|
|
||||||
|
@ -269,7 +269,6 @@ static const struct apic apic_numachip1 __refconst = {
|
|||||||
|
|
||||||
.get_apic_id = numachip1_get_apic_id,
|
.get_apic_id = numachip1_get_apic_id,
|
||||||
.set_apic_id = numachip1_set_apic_id,
|
.set_apic_id = numachip1_set_apic_id,
|
||||||
.apic_id_mask = 0xffU << 24,
|
|
||||||
|
|
||||||
.cpu_mask_to_apicid_and = default_cpu_mask_to_apicid_and,
|
.cpu_mask_to_apicid_and = default_cpu_mask_to_apicid_and,
|
||||||
|
|
||||||
@ -321,7 +320,6 @@ static const struct apic apic_numachip2 __refconst = {
|
|||||||
|
|
||||||
.get_apic_id = numachip2_get_apic_id,
|
.get_apic_id = numachip2_get_apic_id,
|
||||||
.set_apic_id = numachip2_set_apic_id,
|
.set_apic_id = numachip2_set_apic_id,
|
||||||
.apic_id_mask = 0xffU << 24,
|
|
||||||
|
|
||||||
.cpu_mask_to_apicid_and = default_cpu_mask_to_apicid_and,
|
.cpu_mask_to_apicid_and = default_cpu_mask_to_apicid_and,
|
||||||
|
|
||||||
|
@ -171,7 +171,6 @@ static struct apic apic_bigsmp = {
|
|||||||
|
|
||||||
.get_apic_id = bigsmp_get_apic_id,
|
.get_apic_id = bigsmp_get_apic_id,
|
||||||
.set_apic_id = NULL,
|
.set_apic_id = NULL,
|
||||||
.apic_id_mask = 0xFF << 24,
|
|
||||||
|
|
||||||
.cpu_mask_to_apicid_and = default_cpu_mask_to_apicid_and,
|
.cpu_mask_to_apicid_and = default_cpu_mask_to_apicid_and,
|
||||||
|
|
||||||
|
@ -2567,29 +2567,25 @@ static struct resource * __init ioapic_setup_resources(void)
|
|||||||
unsigned long n;
|
unsigned long n;
|
||||||
struct resource *res;
|
struct resource *res;
|
||||||
char *mem;
|
char *mem;
|
||||||
int i, num = 0;
|
int i;
|
||||||
|
|
||||||
for_each_ioapic(i)
|
if (nr_ioapics == 0)
|
||||||
num++;
|
|
||||||
if (num == 0)
|
|
||||||
return NULL;
|
return NULL;
|
||||||
|
|
||||||
n = IOAPIC_RESOURCE_NAME_SIZE + sizeof(struct resource);
|
n = IOAPIC_RESOURCE_NAME_SIZE + sizeof(struct resource);
|
||||||
n *= num;
|
n *= nr_ioapics;
|
||||||
|
|
||||||
mem = alloc_bootmem(n);
|
mem = alloc_bootmem(n);
|
||||||
res = (void *)mem;
|
res = (void *)mem;
|
||||||
|
|
||||||
mem += sizeof(struct resource) * num;
|
mem += sizeof(struct resource) * nr_ioapics;
|
||||||
|
|
||||||
num = 0;
|
|
||||||
for_each_ioapic(i) {
|
for_each_ioapic(i) {
|
||||||
res[num].name = mem;
|
res[i].name = mem;
|
||||||
res[num].flags = IORESOURCE_MEM | IORESOURCE_BUSY;
|
res[i].flags = IORESOURCE_MEM | IORESOURCE_BUSY;
|
||||||
snprintf(mem, IOAPIC_RESOURCE_NAME_SIZE, "IOAPIC %u", i);
|
snprintf(mem, IOAPIC_RESOURCE_NAME_SIZE, "IOAPIC %u", i);
|
||||||
mem += IOAPIC_RESOURCE_NAME_SIZE;
|
mem += IOAPIC_RESOURCE_NAME_SIZE;
|
||||||
ioapics[i].iomem_res = &res[num];
|
ioapics[i].iomem_res = &res[i];
|
||||||
num++;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
ioapic_resources = res;
|
ioapic_resources = res;
|
||||||
|
@ -101,7 +101,6 @@ static struct apic apic_default = {
|
|||||||
|
|
||||||
.get_apic_id = default_get_apic_id,
|
.get_apic_id = default_get_apic_id,
|
||||||
.set_apic_id = NULL,
|
.set_apic_id = NULL,
|
||||||
.apic_id_mask = 0x0F << 24,
|
|
||||||
|
|
||||||
.cpu_mask_to_apicid_and = flat_cpu_mask_to_apicid_and,
|
.cpu_mask_to_apicid_and = flat_cpu_mask_to_apicid_and,
|
||||||
|
|
||||||
|
@ -270,7 +270,6 @@ static struct apic apic_x2apic_cluster = {
|
|||||||
|
|
||||||
.get_apic_id = x2apic_get_apic_id,
|
.get_apic_id = x2apic_get_apic_id,
|
||||||
.set_apic_id = x2apic_set_apic_id,
|
.set_apic_id = x2apic_set_apic_id,
|
||||||
.apic_id_mask = 0xFFFFFFFFu,
|
|
||||||
|
|
||||||
.cpu_mask_to_apicid_and = x2apic_cpu_mask_to_apicid_and,
|
.cpu_mask_to_apicid_and = x2apic_cpu_mask_to_apicid_and,
|
||||||
|
|
||||||
|
@ -126,7 +126,6 @@ static struct apic apic_x2apic_phys = {
|
|||||||
|
|
||||||
.get_apic_id = x2apic_get_apic_id,
|
.get_apic_id = x2apic_get_apic_id,
|
||||||
.set_apic_id = x2apic_set_apic_id,
|
.set_apic_id = x2apic_set_apic_id,
|
||||||
.apic_id_mask = 0xFFFFFFFFu,
|
|
||||||
|
|
||||||
.cpu_mask_to_apicid_and = default_cpu_mask_to_apicid_and,
|
.cpu_mask_to_apicid_and = default_cpu_mask_to_apicid_and,
|
||||||
|
|
||||||
|
@ -582,7 +582,6 @@ static struct apic __refdata apic_x2apic_uv_x = {
|
|||||||
|
|
||||||
.get_apic_id = x2apic_get_apic_id,
|
.get_apic_id = x2apic_get_apic_id,
|
||||||
.set_apic_id = set_apic_id,
|
.set_apic_id = set_apic_id,
|
||||||
.apic_id_mask = 0xFFFFFFFFu,
|
|
||||||
|
|
||||||
.cpu_mask_to_apicid_and = uv_cpu_mask_to_apicid_and,
|
.cpu_mask_to_apicid_and = uv_cpu_mask_to_apicid_and,
|
||||||
|
|
||||||
|
@ -177,7 +177,6 @@ static struct apic xen_pv_apic = {
|
|||||||
|
|
||||||
.get_apic_id = xen_get_apic_id,
|
.get_apic_id = xen_get_apic_id,
|
||||||
.set_apic_id = xen_set_apic_id, /* Can be NULL on 32-bit. */
|
.set_apic_id = xen_set_apic_id, /* Can be NULL on 32-bit. */
|
||||||
.apic_id_mask = 0xFF << 24, /* Used by verify_local_APIC. Match with what xen_get_apic_id does. */
|
|
||||||
|
|
||||||
.cpu_mask_to_apicid_and = flat_cpu_mask_to_apicid_and,
|
.cpu_mask_to_apicid_and = flat_cpu_mask_to_apicid_and,
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user