proc: kpagecount/kpageflags code cleanup
Wu Fengguang [Tue, 16 Jun 2009 22:32:23 +0000 (15:32 -0700)]
Move increments of pfn/out to bottom of the loop.

Signed-off-by: Wu Fengguang <fengguang.wu@intel.com>
Cc: KOSAKI Motohiro <kosaki.motohiro@jp.fujitsu.com>
Cc: Andi Kleen <andi@firstfloor.org>
Acked-by: Matt Mackall <mpm@selenic.com>
Cc: Alexey Dobriyan <adobriyan@gmail.com>
Cc: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>

fs/proc/page.c

index 38dd88b..e73e911 100644 (file)
@@ -12,6 +12,7 @@
 
 #define KPMSIZE sizeof(u64)
 #define KPMMASK (KPMSIZE - 1)
+
 /* /proc/kpagecount - an array exposing page counts
  *
  * Each entry is a u64 representing the corresponding
@@ -33,20 +34,22 @@ static ssize_t kpagecount_read(struct file *file, char __user *buf,
                return -EINVAL;
 
        while (count > 0) {
-               ppage = NULL;
                if (pfn_valid(pfn))
                        ppage = pfn_to_page(pfn);
-               pfn++;
+               else
+                       ppage = NULL;
                if (!ppage)
                        pcount = 0;
                else
                        pcount = page_mapcount(ppage);
 
-               if (put_user(pcount, out++)) {
+               if (put_user(pcount, out)) {
                        ret = -EFAULT;
                        break;
                }
 
+               pfn++;
+               out++;
                count -= KPMSIZE;
        }
 
@@ -99,10 +102,10 @@ static ssize_t kpageflags_read(struct file *file, char __user *buf,
                return -EINVAL;
 
        while (count > 0) {
-               ppage = NULL;
                if (pfn_valid(pfn))
                        ppage = pfn_to_page(pfn);
-               pfn++;
+               else
+                       ppage = NULL;
                if (!ppage)
                        kflags = 0;
                else
@@ -120,11 +123,13 @@ static ssize_t kpageflags_read(struct file *file, char __user *buf,
                        kpf_copy_bit(kflags, KPF_RECLAIM, PG_reclaim) |
                        kpf_copy_bit(kflags, KPF_BUDDY, PG_buddy);
 
-               if (put_user(uflags, out++)) {
+               if (put_user(uflags, out)) {
                        ret = -EFAULT;
                        break;
                }
 
+               pfn++;
+               out++;
                count -= KPMSIZE;
        }