dpdk-ipsec: fix encrypt/decrypt single queue 79/19679/1
authorSergio Gonzalez Monroy <sgmonroy@gmail.com>
Mon, 6 May 2019 20:44:14 +0000 (22:44 +0200)
committerNeale Ranns <nranns@cisco.com>
Fri, 17 May 2019 12:43:56 +0000 (12:43 +0000)
commitd37b3d96c535a9bc7a5947368b17e672a54bb8e9
treee04758d48351340842d5447e8b20c34afc977ac8
parentad62a0e91b3659b4b546f9b6e62a319572c9b116
dpdk-ipsec: fix encrypt/decrypt single queue

When the same worker thread processes packet for encrypt and decrypt,
ie. single worker with bi-directional traffic, given that the queue is
shared results in packets to be decrypted being dropped as the encrypt
always happens first for each main loop.

With this change, each crypto device queue is logically split into two
queues, each half the real size, avoiding the described problem.

Change-Id: Ifd3f15e316c92fbd6ca05802456b10a7f73f85da
Signed-off-by: Sergio Gonzalez Monroy <sgmonroy@gmail.com>
(cherry picked from commit d8a34a57b12200000bb42d1c55f1a99a0a473f4b)
src/plugins/dpdk/ipsec/cli.c
src/plugins/dpdk/ipsec/crypto_node.c
src/plugins/dpdk/ipsec/esp_decrypt.c
src/plugins/dpdk/ipsec/esp_encrypt.c
src/plugins/dpdk/ipsec/ipsec.c
src/plugins/dpdk/ipsec/ipsec.h