]> git.ipfire.org Git - people/pmueller/ipfire-2.x.git/blame - src/patches/60039_xen3-patch-2.6.27.4-5.patch1
Fix core28 updater kernel version
[people/pmueller/ipfire-2.x.git] / src / patches / 60039_xen3-patch-2.6.27.4-5.patch1
CommitLineData
cc90b958
BS
1From: Greg Kroah-Hartman <gregkh@suse.de>
2Subject: Linux 2.6.27.5
3
4Upstream 2.6.27.5 release from kernel.org
5
6Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
7
8Automatically created from "patches.kernel.org/patch-2.6.27.4-5" by xen-port-patches.py
9
10Index: head-2008-11-25/arch/x86/kernel/process_64-xen.c
11===================================================================
12--- head-2008-11-25.orig/arch/x86/kernel/process_64-xen.c 2008-11-25 13:34:32.000000000 +0100
13+++ head-2008-11-25/arch/x86/kernel/process_64-xen.c 2008-11-10 12:12:28.000000000 +0100
14@@ -786,12 +786,12 @@ unsigned long get_wchan(struct task_stru
15 if (!p || p == current || p->state==TASK_RUNNING)
16 return 0;
17 stack = (unsigned long)task_stack_page(p);
18- if (p->thread.sp < stack || p->thread.sp > stack+THREAD_SIZE)
19+ if (p->thread.sp < stack || p->thread.sp >= stack+THREAD_SIZE)
20 return 0;
21 fp = *(u64 *)(p->thread.sp);
22 do {
23 if (fp < (unsigned long)stack ||
24- fp > (unsigned long)stack+THREAD_SIZE)
25+ fp >= (unsigned long)stack+THREAD_SIZE)
26 return 0;
27 ip = *(u64 *)(fp+8);
28 if (!in_sched_functions(ip))
29Index: head-2008-11-25/arch/x86/mm/pat-xen.c
30===================================================================
31--- head-2008-11-25.orig/arch/x86/mm/pat-xen.c 2008-11-27 09:35:47.000000000 +0100
32+++ head-2008-11-25/arch/x86/mm/pat-xen.c 2008-11-27 09:36:36.000000000 +0100
33@@ -415,12 +415,16 @@ static inline int range_is_allowed(unsig
34 return 1;
35 }
36 #else
37+/* This check is needed to avoid cache aliasing when PAT is enabled */
38 static inline int range_is_allowed(unsigned long mfn, unsigned long size)
39 {
40 u64 from = ((u64)mfn) << PAGE_SHIFT;
41 u64 to = from + size;
42 u64 cursor = from;
43
44+ if (!pat_enabled)
45+ return 1;
46+
47 while (cursor < to) {
48 if (!devmem_is_allowed(mfn)) {
49 printk(KERN_INFO