wifi: mac80211: Use the bitmap API to allocate bitmaps
authorChristophe JAILLET <christophe.jaillet@wanadoo.fr>
Mon, 4 Jul 2022 19:16:09 +0000 (21:16 +0200)
committerJohannes Berg <johannes.berg@intel.com>
Mon, 11 Jul 2022 08:21:25 +0000 (10:21 +0200)
Use bitmap_zalloc()/bitmap_free() instead of hand-writing them.

It is less verbose and it improves the semantic.

Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr>
Link: https://lore.kernel.org/r/dfb438a6a199ee4c95081fa01bd758fd30e50931.1656962156.git.christophe.jaillet@wanadoo.fr
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
net/mac80211/mesh_plink.c

index 55bed9ce98fe4bc0f51ec2048f9e2de81845e149..d67011745048fdd812237da46f5957e56509bf85 100644 (file)
@@ -477,8 +477,7 @@ static int mesh_allocate_aid(struct ieee80211_sub_if_data *sdata)
        unsigned long *aid_map;
        int aid;
 
-       aid_map = kcalloc(BITS_TO_LONGS(IEEE80211_MAX_AID + 1),
-                         sizeof(*aid_map), GFP_KERNEL);
+       aid_map = bitmap_zalloc(IEEE80211_MAX_AID + 1, GFP_KERNEL);
        if (!aid_map)
                return -ENOMEM;
 
@@ -491,7 +490,7 @@ static int mesh_allocate_aid(struct ieee80211_sub_if_data *sdata)
        rcu_read_unlock();
 
        aid = find_first_zero_bit(aid_map, IEEE80211_MAX_AID + 1);
-       kfree(aid_map);
+       bitmap_free(aid_map);
 
        if (aid > IEEE80211_MAX_AID)
                return -ENOBUFS;