When performing Rx reordering, count skb's dropped
per reorder buffer; and print dropped packets count
on the "stations" debugfs entry
Signed-off-by: Vladimir Kondratiev <qca_vkondrat@qca.qualcomm.com>
Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>
else
seq_printf(s, "%c", r->reorder_buf[i] ? '*' : '_');
}
- seq_printf(s, "] last drop 0x%03x\n", r->ssn_last_drop);
+ seq_printf(s, "] drop %llu last 0x%03x\n", r->drop, r->ssn_last_drop);
}
static int wil_sta_debugfs_show(struct seq_file *s, void *data)
/* frame with out of date sequence number */
if (seq_less(seq, r->head_seq_num)) {
r->ssn_last_drop = seq;
+ r->drop++;
dev_kfree_skb(skb);
goto out;
}
/* check if we already stored this frame */
if (r->reorder_buf[index]) {
+ r->drop++;
dev_kfree_skb(skb);
goto out;
}
* @timeout: reset timer value (in TUs).
* @dialog_token: dialog token for aggregation session
* @rcu_head: RCU head used for freeing this struct
+ * @drop: total frames dropped for this reorder buffer
*
* This structure's lifetime is managed by RCU, assignments to
* the array holding it must hold the aggregation mutex.
u16 buf_size;
u16 timeout;
u16 ssn_last_drop;
+ unsigned long long drop;
u8 dialog_token;
bool first_time; /* is it 1-st time this buffer used? */
};