From 5c6b263d97715c1723700bb2f2a4c2c98d366c58 Mon Sep 17 00:00:00 2001 From: Zach Brown Date: Fri, 24 Jul 2020 14:38:19 -0700 Subject: [PATCH] scoutfs: trace radix bit ops before assertions Trace operations before they can trigger assertions so we can see the violating operation in the traces. Signed-off-by: Zach Brown --- kmod/src/radix.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/kmod/src/radix.c b/kmod/src/radix.c index 5d233c2a..c508054e 100644 --- a/kmod/src/radix.c +++ b/kmod/src/radix.c @@ -465,6 +465,7 @@ static void set_leaf_bits(struct super_block *sb, struct scoutfs_block *bl, struct scoutfs_radix_block *rdx = bl->data; int lg_nbits; + trace_scoutfs_radix_set_bits(sb, bl->blkno, ind, nbits); bug_on_bad_bits(ind, nbits); /* must never double-free bits */ @@ -473,7 +474,6 @@ static void set_leaf_bits(struct super_block *sb, struct scoutfs_block *bl, lg_nbits = count_lg_bits(rdx->bits, ind, nbits); fixup_parent_refs(sb, bl, nbits, lg_nbits); - trace_scoutfs_radix_set_bits(sb, bl->blkno, ind, nbits); } static void clear_leaf_bits(struct super_block *sb, struct scoutfs_block *bl, @@ -482,6 +482,7 @@ static void clear_leaf_bits(struct super_block *sb, struct scoutfs_block *bl, struct scoutfs_radix_block *rdx = bl->data; int lg_nbits; + trace_scoutfs_radix_clear_bits(sb, bl->blkno, ind, nbits); bug_on_bad_bits(ind, nbits); /* must never alloc in-use bits */ @@ -490,7 +491,6 @@ static void clear_leaf_bits(struct super_block *sb, struct scoutfs_block *bl, bitmap_clear_le(rdx->bits, ind, nbits); fixup_parent_refs(sb, bl, -nbits, -lg_nbits); - trace_scoutfs_radix_clear_bits(sb, bl->blkno, ind, nbits); } /*