bcachefs: prepare journal buf put to handle pin put
authorBrian Foster <bfoster@redhat.com>
Fri, 15 Sep 2023 12:51:52 +0000 (08:51 -0400)
committerKent Overstreet <kent.overstreet@linux.dev>
Sun, 22 Oct 2023 21:10:14 +0000 (17:10 -0400)
commitfc08031bb84b2b4660406faf9f30db8cdd09d022
treea8bb1afdb1b78747777d4ad1dc954ee56375e190
parent92b63f5bf0774eab2e62b86f85bb4efb915edef1
bcachefs: prepare journal buf put to handle pin put

bcachefs freeze testing has uncovered some raciness between journal
entry open/close and pin list reference count management. The
details of the problem are described in a separate patch. In
preparation for the associated fix, refactor the journal buffer put
path a bit to allow it to eventually handle dropping the pin list
reference currently held by an open journal entry.

Retain the journal write dispatch helper since the closure code is
inlined and we don't want to increase the amount of inline code in
the transaction commit path, but rename the function to reflect
the purpose of final processing of the journal buffer.

Signed-off-by: Brian Foster <bfoster@redhat.com>
Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
fs/bcachefs/journal.c
fs/bcachefs/journal.h