qcacmn: Fix issues reported by static analysis tool
Add changes to fix issues: 1. Array out of bound access 2. Arithmatic expression overrun Change-Id: Idf9bdea33422015e0310e57d005f7d6941f8151e CRs-Fixed: 3298301
Cette révision appartient à :

révisé par
Madan Koyyalamudi

Parent
a16d867018
révision
7cb3b7dd47
@@ -4751,6 +4751,26 @@ dp_tx_compute_hw_delay_us(struct hal_tx_completion_status *ts,
|
||||
buffer_ts = ts->buffer_timestamp << 10;
|
||||
|
||||
delay = ts->tsf - buffer_ts - delta_tsf;
|
||||
|
||||
if (qdf_unlikely(delay & 0x80000000)) {
|
||||
dp_err_rl("delay = 0x%x (-ve)\n"
|
||||
"release_src = %d\n"
|
||||
"ppdu_id = 0x%x\n"
|
||||
"peer_id = 0x%x\n"
|
||||
"tid = 0x%x\n"
|
||||
"release_reason = %d\n"
|
||||
"tsf = %u (0x%x)\n"
|
||||
"buffer_timestamp = %u (0x%x)\n"
|
||||
"delta_tsf = %u (0x%x)\n",
|
||||
delay, ts->release_src, ts->ppdu_id, ts->peer_id,
|
||||
ts->tid, ts->status, ts->tsf, ts->tsf,
|
||||
ts->buffer_timestamp, ts->buffer_timestamp,
|
||||
delta_tsf, delta_tsf);
|
||||
|
||||
delay = 0;
|
||||
goto end;
|
||||
}
|
||||
|
||||
delay &= 0x1FFFFFFF; /* mask 29 BITS */
|
||||
if (delay > 0x1000000) {
|
||||
dp_info_rl("----------------------\n"
|
||||
@@ -4768,6 +4788,8 @@ dp_tx_compute_hw_delay_us(struct hal_tx_completion_status *ts,
|
||||
return QDF_STATUS_E_FAILURE;
|
||||
}
|
||||
|
||||
|
||||
end:
|
||||
*delay_us = delay;
|
||||
|
||||
return QDF_STATUS_SUCCESS;
|
||||
|
Référencer dans un nouveau ticket
Bloquer un utilisateur