Acked-by: mark gross <mark.gr...@intel.com> --mark
> -----Original Message----- > From: Kees Cook [mailto:keesc...@chromium.org] > Sent: Wednesday, October 4, 2017 4:27 PM > To: Thomas Gleixner <t...@linutronix.de> > Cc: Kees Cook <keesc...@chromium.org>; Arnd Bergmann <a...@arndb.de>; > Greg Kroah-Hartman <gre...@linuxfoundation.org>; Gross, Mark > <mark.gr...@intel.com>; Andrew Morton <a...@linux-foundation.org>; > Benjamin Herrenschmidt <b...@kernel.crashing.org>; Chris Metcalf > <cmetc...@mellanox.com>; Geert Uytterhoeven <ge...@linux-m68k.org>; > Guenter Roeck <li...@roeck-us.net>; Harish Patil <harish.pa...@cavium.com>; > Heiko Carstens <heiko.carst...@de.ibm.com>; James E.J. Bottomley > <j...@linux.vnet.ibm.com>; John Stultz <john.stu...@linaro.org>; Julian > Wiedmann <j...@linux.vnet.ibm.com>; Kalle Valo <kv...@qca.qualcomm.com>; > Lai Jiangshan <jiangshan...@gmail.com>; Brown, Len <len.br...@intel.com>; > Manish Chopra <manish.cho...@cavium.com>; Martin K. Petersen > <martin.peter...@oracle.com>; Martin Schwidefsky > <schwidef...@de.ibm.com>; Michael Ellerman <m...@ellerman.id.au>; Michael > Reed <m...@sgi.com>; net...@vger.kernel.org; Oleg Nesterov > <o...@redhat.com>; Paul Mackerras <pau...@samba.org>; Pavel Machek > <pa...@ucw.cz>; Petr Mladek <pmla...@suse.com>; Rafael J. Wysocki > <r...@rjwysocki.net>; Ralf Baechle <r...@linux-mips.org>; Sebastian Reichel > <s...@kernel.org>; Stefan Richter <stef...@s5r6.in-berlin.de>; Stephen Boyd > <sb...@codeaurora.org>; Sudip Mukherjee <sudipm.mukher...@gmail.com>; > Tejun Heo <t...@kernel.org>; Ursula Braun <ubr...@linux.vnet.ibm.com>; Viresh > Kumar <viresh.ku...@linaro.org>; Wim Van Sebroeck <w...@iguana.be>; > linux1394-de...@lists.sourceforge.net; linux-m...@linux-mips.org; linux- > p...@vger.kernel.org; linuxppc-dev@lists.ozlabs.org; linux- > s...@vger.kernel.org; linux-s...@vger.kernel.org; linux- > watch...@vger.kernel.org; linux-wirel...@vger.kernel.org; linux- > ker...@vger.kernel.org > Subject: [PATCH 07/13] timer: Remove last user of TIMER_INITIALIZER > > Drops the last user of TIMER_INITIALIZER and adapts timer.h to use the > internal > version. > > Cc: Arnd Bergmann <a...@arndb.de> > Cc: Greg Kroah-Hartman <gre...@linuxfoundation.org> > Cc: Mark Gross <mark.gr...@intel.com> > Cc: Thomas Gleixner <t...@linutronix.de> > Signed-off-by: Kees Cook <keesc...@chromium.org> > --- > drivers/char/tlclk.c | 12 +++++------- include/linux/timer.h | 2 +- > 2 files changed, 6 insertions(+), 8 deletions(-) > > diff --git a/drivers/char/tlclk.c b/drivers/char/tlclk.c index > 6210bff46341..8eeb4190207d 100644 > --- a/drivers/char/tlclk.c > +++ b/drivers/char/tlclk.c > @@ -184,9 +184,8 @@ static unsigned int telclk_interrupt; > static int int_events; /* Event that generate a interrupt */ > static int got_event; /* if events processing have been done > */ > > -static void switchover_timeout(unsigned long data); -static struct timer_list > switchover_timer = > - TIMER_INITIALIZER(switchover_timeout , 0, 0); > +static void switchover_timeout(struct timer_list *t); static struct > +timer_list switchover_timer; > static unsigned long tlclk_timer_data; > > static struct tlclk_alarms *alarm_events; @@ -805,7 +804,7 @@ static int > __init tlclk_init(void) > goto out3; > } > > - init_timer(&switchover_timer); > + timer_setup(&switchover_timer, switchover_timeout, 0); > > ret = misc_register(&tlclk_miscdev); > if (ret < 0) { > @@ -855,9 +854,9 @@ static void __exit tlclk_cleanup(void) > > } > > -static void switchover_timeout(unsigned long data) > +static void switchover_timeout(struct timer_list *unused) > { > - unsigned long flags = *(unsigned long *) data; > + unsigned long flags = tlclk_timer_data; > > if ((flags & 1)) { > if ((inb(TLCLK_REG1) & 0x08) != (flags & 0x08)) @@ -922,7 > +921,6 @@ static irqreturn_t tlclk_interrupt(int irq, void *dev_id) > /* TIMEOUT in ~10ms */ > switchover_timer.expires = jiffies + msecs_to_jiffies(10); > tlclk_timer_data = inb(TLCLK_REG1); > - switchover_timer.data = (unsigned long) &tlclk_timer_data; > mod_timer(&switchover_timer, switchover_timer.expires); > } else { > got_event = 1; > diff --git a/include/linux/timer.h b/include/linux/timer.h index > 10cc45ca5803..4f7476e4a727 100644 > --- a/include/linux/timer.h > +++ b/include/linux/timer.h > @@ -87,7 +87,7 @@ struct timer_list { > > #define DEFINE_TIMER(_name, _function, _expires, _data) \ > struct timer_list _name = \ > - TIMER_INITIALIZER(_function, _expires, _data) > + __TIMER_INITIALIZER(_function, _expires, _data, 0) > > void init_timer_key(struct timer_list *timer, unsigned int flags, > const char *name, struct lock_class_key *key); > -- > 2.7.4