Commit b09064b7 authored by Kees Cook's avatar Kees Cook Committed by David S. Miller

bna: Convert timers to use timer_setup()

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: Rasesh Mody <rasesh.mody@cavium.com>
Cc: Sudarsana Kalluru <sudarsana.kalluru@cavium.com>
Cc: Dept-GELinuxNICDev@cavium.com
Cc: netdev@vger.kernel.org
Signed-off-by: default avatarKees Cook <keescook@chromium.org>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 495ad986
...@@ -1693,9 +1693,9 @@ bnad_rx_res_alloc(struct bnad *bnad, struct bna_res_info *res_info, ...@@ -1693,9 +1693,9 @@ bnad_rx_res_alloc(struct bnad *bnad, struct bna_res_info *res_info,
/* Timer callbacks */ /* Timer callbacks */
/* a) IOC timer */ /* a) IOC timer */
static void static void
bnad_ioc_timeout(unsigned long data) bnad_ioc_timeout(struct timer_list *t)
{ {
struct bnad *bnad = (struct bnad *)data; struct bnad *bnad = from_timer(bnad, t, bna.ioceth.ioc.ioc_timer);
unsigned long flags; unsigned long flags;
spin_lock_irqsave(&bnad->bna_lock, flags); spin_lock_irqsave(&bnad->bna_lock, flags);
...@@ -1704,9 +1704,9 @@ bnad_ioc_timeout(unsigned long data) ...@@ -1704,9 +1704,9 @@ bnad_ioc_timeout(unsigned long data)
} }
static void static void
bnad_ioc_hb_check(unsigned long data) bnad_ioc_hb_check(struct timer_list *t)
{ {
struct bnad *bnad = (struct bnad *)data; struct bnad *bnad = from_timer(bnad, t, bna.ioceth.ioc.hb_timer);
unsigned long flags; unsigned long flags;
spin_lock_irqsave(&bnad->bna_lock, flags); spin_lock_irqsave(&bnad->bna_lock, flags);
...@@ -1715,9 +1715,9 @@ bnad_ioc_hb_check(unsigned long data) ...@@ -1715,9 +1715,9 @@ bnad_ioc_hb_check(unsigned long data)
} }
static void static void
bnad_iocpf_timeout(unsigned long data) bnad_iocpf_timeout(struct timer_list *t)
{ {
struct bnad *bnad = (struct bnad *)data; struct bnad *bnad = from_timer(bnad, t, bna.ioceth.ioc.iocpf_timer);
unsigned long flags; unsigned long flags;
spin_lock_irqsave(&bnad->bna_lock, flags); spin_lock_irqsave(&bnad->bna_lock, flags);
...@@ -1726,9 +1726,9 @@ bnad_iocpf_timeout(unsigned long data) ...@@ -1726,9 +1726,9 @@ bnad_iocpf_timeout(unsigned long data)
} }
static void static void
bnad_iocpf_sem_timeout(unsigned long data) bnad_iocpf_sem_timeout(struct timer_list *t)
{ {
struct bnad *bnad = (struct bnad *)data; struct bnad *bnad = from_timer(bnad, t, bna.ioceth.ioc.sem_timer);
unsigned long flags; unsigned long flags;
spin_lock_irqsave(&bnad->bna_lock, flags); spin_lock_irqsave(&bnad->bna_lock, flags);
...@@ -1748,9 +1748,9 @@ bnad_iocpf_sem_timeout(unsigned long data) ...@@ -1748,9 +1748,9 @@ bnad_iocpf_sem_timeout(unsigned long data)
/* b) Dynamic Interrupt Moderation Timer */ /* b) Dynamic Interrupt Moderation Timer */
static void static void
bnad_dim_timeout(unsigned long data) bnad_dim_timeout(struct timer_list *t)
{ {
struct bnad *bnad = (struct bnad *)data; struct bnad *bnad = from_timer(bnad, t, dim_timer);
struct bnad_rx_info *rx_info; struct bnad_rx_info *rx_info;
struct bnad_rx_ctrl *rx_ctrl; struct bnad_rx_ctrl *rx_ctrl;
int i, j; int i, j;
...@@ -1781,9 +1781,9 @@ bnad_dim_timeout(unsigned long data) ...@@ -1781,9 +1781,9 @@ bnad_dim_timeout(unsigned long data)
/* c) Statistics Timer */ /* c) Statistics Timer */
static void static void
bnad_stats_timeout(unsigned long data) bnad_stats_timeout(struct timer_list *t)
{ {
struct bnad *bnad = (struct bnad *)data; struct bnad *bnad = from_timer(bnad, t, stats_timer);
unsigned long flags; unsigned long flags;
if (!netif_running(bnad->netdev) || if (!netif_running(bnad->netdev) ||
...@@ -1804,8 +1804,7 @@ bnad_dim_timer_start(struct bnad *bnad) ...@@ -1804,8 +1804,7 @@ bnad_dim_timer_start(struct bnad *bnad)
{ {
if (bnad->cfg_flags & BNAD_CF_DIM_ENABLED && if (bnad->cfg_flags & BNAD_CF_DIM_ENABLED &&
!test_bit(BNAD_RF_DIM_TIMER_RUNNING, &bnad->run_flags)) { !test_bit(BNAD_RF_DIM_TIMER_RUNNING, &bnad->run_flags)) {
setup_timer(&bnad->dim_timer, bnad_dim_timeout, timer_setup(&bnad->dim_timer, bnad_dim_timeout, 0);
(unsigned long)bnad);
set_bit(BNAD_RF_DIM_TIMER_RUNNING, &bnad->run_flags); set_bit(BNAD_RF_DIM_TIMER_RUNNING, &bnad->run_flags);
mod_timer(&bnad->dim_timer, mod_timer(&bnad->dim_timer,
jiffies + msecs_to_jiffies(BNAD_DIM_TIMER_FREQ)); jiffies + msecs_to_jiffies(BNAD_DIM_TIMER_FREQ));
...@@ -1823,8 +1822,7 @@ bnad_stats_timer_start(struct bnad *bnad) ...@@ -1823,8 +1822,7 @@ bnad_stats_timer_start(struct bnad *bnad)
spin_lock_irqsave(&bnad->bna_lock, flags); spin_lock_irqsave(&bnad->bna_lock, flags);
if (!test_and_set_bit(BNAD_RF_STATS_TIMER_RUNNING, &bnad->run_flags)) { if (!test_and_set_bit(BNAD_RF_STATS_TIMER_RUNNING, &bnad->run_flags)) {
setup_timer(&bnad->stats_timer, bnad_stats_timeout, timer_setup(&bnad->stats_timer, bnad_stats_timeout, 0);
(unsigned long)bnad);
mod_timer(&bnad->stats_timer, mod_timer(&bnad->stats_timer,
jiffies + msecs_to_jiffies(BNAD_STATS_TIMER_FREQ)); jiffies + msecs_to_jiffies(BNAD_STATS_TIMER_FREQ));
} }
...@@ -3692,14 +3690,11 @@ bnad_pci_probe(struct pci_dev *pdev, ...@@ -3692,14 +3690,11 @@ bnad_pci_probe(struct pci_dev *pdev,
goto res_free; goto res_free;
/* Set up timers */ /* Set up timers */
setup_timer(&bnad->bna.ioceth.ioc.ioc_timer, bnad_ioc_timeout, timer_setup(&bnad->bna.ioceth.ioc.ioc_timer, bnad_ioc_timeout, 0);
(unsigned long)bnad); timer_setup(&bnad->bna.ioceth.ioc.hb_timer, bnad_ioc_hb_check, 0);
setup_timer(&bnad->bna.ioceth.ioc.hb_timer, bnad_ioc_hb_check, timer_setup(&bnad->bna.ioceth.ioc.iocpf_timer, bnad_iocpf_timeout, 0);
(unsigned long)bnad); timer_setup(&bnad->bna.ioceth.ioc.sem_timer, bnad_iocpf_sem_timeout,
setup_timer(&bnad->bna.ioceth.ioc.iocpf_timer, bnad_iocpf_timeout, 0);
(unsigned long)bnad);
setup_timer(&bnad->bna.ioceth.ioc.sem_timer, bnad_iocpf_sem_timeout,
(unsigned long)bnad);
/* /*
* Start the chip * Start the chip
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment