On Mon 16-10-17 15:59:13, 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: Andrew Morton <a...@linux-foundation.org> > Cc: Jan Kara <j...@suse.cz> > Cc: Johannes Weiner <han...@cmpxchg.org> > Cc: Vladimir Davydov <vdavydov....@gmail.com> > Cc: Matthew Wilcox <mawil...@microsoft.com> > Cc: Jeff Layton <jlay...@redhat.com> > Cc: linux...@kvack.org > Signed-off-by: Kees Cook <keesc...@chromium.org>
The patch looks good. You can add: Reviewed-by: Jan Kara <j...@suse.cz> Honza > --- > mm/page-writeback.c | 7 +++---- > 1 file changed, 3 insertions(+), 4 deletions(-) > > diff --git a/mm/page-writeback.c b/mm/page-writeback.c > index 94854e243b11..65ba42c7c7da 100644 > --- a/mm/page-writeback.c > +++ b/mm/page-writeback.c > @@ -628,9 +628,9 @@ EXPORT_SYMBOL_GPL(wb_writeout_inc); > * On idle system, we can be called long after we scheduled because we use > * deferred timers so count with missed periods. > */ > -static void writeout_period(unsigned long t) > +static void writeout_period(struct timer_list *t) > { > - struct wb_domain *dom = (void *)t; > + struct wb_domain *dom = from_timer(dom, t, period_timer); > int miss_periods = (jiffies - dom->period_time) / > VM_COMPLETIONS_PERIOD_LEN; > > @@ -653,8 +653,7 @@ int wb_domain_init(struct wb_domain *dom, gfp_t gfp) > > spin_lock_init(&dom->lock); > > - setup_deferrable_timer(&dom->period_timer, writeout_period, > - (unsigned long)dom); > + timer_setup(&dom->period_timer, writeout_period, TIMER_DEFERRABLE); > > dom->dirty_limit_tstamp = jiffies; > > -- > 2.7.4 > > > -- > Kees Cook > Pixel Security -- Jan Kara <j...@suse.com> SUSE Labs, CR