debuggers.hg

changeset 20920:5668c36282ea

hvm, s3: HVM guest RTCs become unsync'ed across host S3.

Signed-off-by: Kamala Narasimhan <kamala.narasimhan@citrix.com>
author Keir Fraser <keir.fraser@citrix.com>
date Mon Feb 01 14:03:06 2010 +0000 (2010-02-01)
parents 857d7b2dd8c7
children d0b431ede24b
files xen/arch/x86/time.c
line diff
     1.1 --- a/xen/arch/x86/time.c	Fri Jan 29 08:59:46 2010 +0000
     1.2 +++ b/xen/arch/x86/time.c	Mon Feb 01 14:03:06 2010 +0000
     1.3 @@ -906,6 +906,19 @@ void update_domain_wallclock_time(struct
     1.4      spin_unlock(&wc_lock);
     1.5  }
     1.6  
     1.7 +static void update_domain_rtc(void)
     1.8 +{
     1.9 +    struct domain *d;
    1.10 +
    1.11 +    rcu_read_lock(&domlist_read_lock);
    1.12 +
    1.13 +    for_each_domain ( d )
    1.14 +        if ( is_hvm_domain(d) )
    1.15 +            rtc_update_clock(d);
    1.16 +
    1.17 +    rcu_read_unlock(&domlist_read_lock);
    1.18 +}
    1.19 +
    1.20  void domain_set_time_offset(struct domain *d, int32_t time_offset_seconds)
    1.21  {
    1.22      d->time_offset_seconds = time_offset_seconds;
    1.23 @@ -1535,6 +1548,8 @@ int time_resume(void)
    1.24  
    1.25      update_vcpu_system_time(current);
    1.26  
    1.27 +    update_domain_rtc();
    1.28 +
    1.29      return 0;
    1.30  }
    1.31