diff options
Diffstat (limited to 'kernel/time/ntp.c')
-rw-r--r-- | kernel/time/ntp.c | 26 |
1 files changed, 13 insertions, 13 deletions
diff --git a/kernel/time/ntp.c b/kernel/time/ntp.c index b10a42bb0165..072bb066bb7d 100644 --- a/kernel/time/ntp.c +++ b/kernel/time/ntp.c | |||
@@ -23,7 +23,7 @@ | |||
23 | * NTP timekeeping variables: | 23 | * NTP timekeeping variables: |
24 | */ | 24 | */ |
25 | 25 | ||
26 | DEFINE_SPINLOCK(ntp_lock); | 26 | DEFINE_RAW_SPINLOCK(ntp_lock); |
27 | 27 | ||
28 | 28 | ||
29 | /* USER_HZ period (usecs): */ | 29 | /* USER_HZ period (usecs): */ |
@@ -348,7 +348,7 @@ void ntp_clear(void) | |||
348 | { | 348 | { |
349 | unsigned long flags; | 349 | unsigned long flags; |
350 | 350 | ||
351 | spin_lock_irqsave(&ntp_lock, flags); | 351 | raw_spin_lock_irqsave(&ntp_lock, flags); |
352 | 352 | ||
353 | time_adjust = 0; /* stop active adjtime() */ | 353 | time_adjust = 0; /* stop active adjtime() */ |
354 | time_status |= STA_UNSYNC; | 354 | time_status |= STA_UNSYNC; |
@@ -362,7 +362,7 @@ void ntp_clear(void) | |||
362 | 362 | ||
363 | /* Clear PPS state variables */ | 363 | /* Clear PPS state variables */ |
364 | pps_clear(); | 364 | pps_clear(); |
365 | spin_unlock_irqrestore(&ntp_lock, flags); | 365 | raw_spin_unlock_irqrestore(&ntp_lock, flags); |
366 | 366 | ||
367 | } | 367 | } |
368 | 368 | ||
@@ -372,9 +372,9 @@ u64 ntp_tick_length(void) | |||
372 | unsigned long flags; | 372 | unsigned long flags; |
373 | s64 ret; | 373 | s64 ret; |
374 | 374 | ||
375 | spin_lock_irqsave(&ntp_lock, flags); | 375 | raw_spin_lock_irqsave(&ntp_lock, flags); |
376 | ret = tick_length; | 376 | ret = tick_length; |
377 | spin_unlock_irqrestore(&ntp_lock, flags); | 377 | raw_spin_unlock_irqrestore(&ntp_lock, flags); |
378 | return ret; | 378 | return ret; |
379 | } | 379 | } |
380 | 380 | ||
@@ -395,7 +395,7 @@ int second_overflow(unsigned long secs) | |||
395 | int leap = 0; | 395 | int leap = 0; |
396 | unsigned long flags; | 396 | unsigned long flags; |
397 | 397 | ||
398 | spin_lock_irqsave(&ntp_lock, flags); | 398 | raw_spin_lock_irqsave(&ntp_lock, flags); |
399 | 399 | ||
400 | /* | 400 | /* |
401 | * Leap second processing. If in leap-insert state at the end of the | 401 | * Leap second processing. If in leap-insert state at the end of the |
@@ -479,7 +479,7 @@ int second_overflow(unsigned long secs) | |||
479 | time_adjust = 0; | 479 | time_adjust = 0; |
480 | 480 | ||
481 | out: | 481 | out: |
482 | spin_unlock_irqrestore(&ntp_lock, flags); | 482 | raw_spin_unlock_irqrestore(&ntp_lock, flags); |
483 | 483 | ||
484 | return leap; | 484 | return leap; |
485 | } | 485 | } |
@@ -672,7 +672,7 @@ int do_adjtimex(struct timex *txc) | |||
672 | 672 | ||
673 | getnstimeofday(&ts); | 673 | getnstimeofday(&ts); |
674 | 674 | ||
675 | spin_lock_irq(&ntp_lock); | 675 | raw_spin_lock_irq(&ntp_lock); |
676 | 676 | ||
677 | if (txc->modes & ADJ_ADJTIME) { | 677 | if (txc->modes & ADJ_ADJTIME) { |
678 | long save_adjust = time_adjust; | 678 | long save_adjust = time_adjust; |
@@ -714,7 +714,7 @@ int do_adjtimex(struct timex *txc) | |||
714 | /* fill PPS status fields */ | 714 | /* fill PPS status fields */ |
715 | pps_fill_timex(txc); | 715 | pps_fill_timex(txc); |
716 | 716 | ||
717 | spin_unlock_irq(&ntp_lock); | 717 | raw_spin_unlock_irq(&ntp_lock); |
718 | 718 | ||
719 | txc->time.tv_sec = ts.tv_sec; | 719 | txc->time.tv_sec = ts.tv_sec; |
720 | txc->time.tv_usec = ts.tv_nsec; | 720 | txc->time.tv_usec = ts.tv_nsec; |
@@ -912,7 +912,7 @@ void hardpps(const struct timespec *phase_ts, const struct timespec *raw_ts) | |||
912 | 912 | ||
913 | pts_norm = pps_normalize_ts(*phase_ts); | 913 | pts_norm = pps_normalize_ts(*phase_ts); |
914 | 914 | ||
915 | spin_lock_irqsave(&ntp_lock, flags); | 915 | raw_spin_lock_irqsave(&ntp_lock, flags); |
916 | 916 | ||
917 | /* clear the error bits, they will be set again if needed */ | 917 | /* clear the error bits, they will be set again if needed */ |
918 | time_status &= ~(STA_PPSJITTER | STA_PPSWANDER | STA_PPSERROR); | 918 | time_status &= ~(STA_PPSJITTER | STA_PPSWANDER | STA_PPSERROR); |
@@ -925,7 +925,7 @@ void hardpps(const struct timespec *phase_ts, const struct timespec *raw_ts) | |||
925 | * just start the frequency interval */ | 925 | * just start the frequency interval */ |
926 | if (unlikely(pps_fbase.tv_sec == 0)) { | 926 | if (unlikely(pps_fbase.tv_sec == 0)) { |
927 | pps_fbase = *raw_ts; | 927 | pps_fbase = *raw_ts; |
928 | spin_unlock_irqrestore(&ntp_lock, flags); | 928 | raw_spin_unlock_irqrestore(&ntp_lock, flags); |
929 | return; | 929 | return; |
930 | } | 930 | } |
931 | 931 | ||
@@ -940,7 +940,7 @@ void hardpps(const struct timespec *phase_ts, const struct timespec *raw_ts) | |||
940 | time_status |= STA_PPSJITTER; | 940 | time_status |= STA_PPSJITTER; |
941 | /* restart the frequency calibration interval */ | 941 | /* restart the frequency calibration interval */ |
942 | pps_fbase = *raw_ts; | 942 | pps_fbase = *raw_ts; |
943 | spin_unlock_irqrestore(&ntp_lock, flags); | 943 | raw_spin_unlock_irqrestore(&ntp_lock, flags); |
944 | pr_err("hardpps: PPSJITTER: bad pulse\n"); | 944 | pr_err("hardpps: PPSJITTER: bad pulse\n"); |
945 | return; | 945 | return; |
946 | } | 946 | } |
@@ -957,7 +957,7 @@ void hardpps(const struct timespec *phase_ts, const struct timespec *raw_ts) | |||
957 | 957 | ||
958 | hardpps_update_phase(pts_norm.nsec); | 958 | hardpps_update_phase(pts_norm.nsec); |
959 | 959 | ||
960 | spin_unlock_irqrestore(&ntp_lock, flags); | 960 | raw_spin_unlock_irqrestore(&ntp_lock, flags); |
961 | } | 961 | } |
962 | EXPORT_SYMBOL(hardpps); | 962 | EXPORT_SYMBOL(hardpps); |
963 | 963 | ||