octeontx2-pf: replace bitmap_weight with bitmap_empty where appropriate
In some places, octeontx2 code calls bitmap_weight() to check if any bit of a given bitmap is set. It's better to use bitmap_empty() in that case because bitmap_empty() stops traversing the bitmap as soon as it finds first set bit, while bitmap_weight() counts all bits unconditionally. Signed-off-by: Yury Norov <yury.norov@gmail.com>
This commit is contained in:
parent
fe06a0c09b
commit
2b330a6a6c
@ -355,7 +355,7 @@ int otx2_add_macfilter(struct net_device *netdev, const u8 *mac)
|
||||
{
|
||||
struct otx2_nic *pf = netdev_priv(netdev);
|
||||
|
||||
if (bitmap_weight(&pf->flow_cfg->dmacflt_bmap,
|
||||
if (!bitmap_empty(&pf->flow_cfg->dmacflt_bmap,
|
||||
pf->flow_cfg->dmacflt_max_flows))
|
||||
netdev_warn(netdev,
|
||||
"Add %pM to CGX/RPM DMAC filters list as well\n",
|
||||
@ -438,7 +438,7 @@ int otx2_get_maxflows(struct otx2_flow_config *flow_cfg)
|
||||
return 0;
|
||||
|
||||
if (flow_cfg->nr_flows == flow_cfg->max_flows ||
|
||||
bitmap_weight(&flow_cfg->dmacflt_bmap,
|
||||
!bitmap_empty(&flow_cfg->dmacflt_bmap,
|
||||
flow_cfg->dmacflt_max_flows))
|
||||
return flow_cfg->max_flows + flow_cfg->dmacflt_max_flows;
|
||||
else
|
||||
|
@ -1120,7 +1120,7 @@ static int otx2_cgx_config_loopback(struct otx2_nic *pf, bool enable)
|
||||
struct msg_req *msg;
|
||||
int err;
|
||||
|
||||
if (enable && bitmap_weight(&pf->flow_cfg->dmacflt_bmap,
|
||||
if (enable && !bitmap_empty(&pf->flow_cfg->dmacflt_bmap,
|
||||
pf->flow_cfg->dmacflt_max_flows))
|
||||
netdev_warn(pf->netdev,
|
||||
"CGX/RPM internal loopback might not work as DMAC filters are active\n");
|
||||
|
Loading…
Reference in New Issue
Block a user