Date: Sat, 9 Jan 2010 00:05:02 +0000 (UTC) From: Pyun YongHyeon <yongari@FreeBSD.org> To: cvs-src-old@freebsd.org Subject: cvs commit: src/sys/dev/vge if_vge.c Message-ID: <201001090005.o0905EKt048935@repoman.freebsd.org>
next in thread | raw e-mail | index | archive | help
yongari 2010-01-09 00:05:02 UTC FreeBSD src repository Modified files: (Branch: RELENG_7) sys/dev/vge if_vge.c Log: SVN rev 201861 on 2010-01-09 00:05:02Z by yongari MFC r200551-200552,200555,200558,200609,200613 r200551: Whenever link state change interrupt is raised, vge_tick() is called and vge(4) used to drive auto-negotiation timer(mii_tick) in vge_tick(). Therefore the mii_tick was not called for every hz such that auto-negotiation complete was never handled in vge(4). Use mii_pollstat to extract current negotiated speed/duplex instead of mii_tick. The latter is valid only for auto-negotiation case. While I'm here change the confusing function name vge_tick() to vge_link_statchg(). r200552: Report media change result to caller instead of returning success without regard to the result. r200555: Don't report current link status if interface is not UP. If interface is not UP, the current link status wouldn't reflect the negotiated status. r200558: Tell upper layer vge(4) supports long frames. This should be done after ether_ifattach(), as ether_ifattach() initializes it with ETHER_HDR_LEN. While I'm here remove setting if_mtu, it's already handled in ether_ifattach(). r200609: All vge(4) controllers support RX/TX checksum offloading for VLAN tagged frames so add checksum offloading capabilities. Also add missing VLAN hardware tagging control in ioctl handler and let upper stack know current VLAN capabilities. r200613: Rewrite RX filter setup and simplify code. Now promiscuous mode and multicast handling is performed in single function, vge_rxfilter(). Revision Changes Path 1.31.2.8 +91 -70 src/sys/dev/vge/if_vge.c
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201001090005.o0905EKt048935>