scsi: smartpqi: Convert timers to use timer_setup()
Subsystems (2)
PATCH 1/1 scsi: smartpqi: 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 "Martin K. Petersen" <[email protected]>
Cc Don Brace <[email protected]>
Cc "James E.J. Bottomley" <[email protected]>
Signed-off-by Kees Cook <[email protected]>
--- drivers/scsi/smartpqi/smartpqi_init.c | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-)
drivers/scsi/smartpqi/smartpqi_init.c +4 -5
@@ -2860,11 +2860,12 @@ static void pqi_event_worker(struct work_struct *work)#define PQI_HEARTBEAT_TIMER_INTERVAL (10 * HZ) -static void pqi_heartbeat_timer_handler (unsigned long data) +static void pqi_heartbeat_timer_handler (struct timer_list *t) {int num_interrupts;u32 heartbeat_count; -struct pqi_ctrl_info *ctrl_info = (struct pqi_ctrl_info *)data; +struct pqi_ctrl_info *ctrl_info =from_timer (ctrl_info, t, + heartbeat_timer);pqi_check_ctrl_health (ctrl_info);if (pqi_ctrl_offline (ctrl_info))
@@ -2902,8 +2903,6 @@ static void pqi_start_heartbeat_timer(struct pqi_ctrl_info *ctrl_info) ctrl_info->heartbeat_timer.expires = jiffies +PQI_HEARTBEAT_TIMER_INTERVAL ; - ctrl_info->heartbeat_timer.data = (unsigned long )ctrl_info; - ctrl_info->heartbeat_timer.function = pqi_heartbeat_timer_handler;add_timer (&ctrl_info->heartbeat_timer); }
@@ -6465,7 +6464,7 @@ static struct pqi_ctrl_info *pqi_alloc_ctrl_info(int numa_node)INIT_DELAYED_WORK (&ctrl_info->rescan_work, pqi_rescan_worker);INIT_DELAYED_WORK (&ctrl_info->update_time_work, pqi_update_time_worker); -init_timer (&ctrl_info->heartbeat_timer); +timer_setup (&ctrl_info->heartbeat_timer, pqi_heartbeat_timer_handler,0 );INIT_WORK (&ctrl_info->ctrl_offline_work, pqi_ctrl_offline_worker); sema_init(&ctrl_info->sync_request_sem,
Signature · 6 lines
2.7.4 -- Kees Cook Pixel Security
Kees,
Quoted 3 lines
In preparation for unconditionally passing the struct
timer_listpointer to all timer callbacks, switch to using the newtimer_setup()andfrom_timer()to pass the timer pointer explicitly.
Reviewed-by Martin K. Petersen <[email protected]>
Signature · 1 line
Martin K. Petersen Oracle Linux Engineering