From: Heiner Kallweit <hkallwe...@gmail.com>
Date: Tue, 21 Aug 2018 23:19:04 +0200

> That's what I get on my system (RTL8168E-VL). In your case you'll come
> only till the first suspend.
> 
> [    3.743404] r8169 0000:03:00.0: MSI-X entry: context probe: fee01004 0 
> 40ef 1

On probe, MSI-X is masked (ie. disabled) and is configured to use:

        address: 0x00000000fee01004
        data:    0x00000000000040ef

> [   29.539250] r8169 0000:03:00.0: MSI-X entry: context suspend: fee02004 0 
> 4028 0

At suspend time, MSI-X is unmasked (ie. enabled) and is configured to use:

        address: 0x00000000fee01004
        data:    0x0000000000004028

> [   29.837457] r8169 0000:03:00.0: MSI-X entry: context resume: fee01004 0 
> 402b 0

At reume time, MSI-X is unmasked (ie. enabled) and is configured to use:

        address: 0x00000000fee01004
        data:    0x000000000000402b

> [   36.921370] r8169 0000:03:00.0: MSI-X entry: context suspend: fee01004 0 
> 402b 0

Second suspend:

        address: 0x00000000fee01004
        data:    0x000000000000402b

> [   37.239407] r8169 0000:03:00.0: MSI-X entry: context resume: fee01004 0 
> 402b 0

Second resume:

        address: 0x00000000fee01004
        data:    0x000000000000402b

And this all looks normal.  The data field is changing when you first up the 
device
and interrupts are enabled.  This is where the request_irq happens, the MSI
vector is allocated, and that vector number is written to the data field of the
MSI-X entry.

It looks like this (re-)allocation of MSI vectors happens on every resume as 
well.

And that's why the data field changes each resume.

Reply via email to