Re: [PATCH] ath10k: Add sta rx packet stats per tid

2018-03-02 Thread Kalle Valo
Vasanthakumar Thiagarajan  writes:

>> This added new ath10k-check warnings, I fixed those in the pending
>> branch:
>> 
>> drivers/net/wireless/ath/ath10k/debug.h:203: Alignment should match open 
>> parenthesis
>> drivers/net/wireless/ath/ath10k/debug.h:226: Alignment should match open 
>> parenthesis
>> drivers/net/wireless/ath/ath10k/debugfs_sta.c:24: Alignment should
>> match open parenthesis
>> drivers/net/wireless/ath/ath10k/debugfs_sta.c:40: Alignment should
>> match open parenthesis
>> drivers/net/wireless/ath/ath10k/debugfs_sta.c:60: Alignment should
>> match open parenthesis
>> 
>> Also I fixed the typo "rages" in debug.h. My changes:
>
> Thanks for fixing it. In most of the cases, fixing above warnings
> would result in lines > 80 chars.
> May be we need not be very strict about > 80 char limit?

In ath10k-check I set the limit to 90 chars, but I guess it could be
even higher than that. But on the other it shouldn't be too long, not
everyone like to have one huge window for editor :)

-- 
Kalle Valo


Re: [PATCH] ath10k: Add sta rx packet stats per tid

2018-03-02 Thread Vasanthakumar Thiagarajan
On Wednesday 28 February 2018 06:47 PM, Kalle Valo wrote:
> Vasanthakumar Thiagarajan  writes:
> 
>> Added per tid sta counters for the following
>>
>> - Total number MSDUs received from firmware
>> - Number of MSDUs received with errors like decryption, crc, mic ,etc.
>> - Number of MSDUs dropped in the driver
>> - A-MPDU/A-MSDU subframe stats
>> - Number of MSDUS passed to mac80211
>>
>> All stats other than A-MPDU stats are only for received data frames.
>> A-MPDU stats might have stats for management frames when monitor
>> interface is active where management frames are notified both in wmi
>> and HTT interfaces.
>>
>> These per tid stats can be enabled with tid bitmask through a debugfs
>> like below
>>
>>   echo  > 
>> /sys/kernel/debug/ieee80211/phyX/ath10k/sta_tid_stats_mask
>>
>>   tid 16 (tid_bitmask 0x1) is used for non-qos data/management frames
>>
>> The stats are read from
>> /sys/kernel/debug/ieee80211/phyX/netdev\:wlanX/stations//dump_tid_stats
>>
>> Sample output:
>>
>>   To enable rx stats for tid 0, 5 and 6,
>>
>>   echo 0x0061 > 
>> /sys/kernel/debug/ieee80211/phy0/ath10k/sta_tid_stats_mask
>>
>> cat 
>> /sys/kernel/debug/ieee80211/phy0/netdev\:wlan15/stations/8c\:fd\:f0\:0a\:8e\:df/dump_tid_stats
>>
>>  Driver Rx pkt stats per tid, ([tid] count)
>>  --
>> MSDUs from FW   [00] 2567[05] 3178[06] 1089
>> MSDUs unchained [00] 0   [05] 0   [06] 0
>> MSDUs locally dropped:chained   [00] 0   [05] 0   [06] 0
>> MSDUs locally dropped:filtered  [00] 0   [05] 0   [06] 0
>> MSDUs queued for mac80211   [00] 2567[05] 3178[06] 1089
>> MSDUs with error:fcs_err[00] 0   [05] 0   [06] 2
>> MSDUs with error:tkip_err   [00] 0   [05] 0   [06] 0
>> MSDUs with error:crypt_err  [00] 0   [05] 0   [06] 0
>> MSDUs with error:peer_idx_inval [00] 0   [05] 0   [06] 0
>>
>> A-MPDU num subframes upto 10[00] 2567[05] 3178[06] 1087
>> A-MPDU num subframes 11-20  [00] 0   [05] 0   [06] 0
>> A-MPDU num subframes 21-30  [00] 0   [05] 0   [06] 0
>> A-MPDU num subframes 31-40  [00] 0   [05] 0   [06] 0
>> A-MPDU num subframes 41-50  [00] 0   [05] 0   [06] 0
>> A-MPDU num subframes 51-60  [00] 0   [05] 0   [06] 0
>> A-MPDU num subframes >60[00] 0   [05] 0   [06] 0
>>
>> A-MSDU num subframes 1  [00] 2567[05] 3178[06] 1089
>> A-MSDU num subframes 2  [00] 0   [05] 0   [06] 0
>> A-MSDU num subframes 3  [00] 0   [05] 0   [06] 0
>> A-MSDU num subframes 4  [00] 0   [05] 0   [06] 0
>> A-MSDU num subframes >4 [00] 0   [05] 0   [06] 0
>>
>> Signed-off-by: Vasanthakumar Thiagarajan 
> 
> This added new ath10k-check warnings, I fixed those in the pending
> branch:
> 
> drivers/net/wireless/ath/ath10k/debug.h:203: Alignment should match open 
> parenthesis
> drivers/net/wireless/ath/ath10k/debug.h:226: Alignment should match open 
> parenthesis
> drivers/net/wireless/ath/ath10k/debugfs_sta.c:24: Alignment should match open 
> parenthesis
> drivers/net/wireless/ath/ath10k/debugfs_sta.c:40: Alignment should match open 
> parenthesis
> drivers/net/wireless/ath/ath10k/debugfs_sta.c:60: Alignment should match open 
> parenthesis
> 
> Also I fixed the typo "rages" in debug.h. My changes:

