diff options
Diffstat (limited to 'kernel/time/tick-broadcast.c')
| -rw-r--r-- | kernel/time/tick-broadcast.c | 42 |
1 files changed, 21 insertions, 21 deletions
diff --git a/kernel/time/tick-broadcast.c b/kernel/time/tick-broadcast.c index c2ec25087a35..b3bafd5fc66d 100644 --- a/kernel/time/tick-broadcast.c +++ b/kernel/time/tick-broadcast.c | |||
| @@ -31,7 +31,7 @@ static struct tick_device tick_broadcast_device; | |||
| 31 | /* FIXME: Use cpumask_var_t. */ | 31 | /* FIXME: Use cpumask_var_t. */ |
| 32 | static DECLARE_BITMAP(tick_broadcast_mask, NR_CPUS); | 32 | static DECLARE_BITMAP(tick_broadcast_mask, NR_CPUS); |
| 33 | static DECLARE_BITMAP(tmpmask, NR_CPUS); | 33 | static DECLARE_BITMAP(tmpmask, NR_CPUS); |
| 34 | static DEFINE_SPINLOCK(tick_broadcast_lock); | 34 | static DEFINE_RAW_SPINLOCK(tick_broadcast_lock); |
| 35 | static int tick_broadcast_force; | 35 | static int tick_broadcast_force; |
| 36 | 36 | ||
| 37 | #ifdef CONFIG_TICK_ONESHOT | 37 | #ifdef CONFIG_TICK_ONESHOT |
| @@ -96,7 +96,7 @@ int tick_device_uses_broadcast(struct clock_event_device *dev, int cpu) | |||
| 96 | unsigned long flags; | 96 | unsigned long flags; |
| 97 | int ret = 0; | 97 | int ret = 0; |
| 98 | 98 | ||
| 99 | spin_lock_irqsave(&tick_broadcast_lock, flags); | 99 | raw_spin_lock_irqsave(&tick_broadcast_lock, flags); |
| 100 | 100 | ||
| 101 | /* | 101 | /* |
| 102 | * Devices might be registered with both periodic and oneshot | 102 | * Devices might be registered with both periodic and oneshot |
| @@ -122,7 +122,7 @@ int tick_device_uses_broadcast(struct clock_event_device *dev, int cpu) | |||
| 122 | tick_broadcast_clear_oneshot(cpu); | 122 | tick_broadcast_clear_oneshot(cpu); |
| 123 | } | 123 | } |
| 124 | } | 124 | } |
| 125 | spin_unlock_irqrestore(&tick_broadcast_lock, flags); | 125 | raw_spin_unlock_irqrestore(&tick_broadcast_lock, flags); |
| 126 | return ret; | 126 | return ret; |
| 127 | } | 127 | } |
| 128 | 128 | ||
| @@ -161,13 +161,13 @@ static void tick_do_broadcast(struct cpumask *mask) | |||
| 161 | */ | 161 | */ |
| 162 | static void tick_do_periodic_broadcast(void) | 162 | static void tick_do_periodic_broadcast(void) |
| 163 | { | 163 | { |
| 164 | spin_lock(&tick_broadcast_lock); | 164 | raw_spin_lock(&tick_broadcast_lock); |
| 165 | 165 | ||
| 166 | cpumask_and(to_cpumask(tmpmask), | 166 | cpumask_and(to_cpumask(tmpmask), |
| 167 | cpu_online_mask, tick_get_broadcast_mask()); | 167 | cpu_online_mask, tick_get_broadcast_mask()); |
| 168 | tick_do_broadcast(to_cpumask(tmpmask)); | 168 | tick_do_broadcast(to_cpumask(tmpmask)); |
| 169 | 169 | ||
| 170 | spin_unlock(&tick_broadcast_lock); | 170 | raw_spin_unlock(&tick_broadcast_lock); |
| 171 | } | 171 | } |
| 172 | 172 | ||
| 173 | /* | 173 | /* |
| @@ -212,7 +212,7 @@ static void tick_do_broadcast_on_off(unsigned long *reason) | |||
| 212 | unsigned long flags; | 212 | unsigned long flags; |
| 213 | int cpu, bc_stopped; | 213 | int cpu, bc_stopped; |
| 214 | 214 | ||
| 215 | spin_lock_irqsave(&tick_broadcast_lock, flags); | 215 | raw_spin_lock_irqsave(&tick_broadcast_lock, flags); |
| 216 | 216 | ||
| 217 | cpu = smp_processor_id(); | 217 | cpu = smp_processor_id(); |
| 218 | td = &per_cpu(tick_cpu_device, cpu); | 218 | td = &per_cpu(tick_cpu_device, cpu); |
| @@ -263,7 +263,7 @@ static void tick_do_broadcast_on_off(unsigned long *reason) | |||
| 263 | tick_broadcast_setup_oneshot(bc); | 263 | tick_broadcast_setup_oneshot(bc); |
| 264 | } | 264 | } |
| 265 | out: | 265 | out: |
| 266 | spin_unlock_irqrestore(&tick_broadcast_lock, flags); | 266 | raw_spin_unlock_irqrestore(&tick_broadcast_lock, flags); |
| 267 | } | 267 | } |
| 268 | 268 | ||
| 269 | /* | 269 | /* |
| @@ -299,7 +299,7 @@ void tick_shutdown_broadcast(unsigned int *cpup) | |||
| 299 | unsigned long flags; | 299 | unsigned long flags; |
| 300 | unsigned int cpu = *cpup; | 300 | unsigned int cpu = *cpup; |
| 301 | 301 | ||
| 302 | spin_lock_irqsave(&tick_broadcast_lock, flags); | 302 | raw_spin_lock_irqsave(&tick_broadcast_lock, flags); |
| 303 | 303 | ||
| 304 | bc = tick_broadcast_device.evtdev; | 304 | bc = tick_broadcast_device.evtdev; |
| 305 | cpumask_clear_cpu(cpu, tick_get_broadcast_mask()); | 305 | cpumask_clear_cpu(cpu, tick_get_broadcast_mask()); |
| @@ -309,7 +309,7 @@ void tick_shutdown_broadcast(unsigned int *cpup) | |||
| 309 | clockevents_shutdown(bc); | 309 | clockevents_shutdown(bc); |
| 310 | } | 310 | } |
| 311 | 311 | ||
| 312 | spin_unlock_irqrestore(&tick_broadcast_lock, flags); | 312 | raw_spin_unlock_irqrestore(&tick_broadcast_lock, flags); |
| 313 | } | 313 | } |
| 314 | 314 | ||
| 315 | void tick_suspend_broadcast(void) | 315 | void tick_suspend_broadcast(void) |
| @@ -317,13 +317,13 @@ void tick_suspend_broadcast(void) | |||
| 317 | struct clock_event_device *bc; | 317 | struct clock_event_device *bc; |
| 318 | unsigned long flags; | 318 | unsigned long flags; |
| 319 | 319 | ||
| 320 | spin_lock_irqsave(&tick_broadcast_lock, flags); | 320 | raw_spin_lock_irqsave(&tick_broadcast_lock, flags); |
| 321 | 321 | ||
| 322 | bc = tick_broadcast_device.evtdev; | 322 | bc = tick_broadcast_device.evtdev; |
| 323 | if (bc) | 323 | if (bc) |
| 324 | clockevents_shutdown(bc); | 324 | clockevents_shutdown(bc); |
| 325 | 325 | ||
| 326 | spin_unlock_irqrestore(&tick_broadcast_lock, flags); | 326 | raw_spin_unlock_irqrestore(&tick_broadcast_lock, flags); |
| 327 | } | 327 | } |
| 328 | 328 | ||
| 329 | int tick_resume_broadcast(void) | 329 | int tick_resume_broadcast(void) |
| @@ -332,7 +332,7 @@ int tick_resume_broadcast(void) | |||
| 332 | unsigned long flags; | 332 | unsigned long flags; |
| 333 | int broadcast = 0; | 333 | int broadcast = 0; |
| 334 | 334 | ||
| 335 | spin_lock_irqsave(&tick_broadcast_lock, flags); | 335 | raw_spin_lock_irqsave(&tick_broadcast_lock, flags); |
| 336 | 336 | ||
| 337 | bc = tick_broadcast_device.evtdev; | 337 | bc = tick_broadcast_device.evtdev; |
| 338 | 338 | ||
| @@ -351,7 +351,7 @@ int tick_resume_broadcast(void) | |||
| 351 | break; | 351 | break; |
| 352 | } | 352 | } |
| 353 | } | 353 | } |
| 354 | spin_unlock_irqrestore(&tick_broadcast_lock, flags); | 354 | raw_spin_unlock_irqrestore(&tick_broadcast_lock, flags); |
| 355 | 355 | ||
| 356 | return broadcast; | 356 | return broadcast; |
| 357 | } | 357 | } |
| @@ -405,7 +405,7 @@ static void tick_handle_oneshot_broadcast(struct clock_event_device *dev) | |||
| 405 | ktime_t now, next_event; | 405 | ktime_t now, next_event; |
| 406 | int cpu; | 406 | int cpu; |
| 407 | 407 | ||
| 408 | spin_lock(&tick_broadcast_lock); | 408 | raw_spin_lock(&tick_broadcast_lock); |
| 409 | again: | 409 | again: |
| 410 | dev->next_event.tv64 = KTIME_MAX; | 410 | dev->next_event.tv64 = KTIME_MAX; |
| 411 | next_event.tv64 = KTIME_MAX; | 411 | next_event.tv64 = KTIME_MAX; |
| @@ -443,7 +443,7 @@ again: | |||
| 443 | if (tick_broadcast_set_event(next_event, 0)) | 443 | if (tick_broadcast_set_event(next_event, 0)) |
| 444 | goto again; | 444 | goto again; |
| 445 | } | 445 | } |
| 446 | spin_unlock(&tick_broadcast_lock); | 446 | raw_spin_unlock(&tick_broadcast_lock); |
| 447 | } | 447 | } |
| 448 | 448 | ||
| 449 | /* | 449 | /* |
| @@ -457,7 +457,7 @@ void tick_broadcast_oneshot_control(unsigned long reason) | |||
| 457 | unsigned long flags; | 457 | unsigned long flags; |
| 458 | int cpu; | 458 | int cpu; |
| 459 | 459 | ||
| 460 | spin_lock_irqsave(&tick_broadcast_lock, flags); | 460 | raw_spin_lock_irqsave(&tick_broadcast_lock, flags); |
| 461 | 461 | ||
| 462 | /* | 462 | /* |
| 463 | * Periodic mode does not care about the enter/exit of power | 463 | * Periodic mode does not care about the enter/exit of power |
| @@ -492,7 +492,7 @@ void tick_broadcast_oneshot_control(unsigned long reason) | |||
| 492 | } | 492 | } |
| 493 | 493 | ||
| 494 | out: | 494 | out: |
| 495 | spin_unlock_irqrestore(&tick_broadcast_lock, flags); | 495 | raw_spin_unlock_irqrestore(&tick_broadcast_lock, flags); |
| 496 | } | 496 | } |
| 497 | 497 | ||
| 498 | /* | 498 | /* |
| @@ -563,13 +563,13 @@ void tick_broadcast_switch_to_oneshot(void) | |||
| 563 | struct clock_event_device *bc; | 563 | struct clock_event_device *bc; |
| 564 | unsigned long flags; | 564 | unsigned long flags; |
| 565 | 565 | ||
| 566 | spin_lock_irqsave(&tick_broadcast_lock, flags); | 566 | raw_spin_lock_irqsave(&tick_broadcast_lock, flags); |
| 567 | 567 | ||
| 568 | tick_broadcast_device.mode = TICKDEV_MODE_ONESHOT; | 568 | tick_broadcast_device.mode = TICKDEV_MODE_ONESHOT; |
| 569 | bc = tick_broadcast_device.evtdev; | 569 | bc = tick_broadcast_device.evtdev; |
| 570 | if (bc) | 570 | if (bc) |
| 571 | tick_broadcast_setup_oneshot(bc); | 571 | tick_broadcast_setup_oneshot(bc); |
| 572 | spin_unlock_irqrestore(&tick_broadcast_lock, flags); | 572 | raw_spin_unlock_irqrestore(&tick_broadcast_lock, flags); |
| 573 | } | 573 | } |
| 574 | 574 | ||
| 575 | 575 | ||
| @@ -581,7 +581,7 @@ void tick_shutdown_broadcast_oneshot(unsigned int *cpup) | |||
| 581 | unsigned long flags; | 581 | unsigned long flags; |
| 582 | unsigned int cpu = *cpup; | 582 | unsigned int cpu = *cpup; |
| 583 | 583 | ||
| 584 | spin_lock_irqsave(&tick_broadcast_lock, flags); | 584 | raw_spin_lock_irqsave(&tick_broadcast_lock, flags); |
| 585 | 585 | ||
| 586 | /* | 586 | /* |
| 587 | * Clear the broadcast mask flag for the dead cpu, but do not | 587 | * Clear the broadcast mask flag for the dead cpu, but do not |
| @@ -589,7 +589,7 @@ void tick_shutdown_broadcast_oneshot(unsigned int *cpup) | |||
| 589 | */ | 589 | */ |
| 590 | cpumask_clear_cpu(cpu, tick_get_broadcast_oneshot_mask()); | 590 | cpumask_clear_cpu(cpu, tick_get_broadcast_oneshot_mask()); |
| 591 | 591 | ||
| 592 | spin_unlock_irqrestore(&tick_broadcast_lock, flags); | 592 | raw_spin_unlock_irqrestore(&tick_broadcast_lock, flags); |
| 593 | } | 593 | } |
| 594 | 594 | ||
| 595 | /* | 595 | /* |
