mlxcx send rings can overflow
If the send queue is the same size (or smaller) than its paired completion queue, it is likely to overflow and become non-functionaL
A send mblk can occupy multiple send queue entries (WQEBBs), but will use a single completion queue entry when finished. To guard against this, we need to do accounting for both the completion and send queue entries, and not submit any more packets when either is beyond their threshold.
Updated by Electric Monk about 2 years ago
- Status changed from In Progress to Closed
- % Done changed from 80 to 100
commit 22d052287ba7ed169757650e2eec25fedbae163a Author: Paul Winder <email@example.com> Date: 2020-04-14T15:40:07.000Z 12383 Slow down and lock up in mlxcx receive interrupt path 12438 mlxcx should pass receive messages to mac layer more frequently 12439 mlxcx send rings can overflow 12440 mlxcx should not block in the send path 12441 mlxcx default queue sizes are a bit on the small size Reviewed by: Garrett D'Amore <firstname.lastname@example.org> Reviewed by: Andy Stormont <email@example.com> Reviewed by: Igor Kozhukhov <firstname.lastname@example.org> Reviewed by: Robert Mustacchi <email@example.com> Approved by: Garrett D'Amore <firstname.lastname@example.org>