Re: Disabling VLAN_HWTAGGING
From: Jacob S. Barrett (jbarrett_at_amduat.net)
Date: 03/27/04
- Previous message: George V.Neville-Neil: "Re: ifconfig causing fatal trap"
- In reply to: Ruslan Ermilov: "Re: Disabling VLAN_HWTAGGING"
- Next in thread: Ruslan Ermilov: "Re: Disabling VLAN_HWTAGGING"
- Reply: Ruslan Ermilov: "Re: Disabling VLAN_HWTAGGING"
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
To: Ruslan Ermilov <ru@freebsd.org> Date: Fri, 26 Mar 2004 18:44:52 -0800
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@amduat.net www.amduat.net "I don't suffer from insanity, I enjoy every minute of it." _______________________________________________ freebsd-net@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-net To unsubscribe, send any mail to "freebsd-net-unsubscribe@freebsd.org"
- Previous message: George V.Neville-Neil: "Re: ifconfig causing fatal trap"
- In reply to: Ruslan Ermilov: "Re: Disabling VLAN_HWTAGGING"
- Next in thread: Ruslan Ermilov: "Re: Disabling VLAN_HWTAGGING"
- Reply: Ruslan Ermilov: "Re: Disabling VLAN_HWTAGGING"
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Relevant Pages
|