diff -r fc2b798ab316 -r 97b64f73103b src/os/linux/vm/os_linux.cpp --- a/src/os/linux/vm/os_linux.cpp Tue May 10 00:33:21 2011 -0700 +++ b/src/os/linux/vm/os_linux.cpp Tue May 10 12:26:10 2011 -0700 @@ -2850,7 +2850,7 @@ char chars[257]; long x = 0; if (fgets(chars, sizeof(chars), fp)) { - if (sscanf(chars, "%lx-%*lx", &x) == 1 + if (sscanf(chars, "%lx-%*x", &x) == 1 && x == (long)p) { if (strstr (chars, "hugepage")) { result = true;