diff options
Diffstat (limited to 'kernel')
| -rw-r--r-- | kernel/power/hibernate.c | 8 | ||||
| -rw-r--r-- | kernel/power/user.c | 2 | ||||
| -rw-r--r-- | kernel/time/ntp.c | 8 | ||||
| -rw-r--r-- | kernel/time/timekeeping.c | 1 |
4 files changed, 7 insertions, 12 deletions
diff --git a/kernel/power/hibernate.c b/kernel/power/hibernate.c index 8b53db38a279..238025f5472e 100644 --- a/kernel/power/hibernate.c +++ b/kernel/power/hibernate.c | |||
| @@ -27,7 +27,6 @@ | |||
| 27 | #include <linux/syscore_ops.h> | 27 | #include <linux/syscore_ops.h> |
| 28 | #include <linux/ctype.h> | 28 | #include <linux/ctype.h> |
| 29 | #include <linux/genhd.h> | 29 | #include <linux/genhd.h> |
| 30 | #include <scsi/scsi_scan.h> | ||
| 31 | 30 | ||
| 32 | #include "power.h" | 31 | #include "power.h" |
| 33 | 32 | ||
| @@ -748,13 +747,6 @@ static int software_resume(void) | |||
| 748 | async_synchronize_full(); | 747 | async_synchronize_full(); |
| 749 | } | 748 | } |
| 750 | 749 | ||
| 751 | /* | ||
| 752 | * We can't depend on SCSI devices being available after loading | ||
| 753 | * one of their modules until scsi_complete_async_scans() is | ||
| 754 | * called and the resume device usually is a SCSI one. | ||
| 755 | */ | ||
| 756 | scsi_complete_async_scans(); | ||
| 757 | |||
| 758 | swsusp_resume_device = name_to_dev_t(resume_file); | 750 | swsusp_resume_device = name_to_dev_t(resume_file); |
| 759 | if (!swsusp_resume_device) { | 751 | if (!swsusp_resume_device) { |
| 760 | error = -ENODEV; | 752 | error = -ENODEV; |
diff --git a/kernel/power/user.c b/kernel/power/user.c index 91b0fd021a95..4ed81e74f86f 100644 --- a/kernel/power/user.c +++ b/kernel/power/user.c | |||
| @@ -24,7 +24,6 @@ | |||
| 24 | #include <linux/console.h> | 24 | #include <linux/console.h> |
| 25 | #include <linux/cpu.h> | 25 | #include <linux/cpu.h> |
| 26 | #include <linux/freezer.h> | 26 | #include <linux/freezer.h> |
| 27 | #include <scsi/scsi_scan.h> | ||
| 28 | 27 | ||
| 29 | #include <asm/uaccess.h> | 28 | #include <asm/uaccess.h> |
| 30 | 29 | ||
| @@ -84,7 +83,6 @@ static int snapshot_open(struct inode *inode, struct file *filp) | |||
| 84 | * appear. | 83 | * appear. |
| 85 | */ | 84 | */ |
| 86 | wait_for_device_probe(); | 85 | wait_for_device_probe(); |
| 87 | scsi_complete_async_scans(); | ||
| 88 | 86 | ||
| 89 | data->swap = -1; | 87 | data->swap = -1; |
| 90 | data->mode = O_WRONLY; | 88 | data->mode = O_WRONLY; |
diff --git a/kernel/time/ntp.c b/kernel/time/ntp.c index 70b33abcc7bb..b7fbadc5c973 100644 --- a/kernel/time/ntp.c +++ b/kernel/time/ntp.c | |||
| @@ -409,7 +409,9 @@ int second_overflow(unsigned long secs) | |||
| 409 | time_state = TIME_DEL; | 409 | time_state = TIME_DEL; |
| 410 | break; | 410 | break; |
| 411 | case TIME_INS: | 411 | case TIME_INS: |
| 412 | if (secs % 86400 == 0) { | 412 | if (!(time_status & STA_INS)) |
| 413 | time_state = TIME_OK; | ||
| 414 | else if (secs % 86400 == 0) { | ||
| 413 | leap = -1; | 415 | leap = -1; |
| 414 | time_state = TIME_OOP; | 416 | time_state = TIME_OOP; |
| 415 | time_tai++; | 417 | time_tai++; |
| @@ -418,7 +420,9 @@ int second_overflow(unsigned long secs) | |||
| 418 | } | 420 | } |
| 419 | break; | 421 | break; |
| 420 | case TIME_DEL: | 422 | case TIME_DEL: |
| 421 | if ((secs + 1) % 86400 == 0) { | 423 | if (!(time_status & STA_DEL)) |
| 424 | time_state = TIME_OK; | ||
| 425 | else if ((secs + 1) % 86400 == 0) { | ||
| 422 | leap = 1; | 426 | leap = 1; |
| 423 | time_tai--; | 427 | time_tai--; |
| 424 | time_state = TIME_WAIT; | 428 | time_state = TIME_WAIT; |
diff --git a/kernel/time/timekeeping.c b/kernel/time/timekeeping.c index 269b1fe5f2ae..3447cfaf11e7 100644 --- a/kernel/time/timekeeping.c +++ b/kernel/time/timekeeping.c | |||
| @@ -717,6 +717,7 @@ static void timekeeping_resume(void) | |||
| 717 | timekeeper.clock->cycle_last = timekeeper.clock->read(timekeeper.clock); | 717 | timekeeper.clock->cycle_last = timekeeper.clock->read(timekeeper.clock); |
| 718 | timekeeper.ntp_error = 0; | 718 | timekeeper.ntp_error = 0; |
| 719 | timekeeping_suspended = 0; | 719 | timekeeping_suspended = 0; |
| 720 | timekeeping_update(false); | ||
| 720 | write_sequnlock_irqrestore(&timekeeper.lock, flags); | 721 | write_sequnlock_irqrestore(&timekeeper.lock, flags); |
| 721 | 722 | ||
| 722 | touch_softlockup_watchdog(); | 723 | touch_softlockup_watchdog(); |
