gk: handle hs_hash_add_key_with_hash() == -EEXIST #671
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
In rare situations,
hs_hash_add_key_with_hash()
will try to add a flow already in the flow table. Callers ofhs_hash_add_key_with_hash()
ignored these cases and discarded the associate updates.The reason for not handling those cases was that
rte_hash_add_key_with_hash()
does not return the entry ID when it already exists in the table, and adding a lookup to the hot path was not desirable. However,hs_hash_add_key_with_hash()
, from the new hash table library, provides the entry ID when it is already in the table.