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 <[email protected]> > Cc: Jan Kara <[email protected]> > Cc: Johannes Weiner <[email protected]> > Cc: Vladimir Davydov <[email protected]> > Cc: Matthew Wilcox <[email protected]> > Cc: Jeff Layton <[email protected]> > Cc: [email protected] > Signed-off-by: Kees Cook <[email protected]>
The patch looks good. You can add: Reviewed-by: Jan Kara <[email protected]> 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 <[email protected]> SUSE Labs, CR

