diff options
Diffstat (limited to 'drivers/misc/sgi-xp/xpc_main.c')
| -rw-r--r-- | drivers/misc/sgi-xp/xpc_main.c | 15 | 
1 files changed, 6 insertions, 9 deletions
diff --git a/drivers/misc/sgi-xp/xpc_main.c b/drivers/misc/sgi-xp/xpc_main.c index 7f327121e6d7..0c775d6fcf59 100644 --- a/drivers/misc/sgi-xp/xpc_main.c +++ b/drivers/misc/sgi-xp/xpc_main.c @@ -172,9 +172,9 @@ struct xpc_arch_operations xpc_arch_ops;   * Timer function to enforce the timelimit on the partition disengage.   */  static void -xpc_timeout_partition_disengage(unsigned long data) +xpc_timeout_partition_disengage(struct timer_list *t)  { -	struct xpc_partition *part = (struct xpc_partition *)data; +	struct xpc_partition *part = from_timer(part, t, disengage_timer);  	DBUG_ON(time_is_after_jiffies(part->disengage_timeout)); @@ -190,7 +190,7 @@ xpc_timeout_partition_disengage(unsigned long data)   * specify when the next timeout should occur.   */  static void -xpc_hb_beater(unsigned long dummy) +xpc_hb_beater(struct timer_list *unused)  {  	xpc_arch_ops.increment_heartbeat(); @@ -205,8 +205,7 @@ static void  xpc_start_hb_beater(void)  {  	xpc_arch_ops.heartbeat_init(); -	init_timer(&xpc_hb_timer); -	xpc_hb_timer.function = xpc_hb_beater; +	timer_setup(&xpc_hb_timer, xpc_hb_beater, 0);  	xpc_hb_beater(0);  } @@ -931,10 +930,8 @@ xpc_setup_partitions(void)  		part->act_state = XPC_P_AS_INACTIVE;  		XPC_SET_REASON(part, 0, 0); -		init_timer(&part->disengage_timer); -		part->disengage_timer.function = -		    xpc_timeout_partition_disengage; -		part->disengage_timer.data = (unsigned long)part; +		timer_setup(&part->disengage_timer, +			    xpc_timeout_partition_disengage, 0);  		part->setup_state = XPC_P_SS_UNSET;  		init_waitqueue_head(&part->teardown_wq);  | 

