Source-Changes archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

CVS commit: [netbsd-10] src/sys/dev/ic



Module Name:    src
Committed By:   martin
Date:           Fri Nov  3 10:04:56 UTC 2023

Modified Files:
        src/sys/dev/ic [netbsd-10]: dwc_eqos.c dwc_eqos_var.h

Log Message:
Pull up following revision(s) (requested by riastradh in ticket #453):

        sys/dev/ic/dwc_eqos_var.h: revision 1.7
        sys/dev/ic/dwc_eqos_var.h: revision 1.8
        sys/dev/ic/dwc_eqos_var.h: revision 1.9
        sys/dev/ic/dwc_eqos.c: revision 1.30
        sys/dev/ic/dwc_eqos.c: revision 1.31
        sys/dev/ic/dwc_eqos.c: revision 1.32
        sys/dev/ic/dwc_eqos.c: revision 1.33

eqos(4): Wait for callout to halt and make sure it stays halted.

eqos(4): Don't touch if_flags in tx path.

Can't touch this without IFNET_LOCK.

eqos(4): Fix locking around multicast filter updates.
- Can't touch if_flags without IFNET_LOCK.
- Can't take IFNET_LOCK in SIOCADDMULTI/SIOCDELMULTI path.

Instead, cache IFF_PROMISC and IFF_ALLMULTI on if_init under a lock we
can take in this path.

XXX Is IFF_ALLMULTI relevant any more?  Hasn't it been moved to
ethercom flags?

XXX Should not take sc_lock around if_init/stop -- IFNET_LOCK is
enough.  Should narrow scope of sc_lock to be just tick/mii/multi
stuff.

eqos(4): Fix multicast filter updates.

1. Don't touch the obsolete IFF_ALLMULTI.
2. Set ETHER_F_ALLMULTI if we're accepting all multicast addresses.
3. If any multicast entry range is not a single address, accept all
   multicast addresses.


To generate a diff of this commit:
cvs rdiff -u -r1.16.4.1 -r1.16.4.2 src/sys/dev/ic/dwc_eqos.c
cvs rdiff -u -r1.4.4.1 -r1.4.4.2 src/sys/dev/ic/dwc_eqos_var.h

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.




Home | Main Index | Thread Index | Old Index