Netdev List
 help / color / mirror / Atom feed
* [PATCH net v5 0/2] Fix a regression in the Gemini ethernet controller.
@ 2024-01-02 20:34 Linus Walleij
  2024-01-02 20:34 ` [PATCH net v5 1/2] net: ethernet: cortina: Drop software checksum and TSO Linus Walleij
  2024-01-02 20:34 ` [PATCH net v5 2/2] net: ethernet: cortina: Bypass checksumming engine of alien ethertypes Linus Walleij
  0 siblings, 2 replies; 11+ messages in thread
From: Linus Walleij @ 2024-01-02 20:34 UTC (permalink / raw)
  To: Hans Ulli Kroll, David S. Miller, Eric Dumazet, Jakub Kicinski,
	Paolo Abeni, Vladimir Oltean, Household Cang, Romain Gantois
  Cc: netdev, Linus Walleij

These fixes were developed on top of the earlier fixes.

Finding the right solution is hard because the Gemini checksumming
engine is completely undocumented in the datasheets.

Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
---
Changes in v5:
- Drop the patch re-implementing eth_header_parse_protocol()
- Link to v4: https://lore.kernel.org/r/20231222-new-gemini-ethernet-regression-v4-0-a36e71b0f32b@linaro.org

Changes in v4:
- Properly drop all MTU/TSO muckery in the TX function, the
  whole approach is bogus.
- Make the raw etherype retrieveal return __be16, it is the
  callers job to deal with endianness (as per the pattern
  from if_vlan.h)
- Use __vlan_get_protocol() instead of vlan_get_protocol()
- Only actively bypass the TSS if the frame is over a certain
  size.
- Drop comment that no longer applies.
- Link to v3: https://lore.kernel.org/r/20231221-new-gemini-ethernet-regression-v3-0-a96b4374bfe8@linaro.org

Changes in v3:
- Fix a whitespace bug in the first patch.
- Add generic accessors to obtain the raw ethertype of an
  ethernet frame. VLAN already have the right accessors.
- Link to v2: https://lore.kernel.org/r/20231216-new-gemini-ethernet-regression-v2-0-64c269413dfa@linaro.org

Changes in v2:
- Drop the TSO and length checks altogether, this was never
  working properly.
- Plan to make a proper TSO implementation in the next kernel
  cycle.
- Link to v1: https://lore.kernel.org/r/20231215-new-gemini-ethernet-regression-v1-0-93033544be23@linaro.org

---
Linus Walleij (2):
      net: ethernet: cortina: Drop software checksum and TSO
      net: ethernet: cortina: Bypass checksumming engine of alien ethertypes

 drivers/net/ethernet/cortina/gemini.c | 62 +++++++++++++++--------------------
 1 file changed, 26 insertions(+), 36 deletions(-)
---
base-commit: 33cc938e65a98f1d29d0a18403dbbee050dcad9a
change-id: 20231203-new-gemini-ethernet-regression-3c672de9cfd9

Best regards,
-- 
Linus Walleij <linus.walleij@linaro.org>


^ permalink raw reply	[flat|nested] 11+ messages in thread

end of thread, other threads:[~2024-01-06  0:17 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-01-02 20:34 [PATCH net v5 0/2] Fix a regression in the Gemini ethernet controller Linus Walleij
2024-01-02 20:34 ` [PATCH net v5 1/2] net: ethernet: cortina: Drop software checksum and TSO Linus Walleij
2024-01-04  0:24   ` Vladimir Oltean
2024-01-05  0:00     ` Linus Walleij
2024-01-05 11:32   ` Vladimir Oltean
2024-01-05 14:36     ` Eric Dumazet
2024-01-05 23:35     ` Linus Walleij
2024-01-05 14:40   ` Eric Dumazet
2024-01-02 20:34 ` [PATCH net v5 2/2] net: ethernet: cortina: Bypass checksumming engine of alien ethertypes Linus Walleij
2024-01-04  0:53   ` Vladimir Oltean
2024-01-06  0:17     ` Linus Walleij

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox