From owner-freebsd-hackers@FreeBSD.ORG Mon Jan 12 09:30:03 2004 Return-Path: Delivered-To: freebsd-hackers@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 7E3E716A4CE for ; Mon, 12 Jan 2004 09:30:03 -0800 (PST) Received: from mx2.ngi.de (mx2.ngi.de [213.191.74.84]) by mx1.FreeBSD.org (Postfix) with ESMTP id 6368643D69 for ; Mon, 12 Jan 2004 09:29:56 -0800 (PST) (envelope-from gerald.heinig@ngi.de) Received: (qmail 18097 invoked from network); 12 Jan 2004 17:11:48 -0000 Received: from unknown (HELO mx2.ngi.de) ([213.191.74.86]) (envelope-sender ) by 0 (qmail-ldap-1.03) with SMTP for ; 12 Jan 2004 17:11:48 -0000 From: To: hackers@freebsd.org Date: Mon, 12 Jan 2004 18:10:21 +0100 X-Mailer: NGI Webmail Message-Id: <20040112172956.6368643D69@mx1.FreeBSD.org> Subject: ping duplicates under load X-BeenThere: freebsd-hackers@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Technical Discussions relating to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 12 Jan 2004 17:30:03 -0000 Hi all, I've noticed a very weird phenomenon with ping which I can't explain. I have two machines with 2 NICs. When I started a ping -f with larger packet size (-s 3052) with NIC 1 and simultaneously hammered NIC 2 with UDP using ttcp, I got duplicate ping replies (on NIC 1, of course). Not many: only about 1 in 10000 to 100000, but still, I can't explain it. Since I had a similar problem a while back with another driver I developed (for OS X) and that turned out to be due to lost interrupts and my ISR not terminating quickly enough, I decided to limit the number of iterations of my ISR to 3. That improved the situation somewhat: I now only get 1 duplicate ping in 1E8. The real kicker is: I see this effect when my driver is the one doing the UDP receive. The ping duplicates also happen with other card drivers, so it's not a simple transmit/receive ring problem with my driver. When I use a different card driver to do the UDP receives, the effect goes away. It seems like the receive interrupt activity on my driver affects the ping replies of the _other_ drivers. Does anyone have any idea what could be going on? Cheers, Gerald