Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

Merge tag 'x86-apic-2025-12-01' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip

Pull x86 apic updates from Ingo Molnar:

- x86/apic: Fix the frequency in apic=verbose log output (Julian
Stecklina)

- Simplify mp_irqdomain_alloc() slightly (Christophe JAILLET)

* tag 'x86-apic-2025-12-01' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
x86/apic: Fix frequency in apic=verbose log output
x86/ioapic: Simplify mp_irqdomain_alloc() slightly

+10 -7
+9 -6
arch/x86/kernel/apic/apic.c
··· 173 173 .flags = IORESOURCE_MEM | IORESOURCE_BUSY, 174 174 }; 175 175 176 + /* Measured in ticks per HZ. */ 176 177 unsigned int lapic_timer_period = 0; 177 178 178 179 static void apic_pm_activate(void); ··· 793 792 { 794 793 struct clock_event_device *levt = this_cpu_ptr(&lapic_events); 795 794 u64 tsc_perj = 0, tsc_start = 0; 795 + long delta_tsc_khz, bus_khz; 796 796 unsigned long jif_start; 797 797 unsigned long deltaj; 798 798 long delta, deltatsc; ··· 896 894 apic_pr_verbose("..... calibration result: %u\n", lapic_timer_period); 897 895 898 896 if (boot_cpu_has(X86_FEATURE_TSC)) { 899 - apic_pr_verbose("..... CPU clock speed is %ld.%04ld MHz.\n", 900 - (deltatsc / LAPIC_CAL_LOOPS) / (1000000 / HZ), 901 - (deltatsc / LAPIC_CAL_LOOPS) % (1000000 / HZ)); 897 + delta_tsc_khz = (deltatsc * HZ) / (1000 * LAPIC_CAL_LOOPS); 898 + 899 + apic_pr_verbose("..... CPU clock speed is %ld.%03ld MHz.\n", 900 + delta_tsc_khz / 1000, delta_tsc_khz % 1000); 902 901 } 903 902 904 - apic_pr_verbose("..... host bus clock speed is %u.%04u MHz.\n", 905 - lapic_timer_period / (1000000 / HZ), 906 - lapic_timer_period % (1000000 / HZ)); 903 + bus_khz = (long)lapic_timer_period * HZ / 1000; 904 + apic_pr_verbose("..... host bus clock speed is %ld.%03ld MHz.\n", 905 + bus_khz / 1000, bus_khz % 1000); 907 906 908 907 /* 909 908 * Do a sanity check on the APIC calibration result
+1 -1
arch/x86/kernel/apic/io_apic.c
··· 2864 2864 2865 2865 ioapic = mp_irqdomain_ioapic_idx(domain); 2866 2866 pin = info->ioapic.pin; 2867 - if (irq_find_mapping(domain, (irq_hw_number_t)pin) > 0) 2867 + if (irq_resolve_mapping(domain, (irq_hw_number_t)pin)) 2868 2868 return -EEXIST; 2869 2869 2870 2870 data = kzalloc(sizeof(*data), GFP_KERNEL);