--- 2.6.25-proc_misc.c.fragment	2009-07-06 10:45:00.925469700 -0700
+++ 2.6.28.8-page.c.fragment	2009-07-06 10:44:43.780520200 -0700
@@ -69,7 +69,7 @@
 #define KPF_RECLAIM    9
 #define KPF_BUDDY     10
 
-#define kpf_copy_bit(flags, srcpos, dstpos) (((flags >> srcpos) & 1) << dstpos)
+#define kpf_copy_bit(flags, dstpos, srcpos) (((flags >> srcpos) & 1) << dstpos)
 
 static ssize_t kpageflags_read(struct file *file, char __user *buf,
                              size_t count, loff_t *ppos)
@@ -96,7 +96,7 @@
                 else
                         kflags = ppage->flags;
 
-                uflags = kpf_copy_bit(KPF_LOCKED, PG_locked, kflags) |
+                uflags = kpf_copy_bit(kflags, KPF_LOCKED, PG_locked) |
                         kpf_copy_bit(kflags, KPF_ERROR, PG_error) |
                         kpf_copy_bit(kflags, KPF_REFERENCED, PG_referenced) |
                         kpf_copy_bit(kflags, KPF_UPTODATE, PG_uptodate) |

