From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751932AbdJENWl (ORCPT ); Thu, 5 Oct 2017 09:22:41 -0400 Received: from terminus.zytor.com ([65.50.211.136]:41257 "EHLO terminus.zytor.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751280AbdJENWi (ORCPT ); Thu, 5 Oct 2017 09:22:38 -0400 Date: Thu, 5 Oct 2017 06:04:15 -0700 From: tip-bot for Kees Cook Message-ID: Cc: arnd@arndb.de, heiko.carstens@de.ibm.com, stefanr@s5r6.in-berlin.de, kvalo@qca.qualcomm.com, geert@linux-m68k.org, jwi@linux.vnet.ibm.com, linux-kernel@vger.kernel.org, linux@roeck-us.net, viresh.kumar@linaro.org, schwidefsky@de.ibm.com, sboyd@codeaurora.org, mpe@ellerman.id.au, mingo@kernel.org, paulus@samba.org, john.stultz@linaro.org, cmetcalf@mellanox.com, ralf@linux-mips.org, harish.patil@cavium.com, akpm@linux-foundation.org, benh@kernel.crashing.org, tj@kernel.org, sudipm.mukherjee@gmail.com, wim@iguana.be, pmladek@suse.com, pavel@ucw.cz, manish.chopra@cavium.com, tglx@linutronix.de, sre@kernel.org, jejb@linux.vnet.ibm.com, keescook@chromium.org, gregkh@linuxfoundation.org, jiangshanlai@gmail.com, ubraun@linux.vnet.ibm.com, hpa@zytor.com, mdr@sgi.com, rjw@rjwysocki.net, martin.petersen@oracle.com, len.brown@intel.com, mark.gross@intel.com, oleg@redhat.com Reply-To: geert@linux-m68k.org, kvalo@qca.qualcomm.com, jwi@linux.vnet.ibm.com, heiko.carstens@de.ibm.com, arnd@arndb.de, stefanr@s5r6.in-berlin.de, sboyd@codeaurora.org, schwidefsky@de.ibm.com, mpe@ellerman.id.au, viresh.kumar@linaro.org, linux@roeck-us.net, linux-kernel@vger.kernel.org, ralf@linux-mips.org, cmetcalf@mellanox.com, mingo@kernel.org, john.stultz@linaro.org, paulus@samba.org, harish.patil@cavium.com, akpm@linux-foundation.org, sudipm.mukherjee@gmail.com, tj@kernel.org, benh@kernel.crashing.org, tglx@linutronix.de, jejb@linux.vnet.ibm.com, sre@kernel.org, keescook@chromium.org, gregkh@linuxfoundation.org, pavel@ucw.cz, manish.chopra@cavium.com, pmladek@suse.com, wim@iguana.be, rjw@rjwysocki.net, martin.petersen@oracle.com, hpa@zytor.com, mdr@sgi.com, ubraun@linux.vnet.ibm.com, jiangshanlai@gmail.com, oleg@redhat.com, mark.gross@intel.com, len.brown@intel.com In-Reply-To: <1507159627-127660-3-git-send-email-keescook@chromium.org> References: <1507159627-127660-3-git-send-email-keescook@chromium.org> To: linux-tip-commits@vger.kernel.org Subject: [tip:timers/core] timer: Remove init_timer_pinned_deferrable() in favor of timer_setup() Git-Commit-ID: 1d1fe902afb380571105d05d0be3de61b81bc9a8 X-Mailer: tip-git-log-daemon Robot-ID: Robot-Unsubscribe: Contact to get blacklisted from these emails MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain; charset=UTF-8 Content-Disposition: inline Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Commit-ID: 1d1fe902afb380571105d05d0be3de61b81bc9a8 Gitweb: https://git.kernel.org/tip/1d1fe902afb380571105d05d0be3de61b81bc9a8 Author: Kees Cook AuthorDate: Wed, 4 Oct 2017 16:26:56 -0700 Committer: Thomas Gleixner CommitDate: Thu, 5 Oct 2017 15:01:16 +0200 timer: Remove init_timer_pinned_deferrable() in favor of timer_setup() This refactors the only user of init_timer_pinned_deferrable() to use the new timer_setup() and from_timer(). Adds a pointer back to the policy, and drops the definition of init_timer_pinned_deferrable(). Signed-off-by: Kees Cook Signed-off-by: Thomas Gleixner Cc: linux-mips@linux-mips.org Cc: Petr Mladek Cc: Benjamin Herrenschmidt Cc: Lai Jiangshan Cc: Sebastian Reichel Cc: Kalle Valo Cc: Paul Mackerras Cc: Pavel Machek Cc: linux1394-devel@lists.sourceforge.net Cc: Chris Metcalf Cc: linux-s390@vger.kernel.org Cc: linux-wireless@vger.kernel.org Cc: "James E.J. Bottomley" Cc: Wim Van Sebroeck Cc: Michael Ellerman Cc: Ursula Braun Cc: Geert Uytterhoeven Cc: Viresh Kumar Cc: Harish Patil Cc: Stephen Boyd Cc: Guenter Roeck Cc: Manish Chopra Cc: Len Brown Cc: Arnd Bergmann Cc: linux-pm@vger.kernel.org Cc: Heiko Carstens Cc: Tejun Heo Cc: Julian Wiedmann Cc: John Stultz Cc: Mark Gross Cc: linux-watchdog@vger.kernel.org Cc: linux-scsi@vger.kernel.org Cc: "Martin K. Petersen" Cc: Greg Kroah-Hartman Cc: "Rafael J. Wysocki" Cc: Oleg Nesterov Cc: Ralf Baechle Cc: Stefan Richter Cc: Michael Reed Cc: netdev@vger.kernel.org Cc: Martin Schwidefsky Cc: Andrew Morton Cc: linuxppc-dev@lists.ozlabs.org Cc: Sudip Mukherjee Link: https://lkml.kernel.org/r/1507159627-127660-3-git-send-email-keescook@chromium.org --- drivers/cpufreq/powernv-cpufreq.c | 13 +++++++------ include/linux/timer.h | 2 -- 2 files changed, 7 insertions(+), 8 deletions(-) diff --git a/drivers/cpufreq/powernv-cpufreq.c b/drivers/cpufreq/powernv-cpufreq.c index 3ff5160..b6d7c4c 100644 --- a/drivers/cpufreq/powernv-cpufreq.c +++ b/drivers/cpufreq/powernv-cpufreq.c @@ -90,6 +90,7 @@ struct global_pstate_info { int last_gpstate_idx; spinlock_t gpstate_lock; struct timer_list timer; + struct cpufreq_policy *policy; }; static struct cpufreq_frequency_table powernv_freqs[POWERNV_MAX_PSTATES+1]; @@ -625,10 +626,10 @@ static inline void queue_gpstate_timer(struct global_pstate_info *gpstates) * according quadratic equation. Queues a new timer if it is still not equal * to local pstate */ -void gpstate_timer_handler(unsigned long data) +void gpstate_timer_handler(struct timer_list *t) { - struct cpufreq_policy *policy = (struct cpufreq_policy *)data; - struct global_pstate_info *gpstates = policy->driver_data; + struct global_pstate_info *gpstates = from_timer(gpstates, t, timer); + struct cpufreq_policy *policy = gpstates->policy; int gpstate_idx, lpstate_idx; unsigned long val; unsigned int time_diff = jiffies_to_msecs(jiffies) @@ -800,9 +801,9 @@ static int powernv_cpufreq_cpu_init(struct cpufreq_policy *policy) policy->driver_data = gpstates; /* initialize timer */ - init_timer_pinned_deferrable(&gpstates->timer); - gpstates->timer.data = (unsigned long)policy; - gpstates->timer.function = gpstate_timer_handler; + gpstates->policy = policy; + timer_setup(&gpstates->timer, gpstate_timer_handler, + TIMER_PINNED | TIMER_DEFERRABLE); gpstates->timer.expires = jiffies + msecs_to_jiffies(GPSTATE_TIMER_INTERVAL); spin_lock_init(&gpstates->gpstate_lock); diff --git a/include/linux/timer.h b/include/linux/timer.h index 5ef5c9e..d11e819 100644 --- a/include/linux/timer.h +++ b/include/linux/timer.h @@ -132,8 +132,6 @@ static inline void init_timer_on_stack_key(struct timer_list *timer, __init_timer((timer), TIMER_PINNED) #define init_timer_deferrable(timer) \ __init_timer((timer), TIMER_DEFERRABLE) -#define init_timer_pinned_deferrable(timer) \ - __init_timer((timer), TIMER_DEFERRABLE | TIMER_PINNED) #define init_timer_on_stack(timer) \ __init_timer_on_stack((timer), 0)