Thanks for fixing it. In most of the cases, fixing above warnings would result 
in lines > 80 chars.
May be we need not be very strict about > 80 char limit?

Vasanth

Re: [PATCH] ath10k: Add sta rx packet stats per tid

2018-02-28 Thread Kalle Valo
Vasanthakumar Thiagarajan  writes:

> Added per tid sta counters for the following
>
> - Total number MSDUs received from firmware
> - Number of MSDUs received with errors like decryption, crc, mic ,etc.
> - Number of MSDUs dropped in the driver
> - A-MPDU/A-MSDU subframe stats
> - Number of MSDUS passed to mac80211
>
> All stats other than A-MPDU stats are only for received data frames.
> A-MPDU stats might have stats for management frames when monitor
> interface is active where management frames are notified both in wmi
> and HTT interfaces.
>
> These per tid stats can be enabled with tid bitmask through a debugfs
> like below
>
>  echo  > 
> /sys/kernel/debug/ieee80211/phyX/ath10k/sta_tid_stats_mask
>
>  tid 16 (tid_bitmask 0x1) is used for non-qos data/management frames
>
> The stats are read from
> /sys/kernel/debug/ieee80211/phyX/netdev\:wlanX/stations//dump_tid_stats
>
> Sample output:
>
>  To enable rx stats for tid 0, 5 and 6,
>
>  echo 0x0061 > /sys/kernel/debug/ieee80211/phy0/ath10k/sta_tid_stats_mask
>
> cat 
> /sys/kernel/debug/ieee80211/phy0/netdev\:wlan15/stations/8c\:fd\:f0\:0a\:8e\:df/dump_tid_stats
>
>   Driver Rx pkt stats per tid, ([tid] count)
> --
> MSDUs from FW   [00] 2567[05] 3178[06] 1089
> MSDUs unchained [00] 0   [05] 0   [06] 0
> MSDUs locally dropped:chained   [00] 0   [05] 0   [06] 0
> MSDUs locally dropped:filtered  [00] 0   [05] 0   [06] 0
> MSDUs queued for mac80211   [00] 2567[05] 3178[06] 1089
> MSDUs with error:fcs_err[00] 0   [05] 0   [06] 2
> MSDUs with error:tkip_err   [00] 0   [05] 0   [06] 0
> MSDUs with error:crypt_err  [00] 0   [05] 0   [06] 0
> MSDUs with error:peer_idx_inval [00] 0   [05] 0   [06] 0
>
> A-MPDU num subframes upto 10[00] 2567[05] 3178[06] 1087
> A-MPDU num subframes 11-20  [00] 0   [05] 0   [06] 0
> A-MPDU num subframes 21-30  [00] 0   [05] 0   [06] 0
> A-MPDU num subframes 31-40  [00] 0   [05] 0   [06] 0
> A-MPDU num subframes 41-50  [00] 0   [05] 0   [06] 0
> A-MPDU num subframes 51-60  [00] 0   [05] 0   [06] 0
> A-MPDU num subframes >60[00] 0   [05] 0   [06] 0
>
> A-MSDU num subframes 1  [00] 2567[05] 3178[06] 1089
> A-MSDU num subframes 2  [00] 0   [05] 0   [06] 0
> A-MSDU num subframes 3  [00] 0   [05] 0   [06] 0
> A-MSDU num subframes 4  [00] 0   [05] 0   [06] 0
> A-MSDU num subframes >4 [00] 0   [05] 0   [06] 0
>
> Signed-off-by: Vasanthakumar Thiagarajan 

This added new ath10k-check warnings, I fixed those in the pending
branch:

drivers/net/wireless/ath/ath10k/debug.h:203: Alignment should match open 
parenthesis
drivers/net/wireless/ath/ath10k/debug.h:226: Alignment should match open 
parenthesis
drivers/net/wireless/ath/ath10k/debugfs_sta.c:24: Alignment should match open 
parenthesis
drivers/net/wireless/ath/ath10k/debugfs_sta.c:40: Alignment should match open 
parenthesis
drivers/net/wireless/ath/ath10k/debugfs_sta.c:60: Alignment should match open 
parenthesis

Also I fixed the typo "rages" in debug.h. My changes:

diff --git a/drivers/net/wireless/ath/ath10k/debug.h 
b/drivers/net/wireless/ath/ath10k/debug.h
index 306796dcedae..7ebb9b1e7e69 100644
--- a/drivers/net/wireless/ath/ath10k/debug.h
+++ b/drivers/net/wireless/ath/ath10k/debug.h
@@ -200,9 +200,9 @@ void ath10k_sta_update_rx_tid_stats(struct ath10k *ar, u8 
*first_hdr,
unsigned long int drop_cnt_filter,
unsigned long int queued_msdus);
 void ath10k_sta_update_rx_tid_stats_ampdu(struct ath10k *ar,
-   u16 peer_id, u8 tid,
-   struct htt_rx_indication_mpdu_range *mpdu_ranges,
-   int num_mpdu_rages);
+ u16 peer_id, u8 tid,
+ struct htt_rx_indication_mpdu_range 
*ranges,
+ int num_ranges);
 #else
 static inline
 void ath10k_sta_update_rx_duration(struct ath10k *ar,
@@ -223,9 +223,9 @@ void ath10k_sta_update_rx_tid_stats(struct ath10k *ar, u8 
*first_hdr,
 
 static inline
 void ath10k_sta_update_rx_tid_stats_ampdu(struct ath10k *ar,
-   u16 peer_id, u8 tid,
-   struct htt_rx_indication_mpdu_range *mpdu_ranges,
-   int num_mpdu_rages)
+ u16 peer_id, u8 tid,
+ struct htt_rx_indication_mpdu_range 
*ranges,
+