On Fri, Oct 18, 2019 at 03:05:14PM +0100, Mans Rullgard wrote: > Printing the info message every time more than the max number of mac > addresses are requested generates unnecessary log spam. Showing it only > when the hw is not already in promiscous mode is equally informative > without being annoying. > > Signed-off-by: Mans Rullgard <[email protected]> > --- > drivers/net/ethernet/stmicro/stmmac/dwmac-sun8i.c | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) > > diff --git a/drivers/net/ethernet/stmicro/stmmac/dwmac-sun8i.c > b/drivers/net/ethernet/stmicro/stmmac/dwmac-sun8i.c > index 79c91526f3ec..5be2de1f1179 100644 > --- a/drivers/net/ethernet/stmicro/stmmac/dwmac-sun8i.c > +++ b/drivers/net/ethernet/stmicro/stmmac/dwmac-sun8i.c > @@ -646,7 +646,8 @@ static void sun8i_dwmac_set_filter(struct mac_device_info > *hw, > } > } > } else { > - netdev_info(dev, "Too many address, switching to > promiscuous\n"); > + if (readl(ioaddr + EMAC_RX_FRM_FLT) != EMAC_FRM_FLT_RXALL) > + netdev_info(dev, "Too many address, switching to > promiscuous\n"); > v = EMAC_FRM_FLT_RXALL; > } >
You need to mask the result, if EMAC_FRM_FLT_MULTICAST | EMAC_FRM_FLT_RXALL is set, you will still print the message. Or shorter than masking, !(readl(ioaddr + EMAC_RX_FRM_FLT) & EMAC_FRM_FLT_RXALL) I just realize that perhaps we need to set also IFF_PROMISC in dev->flags. Thanks Regards

