On 9/29/2016 11:20 AM, Chas Williams wrote: > Don't use bnx2x_fill_accept_flags() to fill the RX mask in the VF > since the PF only handles a subset of the existing flags. now, > bnx2x_fill_accept_flags() can be static. > > Fixes: 540a211084a7 ("bnx2x: driver core") > > Signed-off-by: Chas Williams <3chas3 at gmail.com>
<...> > diff --git a/drivers/net/bnx2x/bnx2x_vfpf.c b/drivers/net/bnx2x/bnx2x_vfpf.c > index 1c895f8..ecd4a7d 100644 > --- a/drivers/net/bnx2x/bnx2x_vfpf.c > +++ b/drivers/net/bnx2x/bnx2x_vfpf.c > @@ -576,7 +576,6 @@ bnx2x_vf_set_rx_mode(struct bnx2x_softc *sc) > { > struct vf_set_q_filters_tlv *query; > struct vf_common_reply_tlv *reply = &sc->vf2pf_mbox->resp.common_reply; > - unsigned long tx_mask; > > query = &sc->vf2pf_mbox->query[0].set_q_filters; > bnx2x_init_first_tlv(sc, &query->first_tlv, BNX2X_VF_TLV_SET_Q_FILTERS, > @@ -585,7 +584,27 @@ bnx2x_vf_set_rx_mode(struct bnx2x_softc *sc) > query->vf_qid = 0; > query->flags = BNX2X_VF_RX_MASK_CHANGED; > > - if (bnx2x_fill_accept_flags(sc, sc->rx_mode, &query->rx_mask, > &tx_mask)) { > + switch (sc->rx_mode) { > + case BNX2X_RX_MODE_NONE: /* no Rx */ > + query->rx_mask = VFPF_RX_MASK_ACCEPT_NONE; > + break; > + case BNX2X_RX_MODE_NORMAL: > + query->rx_mask = VFPF_RX_MASK_ACCEPT_MATCHED_MULTICAST; > + query->rx_mask |= VFPF_RX_MASK_ACCEPT_MATCHED_UNICAST; > + query->rx_mask |= VFPF_RX_MASK_ACCEPT_BROADCAST; > + break; > + case BNX2X_RX_MODE_ALLMULTI: > + query->rx_mask = VFPF_RX_MASK_ACCEPT_ALL_MULTICAST; > + query->rx_mask |= VFPF_RX_MASK_ACCEPT_MATCHED_UNICAST; > + query->rx_mask |= VFPF_RX_MASK_ACCEPT_BROADCAST; > + break; > + case BNX2X_RX_MODE_PROMISC: > + query->rx_mask = VFPF_RX_MASK_ACCEPT_ALL_UNICAST; > + query->rx_mask |= VFPF_RX_MASK_ACCEPT_ALL_MULTICAST; > + query->rx_mask |= VFPF_RX_MASK_ACCEPT_BROADCAST; > + break; > + default: > + PMD_DRV_LOG(ERR, "BAD rx mode (%d)", mode); "mode" is not defined in this function, enabling debug log is giving following compilation error: .../drivers/net/bnx2x/bnx2x_vfpf.c:657:40: error: ?mode? undeclared (first use in this function) PMD_DRV_LOG(ERR, "BAD rx mode (%d)", mode); ^