Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit ec933d57 authored by Rongjing Liao's avatar Rongjing Liao Committed by Madan Koyyalamudi
Browse files

qcacld-3.0: add pointer 'vdev' null check in TXRX module

Add pointer 'vdev' null check for KW issue. In ol_tx_non_std()
when 'vdev' is null, return the pointer of msdu buffer.

Change-Id: Ic82db8c649de09dda42ae588bda7e58c036ae161
CRs-Fixed: 2645407
parent 6451b6d6
Loading
Loading
Loading
Loading
+9 −3
Original line number Diff line number Diff line
/*
 * Copyright (c) 2011-2019 The Linux Foundation. All rights reserved.
 * Copyright (c) 2011-2020 The Linux Foundation. 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
@@ -185,6 +185,9 @@ ol_tx_non_std(struct cdp_soc_t *soc_hdl, uint8_t vdev_id,

	vdev = (struct ol_txrx_vdev_t *)ol_txrx_get_vdev_from_vdev_id(vdev_id);

	if (!vdev)
		return msdu_list;
	else
		return ol_tx_non_std_hl(vdev, tx_spec, msdu_list);
}
#else
@@ -199,6 +202,9 @@ ol_tx_non_std(struct cdp_soc_t *soc_hdl, uint8_t vdev_id,

	vdev = (struct ol_txrx_vdev_t *)ol_txrx_get_vdev_from_vdev_id(vdev_id);

	if (!vdev)
		return msdu_list;
	else
		return ol_tx_non_std_ll(vdev, tx_spec, msdu_list);
}
#endif
+5 −0
Original line number Diff line number Diff line
@@ -1911,6 +1911,11 @@ ol_txrx_hl_tdls_flag_reset(struct cdp_soc_t *soc_hdl, uint8_t vdev_id,
{
	struct ol_txrx_vdev_t *vdev =
		(struct ol_txrx_vdev_t *)ol_txrx_get_vdev_from_vdev_id(vdev_id);
	if (!vdev) {
		QDF_TRACE(QDF_MODULE_ID_TXRX, QDF_TRACE_LEVEL_ERROR,
			  "%s: Invalid vdev_id %d", __func__, vdev_id);
		return;
	}

	vdev->hlTdlsFlag = flag;
}