P2P: Clear pending_listen_freq when stopping listen
If listen work never started, pending_listen_freq might be left uncleared, preventing the subsequent listen to start. This could happen in p2p_timeout_wait_peer_idle() after the commit13256b8cf
("P2P: Stop old listen radio work before go to WAIT_PEER_IDLE state") added a stop_listen() call there. Fixes:13256b8cf3
("P2P: Stop old listen radio work before go to WAIT_PEER_IDLE state") Signed-off-by: Andrei Otcheretianski <andrei.otcheretianski@intel.com>
This commit is contained in:
parent
82a348eda4
commit
01f2e54ce7
1 changed files with 4 additions and 0 deletions
|
@ -3994,6 +3994,10 @@ static void p2p_timeout_wait_peer_idle(struct p2p_data *p2p)
|
||||||
|
|
||||||
p2p_dbg(p2p, "Go to Listen state while waiting for the peer to become ready for GO Negotiation");
|
p2p_dbg(p2p, "Go to Listen state while waiting for the peer to become ready for GO Negotiation");
|
||||||
p2p->cfg->stop_listen(p2p->cfg->cb_ctx);
|
p2p->cfg->stop_listen(p2p->cfg->cb_ctx);
|
||||||
|
if (p2p->pending_listen_freq) {
|
||||||
|
p2p_dbg(p2p, "Clear pending_listen_freq for %s", __func__);
|
||||||
|
p2p->pending_listen_freq = 0;
|
||||||
|
}
|
||||||
p2p_set_state(p2p, P2P_WAIT_PEER_CONNECT);
|
p2p_set_state(p2p, P2P_WAIT_PEER_CONNECT);
|
||||||
p2p_listen_in_find(p2p, 0);
|
p2p_listen_in_find(p2p, 0);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue