]> www.infradead.org Git - users/jedix/linux-maple.git/commitdiff
maple_tree tracepoints: Add trace for span_wr, store_range, erase, load
authorLiam R. Howlett <Liam.Howlett@Oracle.com>
Thu, 17 Sep 2020 18:07:40 +0000 (14:07 -0400)
committerLiam R. Howlett <Liam.Howlett@Oracle.com>
Fri, 30 Oct 2020 19:11:56 +0000 (15:11 -0400)
Signed-off-by: Liam R. Howlett <Liam.Howlett@Oracle.com>
include/trace/events/maple_tree.h

index 3348d63342cb6b59846f5a2b0af1c58343d7bee6..bcc3e7bb49ae8a0179934ee60ae51546ce23e500 100644 (file)
@@ -108,7 +108,119 @@ TRACE_EVENT(mas_spanning_rebalance,
        )
 );
 
+TRACE_EVENT(mtree_load,
 
+       TP_PROTO(struct ma_state *mas),
+
+       TP_ARGS(mas),
+
+       TP_STRUCT__entry(
+                       __field(struct ma_state *, mas)
+                       __field(unsigned long, index)
+                       __field(unsigned long, last)
+       ),
+
+       TP_fast_assign(
+                       __entry->mas            = mas;
+                       __entry->index          = mas->index;
+                       __entry->last           = mas->last;
+       ),
+
+       TP_printk("\t%lu-%lu",
+                 (unsigned long) __entry->index,
+                 (unsigned long) __entry->last
+       )
+)
+
+TRACE_EVENT(mtree_erase,
+
+       TP_PROTO(struct ma_state *mas),
+
+       TP_ARGS(mas),
+
+       TP_STRUCT__entry(
+                       __field(struct ma_state *, mas)
+                       __field(unsigned long, index)
+                       __field(unsigned long, last)
+       ),
+
+       TP_fast_assign(
+                       __entry->mas            = mas;
+                       __entry->index          = mas->index;
+                       __entry->last           = mas->last;
+       ),
+
+       TP_printk("\t%lu-%lu",
+                 (unsigned long) __entry->index,
+                 (unsigned long) __entry->last
+       )
+)
+
+TRACE_EVENT(mtree_store_range,
+
+       TP_PROTO(struct ma_state *mas, void *val),
+
+       TP_ARGS(mas, val),
+
+       TP_STRUCT__entry(
+                       __field(struct ma_state *, mas)
+                       __field(unsigned long, index)
+                       __field(unsigned long, last)
+                       __field(void *, val)
+       ),
+
+       TP_fast_assign(
+                       __entry->mas            = mas;
+                       __entry->index          = mas->index;
+                       __entry->last           = mas->last;
+                       __entry->val            = val;
+       ),
+
+       TP_printk("\t%lu-%lu => %px",
+                 (unsigned long) __entry->index,
+                 (unsigned long) __entry->last,
+                 (void *) __entry->val
+       )
+)
+
+TRACE_EVENT(mas_is_span_wr,
+
+       TP_PROTO(struct ma_state *mas, unsigned long piv, void *val),
+
+       TP_ARGS(mas, piv, val),
+
+       TP_STRUCT__entry(
+                       __field(struct ma_state *, mas)
+                       __field(unsigned long, min)
+                       __field(unsigned long, max)
+                       __field(unsigned long, index)
+                       __field(unsigned long, last)
+                       __field(unsigned long, piv)
+                       __field(void *, val)
+                       __field(void *, node)
+       ),
+
+       TP_fast_assign(
+                       __entry->mas            = mas;
+                       __entry->min            = mas->min;
+                       __entry->max            = mas->max;
+                       __entry->index          = mas->index;
+                       __entry->last           = mas->last;
+                       __entry->piv            = piv;
+                       __entry->val            = val;
+                       __entry->node           = mas->node;
+       ),
+
+       TP_printk("\t%px (%lu %lu): %lu-%lu (%lu) %px",
+                 (void *) __entry->node,
+                 (unsigned long) __entry->min,
+                 (unsigned long) __entry->max,
+                 (unsigned long) __entry->index,
+                 (unsigned long) __entry->last,
+                 (unsigned long) __entry->piv,
+                 (void *) __entry->val
+       )
+)
 #endif /* _TRACE_MM_H */
 
 /* This part must be outside protection */