qca-wifi: Access wlanstats context using CDP API
Peer wlanstats context was accessed directly without any protection, if peer was deleted there was no way to know if PPDU cookie holds correct wlanstats ctx Hence to protect the peer wlanstats ctx access it using CDP API using stats context protection CRs-Fixed: 2740231 Change-Id: I9b07970c691099f3c9b0175d550508b50db9ac8a
This commit is contained in:

committed by
Gerrit - the friendly Code Review server

parent
c16f1049e2
commit
24f86413a4
@@ -41,6 +41,11 @@
|
||||
#define RATE_STATS_LOCK_ACQUIRE(lock) qdf_spin_lock_bh(lock)
|
||||
#define RATE_STATS_LOCK_RELEASE(lock) qdf_spin_unlock_bh(lock)
|
||||
|
||||
#define STATS_CTX_LOCK_CREATE(lock) qdf_spinlock_create(lock)
|
||||
#define STATS_CTX_LOCK_DESTROY(lock) qdf_spinlock_destroy(lock)
|
||||
#define STATS_CTX_LOCK_ACQUIRE(lock) qdf_spin_lock_bh(lock)
|
||||
#define STATS_CTX_LOCK_RELEASE(lock) qdf_spin_unlock_bh(lock)
|
||||
|
||||
struct cdp_pdev;
|
||||
|
||||
/**
|
||||
@@ -168,6 +173,8 @@ enum rdk_stats_version {
|
||||
* @rxs_cache_miss: rate index recevied is not in cache database
|
||||
* @stats_ver: peer statistics version
|
||||
* @is_lithium: is lithium or legacy
|
||||
* @tx_ctx_lock: tx context soc level lock
|
||||
* @rx_ctx_lock: rx context soc level lock
|
||||
*/
|
||||
struct wlan_soc_rate_stats_ctx {
|
||||
struct cdp_soc_t *soc;
|
||||
@@ -181,6 +188,8 @@ struct wlan_soc_rate_stats_ctx {
|
||||
uint32_t rxs_cache_miss;
|
||||
enum rdk_stats_version stats_ver;
|
||||
bool is_lithium;
|
||||
qdf_spinlock_t tx_ctx_lock;
|
||||
qdf_spinlock_t rx_ctx_lock;
|
||||
};
|
||||
|
||||
/**
|
||||
|
Reference in New Issue
Block a user