From owner-freebsd-hackers Fri May 31 11: 9:30 2002 Delivered-To: freebsd-hackers@freebsd.org Received: from web.cs.ndsu.nodak.edu (web.cs.ndsu.NoDak.edu [134.129.125.7]) by hub.freebsd.org (Postfix) with ESMTP id E72A237B401 for ; Fri, 31 May 2002 11:09:26 -0700 (PDT) Received: (from tinguely@localhost) by web.cs.ndsu.nodak.edu (8.11.4/8.11.4) id g4VI9QA82897; Fri, 31 May 2002 13:09:26 -0500 (CDT) (envelope-from tinguely) Date: Fri, 31 May 2002 13:09:26 -0500 (CDT) From: mark tinguely Message-Id: <200205311809.g4VI9QA82897@web.cs.ndsu.nodak.edu> To: freebsd-hackers@FreeBSD.ORG, rsharpe@ns.aus.com Subject: Re: broadcast packets not reaching sender on if_hwassist capable interfaces In-Reply-To: Sender: owner-freebsd-hackers@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.ORG Summary: FreeBSD 4.3 Broadcast IP datagrams not looping on Broadcom GigE card. > Also, why is the decision to loop the packet back made in ether_output > rather than in ip_output? Off the top of my head I can't see any > particular advantage, but perhaps there is. The disadvantage is that I > will have to disable hardware assist for broadcast packets to make things > work right. the bge sets the interface output to be ether_output() which is called from the ip_output() after all thse flags have been set.. Are these packets that fail part of a IP fragment? m_copy does not copy the hwassist flags. we see the same problem with multicast packets. Bill Fenner wrote a simular multicast patch before FreeBSD 4.5-RELEASE, but even that fix has not been included into the tree yet either. In ip_output, we should either we need to copy the hwassist flag in _copy or in the code that follows a m_copy, or force the checksum calculations. if your packets are not part of a fragment, then let me know. --mark tinguely. To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-hackers" in the body of the message