On Fri 04-11-22 01:41:23, Steven Rostedt wrote: > From: "Steven Rostedt (Google)" <rostedt@xxxxxxxxxxx> > > Before a timer is freed, timer_shutdown() must be called. Note that it is > assumed that the timer is not running while being freed, so only > timer_shutdown() is used, and not timer_shutdown_sync(). > > Link: https://lore.kernel.org/all/20220407161745.7d6754b3@xxxxxxxxxxxxxxxxxx/ > > Cc: "Theodore Ts'o" <tytso@xxxxxxx> > Cc: Jan Kara <jack@xxxxxxxx> > Cc: linux-ext4@xxxxxxxxxxxxxxx > Signed-off-by: Steven Rostedt (Google) <rostedt@xxxxxxxxxxx> Looks good to me. Feel free to add: Reviewed-by: Jan Kara <jack@xxxxxxx> Honza > --- > fs/jbd2/journal.c | 2 ++ > 1 file changed, 2 insertions(+) > > diff --git a/fs/jbd2/journal.c b/fs/jbd2/journal.c > index 2696f43e7239..57d2445d8c8b 100644 > --- a/fs/jbd2/journal.c > +++ b/fs/jbd2/journal.c > @@ -2157,6 +2157,8 @@ int jbd2_journal_destroy(journal_t *journal) > J_ASSERT(journal->j_checkpoint_transactions == NULL); > spin_unlock(&journal->j_list_lock); > > + timer_shutdown(&journal->j_commit_timer); > + > /* > * OK, all checkpoint transactions have been checked, now check the > * write out io error flag and abort the journal if some buffer failed > -- > 2.35.1 -- Jan Kara <jack@xxxxxxxx> SUSE Labs, CR