All of lore.kernel.org
 help / color / mirror / Atom feed
* [Bridge] Bridging on broken Broadcom hardware.
@ 2004-02-18 23:26 Paul Schulz
  0 siblings, 0 replies; 6+ messages in thread
From: Paul Schulz @ 2004-02-18 23:26 UTC (permalink / raw)
  To: bridge; +Cc: sjolly

[-- Attachment #1: Type: text/plain, Size: 858 bytes --]

Greetings (first post to the list)...

The following patch is required to allow bridging to occur on an
IBM x305 (1RU server).  (It has been posted to the kernel-developers
mailing list previously.)

Background:
  - The Dual Broadcom NICs in the IBM x305 have a broken checksum
    routine which wants to calculate the checksum the ethernet
    packet where the 'source' IP address is the IP address 
    of the sending interface.
    This breaks bridging! (Upstream hosts see an invalid checksum 
    and drop the packet.)

  - I have heard of other issues with Broadcom NICs not
    working with IPv6 and broadcast/multicast which could be 
    related.
    
I would like to get these results and the fix verified, as it will
effect any hosts using this chipset. Does anyone have any pointers?

Paul Schulz <pschulz@foursticks.com>


[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 189 bytes --]

^ permalink raw reply	[flat|nested] 6+ messages in thread
* [Bridge] Bridging on broken Broadcom hardware.
@ 2004-02-18 23:29 Paul Schulz
  2004-02-19  0:16 ` Stephen Hemminger
  0 siblings, 1 reply; 6+ messages in thread
From: Paul Schulz @ 2004-02-18 23:29 UTC (permalink / raw)
  To: bridge; +Cc: sjolly

[-- Attachment #1: Type: text/plain, Size: 1651 bytes --]

Greetings (first post to the list, with patch)...

The following patch is required to allow bridging to occur on an
IBM x305 (1RU server) - with the tg3 module.  
(This has been posted to the kernel-developers mailing list.)

Background:
  - The Dual Broadcom NICs in the IBM x305 have a broken checksum
    routine which wants to calculate the checksum the ethernet
    packet where the 'source' IP address is the IP address 
    of the sending interface.
    This breaks bridging! (Upstream hosts see an invalid checksum 
    and drop the packet.)

  - I have heard of other issues with Broadcom NICs not
    working with IPv6 and broadcast/multicast which could be 
    related.
    
I would like to get these results and the fix verified, as it will
effect any hosts using this chipset. Does anyone have any pointers?

Paul Schulz <pschulz@foursticks.com>

--------------------------------------------------------------------
diff -Naur linux-2.4.20/drivers/net/tg3.c linux-2.4.20-np/drivers/net/tg3.c
--- linux-2.4.20/drivers/net/tg3.c	Fri Nov 29 10:23:14 2002
+++ linux-2.4.20-np/drivers/net/tg3.c	Thu Jan 23 14:46:54 2003
@@ -6161,6 +6161,11 @@
 	if (tp->pci_chip_rev_id == CHIPREV_ID_5700_B0)
 		tp->tg3_flags |= TG3_FLAG_BROKEN_CHECKSUMS;
 
+	/* 5703 A2 have issues with checksumming too. (sarah) */
+	if (tp->pci_chip_rev_id == CHIPREV_ID_5703_A2)
+		tp->tg3_flags |= TG3_FLAG_BROKEN_CHECKSUMS;
+
 	/* Regardless of whether checksums work or not, we configure
 	 * the StrongARM chips to not compute the pseudo header checksums
 	 * in either direction.  Because of the way Linux checksum support




[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 189 bytes --]

^ permalink raw reply	[flat|nested] 6+ messages in thread
* RE: [Bridge] Bridging on broken Broadcom hardware.
@ 2004-02-19  1:09 Paul Schulz
  2004-02-19  1:26 ` David S. Miller
  0 siblings, 1 reply; 6+ messages in thread
From: Paul Schulz @ 2004-02-19  1:09 UTC (permalink / raw)
  To: davem; +Cc: netdev, Stephen Hemminger

Hi David,

What additional information would you like to have?

Paul Schulz - Software Engineer
Foursticks Pty Ltd - Level 16, 33 King William St, Adelaide 5000
Phone: +61 8 8111 4300  Fax: +61 8 8111 4399  Mobile: +61 401 981 301
Email: pschulz@foursticks.com  Web: www.foursticks.com

-----Original Message-----
From: David S. Miller [mailto:davem@redhat.com] 
Sent: Thursday, February 19, 2004 10:59 AM
To: Stephen Hemminger
Cc: Paul Schulz; netdev@oss.sgi.com; Simon Jolly
Subject: Re: [Bridge] Bridging on broken Broadcom hardware.

On Wed, 18 Feb 2004 16:16:11 -0800
Stephen Hemminger <shemminger@osdl.org> wrote:

> This looks like a network driver not bridging problem, so forwarding
to
> the netdev list.

Bridging packets, which don't come from the IP stack, won't have
CHECKSUM_HW or similar set in the SKB checksum field.  Therefore
the chip won't be told to checksum the packet on transmit.

The firmware will not mess with the packet contents at all unless
it is told to do so, and in this case (as described) it won't.

> > +	/* 5703 A2 have issues with checksumming too. (sarah) */
> > +	if (tp->pci_chip_rev_id == CHIPREV_ID_5703_A2)
> > +		tp->tg3_flags |= TG3_FLAG_BROKEN_CHECKSUMS;
> > +

I'd like to see a real errata report supporting such a claim.

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

end of thread, other threads:[~2004-02-19  1:26 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2004-02-18 23:26 [Bridge] Bridging on broken Broadcom hardware Paul Schulz
  -- strict thread matches above, loose matches on Subject: below --
2004-02-18 23:29 Paul Schulz
2004-02-19  0:16 ` Stephen Hemminger
2004-02-19  0:29   ` David S. Miller
2004-02-19  1:09 Paul Schulz
2004-02-19  1:26 ` David S. Miller

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.