acl-plugin: avoid crash in multithreaded setup adding/deleting ACLs with traffic... 75/7975/2
authorAndrew Yourtchenko <ayourtch@gmail.com>
Tue, 8 Aug 2017 18:10:12 +0000 (20:10 +0200)
committerNeale Ranns <nranns@cisco.com>
Thu, 10 Aug 2017 13:56:31 +0000 (13:56 +0000)
commitef5dd4f2aec6df1b58aa8d07493acf486eccf802
treeefe67ac8e347936b78011de27616a64c486979e3
parentfa3eb7a993fe7538c51360960ef92dced0562342
acl-plugin: avoid crash in multithreaded setup adding/deleting ACLs with traffic (VPP-910/VPP-929)

The commit fixing the VPP-910 and separating the memory operations
into separate heaps has missed setting the MHEAP_FLAG_THREAD_SAFE,
which quite obviously caused the issues in the multithread setup.
Fix that.

Also, add the debug CLIs
"set acl-plugin heap {main|hash} {validate|trace} {1|0}"
to toggle the memory instrumentation, in case we ever need it
in the future.

Change-Id: I8bd4f7978613f5ea75a030cfb90674dac34ae7bf
Signed-off-by: Andrew Yourtchenko <ayourtch@gmail.com>
(cherry picked from commit e6423bef32ca2ffcfcd7a092eb4673badd53ea4c)
src/plugins/acl/acl.c
src/plugins/acl/hash_lookup.c
src/plugins/acl/hash_lookup.h