ahci: Convert timers to use timer_setup()
PATCH 1/1 ahci: 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. Adds a pointer back to link structure.
Cc Tejun Heo <[email protected]>
Signed-off-by Kees Cook <[email protected]>
Acked-by Tejun Heo <[email protected]>
---
Tejun asked that this go via the timer tree...
--- drivers/ata/ahci.h | 1 + drivers/ata/libahci.c | 11 ++++++----- 2 files changed, 7 insertions(+), 5 deletions(-)
drivers/ata/ahci.h +1 -0
@@ -303,6 +303,7 @@ struct ahci_em_priv {unsigned long saved_activity;unsigned long activity;unsigned long led_state; +struct ata_link *link; };struct ahci_port_priv {
drivers/ata/libahci.c +6 -5
@@ -968,12 +968,12 @@ static void ahci_sw_activity(struct ata_link *link)mod_timer (&emp->timer, jiffies +msecs_to_jiffies (10 )); } -static void ahci_sw_activity_blink (unsigned long arg) +static void ahci_sw_activity_blink (struct timer_list *t) { -struct ata_link *link = (struct ata_link *)arg; +struct ahci_em_priv *emp =from_timer (emp, t, timer); +struct ata_link *link = emp->link;struct ata_port *ap = link->ap; -struct ahci_port_priv *pp = ap->private_data; -struct ahci_em_priv *emp = &pp->em_priv[link->pmp]; +unsigned long led_message = emp->led_state;u32 activity_led_state;unsigned long flags;
@@ -1020,7 +1020,8 @@ static void ahci_init_sw_activity(struct ata_link *link)/* init activity stats, setup timer */ emp->saved_activity = emp->activity =0 ; -setup_timer (&emp->timer, ahci_sw_activity_blink, (unsigned long )link); + emp->link = link; +timer_setup (&emp->timer, ahci_sw_activity_blink,0 );/* check our blink policy and set flag for link if it's enabled */ if (emp->blink_policy)
Signature · 6 lines
2.7.4 -- Kees Cook Pixel Security
tip-bot for Kees Cook
merge botahci: Convert timers to use timer_setup()
Commit-ID: 1843594c56bd79598a7ca4e6f7b6173e7d71b941 Gitweb: https://git.kernel.org/tip/1843594c56bd79598a7ca4e6f7b6173e7d71b941 Author: Kees Cook <[email protected]> AuthorDate: Mon, 16 Oct 2017 14:56:58 -0700 Committer: Thomas Gleixner <[email protected]> CommitDate: Thu, 19 Oct 2017 23:15:16 +0200
ahci: 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. Adds a pointer back to link structure.
Signed-off-by Kees Cook <[email protected]>
Signed-off-by Thomas Gleixner <[email protected]>
Acked-by Tejun Heo <[email protected]>
--- drivers/ata/ahci.h | 1 + drivers/ata/libahci.c | 11 ++++++----- 2 files changed, 7 insertions(+), 5 deletions(-)
drivers/ata/ahci.h +1 -0
@@ -303,6 +303,7 @@ struct ahci_em_priv {unsigned long saved_activity;unsigned long activity;unsigned long led_state; +struct ata_link *link; };struct ahci_port_priv {
drivers/ata/libahci.c +6 -5
@@ -968,12 +968,12 @@ static void ahci_sw_activity(struct ata_link *link)mod_timer (&emp->timer, jiffies +msecs_to_jiffies (10 )); } -static void ahci_sw_activity_blink (unsigned long arg) +static void ahci_sw_activity_blink (struct timer_list *t) { -struct ata_link *link = (struct ata_link *)arg; +struct ahci_em_priv *emp =from_timer (emp, t, timer); +struct ata_link *link = emp->link;struct ata_port *ap = link->ap; -struct ahci_port_priv *pp = ap->private_data; -struct ahci_em_priv *emp = &pp->em_priv[link->pmp]; +unsigned long led_message = emp->led_state;u32 activity_led_state;unsigned long flags;
@@ -1020,7 +1020,8 @@ static void ahci_init_sw_activity(struct ata_link *link)/* init activity stats, setup timer */ emp->saved_activity = emp->activity =0 ; -setup_timer (&emp->timer, ahci_sw_activity_blink, (unsigned long )link); + emp->link = link; +timer_setup (&emp->timer, ahci_sw_activity_blink,0 );/* check our blink policy and set flag for link if it's enabled */ if (emp->blink_policy)