mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2025-01-09 06:33:34 +00:00
x86/apic: Cleanup delivery mode defines
The enum ioapic_irq_destination_types and the enumerated constants starting with 'dest_' are gross misnomers because they describe the delivery mode. Rename then enum and the constants so they actually make sense. Signed-off-by: Thomas Gleixner <tglx@linutronix.de> Signed-off-by: David Woodhouse <dwmw@amazon.co.uk> Signed-off-by: Thomas Gleixner <tglx@linutronix.de> Link: https://lore.kernel.org/r/20201024213535.443185-6-dwmw2@infradead.org
This commit is contained in:
parent
2e730cb56b
commit
721612994f
@ -309,7 +309,8 @@ struct apic {
|
||||
/* dest_logical is used by the IPI functions */
|
||||
u32 dest_logical;
|
||||
u32 disable_esr;
|
||||
u32 irq_delivery_mode;
|
||||
|
||||
enum apic_delivery_modes delivery_mode;
|
||||
u32 irq_dest_mode;
|
||||
|
||||
u32 (*calc_dest_apicid)(unsigned int cpu);
|
||||
|
@ -432,15 +432,13 @@ struct local_apic {
|
||||
#define BAD_APICID 0xFFFFu
|
||||
#endif
|
||||
|
||||
enum ioapic_irq_destination_types {
|
||||
dest_Fixed = 0,
|
||||
dest_LowestPrio = 1,
|
||||
dest_SMI = 2,
|
||||
dest__reserved_1 = 3,
|
||||
dest_NMI = 4,
|
||||
dest_INIT = 5,
|
||||
dest__reserved_2 = 6,
|
||||
dest_ExtINT = 7
|
||||
enum apic_delivery_modes {
|
||||
APIC_DELIVERY_MODE_FIXED = 0,
|
||||
APIC_DELIVERY_MODE_LOWESTPRIO = 1,
|
||||
APIC_DELIVERY_MODE_SMI = 2,
|
||||
APIC_DELIVERY_MODE_NMI = 4,
|
||||
APIC_DELIVERY_MODE_INIT = 5,
|
||||
APIC_DELIVERY_MODE_EXTINT = 7,
|
||||
};
|
||||
|
||||
#endif /* _ASM_X86_APICDEF_H */
|
||||
|
@ -113,7 +113,7 @@ static struct apic apic_flat __ro_after_init = {
|
||||
.apic_id_valid = default_apic_id_valid,
|
||||
.apic_id_registered = flat_apic_id_registered,
|
||||
|
||||
.irq_delivery_mode = dest_Fixed,
|
||||
.delivery_mode = APIC_DELIVERY_MODE_FIXED,
|
||||
.irq_dest_mode = 1, /* logical */
|
||||
|
||||
.disable_esr = 0,
|
||||
@ -206,7 +206,7 @@ static struct apic apic_physflat __ro_after_init = {
|
||||
.apic_id_valid = default_apic_id_valid,
|
||||
.apic_id_registered = flat_apic_id_registered,
|
||||
|
||||
.irq_delivery_mode = dest_Fixed,
|
||||
.delivery_mode = APIC_DELIVERY_MODE_FIXED,
|
||||
.irq_dest_mode = 0, /* physical */
|
||||
|
||||
.disable_esr = 0,
|
||||
|
@ -95,7 +95,7 @@ struct apic apic_noop __ro_after_init = {
|
||||
.apic_id_valid = default_apic_id_valid,
|
||||
.apic_id_registered = noop_apic_id_registered,
|
||||
|
||||
.irq_delivery_mode = dest_Fixed,
|
||||
.delivery_mode = APIC_DELIVERY_MODE_FIXED,
|
||||
/* logical delivery broadcast to all CPUs: */
|
||||
.irq_dest_mode = 1,
|
||||
|
||||
|
@ -246,7 +246,7 @@ static const struct apic apic_numachip1 __refconst = {
|
||||
.apic_id_valid = numachip_apic_id_valid,
|
||||
.apic_id_registered = numachip_apic_id_registered,
|
||||
|
||||
.irq_delivery_mode = dest_Fixed,
|
||||
.delivery_mode = APIC_DELIVERY_MODE_FIXED,
|
||||
.irq_dest_mode = 0, /* physical */
|
||||
|
||||
.disable_esr = 0,
|
||||
@ -295,7 +295,7 @@ static const struct apic apic_numachip2 __refconst = {
|
||||
.apic_id_valid = numachip_apic_id_valid,
|
||||
.apic_id_registered = numachip_apic_id_registered,
|
||||
|
||||
.irq_delivery_mode = dest_Fixed,
|
||||
.delivery_mode = APIC_DELIVERY_MODE_FIXED,
|
||||
.irq_dest_mode = 0, /* physical */
|
||||
|
||||
.disable_esr = 0,
|
||||
|
@ -127,7 +127,7 @@ static struct apic apic_bigsmp __ro_after_init = {
|
||||
.apic_id_valid = default_apic_id_valid,
|
||||
.apic_id_registered = bigsmp_apic_id_registered,
|
||||
|
||||
.irq_delivery_mode = dest_Fixed,
|
||||
.delivery_mode = APIC_DELIVERY_MODE_FIXED,
|
||||
/* phys delivery to target CPU: */
|
||||
.irq_dest_mode = 0,
|
||||
|
||||
|
@ -535,7 +535,7 @@ static void clear_IO_APIC_pin(unsigned int apic, unsigned int pin)
|
||||
|
||||
/* Check delivery_mode to be sure we're not clearing an SMI pin */
|
||||
entry = ioapic_read_entry(apic, pin);
|
||||
if (entry.delivery_mode == dest_SMI)
|
||||
if (entry.delivery_mode == APIC_DELIVERY_MODE_SMI)
|
||||
return;
|
||||
|
||||
/*
|
||||
@ -1368,7 +1368,8 @@ void __init enable_IO_APIC(void)
|
||||
/* If the interrupt line is enabled and in ExtInt mode
|
||||
* I have found the pin where the i8259 is connected.
|
||||
*/
|
||||
if ((entry.mask == 0) && (entry.delivery_mode == dest_ExtINT)) {
|
||||
if ((entry.mask == 0) &&
|
||||
(entry.delivery_mode == APIC_DELIVERY_MODE_EXTINT)) {
|
||||
ioapic_i8259.apic = apic;
|
||||
ioapic_i8259.pin = pin;
|
||||
goto found_i8259;
|
||||
@ -1416,7 +1417,7 @@ void native_restore_boot_irq_mode(void)
|
||||
entry.trigger = IOAPIC_EDGE;
|
||||
entry.polarity = IOAPIC_POL_HIGH;
|
||||
entry.dest_mode = IOAPIC_DEST_MODE_PHYSICAL;
|
||||
entry.delivery_mode = dest_ExtINT;
|
||||
entry.delivery_mode = APIC_DELIVERY_MODE_EXTINT;
|
||||
entry.dest = read_apic_id();
|
||||
|
||||
/*
|
||||
@ -2047,7 +2048,7 @@ static inline void __init unlock_ExtINT_logic(void)
|
||||
entry1.dest_mode = IOAPIC_DEST_MODE_PHYSICAL;
|
||||
entry1.mask = IOAPIC_UNMASKED;
|
||||
entry1.dest = hard_smp_processor_id();
|
||||
entry1.delivery_mode = dest_ExtINT;
|
||||
entry1.delivery_mode = APIC_DELIVERY_MODE_EXTINT;
|
||||
entry1.polarity = entry0.polarity;
|
||||
entry1.trigger = IOAPIC_EDGE;
|
||||
entry1.vector = 0;
|
||||
@ -2948,7 +2949,7 @@ static void mp_setup_entry(struct irq_cfg *cfg, struct mp_chip_data *data,
|
||||
struct IO_APIC_route_entry *entry)
|
||||
{
|
||||
memset(entry, 0, sizeof(*entry));
|
||||
entry->delivery_mode = apic->irq_delivery_mode;
|
||||
entry->delivery_mode = apic->delivery_mode;
|
||||
entry->dest_mode = apic->irq_dest_mode;
|
||||
entry->dest = cfg->dest_apicid;
|
||||
entry->vector = cfg->vector;
|
||||
|
@ -69,7 +69,7 @@ static struct apic apic_default __ro_after_init = {
|
||||
.apic_id_valid = default_apic_id_valid,
|
||||
.apic_id_registered = default_apic_id_registered,
|
||||
|
||||
.irq_delivery_mode = dest_Fixed,
|
||||
.delivery_mode = APIC_DELIVERY_MODE_FIXED,
|
||||
/* logical delivery broadcast to all CPUs: */
|
||||
.irq_dest_mode = 1,
|
||||
|
||||
|
@ -184,7 +184,7 @@ static struct apic apic_x2apic_cluster __ro_after_init = {
|
||||
.apic_id_valid = x2apic_apic_id_valid,
|
||||
.apic_id_registered = x2apic_apic_id_registered,
|
||||
|
||||
.irq_delivery_mode = dest_Fixed,
|
||||
.delivery_mode = APIC_DELIVERY_MODE_FIXED,
|
||||
.irq_dest_mode = 1, /* logical */
|
||||
|
||||
.disable_esr = 0,
|
||||
|
@ -157,7 +157,7 @@ static struct apic apic_x2apic_phys __ro_after_init = {
|
||||
.apic_id_valid = x2apic_apic_id_valid,
|
||||
.apic_id_registered = x2apic_apic_id_registered,
|
||||
|
||||
.irq_delivery_mode = dest_Fixed,
|
||||
.delivery_mode = APIC_DELIVERY_MODE_FIXED,
|
||||
.irq_dest_mode = 0, /* physical */
|
||||
|
||||
.disable_esr = 0,
|
||||
|
@ -703,9 +703,9 @@ static void uv_send_IPI_one(int cpu, int vector)
|
||||
unsigned long dmode, val;
|
||||
|
||||
if (vector == NMI_VECTOR)
|
||||
dmode = dest_NMI;
|
||||
dmode = APIC_DELIVERY_MODE_NMI;
|
||||
else
|
||||
dmode = dest_Fixed;
|
||||
dmode = APIC_DELIVERY_MODE_FIXED;
|
||||
|
||||
val = (1UL << UVH_IPI_INT_SEND_SHFT) |
|
||||
(apicid << UVH_IPI_INT_APIC_ID_SHFT) |
|
||||
@ -807,7 +807,7 @@ static struct apic apic_x2apic_uv_x __ro_after_init = {
|
||||
.apic_id_valid = uv_apic_id_valid,
|
||||
.apic_id_registered = uv_apic_id_registered,
|
||||
|
||||
.irq_delivery_mode = dest_Fixed,
|
||||
.delivery_mode = APIC_DELIVERY_MODE_FIXED,
|
||||
.irq_dest_mode = 0, /* Physical */
|
||||
|
||||
.disable_esr = 0,
|
||||
|
@ -35,7 +35,7 @@ static void uv_program_mmr(struct irq_cfg *cfg, struct uv_irq_2_mmr_pnode *info)
|
||||
mmr_value = 0;
|
||||
entry = (struct uv_IO_APIC_route_entry *)&mmr_value;
|
||||
entry->vector = cfg->vector;
|
||||
entry->delivery_mode = apic->irq_delivery_mode;
|
||||
entry->delivery_mode = apic->delivery_mode;
|
||||
entry->dest_mode = apic->irq_dest_mode;
|
||||
entry->polarity = 0;
|
||||
entry->trigger = 0;
|
||||
|
@ -3671,7 +3671,7 @@ static void irq_remapping_prepare_irte(struct amd_ir_data *data,
|
||||
|
||||
data->irq_2_irte.devid = devid;
|
||||
data->irq_2_irte.index = index + sub_handle;
|
||||
iommu->irte_ops->prepare(data->entry, apic->irq_delivery_mode,
|
||||
iommu->irte_ops->prepare(data->entry, apic->delivery_mode,
|
||||
apic->irq_dest_mode, irq_cfg->vector,
|
||||
irq_cfg->dest_apicid, devid);
|
||||
|
||||
@ -3944,7 +3944,7 @@ int amd_iommu_deactivate_guest_mode(void *data)
|
||||
|
||||
entry->lo.fields_remap.valid = valid;
|
||||
entry->lo.fields_remap.dm = apic->irq_dest_mode;
|
||||
entry->lo.fields_remap.int_type = apic->irq_delivery_mode;
|
||||
entry->lo.fields_remap.int_type = apic->delivery_mode;
|
||||
entry->hi.fields.vector = cfg->vector;
|
||||
entry->lo.fields_remap.destination =
|
||||
APICID_TO_IRTE_DEST_LO(cfg->dest_apicid);
|
||||
|
@ -1122,7 +1122,7 @@ static void prepare_irte(struct irte *irte, int vector, unsigned int dest)
|
||||
* irq migration in the presence of interrupt-remapping.
|
||||
*/
|
||||
irte->trigger_mode = 0;
|
||||
irte->dlvry_mode = apic->irq_delivery_mode;
|
||||
irte->dlvry_mode = apic->delivery_mode;
|
||||
irte->vector = vector;
|
||||
irte->dest_id = IRTE_DEST(dest);
|
||||
irte->redir_hint = 1;
|
||||
|
@ -1226,7 +1226,7 @@ static void hv_irq_unmask(struct irq_data *data)
|
||||
params->int_target.vector = cfg->vector;
|
||||
|
||||
/*
|
||||
* Honoring apic->irq_delivery_mode set to dest_Fixed by
|
||||
* Honoring apic->delivery_mode set to APIC_DELIVERY_MODE_FIXED by
|
||||
* setting the HV_DEVICE_INTERRUPT_TARGET_MULTICAST flag results in a
|
||||
* spurious interrupt storm. Not doing so does not seem to have a
|
||||
* negative effect (yet?).
|
||||
@ -1324,7 +1324,7 @@ static u32 hv_compose_msi_req_v1(
|
||||
int_pkt->wslot.slot = slot;
|
||||
int_pkt->int_desc.vector = vector;
|
||||
int_pkt->int_desc.vector_count = 1;
|
||||
int_pkt->int_desc.delivery_mode = dest_Fixed;
|
||||
int_pkt->int_desc.delivery_mode = APIC_DELIVERY_MODE_FIXED;
|
||||
|
||||
/*
|
||||
* Create MSI w/ dummy vCPU set, overwritten by subsequent retarget in
|
||||
@ -1345,7 +1345,7 @@ static u32 hv_compose_msi_req_v2(
|
||||
int_pkt->wslot.slot = slot;
|
||||
int_pkt->int_desc.vector = vector;
|
||||
int_pkt->int_desc.vector_count = 1;
|
||||
int_pkt->int_desc.delivery_mode = dest_Fixed;
|
||||
int_pkt->int_desc.delivery_mode = APIC_DELIVERY_MODE_FIXED;
|
||||
|
||||
/*
|
||||
* Create MSI w/ dummy vCPU set targeting just one vCPU, overwritten
|
||||
|
Loading…
Reference in New Issue
Block a user