[PATCH 6/6] wpa_supplicant: Clear send action work without waiting

Ilan Peer ilan.peer at intel.com
Tue Nov 3 06:25:01 PST 2015

From: Avraham Stern <avraham.stern at intel.com>

When clearing pending tx action to start a new P2P operation like
P2P_FIND or P2P_LISTEN, wpas_p2p_action_clear_tx() is used to clear
the send action work. However, in cases that the action work has wait
time, it is not cleared immediately but only after the wait time ends.
This may cause delay in starting the P2P operation.

Fix that by always clearing the send action work immediately.

Signed-off-by: Avraham Stern <avraham.stern at intel.com>
 wpa_supplicant/p2p_supplicant.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/wpa_supplicant/p2p_supplicant.c b/wpa_supplicant/p2p_supplicant.c
index 59ca368..402ceda 100644
--- a/wpa_supplicant/p2p_supplicant.c
+++ b/wpa_supplicant/p2p_supplicant.c
@@ -6346,7 +6346,8 @@ static void wpas_p2p_clear_pending_action_tx(struct wpa_supplicant *wpa_s)
 	if (!offchannel_pending_action_tx(wpa_s))
-	wpas_p2p_action_tx_clear(wpa_s);
+	if (wpa_s->p2p_send_action_work)
+		wpas_p2p_free_send_action_work(wpa_s);
 	wpa_printf(MSG_DEBUG, "P2P: Drop pending Action TX due to new "
 		   "operation request");

More information about the Hostap mailing list