net/ena: recreate HW IO rings on start and stop
authorMichal Krawczyk <mk@semihalf.com>
Thu, 25 Oct 2018 17:59:21 +0000 (19:59 +0200)
committerFerruh Yigit <ferruh.yigit@intel.com>
Fri, 26 Oct 2018 20:14:06 +0000 (22:14 +0200)
commitdf238f84c0a21d642bb9517d0c75ba831eeceb46
tree027243a0fa3a81be5d892f64e640e7aa3d15779e
parentfd61c749dbb2224d1e988085340c22ab9c985243
net/ena: recreate HW IO rings on start and stop

On the start the driver was refilling all Rx buffs, but the old ones
were not released. That way running start/stop for a few times was
causing device to run out of descriptors.

To fix the issue, IO rings are now being destroyed on stop, and
recreated on start. That way the device is not losing any descriptors.

Furthermore, there was also memory leak for the Rx mbufs, which were
created on start and not destroyed on stop.

Fixes: eb0ef49dd5d5 ("net/ena: add stop and uninit routines")
Cc: stable@dpdk.org
Signed-off-by: Michal Krawczyk <mk@semihalf.com>
drivers/net/ena/ena_ethdev.c