From: Yury Norov Date: Sun, 23 Jan 2022 18:38:32 +0000 (-0800) Subject: net: dsa: don't use bitmap_weight() in b53_arl_read() X-Git-Tag: dma-mapping-5.19-2022-06-26~105^2~30 X-Git-Url: https://www.infradead.org/git/?a=commitdiff_plain;h=e18e5cbc70f17029c3d028ee701cecc45b7618b4;p=users%2Fhch%2Fdma-mapping.git net: dsa: don't use bitmap_weight() in b53_arl_read() Don't call bitmap_weight() if the following code can get by without it. Signed-off-by: Yury Norov Acked-by: Florian Fainelli --- diff --git a/drivers/net/dsa/b53/b53_common.c b/drivers/net/dsa/b53/b53_common.c index 77501f9c5915..77643493120c 100644 --- a/drivers/net/dsa/b53/b53_common.c +++ b/drivers/net/dsa/b53/b53_common.c @@ -1624,12 +1624,8 @@ static int b53_arl_read(struct b53_device *dev, u64 mac, return 0; } - if (bitmap_weight(free_bins, dev->num_arl_bins) == 0) - return -ENOSPC; - *idx = find_first_bit(free_bins, dev->num_arl_bins); - - return -ENOENT; + return *idx >= dev->num_arl_bins ? -ENOSPC : -ENOENT; } static int b53_arl_op(struct b53_device *dev, int op, int port,