--- sysstat-6.0.2/common.c.sysc	2005-11-28 11:14:29.000000000 +0100
+++ sysstat-6.0.2/common.c	2006-05-11 10:40:18.000000000 +0200
@@ -31,8 +31,9 @@
 #include <sys/param.h>	/* for HZ */
 
 /*
+ * PAGE_SIZE should be get by sysconf function - 
  * For PAGE_SIZE (which may be itself a call to getpagesize()).
- * PAGE_SHIFT no longer necessarily exists in <asm/page.h>. So
+ * PAGE_SHIFT no longer necessarily exists. So
  * we use PAGE_SIZE to compute PAGE_SHIFT...
  */
 #include <asm/page.h>
@@ -408,8 +409,10 @@
 {
    int shift = 0;
    int size;
+   int p_size;
 
-   size = PAGE_SIZE >> 10; /* Assume that a page has a minimum size of 1 kB */
+   p_size = sysconf(_SC_PAGE_SIZE);
+   size = p_size >> 10; /* Assume that a page has a minimum size of 1 kB */
    while (size > 1) {
       shift++;
       size >>= 1;

