| .. | .. | 
|---|
| 1 | 1 |  // SPDX-License-Identifier: GPL-2.0 | 
|---|
| 2 | 2 |  /* | 
|---|
| 3 |  | - * linux/kernel/time/tick-broadcast-hrtimer.c  | 
|---|
| 4 |  | - * This file emulates a local clock event device  | 
|---|
| 5 |  | - * via a pseudo clock device.  | 
|---|
 | 3 | + * Emulate a local clock event device via a pseudo clock device.  | 
|---|
| 6 | 4 |   */ | 
|---|
| 7 | 5 |  #include <linux/cpu.h> | 
|---|
| 8 | 6 |  #include <linux/err.h> | 
|---|
| .. | .. | 
|---|
| 64 | 62 |  	 * hrtimer_start() can call into tracing. | 
|---|
| 65 | 63 |  	 */ | 
|---|
| 66 | 64 |  	RCU_NONIDLE( { | 
|---|
| 67 |  | -		hrtimer_start(&bctimer, expires, HRTIMER_MODE_ABS_PINNED);  | 
|---|
 | 65 | +		hrtimer_start(&bctimer, expires, HRTIMER_MODE_ABS_PINNED_HARD);  | 
|---|
| 68 | 66 |  		/* | 
|---|
| 69 | 67 |  		 * The core tick broadcast mode expects bc->bound_on to be set | 
|---|
| 70 | 68 |  		 * correctly to prevent a CPU which has the broadcast hrtimer | 
|---|
| .. | .. | 
|---|
| 107 | 105 |   | 
|---|
| 108 | 106 |  void tick_setup_hrtimer_broadcast(void) | 
|---|
| 109 | 107 |  { | 
|---|
| 110 |  | -	hrtimer_init(&bctimer, CLOCK_MONOTONIC, HRTIMER_MODE_ABS);  | 
|---|
 | 108 | +	hrtimer_init(&bctimer, CLOCK_MONOTONIC, HRTIMER_MODE_ABS_HARD);  | 
|---|
| 111 | 109 |  	bctimer.function = bc_handler; | 
|---|
| 112 | 110 |  	clockevents_register_device(&ce_broadcast_hrtimer); | 
|---|
| 113 | 111 |  } | 
|---|