MCPcopy Create free account
hub / github.com/F-Stack/f-stack / rte_efd_free

Function rte_efd_free

dpdk/lib/efd/rte_efd.c:743–772  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

741}
742
743void
744rte_efd_free(struct rte_efd_table *table)
745{
746 uint8_t socket_id;
747 struct rte_efd_list *efd_list;
748 struct rte_tailq_entry *te, *temp;
749
750 if (table == NULL)
751 return;
752
753 for (socket_id = 0; socket_id < RTE_MAX_NUMA_NODES; socket_id++)
754 rte_free(table->chunks[socket_id]);
755
756 efd_list = RTE_TAILQ_CAST(rte_efd_tailq.head, rte_efd_list);
757 rte_mcfg_tailq_write_lock();
758
759 RTE_TAILQ_FOREACH_SAFE(te, efd_list, next, temp) {
760 if (te->data == (void *) table) {
761 TAILQ_REMOVE(efd_list, te, next);
762 rte_free(te);
763 break;
764 }
765 }
766
767 rte_mcfg_tailq_write_unlock();
768 rte_ring_free(table->free_slots);
769 rte_free(table->offline_chunks);
770 rte_free(table->keys);
771 rte_free(table);
772}
773
774/**
775 * Applies a previously computed table entry to the specified table for all

Callers 8

rte_efd_createFunction · 0.85
test_add_deleteFunction · 0.85
test_add_update_deleteFunction · 0.85
test_efd_find_existingFunction · 0.85
test_five_keysFunction · 0.85
perform_freesFunction · 0.85

Calls 4

rte_freeFunction · 0.85
rte_ring_freeFunction · 0.85

Tested by 7

test_add_deleteFunction · 0.68
test_add_update_deleteFunction · 0.68
test_efd_find_existingFunction · 0.68
test_five_keysFunction · 0.68
perform_freesFunction · 0.68