Hi all, This series cleans up the refcount intent code before we start adding support for realtime devices. Similar to previous intent cleanup patchsets, we start transforming the tracepoints so that the data extraction are done inside the tracepoint code, and then we start passing the intent itself to the _finish_one function. This reduces the boxing and unboxing of parameters. If you're going to start using this code, I strongly recommend pulling from my git trees, which are linked below. This has been running on the djcloud for months with no problems. Enjoy! Comments and questions are, as always, welcome. --D kernel git tree: https://git.kernel.org/cgit/linux/kernel/git/djwong/xfs-linux.git/log/?h=refcount-intent-cleanups xfsprogs git tree: https://git.kernel.org/cgit/linux/kernel/git/djwong/xfsprogs-dev.git/log/?h=refcount-intent-cleanups --- Commits in this patchset: * xfs: give refcount btree cursor error tracepoints their own class * xfs: create specialized classes for refcount tracepoints * xfs: prepare refcount btree tracepoints for widening * xfs: clean up refcount log intent item tracepoint callsites * xfs: remove xfs_trans_set_refcount_flags * xfs: add a ci_entry helper * xfs: reuse xfs_refcount_update_cancel_item * xfs: don't bother calling xfs_refcount_finish_one_cleanup in xfs_refcount_finish_one * xfs: simplify usage of the rcur local variable in xfs_refcount_finish_one * xfs: move xfs_refcount_update_defer_add to xfs_refcount_item.c --- fs/xfs/libxfs/xfs_refcount.c | 150 ++++++++-------------------- fs/xfs/libxfs/xfs_refcount.h | 11 +- fs/xfs/xfs_refcount_item.c | 107 ++++++++++---------- fs/xfs/xfs_refcount_item.h | 5 + fs/xfs/xfs_trace.c | 1 fs/xfs/xfs_trace.h | 229 ++++++++++++++++++++---------------------- 6 files changed, 222 insertions(+), 281 deletions(-)