aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMichal Kazior <michal.kazior@tieto.com>2014-10-23 10:04:27 -0400
committerKalle Valo <kvalo@qca.qualcomm.com>2014-10-24 09:33:20 -0400
commitb04e204fcae5a2c1e99e94f7e80f1e75fa95b938 (patch)
tree982dcd6d7d96f31ec1bcbf7cdba7e74eb5517083
parent51fc7d74ce4a1d92623e592eff14403872fb26bd (diff)
ath10k: remove tsf argument from rx_desc tracing
Fundamentally this was wrong. Tsf is only valid in last MPDU of a PPDU. This means tsf value was wrong most of the time during heavy traffic. Also I don't see much point in exposing a redundant (and broken) tsf value. Userspace can already read it from the dumped rx descriptor buffer. Cc: Rajkumar Manoharan <rmanohar@qti.qualcomm.com> Signed-off-by: Michal Kazior <michal.kazior@tieto.com> Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>
-rw-r--r--drivers/net/wireless/ath/ath10k/htt_rx.c4
-rw-r--r--drivers/net/wireless/ath/ath10k/trace.h9
2 files changed, 4 insertions, 9 deletions
diff --git a/drivers/net/wireless/ath/ath10k/htt_rx.c b/drivers/net/wireless/ath/ath10k/htt_rx.c
index 4fc4dbd2aaab..a691fdf2fbae 100644
--- a/drivers/net/wireless/ath/ath10k/htt_rx.c
+++ b/drivers/net/wireless/ath/ath10k/htt_rx.c
@@ -325,7 +325,6 @@ static int ath10k_htt_rx_amsdu_pop(struct ath10k_htt *htt,
325 int msdu_len, msdu_chaining = 0; 325 int msdu_len, msdu_chaining = 0;
326 struct sk_buff *msdu, *next; 326 struct sk_buff *msdu, *next;
327 struct htt_rx_desc *rx_desc; 327 struct htt_rx_desc *rx_desc;
328 u32 tsf;
329 328
330 lockdep_assert_held(&htt->rx_ring.lock); 329 lockdep_assert_held(&htt->rx_ring.lock);
331 330
@@ -449,8 +448,7 @@ static int ath10k_htt_rx_amsdu_pop(struct ath10k_htt *htt,
449 last_msdu = __le32_to_cpu(rx_desc->msdu_end.info0) & 448 last_msdu = __le32_to_cpu(rx_desc->msdu_end.info0) &
450 RX_MSDU_END_INFO0_LAST_MSDU; 449 RX_MSDU_END_INFO0_LAST_MSDU;
451 450
452 tsf = __le32_to_cpu(rx_desc->ppdu_end.tsf_timestamp); 451 trace_ath10k_htt_rx_desc(ar, &rx_desc->attention,
453 trace_ath10k_htt_rx_desc(ar, tsf, &rx_desc->attention,
454 sizeof(*rx_desc) - sizeof(u32)); 452 sizeof(*rx_desc) - sizeof(u32));
455 if (last_msdu) { 453 if (last_msdu) {
456 msdu->next = NULL; 454 msdu->next = NULL;
diff --git a/drivers/net/wireless/ath/ath10k/trace.h b/drivers/net/wireless/ath/ath10k/trace.h
index 9d34e7f6c455..2409cb54a32b 100644
--- a/drivers/net/wireless/ath/ath10k/trace.h
+++ b/drivers/net/wireless/ath/ath10k/trace.h
@@ -282,14 +282,13 @@ TRACE_EVENT(ath10k_htt_pktlog,
282); 282);
283 283
284TRACE_EVENT(ath10k_htt_rx_desc, 284TRACE_EVENT(ath10k_htt_rx_desc,
285 TP_PROTO(struct ath10k *ar, u32 tsf, void *rxdesc, u16 len), 285 TP_PROTO(struct ath10k *ar, void *rxdesc, u16 len),
286 286
287 TP_ARGS(ar, tsf, rxdesc, len), 287 TP_ARGS(ar, rxdesc, len),
288 288
289 TP_STRUCT__entry( 289 TP_STRUCT__entry(
290 __string(device, dev_name(ar->dev)) 290 __string(device, dev_name(ar->dev))
291 __string(driver, dev_driver_string(ar->dev)) 291 __string(driver, dev_driver_string(ar->dev))
292 __field(u32, tsf)
293 __field(u16, len) 292 __field(u16, len)
294 __dynamic_array(u8, rxdesc, len) 293 __dynamic_array(u8, rxdesc, len)
295 ), 294 ),
@@ -297,16 +296,14 @@ TRACE_EVENT(ath10k_htt_rx_desc,
297 TP_fast_assign( 296 TP_fast_assign(
298 __assign_str(device, dev_name(ar->dev)); 297 __assign_str(device, dev_name(ar->dev));
299 __assign_str(driver, dev_driver_string(ar->dev)); 298 __assign_str(driver, dev_driver_string(ar->dev));
300 __entry->tsf = tsf;
301 __entry->len = len; 299 __entry->len = len;
302 memcpy(__get_dynamic_array(rxdesc), rxdesc, len); 300 memcpy(__get_dynamic_array(rxdesc), rxdesc, len);
303 ), 301 ),
304 302
305 TP_printk( 303 TP_printk(
306 "%s %s %u len %hu", 304 "%s %s len %hu",
307 __get_str(driver), 305 __get_str(driver),
308 __get_str(device), 306 __get_str(device),
309 __entry->tsf,
310 __entry->len 307 __entry->len
311 ) 308 )
312); 309);