qcacld-3.0: Record CE interrupt and tasklet entry/exit
Record CE interrupt in CE event history since the interrupts
may come separately for the different interrupts.
Change-Id: I269a103054d3ab2015d67370c43f4af598871b8d
CRs-Fixed: 951569
diff --git a/core/hif/src/ce/ce_service.c b/core/hif/src/ce/ce_service.c
index 6f48a2b..5f474cc 100644
--- a/core/hif/src/ce/ce_service.c
+++ b/core/hif/src/ce/ce_service.c
@@ -101,6 +101,7 @@
cdf_atomic_t hif_ce_desc_history_index[CE_COUNT_MAX];
struct hif_ce_desc_event hif_ce_desc_history[CE_COUNT_MAX][HIF_CE_HISTORY_MAX];
+
/**
* get_next_record_index() - get the next record index
* @table_index: atomic index variable to increment
@@ -142,7 +143,10 @@
&hif_ce_desc_history[ce_id][record_index];
event->type = type;
event->time = cds_get_monotonic_boottime();
- event->descriptor = *descriptor;
+ if (descriptor != NULL)
+ event->descriptor = *descriptor;
+ else
+ memset(&event->descriptor, 0, sizeof(union ce_desc));
event->memory = memory;
event->index = index;
}