summaryrefslogtreecommitdiffstats
path: root/src/plugins/avf/output.c
diff options
context:
space:
mode:
authorDamjan Marion <damarion@cisco.com>2020-09-09 17:40:02 +0200
committerAndrew Yourtchenko <ayourtch@gmail.com>2020-09-11 11:11:02 +0000
commit171d6aceb039a7f0b0d67c837ff74359dae01ae4 (patch)
tree51823e58dcee988384ccf465ff4fd3f18b469c4d /src/plugins/avf/output.c
parent268e3b647733807dbecf402fcebedceff4c85544 (diff)
avf: fix race between avf and cli/api process
device pool my grow during suspemd which will cause crash in avf process after it exits from suspend. Type: fix Change-Id: I51fec90088c909cfbaaca6c245272a28c0827ca0 Signed-off-by: Damjan Marion <damarion@cisco.com>
Diffstat (limited to 'src/plugins/avf/output.c')
-rw-r--r--src/plugins/avf/output.c3
1 files changed, 1 insertions, 2 deletions
diff --git a/src/plugins/avf/output.c b/src/plugins/avf/output.c
index 6c43885569e..e5b53ba5457 100644
--- a/src/plugins/avf/output.c
+++ b/src/plugins/avf/output.c
@@ -267,9 +267,8 @@ VNET_DEVICE_CLASS_TX_FN (avf_device_class) (vlib_main_t * vm,
vlib_node_runtime_t * node,
vlib_frame_t * frame)
{
- avf_main_t *am = &avf_main;
vnet_interface_output_runtime_t *rd = (void *) node->runtime_data;
- avf_device_t *ad = pool_elt_at_index (am->devices, rd->dev_instance);
+ avf_device_t *ad = avf_get_device (rd->dev_instance);
u32 thread_index = vm->thread_index;
u8 qid = thread_index;
avf_txq_t *txq = vec_elt_at_index (ad->txqs, qid % ad->num_queue_pairs);