Message ID | ad82c7a9-a624-4ed5-5ada-a6410c44c0b3@tu-dortmund.de |
---|---|
State | Accepted |
Headers | show |
Series | [v2] Updated locking documentation for journal_t | expand |
Does this patch look good to you? Might it be ready to be merged? - Alex On 11.02.21 10:51, Alexander Lochmann wrote: > Some members of transaction_t are allowed to be read without > any lock being held if consistency doesn't matter. > Based on LockDoc's findings, we extended the locking > documentation of those members. > Each one of them is marked with a short comment: > "no lock for quick racy checks". > > Signed-off-by: Alexander Lochmann <alexander.lochmann@tu-dortmund.de> > Signed-off-by: Horst Schirmeier <horst.schirmeier@tu-dortmund.de> > Reviewed-by: Jan Kara <jack@suse.cz> > --- > include/linux/jbd2.h | 10 +++++----- > 1 file changed, 5 insertions(+), 5 deletions(-) > > diff --git a/include/linux/jbd2.h b/include/linux/jbd2.h > index 18f77d9b1745..4dca33a063dd 100644 > --- a/include/linux/jbd2.h > +++ b/include/linux/jbd2.h > @@ -768,7 +768,7 @@ enum passtype {PASS_SCAN, PASS_REVOKE, PASS_REPLAY}; > struct journal_s > { > /** > - * @j_flags: General journaling state flags [j_state_lock] > + * @j_flags: General journaling state flags [j_state_lock, no lock > for quick racy checks] > */ > unsigned long j_flags; > > @@ -808,7 +808,7 @@ struct journal_s > /** > * @j_barrier_count: > * > - * Number of processes waiting to create a barrier lock [j_state_lock] > + * Number of processes waiting to create a barrier lock > [j_state_lock, no lock for quick racy checks] > */ > int j_barrier_count; > > @@ -821,7 +821,7 @@ struct journal_s > * @j_running_transaction: > * > * Transactions: The current running transaction... > - * [j_state_lock] [caller holding open handle] > + * [j_state_lock, no lock for quick racy checks] [caller holding > open handle] > */ > transaction_t *j_running_transaction; > > @@ -1033,7 +1033,7 @@ struct journal_s > * @j_commit_sequence: > * > * Sequence number of the most recently committed transaction > - * [j_state_lock]. > + * [j_state_lock, no lock for quick racy checks]. > */ > tid_t j_commit_sequence; > > @@ -1041,7 +1041,7 @@ struct journal_s > * @j_commit_request: > * > * Sequence number of the most recent transaction wanting commit > - * [j_state_lock] > + * [j_state_lock, no lock for quick racy checks] > */ > tid_t j_commit_request; >
On Thu, Feb 11, 2021 at 10:51:55AM +0100, Alexander Lochmann wrote: > Some members of transaction_t are allowed to be read without > any lock being held if consistency doesn't matter. > Based on LockDoc's findings, we extended the locking > documentation of those members. > Each one of them is marked with a short comment: > "no lock for quick racy checks". > > Signed-off-by: Alexander Lochmann <alexander.lochmann@tu-dortmund.de> > Signed-off-by: Horst Schirmeier <horst.schirmeier@tu-dortmund.de> > Reviewed-by: Jan Kara <jack@suse.cz> Thanks, applied. I had to fix up the patch, which was mailer-damaged, and I also reflowed the comments. - Ted
diff --git a/include/linux/jbd2.h b/include/linux/jbd2.h index 18f77d9b1745..4dca33a063dd 100644 --- a/include/linux/jbd2.h +++ b/include/linux/jbd2.h @@ -768,7 +768,7 @@ enum passtype {PASS_SCAN, PASS_REVOKE, PASS_REPLAY}; struct journal_s { /** - * @j_flags: General journaling state flags [j_state_lock] + * @j_flags: General journaling state flags [j_state_lock, no lock for quick racy checks] */ unsigned long j_flags;