* Remove the xen-pvclock-resume patch, which has finally been merged
into 2.6.32. svn path=/nixpkgs/trunk/; revision=26149
This commit is contained in:
parent
43cca4d6ab
commit
5cc5e16104
@ -224,10 +224,4 @@ in
|
|||||||
patch = ./guruplug-mach-type.patch;
|
patch = ./guruplug-mach-type.patch;
|
||||||
};
|
};
|
||||||
|
|
||||||
xen_pvclock_resume =
|
|
||||||
{ # Fix the clock after a DomU restore following a Dom0 reboot or migration.
|
|
||||||
name = "xen-pvclock-resume";
|
|
||||||
patch = ./xen-pvclock-resume.patch;
|
|
||||||
};
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -1,51 +0,0 @@
|
|||||||
From: Jeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>
|
|
||||||
Date: Mon, 25 Oct 2010 16:53:46 -0700
|
|
||||||
Subject: [PATCH] x86/pvclock: zero last_value on resume
|
|
||||||
|
|
||||||
If the guest domain has been suspend/resumed or migrated, then the
|
|
||||||
system clock backing the pvclock clocksource may revert to a smaller
|
|
||||||
value (ie, can be non-monotonic across the migration/save-restore).
|
|
||||||
Make sure we zero last_value in that case so that the domain
|
|
||||||
continues to see clock updates.
|
|
||||||
|
|
||||||
Signed-off-by: Jeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>
|
|
||||||
|
|
||||||
diff --git a/arch/x86/include/asm/pvclock.h b/arch/x86/include/asm/pvclock.h
|
|
||||||
index cd02f32..6226870 100644
|
|
||||||
--- a/arch/x86/include/asm/pvclock.h
|
|
||||||
+++ b/arch/x86/include/asm/pvclock.h
|
|
||||||
@@ -11,5 +11,6 @@ unsigned long pvclock_tsc_khz(struct pvclock_vcpu_time_info *src);
|
|
||||||
void pvclock_read_wallclock(struct pvclock_wall_clock *wall,
|
|
||||||
struct pvclock_vcpu_time_info *vcpu,
|
|
||||||
struct timespec *ts);
|
|
||||||
+void pvclock_resume(void);
|
|
||||||
|
|
||||||
#endif /* _ASM_X86_PVCLOCK_H */
|
|
||||||
diff --git a/arch/x86/kernel/pvclock.c b/arch/x86/kernel/pvclock.c
|
|
||||||
index 239427c..a4f07c1 100644
|
|
||||||
--- a/arch/x86/kernel/pvclock.c
|
|
||||||
+++ b/arch/x86/kernel/pvclock.c
|
|
||||||
@@ -120,6 +120,11 @@ unsigned long pvclock_tsc_khz(struct pvclock_vcpu_time_info *src)
|
|
||||||
|
|
||||||
static atomic64_t last_value = ATOMIC64_INIT(0);
|
|
||||||
|
|
||||||
+void pvclock_resume(void)
|
|
||||||
+{
|
|
||||||
+ atomic64_set(&last_value, 0);
|
|
||||||
+}
|
|
||||||
+
|
|
||||||
cycle_t pvclock_clocksource_read(struct pvclock_vcpu_time_info *src)
|
|
||||||
{
|
|
||||||
struct pvclock_shadow_time shadow;
|
|
||||||
diff --git a/arch/x86/xen/time.c b/arch/x86/xen/time.c
|
|
||||||
index b2bb5aa..5da5e53 100644
|
|
||||||
--- a/arch/x86/xen/time.c
|
|
||||||
+++ b/arch/x86/xen/time.c
|
|
||||||
@@ -426,6 +426,8 @@ void xen_timer_resume(void)
|
|
||||||
{
|
|
||||||
int cpu;
|
|
||||||
|
|
||||||
+ pvclock_resume();
|
|
||||||
+
|
|
||||||
if (xen_clockevent != &xen_vcpuop_clockevent)
|
|
||||||
return;
|
|
@ -4904,7 +4904,6 @@ let
|
|||||||
kernelPatches.cifs_timeout
|
kernelPatches.cifs_timeout
|
||||||
kernelPatches.no_xsave
|
kernelPatches.no_xsave
|
||||||
kernelPatches.dell_rfkill
|
kernelPatches.dell_rfkill
|
||||||
kernelPatches.xen_pvclock_resume
|
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user