In current linux.git (1954c4f01220), cfg80211_bss_age() is defined and declared unconditionally. However, its only in-tree caller is within wiphy_resume() in net/wireless/sysfs.c, which is already guarded by #ifdef CONFIG_PM_SLEEP. Match the helper scope to its caller by wrapping the definition in CONFIG_PM_SLEEP and providing a no-op stub in the header. This fixes the config-scope mismatch and avoids unnecessary code inclusion when system sleep support is disabled. Signed-off-by: Pengpeng Hou --- diff --git a/net/wireless/core.h b/net/wireless/core.h --- a/net/wireless/core.h +++ b/net/wireless/core.h @@ void cfg80211_bss_expire(struct cfg80211_registered_device *rdev); +#ifdef CONFIG_PM_SLEEP void cfg80211_bss_age(struct cfg80211_registered_device *rdev, unsigned long age_secs); +#else +static inline void cfg80211_bss_age(struct cfg80211_registered_device *rdev, + unsigned long age_secs) { } +#endif void cfg80211_update_assoc_bss_entry(struct wireless_dev *wdev, unsigned int link, diff --git a/net/wireless/scan.c b/net/wireless/scan.c --- a/net/wireless/scan.c +++ b/net/wireless/scan.c @@ -void cfg80211_bss_age(struct cfg80211_registered_device *rdev, +#ifdef CONFIG_PM_SLEEP +void cfg80211_bss_age(struct cfg80211_registered_device *rdev, unsigned long age_secs) { struct cfg80211_internal_bss *bss; @@ list_for_each_entry(bss, &rdev->bss_list, list) bss->ts -= age_jiffies; spin_unlock_bh(&rdev->bss_lock); } +#endif void cfg80211_bss_expire(struct cfg80211_registered_device *rdev) {