Reference: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=839629 --- a/src/wl/sys/wl_cfg80211_hybrid.c +++ b/src/wl/sys/wl_cfg80211_hybrid.c @@ -2386,8 +2386,15 @@ wl_bss_connect_done(struct wl_cfg80211_p s32 err = 0; if (wl->scan_request) { +#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 8, 0) + struct cfg80211_scan_info info = { + .aborted = true + }; WL_DBG(("%s: Aborting scan\n", __FUNCTION__)); - cfg80211_scan_done(wl->scan_request, true); + cfg80211_scan_done(wl->scan_request, &info); +#else + cfg80211_scan_done(wl->scan_request, true); +#endif wl->scan_request = NULL; } @@ -2488,7 +2495,14 @@ wl_notify_scan_status(struct wl_cfg80211 scan_done_out: if (wl->scan_request) { +#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 8, 0) + struct cfg80211_scan_info info = { + .aborted = false + }; + cfg80211_scan_done(wl->scan_request, &info); +#else cfg80211_scan_done(wl->scan_request, false); +#endif wl->scan_request = NULL; } rtnl_unlock(); @@ -2913,7 +2927,14 @@ s32 wl_cfg80211_down(struct net_device * s32 err = 0; if (wl->scan_request) { - cfg80211_scan_done(wl->scan_request, true); +#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 8, 0) + struct cfg80211_scan_info info = { + .aborted = true + }; + cfg80211_scan_done(wl->scan_request, &info); +#else + cfg80211_scan_done(wl->scan_request, true); +#endif wl->scan_request = NULL; }