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 [EMAIL PROTECTED] www.amduat.net "I don't suffer from insanity, I enjoy every minute of it." _______________________________________________ [EMAIL PROTECTED] mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-net To unsubscribe, send any mail to "[EMAIL PROTECTED]"