Currently, list empty checks for scan_req_q is done outside the lock.
This is causing synchronization issue during scan and SSR/vdev delete
in parallel.
To avoid this, check for scan_req_q empty inside the lock.
This change also updates the return type of
wlan_schedule_scan_start_request to QDF_STATUS, which is expected by
caller API.
Change-Id: I8b6febdd98af7856fb047b1c9d852e4944a137b5
CRs-Fixed: 2763173