Commit b629ea3d authored by Johannes Berg's avatar Johannes Berg

cfg80211: don't BUG_ON BSS struct issues

There's no need to stop the machine, just leak
the BSS entry if there's an issue with its hold
counter when freeing.
Signed-off-by: default avatarJohannes Berg <johannes.berg@intel.com>
parent 41e31b8b
...@@ -26,6 +26,10 @@ static void bss_release(struct kref *ref) ...@@ -26,6 +26,10 @@ static void bss_release(struct kref *ref)
struct cfg80211_internal_bss *bss; struct cfg80211_internal_bss *bss;
bss = container_of(ref, struct cfg80211_internal_bss, ref); bss = container_of(ref, struct cfg80211_internal_bss, ref);
if (WARN_ON(atomic_read(&bss->hold)))
return;
if (bss->pub.free_priv) if (bss->pub.free_priv)
bss->pub.free_priv(&bss->pub); bss->pub.free_priv(&bss->pub);
...@@ -34,8 +38,6 @@ static void bss_release(struct kref *ref) ...@@ -34,8 +38,6 @@ static void bss_release(struct kref *ref)
if (bss->proberesp_ies_allocated) if (bss->proberesp_ies_allocated)
kfree(bss->pub.proberesp_ies); kfree(bss->pub.proberesp_ies);
BUG_ON(atomic_read(&bss->hold));
kfree(bss); kfree(bss);
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment