From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-wm1-f51.google.com (mail-wm1-f51.google.com [209.85.128.51]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 4D63B231830 for ; Mon, 22 Jun 2026 23:04:54 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.51 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1782169495; cv=none; b=Wx6l18GXzUS6xJFkwNAbgA1cWfdP4zXkxvc1z61FpPPjtv7QvbWXmHJPVa+xcQebwos+6jbO4UHxa6uCdZyvGvNjrSGigp0tLh/o0EzsIKep7jkvVpBd90ZndDYwnL8fCbCXh/zFWwfqCnZC8miN4anuzCPUcXLNuJjHBbC5CWk= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1782169495; c=relaxed/simple; bh=e6XqK9MU2LKJCD85rEqfteDcgC0Xnpj4etmsMR6CffU=; h=From:To:Cc:Subject:Date:Message-ID:MIME-Version; b=ODpFt5ksuXzgKmfXgprNfk0fjuoPD70G9AMvtMyTDAF9dzjloF5iynEkhK8bmdmsD0zgTLFknhNeTZ/eJ5q4hFW2Z4SFM6SxqgEOVSD4hj5DCbIh6gGtzehiMvT+3i1u0qT/+vaqJVFiDd3swbQhu1S8AOH11ef4kYuMYXeGhpI= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=QnTLu8U3; arc=none smtp.client-ip=209.85.128.51 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="QnTLu8U3" Received: by mail-wm1-f51.google.com with SMTP id 5b1f17b1804b1-49258ac7294so6740265e9.0 for ; Mon, 22 Jun 2026 16:04:54 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1782169493; x=1782774293; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to; bh=0C8B5CywjgF9ZPTIkHDu8dM/V21pGTSKDvMIJT0sdEA=; b=QnTLu8U3DCeACdCrUWL89CBs+JVWkYtDzQUpX0UZ529h4W90ePpywbQ+uyRADJ1fqt q9Xtqw2bmtbutP1vrxYpUD4xAiJHGnBO6RuxoHTAv47e1TBiJvJgwFsY8yzvi1aP6Jl5 2WxRwlOiLpSTSmuKxqBherWxlJz/2vn67odHyZkvWRPp+QE8e8ug1dAsSF0xmTizPo7m mlDzUVTtk0mP6nkPQS7HB/g/zzIf0tVv1ZvTVJoKcLf3raBKrx969O92FPqZlWXgnFbP lQm0Ycz19XbOVyKXCadq2v+QajIUuXUIiQZ1ajq2wUWhXpu/SBy5F9icnXe+mU4jH+Pt NVgw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1782169493; x=1782774293; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-gg:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=0C8B5CywjgF9ZPTIkHDu8dM/V21pGTSKDvMIJT0sdEA=; b=jZKKptLdy9/n63bvd9h5ZMHLywj8eZnSMQNnsgbAMT5VTt/xj7FGOehF1eo1FYyqXE 2wA7JHke/bOCGiIl3zR3J5i8xVHAkb6iYRm6dzS3B9VPvkYZXSGuuRTfX08FamTfAN2V qwK369uw0OcyzBueYJ1v2T4udhdPn2abYC2TTYHBcInAErAZ6nA9nig9TdtTr2Vto/P0 zRG3c1iKxEBx91+1rKniiTkMoUjB4e/H2n5bDWf79jTtFk/roiPY6Ef7C8M9sHEA7iv2 XWP3RkbxLbaEZIkGk81eSRFTx5ZV0G6TpPmWJphgfUQbJVvXrkyopZOSMAFRjQxZthhw 2Eog== X-Forwarded-Encrypted: i=1; AFNElJ8Nk3KQN59cW+hiS3fMmr+/ivXlHlK+J3puhcNfsERqdoMVsLSF8ZzUqlhlRv+F760Jti8B1WGv9ji7YaI=@vger.kernel.org X-Gm-Message-State: AOJu0Yz6Qye2rFJz08hXWCn3o2PjUWJqWbABHvutgPNybUra3oxDMmq5 JGBiTy0BtJW6EsGil8DbZMFkoDmwaPk4QqN7qu81qusANK7Tj8O9UylL X-Gm-Gg: AfdE7cn75zFSLqzfIyIdmAm4TJ3eZ7pZe/7/0SuElYBMZ23Yio6R68kKaWsj1GXwupd OsaOKHnVoaVlqJIm+Kzyxh5uzwAeYIMhPNrpxYZs7TTFDHqGLOgUiH6UPILSgpDSSGaXDrNmtaW 1jsk0NDzAPGjcjXIDgePtbL4d+lSqiyN7YsMpg0ZHDxwywmLM+vaP3BJ3JxwiGYkYZOnKORSlKx 8AStUdNi4d9QM8NEyjlWfQB9hoTSHNLStntG1XIylp5Nez9YrKYY5ljoU5UbAqJhOfM83oGpQ04 YdwjFNYl3CNvINTOinCpQUaplCh5zzxOcbistOMXDgsmL6U5OzVjEvDj+zGNtohmYjRG+7l/wjU XTNYCqjB9qQJnHBXj020BnSw9R2ibamaFlhFmp0dS3t53Sk5IBlOBuDeJJLmKPNlXXxfCm6u9Rj qOZJILzZb9PrqQc/Xh9UaNZ4P4cOU= X-Received: by 2002:a05:600c:8b2e:b0:490:e5c1:b8bd with SMTP id 5b1f17b1804b1-49240dab540mr299031845e9.0.1782169492671; Mon, 22 Jun 2026 16:04:52 -0700 (PDT) Received: from localhost.localdomain ([86.2.40.231]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-4924923914fsm256832275e9.6.2026.06.22.16.04.51 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 22 Jun 2026 16:04:52 -0700 (PDT) From: Ganesh Harshan To: gregkh@linuxfoundation.org Cc: linux-staging@lists.linux.dev, linux-kernel@vger.kernel.org, khushalchitturi@gmail.com, dennylin0707@gmail.com, Ganesh Harshan Subject: [PATCH] staging: rtl8723bs: fix timer rescheduling in rtw_cmd callbacks Date: Mon, 22 Jun 2026 19:04:48 -0400 Message-ID: <20260622230448.4138-1-ganeshredcobra@gmail.com> X-Mailer: git-send-email 2.47.3 Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Ensure scan and association timers are deleted before being rescheduled when command execution fails. Without deleting the existing timer, multiple timer instances may be active simultaneously, potentially leading to duplicate timeout handling or unexpected behavior. Use timer_delete_sync() to safely stop active timers before rescheduling. Signed-off-by: Ganesh Harshan --- drivers/staging/rtl8723bs/core/rtw_cmd.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/drivers/staging/rtl8723bs/core/rtw_cmd.c b/drivers/staging/rtl8723bs/core/rtw_cmd.c index b932670f5d63..967c3258e0b8 100644 --- a/drivers/staging/rtl8723bs/core/rtw_cmd.c +++ b/drivers/staging/rtl8723bs/core/rtw_cmd.c @@ -1801,7 +1801,9 @@ void rtw_survey_cmd_callback(struct adapter *padapter, struct cmd_obj *pcmd) struct mlme_priv *pmlmepriv = &padapter->mlmepriv; if (pcmd->res != H2C_SUCCESS) { - /* TODO: cancel timer and do timeout handler directly... */ + /* Ensure timer is safely rescheduled */ + if (timer_pending(&pmlmepriv->scan_to_timer)) + timer_delete_sync(&pmlmepriv->scan_to_timer); _set_timer(&pmlmepriv->scan_to_timer, 1); } @@ -1829,7 +1831,9 @@ void rtw_joinbss_cmd_callback(struct adapter *padapter, struct cmd_obj *pcmd) struct mlme_priv *pmlmepriv = &padapter->mlmepriv; if (pcmd->res != H2C_SUCCESS) { - /* TODO: cancel timer and do timeout handler directly... */ + /* Ensure timer is safely rescheduled */ + if (timer_pending(&pmlmepriv->assoc_timer)) + timer_delete_sync(&pmlmepriv->assoc_timer); _set_timer(&pmlmepriv->assoc_timer, 1); } -- 2.47.3