qcacld-3.0: Don't check for association status to flush mc list
Kernel configures mc address list once association/NDP connection happens. Host driver flushes the existing list whenever a new list is received from kernel. Also, it's expected to cleanup the final list as part of disconnection/NDI cleanup. Currently, host expects the vdev/NDI state to be ASSOCIATED in-order to flush the final configured list. But the STA vdev/NDI state is already moved to DISCONNECTED by the time host tries to flush the list from firmware. So, host doesn't send flush command to firmware and it just flushes internal list from driver adapter. This results in leaving the final configured entries uncleaned in firmware and the mc list exhausts in few such iterations as the firmware supports limited size(32). Don't check for vdev/NDI state and always issue flush command to firmware as part of disconnect to avoid this. Change-Id: I8e070f40976a147959783b3c44f1e9aa24563d4b CRs-Fixed: 3776542
Cette révision appartient à :

révisé par
Ravindra Konda

Parent
181522c877
révision
6aa9cdf391
@@ -1,6 +1,6 @@
|
||||
/*
|
||||
* Copyright (c) 2017-2020 The Linux Foundation. All rights reserved.
|
||||
* Copyright (c) 2023 Qualcomm Innovation Center, Inc. All rights reserved.
|
||||
* Copyright (c) 2023-2024 Qualcomm Innovation Center, Inc. All rights reserved.
|
||||
*
|
||||
* Permission to use, copy, modify, and/or distribute this software for
|
||||
* any purpose with or without fee is hereby granted, provided that the
|
||||
@@ -558,11 +558,6 @@ QDF_STATUS pmo_core_disable_mc_addr_filtering_in_fwr(
|
||||
if (status != QDF_STATUS_SUCCESS)
|
||||
goto put_ref;
|
||||
|
||||
if (wlan_vdev_is_up(vdev) != QDF_STATUS_SUCCESS) {
|
||||
status = QDF_STATUS_E_INVAL;
|
||||
goto put_ref;
|
||||
}
|
||||
|
||||
pmo_debug("disable mclist trigger: %d", trigger);
|
||||
|
||||
status = pmo_core_handle_disable_mc_list_trigger(vdev, trigger);
|
||||
|
Référencer dans un nouveau ticket
Bloquer un utilisateur