[PATCH] procfs: Use proper units for noMMU statm

From: steve
Date: Fri Nov 13 2009 - 21:01:34 EST


On no-MMU systems, sizes reported in /proc/n/statm have units of bytes.
Per Documentation/filesystems/proc.txt, these values should be in pages.

Signed-off-by: Steven J. Magnani <steve@xxxxxxxxxxxxxxx>
---
diff -uprN a/fs/proc/task_nommu.c b/fs/proc/task_nommu.c
--- a/fs/proc/task_nommu.c 2009-11-13 16:48:14.000000000 -0600
+++ b/fs/proc/task_nommu.c 2009-11-13 16:51:09.000000000 -0600
@@ -110,8 +110,11 @@ int task_statm(struct mm_struct *mm, int
}
}

- size += (*text = mm->end_code - mm->start_code);
- size += (*data = mm->start_stack - mm->start_data);
+ size >>= PAGE_SHIFT;
+ *text = (PAGE_ALIGN(mm->end_code) - (mm->start_code & PAGE_MASK))
+ >> PAGE_SHIFT;
+ *data = (mm->start_stack - mm->start_data) >> PAGE_SHIFT;
+ size += *text + *data;
up_read(&mm->mmap_sem);
*resident = size;
return size;

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/