qcacmn: Avoid using freed pdev in dp_rx_bar_stats_cb

dp_reo_cmdlist_destroy frees any pending reo_cmds.
Each reo_cmd is associated with a handler which takes
reo_cmd->data as an input. This reo_cmd->data is a pdev
for dp_rx_bar_stats_cb. So validate pdev before
accessing it further.

Change-Id: I1c2d46d3e3f5ede4491500978153f501ebdeee87
CRs-Fixed: 2478910
这个提交包含在:
Venkata Sharath Chandra Manchala
2019-06-26 11:50:09 -07:00
提交者 nshrivas
父节点 d01178025b
当前提交 2b8a2a0648
修改 2 个文件,包含 26 行新增0 行删除

查看文件

@@ -861,6 +861,15 @@ uint32_t dp_pdev_tid_stats_display(void *pdev_handle,
enum _ol_ath_param_t param, uint32_t value, void *buff);
#endif
/**
* dp_check_pdev_exists() - Validate pdev before use
* @soc - dp soc handle
* @data - pdev handle
*
* Return: 0 - success/invalid - failure
*/
bool dp_check_pdev_exists(struct dp_soc *soc, struct dp_pdev *data);
/**
* dp_update_delay_stats() - Update delay statistics in structure
* and fill min, max and avg delay