2023-05-12 20:48:22

by Ian Kumlien

[permalink] [raw]
Subject: HP iLO (intel gen8, gen9) and intremap=off

Hi,

On older intel HP servers, as in Gen8 and 9, there is a issue with
interrupt remapping and iLO.

I have been thinking of patching this, but haven't read up on the
quirks system enough... And it keeps hitting me in different ways.

So, if you boot with a ilo console (web) on a gen8 it will work, but
it will be REALLY slow. If you disconnect it and reconnect, iLO will
break (dmar errors).

While not good, itt's mainly just annoying...

However, on gen9, it can apparently cause memory thrashing for virtual
cds (as in attach storage via ilo).

I wasn't expecting it but I've been wondering why a gen9 machine
couldn't be installed all day - with issues like packages failing
signature checks when they are on the "local installation media"...

What kind of information would you need from me to workaround this?
PCI ids of iLOs?


2023-05-13 23:31:09

by Ian Kumlien

[permalink] [raw]
Subject: Re: HP iLO (intel gen8, gen9) and intremap=off

On Fri, May 12, 2023 at 10:28 PM Ian Kumlien <[email protected]> wrote:
>
> Hi,
>
> On older intel HP servers, as in Gen8 and 9, there is a issue with
> interrupt remapping and iLO.
>
> I have been thinking of patching this, but haven't read up on the
> quirks system enough... And it keeps hitting me in different ways.
>
> So, if you boot with a ilo console (web) on a gen8 it will work, but
> it will be REALLY slow. If you disconnect it and reconnect, iLO will
> break (dmar errors).
>
> While not good, itt's mainly just annoying...
>
> However, on gen9, it can apparently cause memory thrashing for virtual
> cds (as in attach storage via ilo).
>
> I wasn't expecting it but I've been wondering why a gen9 machine
> couldn't be installed all day - with issues like packages failing
> signature checks when they are on the "local installation media"...
>
> What kind of information would you need from me to workaround this?
> PCI ids of iLOs?

As an example, reconnecting console results in:
[ 43.908711] usb 1-1: USB disconnect, device number 2
[ 46.801589] DMAR: DRHD: handling fault status reg 102
[ 46.801603] DMAR: [INTR-REMAP] Request device [01:00.0] fault index
0x19 [fault reason 0x26] Blocked an interrupt request due to source-id
verification failure

Which of course is ilo:
lspci -vvvv -s 01:00.0
01:00.0 System peripheral: Hewlett-Packard Company Integrated
Lights-Out Standard Slave Instrumentation & System Support (rev 05)
Subsystem: Hewlett-Packard Company iLO4
Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr-
Stepping- SERR- FastB2B- DisINTx-
Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort-
<TAbort- <MAbort- >SERR- <PERR- INTx-
Latency: 0, Cache Line Size: 64 bytes
Interrupt: pin A routed to IRQ 19
NUMA node: 0
Region 0: I/O ports at 3000 [size=256]
Region 1: Memory at f7df0000 (32-bit, non-prefetchable) [size=512]
Region 2: I/O ports at 3400 [size=256]
Capabilities: [78] Power Management version 3
Flags: PMEClk- DSI- D1- D2- AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot-,D3cold-)
Status: D0 NoSoftRst+ PME-Enable- DSel=0 DScale=0 PME-
Capabilities: [b0] MSI: Enable- Count=1/1 Maskable- 64bit+
Address: 0000000000000000 Data: 0000
Capabilities: [c0] Express (v1) Legacy Endpoint, MSI 00
DevCap: MaxPayload 128 bytes, PhantFunc 0, Latency L0s unlimited, L1 unlimited
ExtTag- AttnBtn- AttnInd- PwrInd- RBE+ FLReset-
DevCtl: CorrErr- NonFatalErr+ FatalErr+ UnsupReq-
RlxdOrd- ExtTag- PhantFunc- AuxPwr- NoSnoop-
MaxPayload 128 bytes, MaxReadReq 128 bytes
DevSta: CorrErr- NonFatalErr- FatalErr- UnsupReq+ AuxPwr- TransPend-
LnkCap: Port #0, Speed 2.5GT/s, Width x1, ASPM L0s, Exit Latency L0s <4us
ClockPM- Surprise- LLActRep- BwNot- ASPMOptComp-
LnkCtl: ASPM Disabled; RCB 64 bytes, Disabled- CommClk-
ExtSynch- ClockPM- AutWidDis- BWInt- AutBWInt-
LnkSta: Speed 2.5GT/s, Width x1
TrErr- Train- SlotClk- DLActive- BWMgmt- ABWMgmt-
Kernel driver in use: hpwdt
Kernel modules: hpwdt

Attached full dmesg, the sr1 things is me playing with the virtual
cd-rom trying to see if the bug there exists on gen8 as well but no.


Attachments:
dmesg.txt (99.60 kB)