mirror of https://gitee.com/openkylin/linux.git
wil6210: fix array out of bounds access in pmc
Array index 'i' is used before limits check. Fix this by doing limits check first. Signed-off-by: Dedy Lansky <qca_dlansky@qca.qualcomm.com> Signed-off-by: Maya Erez <qca_merez@qca.qualcomm.com> Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>
This commit is contained in:
parent
bd50e2688a
commit
98a830a98d
|
@ -200,7 +200,7 @@ void wil_pmc_alloc(struct wil6210_priv *wil,
|
||||||
|
|
||||||
release_pmc_skbs:
|
release_pmc_skbs:
|
||||||
wil_err(wil, "exit on error: Releasing skbs...\n");
|
wil_err(wil, "exit on error: Releasing skbs...\n");
|
||||||
for (i = 0; pmc->descriptors[i].va && i < num_descriptors; i++) {
|
for (i = 0; i < num_descriptors && pmc->descriptors[i].va; i++) {
|
||||||
dma_free_coherent(dev,
|
dma_free_coherent(dev,
|
||||||
descriptor_size,
|
descriptor_size,
|
||||||
pmc->descriptors[i].va,
|
pmc->descriptors[i].va,
|
||||||
|
@ -283,7 +283,7 @@ void wil_pmc_free(struct wil6210_priv *wil, int send_pmc_cmd)
|
||||||
int i;
|
int i;
|
||||||
|
|
||||||
for (i = 0;
|
for (i = 0;
|
||||||
pmc->descriptors[i].va && i < pmc->num_descriptors; i++) {
|
i < pmc->num_descriptors && pmc->descriptors[i].va; i++) {
|
||||||
dma_free_coherent(dev,
|
dma_free_coherent(dev,
|
||||||
pmc->descriptor_size,
|
pmc->descriptor_size,
|
||||||
pmc->descriptors[i].va,
|
pmc->descriptors[i].va,
|
||||||
|
|
Loading…
Reference in New Issue