x86/apic: Cleanup delivery mode defines
authorThomas Gleixner <tglx@linutronix.de>
Sat, 24 Oct 2020 21:35:05 +0000 (22:35 +0100)
committerThomas Gleixner <tglx@linutronix.de>
Wed, 28 Oct 2020 19:26:24 +0000 (20:26 +0100)
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
15 files changed:
arch/x86/include/asm/apic.h
arch/x86/include/asm/apicdef.h
arch/x86/kernel/apic/apic_flat_64.c
arch/x86/kernel/apic/apic_noop.c
arch/x86/kernel/apic/apic_numachip.c
arch/x86/kernel/apic/bigsmp_32.c
arch/x86/kernel/apic/io_apic.c
arch/x86/kernel/apic/probe_32.c
arch/x86/kernel/apic/x2apic_cluster.c
arch/x86/kernel/apic/x2apic_phys.c
arch/x86/kernel/apic/x2apic_uv_x.c
arch/x86/platform/uv/uv_irq.c
drivers/iommu/amd/iommu.c
drivers/iommu/intel/irq_remapping.c
drivers/pci/controller/pci-hyperv.c

index 57af25c..37a08f3 100644 (file)
@@ -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);
index 05e694e..5716f22 100644 (file)
@@ -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 */
index 7862b15..fdd38a1 100644 (file)
@@ -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,
index 780c702..4fc934b 100644 (file)
@@ -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,
 
index 35edd57..db715d0 100644 (file)
@@ -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,
index 98d015a..7f6461f 100644 (file)
@@ -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,
 
index 7b3c7e0..cff6cbc 100644 (file)
@@ -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;
index 67b6f7c..77c6e2e 100644 (file)
@@ -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,
 
index b0889c4..82fb43d 100644 (file)
@@ -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,
index e14eae6..437e843 100644 (file)
@@ -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,
index 9ade9e6..49deefd 100644 (file)
@@ -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,
index 18ca226..e7020d1 100644 (file)
@@ -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;
index b9cf594..bc81b91 100644 (file)
@@ -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);
index 0cfce1d..d44e719 100644 (file)
@@ -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;
index 03ed5cb..6db8d96 100644 (file)
@@ -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