net/sfc: fix a Tx queue double release possibility
authorIgor Romanov <igor.romanov@oktetlabs.ru>
Fri, 14 Sep 2018 07:31:36 +0000 (08:31 +0100)
committerFerruh Yigit <ferruh.yigit@intel.com>
Thu, 27 Sep 2018 23:41:02 +0000 (01:41 +0200)
commit5d138ef92d47b34af589e49f505fb1bf6db5f09b
tree2c0a6a881535787be83a9d946ae8698e6469bd20
parent7eb7588c99ab5fd0f31032b29cac74b57e1de2ff
net/sfc: fix a Tx queue double release possibility

There are two function that call sfc_tx_qfini():
sfc_tx_fini_queues() and sfc_tx_queue_release(). But only
sfc_tx_queue_release() sets tx_queues pointer of the device data to NULL.
It may lead to the scenario in which a queue is destroyed by
sfc_tx_fini_queues() and after the queue is attempted to be destroyed again
by sfc_tx_queue_release().

Move NULL assignment to sfc_tx_qfini().

Fixes: b1b7ad933b39 ("net/sfc: set up and release Tx queues")
Cc: stable@dpdk.org
Signed-off-by: Igor Romanov <igor.romanov@oktetlabs.ru>
Signed-off-by: Andrew Rybchenko <arybchenko@solarflare.com>
drivers/net/sfc/sfc_ethdev.c
drivers/net/sfc/sfc_tx.c