• Jakub Kicinski's avatar
    mlx4: disable device on shutdown · 3cab8c65
    Jakub Kicinski authored
    It appears that not disabling a PCI device on .shutdown may lead to
    a Hardware Error with particular (perhaps buggy) BIOS versions:
    
        mlx4_en: eth0: Close port called
        mlx4_en 0000:04:00.0: removed PHC
        reboot: Restarting system
        {1}[Hardware Error]: Hardware error from APEI Generic Hardware Error Source: 1
        {1}[Hardware Error]: event severity: fatal
        {1}[Hardware Error]:  Error 0, type: fatal
        {1}[Hardware Error]:   section_type: PCIe error
        {1}[Hardware Error]:   port_type: 4, root port
        {1}[Hardware Error]:   version: 1.16
        {1}[Hardware Error]:   command: 0x4010, status: 0x0143
        {1}[Hardware Error]:   device_id: 0000:00:02.2
        {1}[Hardware Error]:   slot: 0
        {1}[Hardware Error]:   secondary_bus: 0x04
        {1}[Hardware Error]:   vendor_id: 0x8086, device_id: 0x2f06
        {1}[Hardware Error]:   class_code: 000604
        {1}[Hardware Error]:   bridge: secondary_status: 0x2000, control: 0x0003
        {1}[Hardware Error]:   aer_uncor_status: 0x00100000, aer_uncor_mask: 0x00000000
        {1}[Hardware Error]:   aer_uncor_severity: 0x00062030
        {1}[Hardware Error]:   TLP Header: 40000018 040000ff 791f4080 00000000
    [hw error repeats]
        Kernel panic - not syncing: Fatal hardware error!
        CPU: 0 PID: 2189 Comm: reboot Kdump: loaded Not tainted 5.6.x-blabla #1
        Hardware name: HP ProLiant DL380 Gen9/ProLiant DL380 Gen9, BIOS P89 05/05/2017
    
    Fix the mlx4 driver.
    
    This is a very similar problem to what had been fixed in:
    commit 0d98ba8d ("scsi: hpsa: disable device during shutdown")
    to address https://bugzilla.kernel.org/show_bug.cgi?id=199779.
    
    Fixes: 2ba5fbd6 ("net/mlx4_core: Handle AER flow properly")
    Reported-by: default avatarJake Lawrence <lawja@fb.com>
    Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
    Reviewed-by: default avatarSaeed Mahameed <saeedm@mellanox.com>
    Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    3cab8c65
main.c 123 KB