Comment 90 for bug 1684993

Revision history for this message
OpenContrail Admin (ci-admin-f) wrote : A change has been merged

Reviewed: https://review.opencontrail.org/46489
Committed: http://github.com/Juniper/contrail-third-party/commit/ddc576e9c037e1ccc0e297a64ce92e4bedf95d63
Submitter: Vinay Vithal Mahuli (<email address hidden>)
Branch: R4.1

commit ddc576e9c037e1ccc0e297a64ce92e4bedf95d63
Author: Ananth Suryanarayana <email address hidden>
Date: Wed Sep 19 14:19:17 2018 -0700

Do not insert already sleeping tbb task back into sleeping list

During testing, it was found that tbb sleeping threads singly linked
list was corrupted and had become circular. This seemingly caused
my_slack count to get permanently stuck at -1, as the sleeping list
traversal would potentially never end.

During testing, using a specific assert, it was confirmed that duplicate
insertion did happen.

Fixed it by modifying the sleeing threads singly linked list into a
doubly linked list and then making sure that a thread if already in
the list is never prepended back as the head of the list.

https://github.com/01org/tbb/issues/86

Change-Id: Ie5de2844a19843bec185e921a83bde4f55c1b6ed
Closes-Bug: #1684993