|
@@ -399,26 +399,43 @@ TRACE_EVENT(bcache_keyscan,
|
|
|
|
|
|
/* Allocator */
|
|
|
|
|
|
-TRACE_EVENT(bcache_alloc_invalidate,
|
|
|
- TP_PROTO(struct cache *ca),
|
|
|
- TP_ARGS(ca),
|
|
|
+TRACE_EVENT(bcache_invalidate,
|
|
|
+ TP_PROTO(struct cache *ca, size_t bucket),
|
|
|
+ TP_ARGS(ca, bucket),
|
|
|
|
|
|
TP_STRUCT__entry(
|
|
|
- __field(unsigned, free )
|
|
|
- __field(unsigned, free_inc )
|
|
|
- __field(unsigned, free_inc_size )
|
|
|
- __field(unsigned, unused )
|
|
|
+ __field(unsigned, sectors )
|
|
|
+ __field(dev_t, dev )
|
|
|
+ __field(__u64, offset )
|
|
|
),
|
|
|
|
|
|
TP_fast_assign(
|
|
|
- __entry->free = fifo_used(&ca->free[RESERVE_NONE]);
|
|
|
- __entry->free_inc = fifo_used(&ca->free_inc);
|
|
|
- __entry->free_inc_size = ca->free_inc.size;
|
|
|
- __entry->unused = fifo_used(&ca->unused);
|
|
|
+ __entry->dev = ca->bdev->bd_dev;
|
|
|
+ __entry->offset = bucket << ca->set->bucket_bits;
|
|
|
+ __entry->sectors = GC_SECTORS_USED(&ca->buckets[bucket]);
|
|
|
),
|
|
|
|
|
|
- TP_printk("free %u free_inc %u/%u unused %u", __entry->free,
|
|
|
- __entry->free_inc, __entry->free_inc_size, __entry->unused)
|
|
|
+ TP_printk("invalidated %u sectors at %d,%d sector=%llu",
|
|
|
+ __entry->sectors, MAJOR(__entry->dev),
|
|
|
+ MINOR(__entry->dev), __entry->offset)
|
|
|
+);
|
|
|
+
|
|
|
+TRACE_EVENT(bcache_alloc,
|
|
|
+ TP_PROTO(struct cache *ca, size_t bucket),
|
|
|
+ TP_ARGS(ca, bucket),
|
|
|
+
|
|
|
+ TP_STRUCT__entry(
|
|
|
+ __field(dev_t, dev )
|
|
|
+ __field(__u64, offset )
|
|
|
+ ),
|
|
|
+
|
|
|
+ TP_fast_assign(
|
|
|
+ __entry->dev = ca->bdev->bd_dev;
|
|
|
+ __entry->offset = bucket << ca->set->bucket_bits;
|
|
|
+ ),
|
|
|
+
|
|
|
+ TP_printk("allocated %d,%d sector=%llu", MAJOR(__entry->dev),
|
|
|
+ MINOR(__entry->dev), __entry->offset)
|
|
|
);
|
|
|
|
|
|
TRACE_EVENT(bcache_alloc_fail,
|
|
@@ -426,6 +443,7 @@ TRACE_EVENT(bcache_alloc_fail,
|
|
|
TP_ARGS(ca, reserve),
|
|
|
|
|
|
TP_STRUCT__entry(
|
|
|
+ __field(dev_t, dev )
|
|
|
__field(unsigned, free )
|
|
|
__field(unsigned, free_inc )
|
|
|
__field(unsigned, unused )
|
|
@@ -433,13 +451,15 @@ TRACE_EVENT(bcache_alloc_fail,
|
|
|
),
|
|
|
|
|
|
TP_fast_assign(
|
|
|
+ __entry->dev = ca->bdev->bd_dev;
|
|
|
__entry->free = fifo_used(&ca->free[reserve]);
|
|
|
__entry->free_inc = fifo_used(&ca->free_inc);
|
|
|
__entry->unused = fifo_used(&ca->unused);
|
|
|
__entry->blocked = atomic_read(&ca->set->prio_blocked);
|
|
|
),
|
|
|
|
|
|
- TP_printk("free %u free_inc %u unused %u blocked %u", __entry->free,
|
|
|
+ TP_printk("alloc fail %d,%d free %u free_inc %u unused %u blocked %u",
|
|
|
+ MAJOR(__entry->dev), MINOR(__entry->dev), __entry->free,
|
|
|
__entry->free_inc, __entry->unused, __entry->blocked)
|
|
|
);
|
|
|
|