Correct print format identifier to avoid compilation
errors with -no-format removed from compilation flags
Change-Id: I8806d1a2b31b30f4e0fcb492e462ac38c89c5b79
added fix for below issue
peer derived from peer_id for a radio return peer
from different radio which cause corruption in the queue
current we store xretry mpdu queue to ppdu desc user
which live for short time. added fix to use
xretry mpdu queue from peer user.
Change-Id: I320e3aae9f3df25aff5a6769acc4c037f40ced5c
During peer unmap handler peer id is set to invalid peer
but is not deleted as reference is held.
On excess retries, peer id is reference from peer which is inactive
for a ppdu descriptor leading to assert.
added fix to use peer id from tx tid.
Change-Id: I058dec46138ebc10f8d97eb0145458737149309c
Extend the current check for action frames in tx capture
to include more types of FW generated action frames.
This change adds a generic function to check where action
frames are generated that is easily extended to account
for more types in the future.
Change-Id: I23bb37c5a81b02d2c095060bac909298d1b2283f
CRs-Fixed: 2807802
The earlier WAR was not handling a corner case, where
ba_size equal to mpdu_tried_ucast -1.
This fix updates the check to handle it.
CRs-Fixed: 2813082
Change-Id: Ib69f8232e40ee31bc4a4a2b35ec9e8917195d123
It is found that mpdu_tried_ucast is less than last ba bitmap set,
this is leading inconsistency with mpdus[] array and failed_bitmap.
To address this, on failed_bitmap prep, if mpdu_tried_ucast is less
than last ba bit set, then mpdu_tried_ucast is updated with last ba
bit set.
CRs-Fixed: 2793967
Change-Id: I381b462d0418527dd11ca2c8ae3dc4c8d4bfdba8
Add check to know if tid is still in initialized state while
delivering a ppdu with flush bit set.
Change-Id: I6f0fbbdb616ba4b6c98787d389b7bf16d6c5f165
The current debug print is not sufficient to look at
peer, tid. So enhanced current print
CRs-Fixed: 2794519
Change-Id: If531f1892cfc53c308b1913891a54f4a9350d02c
tx capture does not capture mpdu, which missed due to
block ack failure. with subsequent retries it recieve block ack for
all the previous transmitted mpdu in a ppdu was handled.
Change-Id: I23d1bfd7ba05edaec934379fbc036b164a45ceb6
Use timer to schedule work queue for tx capture stats
process to fix the deauth missing issue in tx capture
when AP is down.
Change-Id: Ie1d1e3fa9f576cd6034fe6035ef933b1e78df99b
tid queue init can be called from peer MAP event handler and peer
setup functions. Since they can run at same time because of the
sequencing, make init_done an atomic variable and set it before
allocating the retry ppdu. Otherwise, it can result in double
allocation and memory leak.
Change-Id: I354bf2763b8ddedcf83f04eccccaafc329eac66d
Use dp_vdev_get_ref_by_id() to get vdev object from vdev id
array also call dp_vdev_unref_delete() API to release
reference held by dp_vdev_get_ref_by_id
Change-Id: Icd8fac503d46dc0a010c6911116d9243effee777
Remove peer pointer in AST entry and store peer_id instead
to avoid access of peer memory without taking reference
Change-Id: I1e9c2a6880b3582866b821bf56a8400e056665f2
Currently, per-user information in Tx PPDU completion is allocated for
37 users though FW may send information for fewer number of users. In
new scheme, FW provides number of users in USERS_INFO TLV and host can
allocate the per-user struct based on this number. This can save memory
while processing each completion message.
Make related changes in tx capture files to use pointer instead of fixed
size member.
CRs-Fixed: 2730933
Change-Id: I8709665a481d64dc4ab086ce9b27e8837c38b53f
Debugfs is added to store the last 30 ppdu desc and display
as readable format to user. Feature of storing ppdu desc is
enabled through debugfs and it is not enabled by default.
Change-Id: I85ff52760462abd9a6e33d082db45d8179e67c0d
Currently, same user can be processed multiple times, which leads to
release ref count wrongly, with this, some of the users in PPDU
desc are never processed and can possibly cause memory leak.
Added a flag in PPDU user to indicate that the user is already
processed.
CRs-Fixed: 2718150
Change-Id: Ia00e0ad12999578157e9f8a6df0ad4763f828c88
For some peers, tx capture tid init is not invoked,
It is resulting in ppdu_desc leak.
Invoking tid init on tid peer update, if tid is not
initialized.
Change-Id: Ia49c7e6d093a42e57e8d9239a60ad0b8dabfcc5b
CRs-Fixed: 2718150