• Alexander Gordeev's avatar
    ahci: Do not receive interrupts sent by dummy ports · 7adc63f5
    Alexander Gordeev authored
    commit 2cf532f5 upstream.
    
    In multiple MSI mode all AHCI ports (including dummy) get assigned
    separate MSI vectors and (as result of execution
    pci_enable_msi_exact() function) separate IRQ numbers, (mapped to the
    MSI vectors).
    
    Therefore, although interrupts from dummy ports are not desired they
    are still enabled. We do not request IRQs for dummy ports, but that
    only means we do not assign AHCI-specific ISRs to corresponding IRQ
    numbers.
    
    As result, dummy port interrupts still could come and traverse all the
    way from the PCI device to the kernel, causing unnecessary overhead.
    
    This update disables IRQs for dummy ports and prevents the described
    issue.
    Signed-off-by: default avatarAlexander Gordeev <agordeev@redhat.com>
    Signed-off-by: default avatarTejun Heo <tj@kernel.org>
    Tested-by: default avatarDavid Milburn <dmilburn@redhat.com>
    Cc: linux-ide@vger.kernel.org
    Fixes: 5ca72c4f ("AHCI: Support multiple MSIs")
    Signed-off-by: default avatarJiri Slaby <jslaby@suse.cz>
    7adc63f5
ahci.c 45.5 KB