From owner-freebsd-net@freebsd.org Sun Sep 6 19:22:18 2015 Return-Path: Delivered-To: freebsd-net@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 4132E9CC7CA for ; Sun, 6 Sep 2015 19:22:18 +0000 (UTC) (envelope-from bugzilla-noreply@freebsd.org) Received: from kenobi.freebsd.org (kenobi.freebsd.org [IPv6:2001:1900:2254:206a::16:76]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 141631334 for ; Sun, 6 Sep 2015 19:22:18 +0000 (UTC) (envelope-from bugzilla-noreply@freebsd.org) Received: from bugs.freebsd.org ([127.0.1.118]) by kenobi.freebsd.org (8.15.2/8.15.2) with ESMTP id t86JMHpD014894 for ; Sun, 6 Sep 2015 19:22:17 GMT (envelope-from bugzilla-noreply@freebsd.org) From: bugzilla-noreply@freebsd.org To: freebsd-net@FreeBSD.org Subject: [Bug 202875] ixv driver in 11.0-CURRENT doesn't pass traffic using KVM hypervisor Date: Sun, 06 Sep 2015 19:22:18 +0000 X-Bugzilla-Reason: AssignedTo X-Bugzilla-Type: changed X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: Base System X-Bugzilla-Component: kern X-Bugzilla-Version: 11.0-CURRENT X-Bugzilla-Keywords: IntelNetworking X-Bugzilla-Severity: Affects Many People X-Bugzilla-Who: pkelsey@freebsd.org X-Bugzilla-Status: New X-Bugzilla-Priority: --- X-Bugzilla-Assigned-To: freebsd-net@FreeBSD.org X-Bugzilla-Target-Milestone: --- X-Bugzilla-Flags: X-Bugzilla-Changed-Fields: Message-ID: In-Reply-To: References: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 7bit X-Bugzilla-URL: https://bugs.freebsd.org/bugzilla/ Auto-Submitted: auto-generated MIME-Version: 1.0 X-BeenThere: freebsd-net@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: Networking and TCP/IP with FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 06 Sep 2015 19:22:18 -0000 https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=202875 --- Comment #6 from Patrick Kelsey --- (In reply to Jeff Pieper from comment #5) > (In reply to Patrick Kelsey from comment #3) > > Our internal out-of-tree driver has all commits included in HEAD with the > exceptions being r285590 and r285592, and It works as expected. During > discussion with Eric Joyner, r285590 was determined to be the most likely > cause. If you are down to two revisions in question, that's only one patch-and-test step away from knowing with certainty which is the culprit... If r285590 is indeed the culprit, then the change I made to the receive tail pointer initialization needs to be looked at. On the hardware I was using at least, initializing the tail pointer before enabling the queue was not sufficient because enabling the queue would clear the tail pointer (the driver was working only by coincidence as it would wind up falling into the rx ring refresh logic and wind up rewriting the tail pointer). Moving the initialization to after the queue was enabled resolved this issue. Perhaps there are other constraints/requirements on tail pointer initialization - for example, maybe on some hardware, enabling the queue with both the head and tail pointers set to zero wedges the queue, or maybe another wmb() is required between the tail pointer initialization where it is now and the register writes that follow. The hardware I'm using: ix0@pci0:6:0:0: class=0x020000 card=0x000c8086 chip=0x10fb8086 rev=0x01 hdr=0x00 vendor = 'Intel Corporation' device = '82599EB 10-Gigabit SFI/SFP+ Network Connection' On the hardware you are seeing this issue on, are you able to test ixv under a FreeBSD 11.0-CURRENT host? By that, I mean run FreeBSD as the host on the system and create and test VFs within the host by using iovctl. -- You are receiving this mail because: You are the assignee for the bug.