mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-11-01 17:08:10 +00:00
bcachefs: Add a few tracepoints
Transaction restart tracing should probably be overhaulled at some point. Signed-off-by: Kent Overstreet <kent.overstreet@gmail.com> Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
This commit is contained in:
parent
f270667a7f
commit
297604c923
2 changed files with 22 additions and 1 deletions
|
@ -1555,8 +1555,10 @@ int bch2_btree_split_leaf(struct bch_fs *c, struct btree_iter *iter,
|
|||
/* Hack, because gc and splitting nodes doesn't mix yet: */
|
||||
if (!(flags & BTREE_INSERT_GC_LOCK_HELD) &&
|
||||
!down_read_trylock(&c->gc_lock)) {
|
||||
if (flags & BTREE_INSERT_NOUNLOCK)
|
||||
if (flags & BTREE_INSERT_NOUNLOCK) {
|
||||
trace_transaction_restart_ip(trans->ip, _THIS_IP_);
|
||||
return -EINTR;
|
||||
}
|
||||
|
||||
bch2_trans_unlock(trans);
|
||||
down_read(&c->gc_lock);
|
||||
|
@ -1584,6 +1586,8 @@ int bch2_btree_split_leaf(struct bch_fs *c, struct btree_iter *iter,
|
|||
BUG_ON(flags & BTREE_INSERT_NOUNLOCK);
|
||||
bch2_trans_unlock(trans);
|
||||
ret = -EINTR;
|
||||
|
||||
trace_transaction_restart_ip(trans->ip, _THIS_IP_);
|
||||
}
|
||||
goto out;
|
||||
}
|
||||
|
|
|
@ -499,6 +499,23 @@ TRACE_EVENT(copygc,
|
|||
__entry->buckets_moved, __entry->buckets_not_moved)
|
||||
);
|
||||
|
||||
TRACE_EVENT(transaction_restart_ip,
|
||||
TP_PROTO(unsigned long caller, unsigned long ip),
|
||||
TP_ARGS(caller, ip),
|
||||
|
||||
TP_STRUCT__entry(
|
||||
__field(unsigned long, caller )
|
||||
__field(unsigned long, ip )
|
||||
),
|
||||
|
||||
TP_fast_assign(
|
||||
__entry->caller = caller;
|
||||
__entry->ip = ip;
|
||||
),
|
||||
|
||||
TP_printk("%pF %pF", (void *) __entry->caller, (void *) __entry->ip)
|
||||
);
|
||||
|
||||
DECLARE_EVENT_CLASS(transaction_restart,
|
||||
TP_PROTO(unsigned long ip),
|
||||
TP_ARGS(ip),
|
||||
|
|
Loading…
Reference in a new issue