On Wed 04-10-17 17:48:46, Kees Cook wrote: > In preparation for unconditionally passing the struct timer_list pointer to > all timer callbacks, switch to using the new timer_setup() and from_timer() > to pass the timer pointer explicitly. > > Cc: "Theodore Ts'o" <tytso@xxxxxxx> > Cc: Jan Kara <jack@xxxxxxxx> > Cc: linux-ext4@xxxxxxxxxxxxxxx > Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx> > Signed-off-by: Kees Cook <keescook@xxxxxxxxxxxx> The patch looks good to me. You can add: Reviewed-by: Jan Kara <jack@xxxxxxx> Honza > --- > This requires commit 686fef928bba ("timer: Prepare to change timer > callback argument type") in v4.14-rc3, but should be otherwise > stand-alone. > --- > fs/jbd2/journal.c | 9 ++++----- > 1 file changed, 4 insertions(+), 5 deletions(-) > > diff --git a/fs/jbd2/journal.c b/fs/jbd2/journal.c > index 7d5ef3bf3f3e..d2a85c9720e9 100644 > --- a/fs/jbd2/journal.c > +++ b/fs/jbd2/journal.c > @@ -165,11 +165,11 @@ static void jbd2_superblock_csum_set(journal_t *j, journal_superblock_t *sb) > * Helper function used to manage commit timeouts > */ > > -static void commit_timeout(unsigned long __data) > +static void commit_timeout(struct timer_list *t) > { > - struct task_struct * p = (struct task_struct *) __data; > + journal_t *journal = from_timer(journal, t, j_commit_timer); > > - wake_up_process(p); > + wake_up_process(journal->j_task); > } > > /* > @@ -197,8 +197,7 @@ static int kjournald2(void *arg) > * Set up an interval timer which can be used to trigger a commit wakeup > * after the commit interval expires > */ > - setup_timer(&journal->j_commit_timer, commit_timeout, > - (unsigned long)current); > + timer_setup(&journal->j_commit_timer, commit_timeout, 0); > > set_freezable(); > > -- > 2.7.4 > > > -- > Kees Cook > Pixel Security > -- Jan Kara <jack@xxxxxxxx> SUSE Labs, CR