timer: Remove init_timer_deferrable() in favor of timer_setup()
This refactors the only users of init_timer_deferrable() to use the new timer_setup() and from_timer(). Removes definition of init_timer_deferrable(). Signed-off-by: Kees Cook <keescook@chromium.org> Signed-off-by: Thomas Gleixner <tglx@linutronix.de> Acked-by: David S. Miller <davem@davemloft.net> # for networking parts Acked-by: Sebastian Reichel <sre@kernel.org> # for drivers/hsi parts Cc: linux-mips@linux-mips.org Cc: Petr Mladek <pmladek@suse.com> Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org> Cc: Lai Jiangshan <jiangshanlai@gmail.com> Cc: Oleg Nesterov <oleg@redhat.com> Cc: Kalle Valo <kvalo@qca.qualcomm.com> Cc: Paul Mackerras <paulus@samba.org> Cc: Pavel Machek <pavel@ucw.cz> Cc: linux1394-devel@lists.sourceforge.net Cc: Chris Metcalf <cmetcalf@mellanox.com> Cc: linux-s390@vger.kernel.org Cc: "James E.J. Bottomley" <jejb@linux.vnet.ibm.com> Cc: Wim Van Sebroeck <wim@iguana.be> Cc: Michael Ellerman <mpe@ellerman.id.au> Cc: Ursula Braun <ubraun@linux.vnet.ibm.com> Cc: Geert Uytterhoeven <geert@linux-m68k.org> Cc: Viresh Kumar <viresh.kumar@linaro.org> Cc: Harish Patil <harish.patil@cavium.com> Cc: Stephen Boyd <sboyd@codeaurora.org> Cc: Guenter Roeck <linux@roeck-us.net> Cc: Manish Chopra <manish.chopra@cavium.com> Cc: Len Brown <len.brown@intel.com> Cc: Arnd Bergmann <arnd@arndb.de> Cc: linux-pm@vger.kernel.org Cc: Heiko Carstens <heiko.carstens@de.ibm.com> Cc: Tejun Heo <tj@kernel.org> Cc: Julian Wiedmann <jwi@linux.vnet.ibm.com> Cc: John Stultz <john.stultz@linaro.org> Cc: Mark Gross <mark.gross@intel.com> Cc: "Rafael J. Wysocki" <rjw@rjwysocki.net> Cc: linux-watchdog@vger.kernel.org Cc: linux-scsi@vger.kernel.org Cc: "Martin K. Petersen" <martin.petersen@oracle.com> Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org> Cc: linux-wireless@vger.kernel.org Cc: Sebastian Reichel <sre@kernel.org> Cc: Ralf Baechle <ralf@linux-mips.org> Cc: Stefan Richter <stefanr@s5r6.in-berlin.de> Cc: Michael Reed <mdr@sgi.com> Cc: netdev@vger.kernel.org Cc: Martin Schwidefsky <schwidefsky@de.ibm.com> Cc: Andrew Morton <akpm@linux-foundation.org> Cc: linuxppc-dev@lists.ozlabs.org Cc: Sudip Mukherjee <sudipm.mukherjee@gmail.com> Link: https://lkml.kernel.org/r/1507159627-127660-6-git-send-email-keescook@chromium.org
This commit is contained in:

committed by
Thomas Gleixner

parent
185981d54a
commit
df7e828c1b
@@ -464,10 +464,10 @@ static void ssip_error(struct hsi_client *cl)
|
||||
hsi_async_read(cl, msg);
|
||||
}
|
||||
|
||||
static void ssip_keep_alive(unsigned long data)
|
||||
static void ssip_keep_alive(struct timer_list *t)
|
||||
{
|
||||
struct hsi_client *cl = (struct hsi_client *)data;
|
||||
struct ssi_protocol *ssi = hsi_client_drvdata(cl);
|
||||
struct ssi_protocol *ssi = from_timer(ssi, t, keep_alive);
|
||||
struct hsi_client *cl = ssi->cl;
|
||||
|
||||
dev_dbg(&cl->device, "Keep alive kick in: m(%d) r(%d) s(%d)\n",
|
||||
ssi->main_state, ssi->recv_state, ssi->send_state);
|
||||
@@ -490,9 +490,19 @@ static void ssip_keep_alive(unsigned long data)
|
||||
spin_unlock(&ssi->lock);
|
||||
}
|
||||
|
||||
static void ssip_wd(unsigned long data)
|
||||
static void ssip_rx_wd(struct timer_list *t)
|
||||
{
|
||||
struct hsi_client *cl = (struct hsi_client *)data;
|
||||
struct ssi_protocol *ssi = from_timer(ssi, t, rx_wd);
|
||||
struct hsi_client *cl = ssi->cl;
|
||||
|
||||
dev_err(&cl->device, "Watchdog trigerred\n");
|
||||
ssip_error(cl);
|
||||
}
|
||||
|
||||
static void ssip_tx_wd(unsigned long data)
|
||||
{
|
||||
struct ssi_protocol *ssi = from_timer(ssi, t, tx_wd);
|
||||
struct hsi_client *cl = ssi->cl;
|
||||
|
||||
dev_err(&cl->device, "Watchdog trigerred\n");
|
||||
ssip_error(cl);
|
||||
@@ -1084,15 +1094,9 @@ static int ssi_protocol_probe(struct device *dev)
|
||||
}
|
||||
|
||||
spin_lock_init(&ssi->lock);
|
||||
init_timer_deferrable(&ssi->rx_wd);
|
||||
init_timer_deferrable(&ssi->tx_wd);
|
||||
init_timer(&ssi->keep_alive);
|
||||
ssi->rx_wd.data = (unsigned long)cl;
|
||||
ssi->rx_wd.function = ssip_wd;
|
||||
ssi->tx_wd.data = (unsigned long)cl;
|
||||
ssi->tx_wd.function = ssip_wd;
|
||||
ssi->keep_alive.data = (unsigned long)cl;
|
||||
ssi->keep_alive.function = ssip_keep_alive;
|
||||
timer_setup(&ssi->rx_wd, ssip_rx_wd, TIMER_DEFERRABLE);
|
||||
timer_setup(&ssi->tx_wd, ssip_tx_wd, TIMER_DEFERRABLE);
|
||||
timer_setup(&ssi->keep_alive, ssip_keep_alive, 0);
|
||||
INIT_LIST_HEAD(&ssi->txqueue);
|
||||
INIT_LIST_HEAD(&ssi->cmdqueue);
|
||||
atomic_set(&ssi->tx_usecnt, 0);
|
||||
|
Reference in New Issue
Block a user