[PATCHBOMB] time_stats, thread_with_file: lifting generic code to lib

From: Darrick J. Wong
Date: Fri Feb 23 2024 - 20:00:25 EST


Hi all,

Kent and I went on a little sprint of figuring out if there were any
pieces of bcachefs that we could steal for XFS. It turns out that there
are -- the timestats code is useful for measuring delays due to lock
contention, and thread_with_file will be very helpful for exporting
filesystem metadata health events to userspace.

So here's a pile of patchsets lifting those pieces of bcachefs to lib
and fixing a bunch of bugs in them. These patches have already been
soaking in Kent's testing tree (and -next) for a few days, but
apparently not all of them got emailed so here I am blasting out the
entire thing.

If you want to see what XFS does with this, have a look at [1] and [2].
For 6.9 it'd be helpful to get these modules lifted.

--Darrick

[1] https://git.kernel.org/pub/scm/linux/kernel/git/djwong/xfs-linux.git/log/?h=health-monitoring_2024-02-23
[2] https://git.kernel.org/pub/scm/linux/kernel/git/djwong/xfs-linux.git/tag/?h=contention-timestats_2024-02-23