Date: Thu, 30 Sep 2010 17:37:08 +0000 (UTC) From: Pyun YongHyeon <yongari@FreeBSD.org> To: cvs-src-old@freebsd.org Subject: cvs commit: src/sys/pci if_rl.c Message-ID: <201009301737.o8UHbR9P088779@repoman.freebsd.org>
index | next in thread | raw e-mail
yongari 2010-09-30 17:37:08 UTC
FreeBSD src repository
Modified files:
sys/pci if_rl.c
Log:
SVN rev 213306 on 2010-09-30 17:37:08Z by yongari
Rename rl_setmulti() to rl_rxfilter() as rl_rxfilter() will handle
IFF_ALLMULTI/IFF_PROMISC as well as multicast filter configuration.
Rewrite RX filter logic to reduce number of register accesses and
make it handle promiscuous/allmulti toggling without controller
reinitialization.
Previously rl(4) counted on controller reinitialization to reprogram
promiscuous configuration but r211767 resulted in avoiding
controller reinitialization whenever promiscuous mode is toggled.
To address this, keep track of driver's view of interface state and
handle IFF_ALLMULTI/IFF_PROMISC changes without reinitializing
controller. This should fix a regression introduced in r211267.
While I'm here remove unnecessary variable reassignment in ioctl
handler.
PR: kern/151079
MFC after: 1 week
Revision Changes Path
1.194 +42 -66 src/sys/pci/if_rl.c
help
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201009301737.o8UHbR9P088779>
