Code includes barrier() followed by writel(). writel() already has a
barrier on some architectures like arm64.
This ends up CPU observing two barriers back to back before executing the
register write.
Create a new wrapper function with relaxed write operator. Use the new
wrapper when a write is following a barrier().
Since code already has an explicit barrier call, changing writel() to
writel_relaxed() and adding mmiowb() for ordering protection.
Signed-off-by: Sinan Kaya <email address hidden>
Signed-off-by: David S. Miller <email address hidden>
(cherry picked from commit 6d2e1a8d5e25e5f4563f5ea24bcb5da1ae261b26)
Signed-off-by: Kamal Mostafa <email address hidden>
14041ac...
by
Netanel Belgazal <email address hidden>
Signed-off-by: Netanel Belgazal <email address hidden>
Signed-off-by: David S. Miller <email address hidden>
(cherry picked from commit 70097445686209f2b365b51f8154be0ee5b0ba53)
Signed-off-by: Kamal Mostafa <email address hidden>
255f847...
by
Netanel Belgazal <email address hidden>
net: ena: add detection and recovery mechanism for handling missed/misrouted MSI-X
A mechanism for detection of stuck Rx/Tx rings due to missed or
misrouted interrupts.
Check if there are unhandled completion descriptors before the first
MSI-X interrupt arrived.
The check is per queue and per interrupt vector.
Once such condition is detected, driver and device reset is scheduled.
Signed-off-by: Netanel Belgazal <email address hidden>
Signed-off-by: David S. Miller <email address hidden>
(cherry picked from commit 8510e1a3d16c7e4e2b47c9675b18725407c616b7)
Signed-off-by: Kamal Mostafa <email address hidden>
UBUNTU: [Config] update Build-Depends: transfig to fig2dev
Some time back transfig became a transitional package to fig2dev.
In cosmic this transitional has now been deprecated. As we are still
copying kernels forward we need to fix this dependency in bionic.
This transition actually occured back in artful, we just missed it.
Switch our build dependency to the "new" fig2dev package.