Bug 214945

Summary: PCI-E serial card works only with "noapic" - Intel(R) Xeon(R) CPU E5-2650 v4 @ 2.20GHz
Product: ACPI Reporter: Tom (cea2me+lin)
Component: Config-InterruptsAssignee: Zhang Rui (rui.zhang)
Status: NEEDINFO ---    
Severity: high CC: rui.zhang
Priority: P1    
Hardware: Intel   
OS: Linux   
Kernel Version: 5.10.77 Subsystem:
Regression: No Bisected commit-id:
Attachments: dmesg
interrupts with apic on
interrupts with apic off
lspci -vvv
/sys/firmware/acpi/interrupts/*
5.10.77 kernel config

Description Tom 2021-11-04 14:30:49 UTC
Created attachment 299443 [details]
dmesg

After upgrading the kernel to version 5.10.77, the PCI-E serial card stopped working. The card driver (mxupcie) builds and loads correctly, but it is not possible to transmit data between the card ports (/dev/ttyXX). We found that adding the "noapic" boot argument solves the problem.
The above problem only applies to HPE Proliant DL120 Gen9 servers, because the same card with the same linux version works fine in another machine.
The problem is not card driver dependent as we tested cards from two different vendors (MOXA and StarTech) and they both behave exactly the same.
It is also not a problem with the HPE server itself, as the same cards worked fine on it but with the older kernel version (4.9.258).
Of course, we did not change the configuration of the HPE server (nor BIOS or Firmware upgrade).
Comment 1 Tom 2021-11-04 14:31:57 UTC
Created attachment 299445 [details]
interrupts with apic on
Comment 2 Tom 2021-11-04 14:32:45 UTC
Created attachment 299447 [details]
interrupts with apic off
Comment 3 Tom 2021-11-04 14:33:18 UTC
Created attachment 299449 [details]
lspci -vvv
Comment 4 Tom 2021-11-04 14:34:13 UTC
Created attachment 299451 [details]
/sys/firmware/acpi/interrupts/*
Comment 5 Tom 2021-11-04 14:34:48 UTC
Created attachment 299453 [details]
5.10.77 kernel config
Comment 6 Zhang Rui 2022-06-21 09:41:44 UTC
what is the kernel version that it used to work?

The most efficient way is to do git bisect to find out which commit introduces the problem.