Home
last modified time | relevance | path

Searched hist:a34e25ab977ced1c3366fc69c0595bb3fde63fad (Results 1 – 3 of 3) sorted by relevance

/openbmc/linux/drivers/net/ethernet/pensando/ionic/
H A Dionic_ethtool.cdiff a34e25ab977ced1c3366fc69c0595bb3fde63fad Thu Aug 27 18:00:28 CDT 2020 Shannon Nelson <snelson@pensando.io> ionic: change the descriptor ring length without full reset

The original way of changing ring length was to completely
tear down the lif's queue structure and then rebuild it, while
running the risk of allocations that might fail in the middle
and leave us with a broken driver.

Instead, we can set up all the new queue and descriptor
allocations first, then swap them out and delete the old
allocations. If the new allocations fail, we report the error,
stay with the old setup and continue running. This gives us
a safer path, and a smaller window of time where we're not
processing traffic.

Signed-off-by: Shannon Nelson <snelson@pensando.io>
Signed-off-by: David S. Miller <davem@davemloft.net>
H A Dionic_lif.hdiff a34e25ab977ced1c3366fc69c0595bb3fde63fad Thu Aug 27 18:00:28 CDT 2020 Shannon Nelson <snelson@pensando.io> ionic: change the descriptor ring length without full reset

The original way of changing ring length was to completely
tear down the lif's queue structure and then rebuild it, while
running the risk of allocations that might fail in the middle
and leave us with a broken driver.

Instead, we can set up all the new queue and descriptor
allocations first, then swap them out and delete the old
allocations. If the new allocations fail, we report the error,
stay with the old setup and continue running. This gives us
a safer path, and a smaller window of time where we're not
processing traffic.

Signed-off-by: Shannon Nelson <snelson@pensando.io>
Signed-off-by: David S. Miller <davem@davemloft.net>
H A Dionic_lif.cdiff a34e25ab977ced1c3366fc69c0595bb3fde63fad Thu Aug 27 18:00:28 CDT 2020 Shannon Nelson <snelson@pensando.io> ionic: change the descriptor ring length without full reset

The original way of changing ring length was to completely
tear down the lif's queue structure and then rebuild it, while
running the risk of allocations that might fail in the middle
and leave us with a broken driver.

Instead, we can set up all the new queue and descriptor
allocations first, then swap them out and delete the old
allocations. If the new allocations fail, we report the error,
stay with the old setup and continue running. This gives us
a safer path, and a smaller window of time where we're not
processing traffic.

Signed-off-by: Shannon Nelson <snelson@pensando.io>
Signed-off-by: David S. Miller <davem@davemloft.net>