tools/cephfs: add recover_dentries to journaltool

This is intended as a comparatively safe recovery
operation, where we compare the versions
of journalled dentries with backing store dentries,
and write into the backing store only when the
existing contents are older than the journal
or invalid.

Fixes: #9883

Signed-off-by: John Spray <john.spray@redhat.com>
mds: debugging output on logsegment destruction

If there are dentries still there on deletion (there shouldn't be)
then print them out before subsequently hitting the assertion
in ~elist.  Inspired by debugging #10368

This is a teardown() method instead of ~LogSegment so that
we can pass in the MDS* pointer that the dout prefix expects.

Signed-off-by: John Spray <john.spray@redhat.com>
DNM/HACKY mds: debugging for cap recall health alert

...and an explicit santity check in beacon, where if the session has
<100 caps we know something has gone wrong and can cancell the recall.

Signed-off-by: John Spray <john.spray@redhat.com>
Revert "client: invalidate kernel dentries one by one"

This reverts commit 491da5173fc33fec944865f0e2e9a506ec71fc5b.