Review Board 2.0.15

Brandon Potter got review request #3443!

garnet: fix bug where multiple enqueues happen on same tick

Review Request #3443 - Created April 4, 2016 and updated

Brandon Potter
Changeset 11445:dbd48c6aca20
garnet: fix bug where multiple enqueues happen on same tick

Posted (April 6, 2016, 2:37 p.m.)

How is that logically possible? Doesn't that suggest something is fundamentally wrong?

  1. I need to reproduce this problem and reconfirm how I arrived at this solution. I felt confident enough to explain this until I looked at the flexible Garnet version after your comment and realized that it has the while condition still. This does solve my problem (or at least hides it), but it might not be the correct solution.

    The problem (that this patch is supposed to solve) manifested as a virtual network ordering problem where the ordering was not maintained when the messages were sent to Garnet. The packets were flitisized on the same tick and arrived at their destination in the wrong order. Mayhem ensued.

    I'll comment on this again in the next few days.

  2. Brandon, I believe this solution was a result of deep technical discussion with Prod. Tushar Krishna. This is not because something is "fundatmentally wrong".

    Andreas would you like us to forward that discussion to you?

  3. Just some intuition would be great. Clearly in the hardware implementation the interface can only be used by a single flit at a time...