This is nothing to be worried about. Pagefaults are a normal tool of
execution for a virtual memory OS. Usually memory mappings are set up
without the contents being usable yet or being swapped out.
One example is loading of an executable: if execution reaches a page
which is not loaded yet, a pagefault is generated by the CPU which
makes the kernel load the page from disk and then continue execution.
Writing to copy-on-write pages is another example, a fault is generated
(because writing is not allowed), the kernel copies the page, adjusts
mapping and continues process.
Major pagefaults involve disk IO, minor pagefaults happen in memory
alone.
> Here's the output from a kernel compile to give you an example:
>
> [/usr/src/linux] # time make
> 266.88user 20.66system 4:47.87elapsed 99%CPU (0avgtext+0avgdata 0maxresident)k
> 0inputs+0outputs (-495975500major+15152975minor)pagefaults 0swaps
>
> [/usr/src/linux] # time make -j 2
> 261.12user 19.01system 2:27.53elapsed 189%CPU (0avgtext+0avgdata 0maxresident)k
> 0inputs+0outputs (1538887856major+-51006598minor)pagefaults 0swaps
This is fine, except that the signed variables in your time executable
overflow so that you see negative numbers.
-- Andreas E. Bombe <andreas.bombe@munich.netsurf.de> http://home.pages.de/~andreas.bombe/ RSA 0x886663c9 30 EC 09 73 84 7B 55 83 C4 7A 91 D9 9D C5 4B B0 DSA 0x04880A44 72E5 7031 4414 2EB6 F6B4 4CBD 1181 7032 0488 0A44- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.rutgers.edu Please read the FAQ at http://www.tux.org/lkml/