x86/apic: Nuke apic::apicid_to_cpu_present()
This is only used on 32bit and is a wrapper around physid_set_mask_of_physid() in all 32bit APIC drivers. Remove the callback and use physid_set_mask_of_physid() in the code directly, Signed-off-by: Thomas Gleixner <tglx@linutronix.de> Signed-off-by: Dave Hansen <dave.hansen@linux.intel.com> Acked-by: Peter Zijlstra (Intel) <peterz@infradead.org> Tested-by: Michael Kelley <mikelley@microsoft.com> Tested-by: Sohil Mehta <sohil.mehta@intel.com> Tested-by: Juergen Gross <jgross@suse.com> # Xen PV (dom0 and unpriv. guest)
This commit is contained in:
committed by
Dave Hansen
parent
2f6df03f80
commit
9a2a637af0
@@ -304,7 +304,6 @@ struct apic {
|
||||
void (*ioapic_phys_id_map)(physid_mask_t *phys_map, physid_mask_t *retmap);
|
||||
void (*setup_apic_routing)(void);
|
||||
int (*cpu_present_to_apicid)(int mps_cpu);
|
||||
void (*apicid_to_cpu_present)(int phys_apicid, physid_mask_t *retmap);
|
||||
int (*phys_pkg_id)(int cpuid_apic, int index_msb);
|
||||
|
||||
u32 (*get_apic_id)(unsigned long x);
|
||||
|
||||
@@ -103,7 +103,6 @@ static struct apic apic_flat __ro_after_init = {
|
||||
.ioapic_phys_id_map = NULL,
|
||||
.setup_apic_routing = NULL,
|
||||
.cpu_present_to_apicid = default_cpu_present_to_apicid,
|
||||
.apicid_to_cpu_present = NULL,
|
||||
.phys_pkg_id = flat_phys_pkg_id,
|
||||
|
||||
.get_apic_id = flat_get_apic_id,
|
||||
@@ -181,7 +180,6 @@ static struct apic apic_physflat __ro_after_init = {
|
||||
.ioapic_phys_id_map = NULL,
|
||||
.setup_apic_routing = NULL,
|
||||
.cpu_present_to_apicid = default_cpu_present_to_apicid,
|
||||
.apicid_to_cpu_present = NULL,
|
||||
.phys_pkg_id = flat_phys_pkg_id,
|
||||
|
||||
.get_apic_id = flat_get_apic_id,
|
||||
|
||||
@@ -96,7 +96,6 @@ struct apic apic_noop __ro_after_init = {
|
||||
.ioapic_phys_id_map = default_ioapic_phys_id_map,
|
||||
.setup_apic_routing = NULL,
|
||||
.cpu_present_to_apicid = default_cpu_present_to_apicid,
|
||||
.apicid_to_cpu_present = physid_set_mask_of_physid,
|
||||
|
||||
.phys_pkg_id = noop_phys_pkg_id,
|
||||
|
||||
|
||||
@@ -255,7 +255,6 @@ static const struct apic apic_numachip1 __refconst = {
|
||||
.ioapic_phys_id_map = NULL,
|
||||
.setup_apic_routing = NULL,
|
||||
.cpu_present_to_apicid = default_cpu_present_to_apicid,
|
||||
.apicid_to_cpu_present = NULL,
|
||||
.phys_pkg_id = numachip_phys_pkg_id,
|
||||
|
||||
.get_apic_id = numachip1_get_apic_id,
|
||||
@@ -299,7 +298,6 @@ static const struct apic apic_numachip2 __refconst = {
|
||||
.ioapic_phys_id_map = NULL,
|
||||
.setup_apic_routing = NULL,
|
||||
.cpu_present_to_apicid = default_cpu_present_to_apicid,
|
||||
.apicid_to_cpu_present = NULL,
|
||||
.phys_pkg_id = numachip_phys_pkg_id,
|
||||
|
||||
.get_apic_id = numachip2_get_apic_id,
|
||||
|
||||
@@ -103,7 +103,6 @@ static struct apic apic_bigsmp __ro_after_init = {
|
||||
.ioapic_phys_id_map = bigsmp_ioapic_phys_id_map,
|
||||
.setup_apic_routing = bigsmp_setup_apic_routing,
|
||||
.cpu_present_to_apicid = default_cpu_present_to_apicid,
|
||||
.apicid_to_cpu_present = physid_set_mask_of_physid,
|
||||
.phys_pkg_id = bigsmp_phys_pkg_id,
|
||||
|
||||
.get_apic_id = bigsmp_get_apic_id,
|
||||
|
||||
@@ -1512,11 +1512,10 @@ void __init setup_ioapic_ids_from_mpc_nocheck(void)
|
||||
ioapics[ioapic_idx].mp_config.apicid = i;
|
||||
} else {
|
||||
physid_mask_t tmp;
|
||||
apic->apicid_to_cpu_present(mpc_ioapic_id(ioapic_idx),
|
||||
&tmp);
|
||||
apic_printk(APIC_VERBOSE, "Setting %d in the "
|
||||
"phys_id_present_map\n",
|
||||
mpc_ioapic_id(ioapic_idx));
|
||||
|
||||
physid_set_mask_of_physid(mpc_ioapic_id(ioapic_idx), &tmp);
|
||||
apic_printk(APIC_VERBOSE, "Setting %d in the phys_id_present_map\n",
|
||||
mpc_ioapic_id(ioapic_idx));
|
||||
physids_or(phys_id_present_map, phys_id_present_map, tmp);
|
||||
}
|
||||
|
||||
@@ -2546,7 +2545,7 @@ static int io_apic_get_unique_id(int ioapic, int apic_id)
|
||||
apic_id = i;
|
||||
}
|
||||
|
||||
apic->apicid_to_cpu_present(apic_id, &tmp);
|
||||
physid_set_mask_of_physid(apic_id, &tmp);
|
||||
physids_or(apic_id_map, apic_id_map, tmp);
|
||||
|
||||
if (reg_00.bits.ID != apic_id) {
|
||||
|
||||
@@ -60,7 +60,6 @@ static struct apic apic_default __ro_after_init = {
|
||||
.ioapic_phys_id_map = default_ioapic_phys_id_map,
|
||||
.setup_apic_routing = setup_apic_flat_routing,
|
||||
.cpu_present_to_apicid = default_cpu_present_to_apicid,
|
||||
.apicid_to_cpu_present = physid_set_mask_of_physid,
|
||||
.phys_pkg_id = default_phys_pkg_id,
|
||||
|
||||
.get_apic_id = default_get_apic_id,
|
||||
|
||||
@@ -249,7 +249,6 @@ static struct apic apic_x2apic_cluster __ro_after_init = {
|
||||
.ioapic_phys_id_map = NULL,
|
||||
.setup_apic_routing = NULL,
|
||||
.cpu_present_to_apicid = default_cpu_present_to_apicid,
|
||||
.apicid_to_cpu_present = NULL,
|
||||
.phys_pkg_id = x2apic_phys_pkg_id,
|
||||
|
||||
.get_apic_id = x2apic_get_apic_id,
|
||||
|
||||
@@ -168,7 +168,6 @@ static struct apic apic_x2apic_phys __ro_after_init = {
|
||||
.ioapic_phys_id_map = NULL,
|
||||
.setup_apic_routing = NULL,
|
||||
.cpu_present_to_apicid = default_cpu_present_to_apicid,
|
||||
.apicid_to_cpu_present = NULL,
|
||||
.phys_pkg_id = x2apic_phys_pkg_id,
|
||||
|
||||
.get_apic_id = x2apic_get_apic_id,
|
||||
|
||||
@@ -840,7 +840,6 @@ static struct apic apic_x2apic_uv_x __ro_after_init = {
|
||||
.ioapic_phys_id_map = NULL,
|
||||
.setup_apic_routing = NULL,
|
||||
.cpu_present_to_apicid = default_cpu_present_to_apicid,
|
||||
.apicid_to_cpu_present = NULL,
|
||||
.phys_pkg_id = uv_phys_pkg_id,
|
||||
|
||||
.get_apic_id = x2apic_get_apic_id,
|
||||
|
||||
@@ -152,7 +152,6 @@ static struct apic xen_pv_apic = {
|
||||
.ioapic_phys_id_map = default_ioapic_phys_id_map, /* Used on 32-bit */
|
||||
.setup_apic_routing = NULL,
|
||||
.cpu_present_to_apicid = xen_cpu_present_to_apicid,
|
||||
.apicid_to_cpu_present = physid_set_mask_of_physid, /* Used on 32-bit */
|
||||
.phys_pkg_id = xen_phys_pkg_id, /* detect_ht */
|
||||
|
||||
.get_apic_id = xen_get_apic_id,
|
||||
|
||||
Reference in New Issue
Block a user