Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 28 Apr 2009 20:47:29 +0300
From:      Maxim Ignatenko <gelraen.ua@gmail.com>
To:        bug-followup@freebsd.org, gdef@wp.pl
Cc:        freebsd-current@freebsd.org
Subject:   Re: kern/132715: [lagg] [panic] Panic when creating vlan's on lagg  interface
Message-ID:  <ac42db050904281047p47f072ccn132337602aff76a@mail.gmail.com>
In-Reply-To: <ac42db050904281032y7155332crc96b090893326d65@mail.gmail.com>
References:  <ac42db050904200846t776579feq6a0f62abe4f88f06@mail.gmail.com> <ac42db050904281032y7155332crc96b090893326d65@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help

[-- Attachment #1 --]
Sorry, here is patch done relatively to root of source tree. (previous
was done relatively to sys/dev)

[-- Attachment #2 --]
Index: e1000/if_igb.c
===================================================================
--- e1000/if_igb.c	(revision 191201)
+++ e1000/if_igb.c	(working copy)
@@ -4274,6 +4274,8 @@
 	struct adapter	*adapter = ifp->if_softc;
 	u32		ctrl, rctl, index, vfta;
 
+	if (strcmp("igb",ifp->if_dname)) return;
+
 	ctrl = E1000_READ_REG(&adapter->hw, E1000_CTRL);
 	ctrl |= E1000_CTRL_VME;
 	E1000_WRITE_REG(&adapter->hw, E1000_CTRL, ctrl);
@@ -4306,6 +4308,8 @@
 	struct adapter	*adapter = ifp->if_softc;
 	u32		index, vfta;
 
+	if (strcmp("igb",ifp->if_dname)) return;
+
 	/* Remove entry in the hardware filter table */
 	index = ((vtag >> 5) & 0x7F);
 	vfta = E1000_READ_REG_ARRAY(&adapter->hw, E1000_VFTA, index);
Index: e1000/if_em.c
===================================================================
--- e1000/if_em.c	(revision 191201)
+++ e1000/if_em.c	(working copy)
@@ -4771,6 +4771,8 @@
 	struct adapter	*adapter = ifp->if_softc;
 	u32		ctrl, rctl, index, vfta;
 
+	if (strcmp("em",ifp->if_dname)) return;
+
 	ctrl = E1000_READ_REG(&adapter->hw, E1000_CTRL);
 	ctrl |= E1000_CTRL_VME;
 	E1000_WRITE_REG(&adapter->hw, E1000_CTRL, ctrl);
@@ -4803,6 +4805,8 @@
 	struct adapter	*adapter = ifp->if_softc;
 	u32		index, vfta;
 
+	if (strcmp("em",ifp->if_dname)) return;
+
 	/* Remove entry in the hardware filter table */
 	index = ((vtag >> 5) & 0x7F);
 	vfta = E1000_READ_REG_ARRAY(&adapter->hw, E1000_VFTA, index);
Index: ixgbe/ixgbe.c
===================================================================
--- ixgbe/ixgbe.c	(revision 191201)
+++ ixgbe/ixgbe.c	(working copy)
@@ -4031,6 +4031,8 @@
 	struct adapter	*adapter = ifp->if_softc;
 	u32		ctrl, rctl, index, vfta;
 
+	if (strcmp("ixgbe",ifp->if_dname)) return;
+
 	ctrl = IXGBE_READ_REG(&adapter->hw, IXGBE_VLNCTRL);
 	ctrl |= IXGBE_VLNCTRL_VME | IXGBE_VLNCTRL_VFE;
 	ctrl &= ~IXGBE_VLNCTRL_CFIEN;
@@ -4050,6 +4052,8 @@
 	struct adapter	*adapter = ifp->if_softc;
 	u32		index, vfta;
 
+	if (strcmp("ixgbe",ifp->if_dname)) return;
+
 	/* Remove entry in the hardware filter table */
 	ixgbe_set_vfta(&adapter->hw, vtag, 0, FALSE);
 

Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?ac42db050904281047p47f072ccn132337602aff76a>