More bcachefs bugfixes for 6.7:

 - Fix a rare emergency shutdown path bug: dropping journal pins after
   the filesystem has mostly been torn down is not what we want.
 - Fix some concurrency issues with the btree write buffer and journal
   replay by not using the btree write buffer until journal replay is
   finished
 - A fixup from the prior patch to kill journal pre-reservations: at the
   start of the btree update path, where previously we took a
   pre-reservation, we do at least want to check the journal watermark.
 - Fix a race between dropping device metadata and btree node writes,
   which would re-add a pointer to a device that had just been dropped
 - Fix one of the SCRU lock warnings, in
   bch2_compression_stats_to_text().
 - Partial fix for a rare transaction paths overflow, when indirect
   extents had been split by background tasks, by not running certain
   triggers when they're not needed.
 - Fix for creating a snapshot with implicit source in a subdirectory of
   the containing subvolume
 - Don't unfreeze when we're emergency read-only
 - Fix for rebalance spinning trying to compress unwritten extentns
 - Another deleted_inodes fix, for directories
 - Fix a rare deadlock (usually just an unecessary wait) when flushing
   the journal with an open journal entry.