• Igor Russkikh's avatar
    aquantia: Fix Tx queue hangups · 3aec6412
    Igor Russkikh authored
    Driver did a poor job in managing its Tx queues: Sometimes it could stop
    tx queues due to link down condition in aq_nic_xmit - but never waked up
    them. That led to Tx path total suspend.
    This patch fixes this and improves generic queue management:
    - introduces queue restart counter
    - uses generic netif_ interface to disable and enable tx path
    - refactors link up/down condition and introduces dmesg log event when
      link changes.
    - introduces new constant for minimum descriptors count required for queue
      wakeup
    Signed-off-by: default avatarPavel Belous <Pavel.Belous@aquantia.com>
    Signed-off-by: default avatarIgor Russkikh <igor.russkikh@aquantia.com>
    Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    3aec6412
aq_nic.c 22.7 KB