Disabling VLAN_HWTAGGING
Jacob S. Barrett
jbarrett at amduat.net
Fri Mar 26 18:44:55 PST 2004
I did a little more debugging and placed some printf statements before and
after:
/*
* If we received a packet with a vlan tag, pass it
* to vlan_input() instead of ether_input().
*/
if (extsts & NGE_RXEXTSTS_VLANPKT) {
VLAN_INPUT_TAG(ifp, m,
extsts & NGE_RXEXTSTS_VTCI, continue);
}
What I found is that VLAN tagged frames sent to the interface never get to
this line at all. I figured the NIC must be droping it or something before
it even gets to the driver. So I commented out the following line:
/*
* Tell the chip to detect and strip VLAN tag info from
* received frames. The tag will be provided in the extsts
* field in the RX descriptors.
*/
NGE_SETBIT(sc, NGE_VLAN_IP_RXCTL,
NGE_VIPRXCTL_TAG_DETECT_ENB|NGE_VIPRXCTL_TAG_STRIP_ENB);
Now the driver gets the frame but the conditional about is false, presumable
because I comment out that line which says it will detect and set the extsts.
It does however get delivered to the ng lower hook and therefor the ng_vlan
gets it. The ng_eiface tied to vlan2 replies to the arp requests. Strangely
though when an ICMP ping request gets to ng_eiface it ignores it.
02:27:16.658526 0:90:27:f4:58:1d ff:ff:ff:ff:ff:ff 0806 56: arp who-has
10.2.0.1 tell 10.2.0.2
02:27:16.658633 11:22:33:44:55:66 0:90:27:f4:58:1d 0806 42: arp reply 10.2.0.1
is-at 11:22:33:44:55:66
02:27:16.659132 0:90:27:f4:58:1d 11:22:33:44:55:66 0800 98: 10.2.0.2 >
10.2.0.1: icmp: echo request
02:27:16.664321 0:90:27:f4:58:1d 11:22:33:44:55:66 0800 98: 10.2.0.2 >
10.2.0.1: icmp: echo request
Even more odd, I can ping from the ng_eiface interface and it makes it tagged
all the way out and back just fine. The ng_eiface gets the ICMP response just
fine.
Does any of this make sense to you? Is there possibly something wrong with
the logic in that detect and stip flag? Am I just a total tool and missing
someting completely obvious here, because it wouldn't be the first time.
Does anyone have a 1Gbit fiber NIC that they have tested in and out with VLAN
tagging that they could recommend.
--
Jacob S. Barrett
jbarrett at amduat.net
www.amduat.net
"I don't suffer from insanity, I enjoy every minute of it."
More information about the freebsd-net
mailing list