The current code kfree's entry and then dereferences it by accessing
entry->bssid.  Avoid the dereference-after-free by moving the kfree
after the access to entry->bssid.
Detected by CoverityScan, CID#
1448600 ("Read from pointer after free")
Signed-off-by: Colin Ian King <colin.king@canonical.com>
Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
                        continue;
 
                list_del(&entry->list);
-               kfree(entry);
                rtlpriv->scan_list.num--;
 
                RT_TRACE(rtlpriv, COMP_SCAN, DBG_LOUD,
                         "BSSID=%pM is expire in scan list (total=%d)\n",
                         entry->bssid, rtlpriv->scan_list.num);
+               kfree(entry);
        }
 
        spin_unlock_irqrestore(&rtlpriv->locks.scan_list_lock, flags);