mirror of https://gitee.com/openkylin/linux.git
cfg80211: code rearrangement to avoid forward declarations
bss_release() and __cfg80211_unlink_bss() function definitions are moved at the begining of the file. They are used in next patch in this series. Signed-off-by: Amitkumar Karwar <akarwar@marvell.com> Signed-off-by: Bing Zhao <bzhao@marvell.com> Signed-off-by: Johannes Berg <johannes.berg@intel.com>
This commit is contained in:
parent
ed47377154
commit
e8e27c668b
|
@ -20,6 +20,33 @@
|
||||||
|
|
||||||
#define IEEE80211_SCAN_RESULT_EXPIRE (30 * HZ)
|
#define IEEE80211_SCAN_RESULT_EXPIRE (30 * HZ)
|
||||||
|
|
||||||
|
static void bss_release(struct kref *ref)
|
||||||
|
{
|
||||||
|
struct cfg80211_internal_bss *bss;
|
||||||
|
|
||||||
|
bss = container_of(ref, struct cfg80211_internal_bss, ref);
|
||||||
|
if (bss->pub.free_priv)
|
||||||
|
bss->pub.free_priv(&bss->pub);
|
||||||
|
|
||||||
|
if (bss->beacon_ies_allocated)
|
||||||
|
kfree(bss->pub.beacon_ies);
|
||||||
|
if (bss->proberesp_ies_allocated)
|
||||||
|
kfree(bss->pub.proberesp_ies);
|
||||||
|
|
||||||
|
BUG_ON(atomic_read(&bss->hold));
|
||||||
|
|
||||||
|
kfree(bss);
|
||||||
|
}
|
||||||
|
|
||||||
|
/* must hold dev->bss_lock! */
|
||||||
|
static void __cfg80211_unlink_bss(struct cfg80211_registered_device *dev,
|
||||||
|
struct cfg80211_internal_bss *bss)
|
||||||
|
{
|
||||||
|
list_del_init(&bss->list);
|
||||||
|
rb_erase(&bss->rbn, &dev->bss_tree);
|
||||||
|
kref_put(&bss->ref, bss_release);
|
||||||
|
}
|
||||||
|
|
||||||
void ___cfg80211_scan_done(struct cfg80211_registered_device *rdev, bool leak)
|
void ___cfg80211_scan_done(struct cfg80211_registered_device *rdev, bool leak)
|
||||||
{
|
{
|
||||||
struct cfg80211_scan_request *request;
|
struct cfg80211_scan_request *request;
|
||||||
|
@ -158,24 +185,6 @@ int __cfg80211_stop_sched_scan(struct cfg80211_registered_device *rdev,
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void bss_release(struct kref *ref)
|
|
||||||
{
|
|
||||||
struct cfg80211_internal_bss *bss;
|
|
||||||
|
|
||||||
bss = container_of(ref, struct cfg80211_internal_bss, ref);
|
|
||||||
if (bss->pub.free_priv)
|
|
||||||
bss->pub.free_priv(&bss->pub);
|
|
||||||
|
|
||||||
if (bss->beacon_ies_allocated)
|
|
||||||
kfree(bss->pub.beacon_ies);
|
|
||||||
if (bss->proberesp_ies_allocated)
|
|
||||||
kfree(bss->pub.proberesp_ies);
|
|
||||||
|
|
||||||
BUG_ON(atomic_read(&bss->hold));
|
|
||||||
|
|
||||||
kfree(bss);
|
|
||||||
}
|
|
||||||
|
|
||||||
/* must hold dev->bss_lock! */
|
/* must hold dev->bss_lock! */
|
||||||
void cfg80211_bss_age(struct cfg80211_registered_device *dev,
|
void cfg80211_bss_age(struct cfg80211_registered_device *dev,
|
||||||
unsigned long age_secs)
|
unsigned long age_secs)
|
||||||
|
@ -188,15 +197,6 @@ void cfg80211_bss_age(struct cfg80211_registered_device *dev,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/* must hold dev->bss_lock! */
|
|
||||||
static void __cfg80211_unlink_bss(struct cfg80211_registered_device *dev,
|
|
||||||
struct cfg80211_internal_bss *bss)
|
|
||||||
{
|
|
||||||
list_del_init(&bss->list);
|
|
||||||
rb_erase(&bss->rbn, &dev->bss_tree);
|
|
||||||
kref_put(&bss->ref, bss_release);
|
|
||||||
}
|
|
||||||
|
|
||||||
/* must hold dev->bss_lock! */
|
/* must hold dev->bss_lock! */
|
||||||
void cfg80211_bss_expire(struct cfg80211_registered_device *dev)
|
void cfg80211_bss_expire(struct cfg80211_registered_device *dev)
|
||||||
{
|
{
|
||||||
|
|
Loading…
Reference in New Issue