[SRU][F:linux-bluefield][PATCH v3 0/1] UBUNTU: SAUCE: tmfifo: Fix a memory barrier issue

Liming Sun limings at nvidia.com
Thu May 6 12:30:28 UTC 2021


BugLink: https://bugs.launchpad.net/bugs/1927262

SRU Justification:

[Impact]

* The virtio framework uses wmb() when updating avail->idx. It guarantees
  the write order, but not necessarily loading order for the code accessing
  the memory. So potentially it could cause traffic stuck which has been
  observed in the field.

[Fix]
* This commit adds a load barrier after reading the avail->idx to make sure
  all the data in the descriptor is visible. It also adds a barrier when
  returning the packet to virtio framework to make sure read/writes are
  visible to the virtio code.

[Test Case]
* Just normal test. This change doesn't affect any functionality.

[Regression Potential]

* This version of the driver was tested by QA/verification for a while so no
  known regression at the moment.



More information about the kernel-team mailing list