Message ID | 20210820183002.457226-1-maz@kernel.org (mailing list archive) |
---|---|
State | Accepted |
Delegated to: | Netdev Maintainers |
Headers | show |
Series | [net] stmmac: Revert "stmmac: align RX buffers" | expand |
Context | Check | Description |
---|---|---|
netdev/cover_letter | success | Link |
netdev/fixes_present | fail | Series targets non-next tree, but doesn't contain any Fixes tags |
netdev/patch_count | success | Link |
netdev/tree_selection | success | Clearly marked for net |
netdev/subject_prefix | success | Link |
netdev/cc_maintainers | warning | 4 maintainers not CCed: mcoquelin.stm32@gmail.com joabreu@synopsys.com linux-stm32@st-md-mailman.stormreply.com linux-arm-kernel@lists.infradead.org |
netdev/source_inline | success | Was 0 now: 0 |
netdev/verify_signedoff | success | Link |
netdev/module_param | success | Was 0 now: 0 |
netdev/build_32bit | success | Errors and warnings before: 21 this patch: 21 |
netdev/kdoc | success | Errors and warnings before: 0 this patch: 0 |
netdev/verify_fixes | success | Link |
netdev/checkpatch | success | total: 0 errors, 0 warnings, 0 checks, 11 lines checked |
netdev/build_allmodconfig_warn | success | Errors and warnings before: 21 this patch: 21 |
netdev/header_inline | success | Link |
On Fri, 20 Aug 2021 19:30:02 +0100 Marc Zyngier wrote: > This reverts commit a955318fe67e ("stmmac: align RX buffers"), > which breaks at least one platform (Nvidia Jetson-X1), causing > packet corruption. This is 100% reproducible, and reverting > the patch results in a working system again. > > Given that it is "only" a performance optimisation, let's > return to a known working configuration until we can have a > good understanding of what is happening here. Seems reasonable. Hopefully it wont discourage Matteo from revisiting the optimization. Applied, thanks!
On Fri, 20 Aug 2021 22:46:10 +0100, Jakub Kicinski <kuba@kernel.org> wrote: > > On Fri, 20 Aug 2021 19:30:02 +0100 Marc Zyngier wrote: > > This reverts commit a955318fe67e ("stmmac: align RX buffers"), > > which breaks at least one platform (Nvidia Jetson-X1), causing > > packet corruption. This is 100% reproducible, and reverting > > the patch results in a working system again. > > > > Given that it is "only" a performance optimisation, let's > > return to a known working configuration until we can have a > > good understanding of what is happening here. > > Seems reasonable. Hopefully it wont discourage Matteo from revisiting > the optimization. Applied, thanks! That's my hope too. As I pointed out at the end of the towards the end of the discussion I linked to, this buys us time to work out exactly where is the gap in our understanding of the buffer allocation for this particular driver. Once we clearly understand why it fails on some systems and not some others (which on its own could cover a multitude of sins), I'd be glad to see this optimisation brought back in, and I'm willing to help with it. Thanks, M.
diff --git a/drivers/net/ethernet/stmicro/stmmac/stmmac.h b/drivers/net/ethernet/stmicro/stmmac/stmmac.h index fcdb1d20389b..43eead726886 100644 --- a/drivers/net/ethernet/stmicro/stmmac/stmmac.h +++ b/drivers/net/ethernet/stmicro/stmmac/stmmac.h @@ -339,9 +339,9 @@ static inline bool stmmac_xdp_is_enabled(struct stmmac_priv *priv) static inline unsigned int stmmac_rx_offset(struct stmmac_priv *priv) { if (stmmac_xdp_is_enabled(priv)) - return XDP_PACKET_HEADROOM + NET_IP_ALIGN; + return XDP_PACKET_HEADROOM; - return NET_SKB_PAD + NET_IP_ALIGN; + return 0; } void stmmac_disable_rx_queue(struct stmmac_priv *priv, u32 queue);
This reverts commit a955318fe67e ("stmmac: align RX buffers"), which breaks at least one platform (Nvidia Jetson-X1), causing packet corruption. This is 100% reproducible, and reverting the patch results in a working system again. Given that it is "only" a performance optimisation, let's return to a known working configuration until we can have a good understanding of what is happening here. Cc: Matteo Croce <mcroce@linux.microsoft.com> Cc: Jakub Kicinski <kuba@kernel.org> Cc: "David S. Miller" <davem@davemloft.net> Cc: Eric Dumazet <eric.dumazet@gmail.com> Cc: Giuseppe Cavallaro <peppe.cavallaro@st.com> Cc: Alexandre Torgue <alexandre.torgue@foss.st.com> Link: https://lore.kernel.org/netdev/871r71azjw.wl-maz@kernel.org Signed-off-by: Marc Zyngier <maz@kernel.org> --- drivers/net/ethernet/stmicro/stmmac/stmmac.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)