I found out where do_page_fault was (in fault.c), but there's a version of that file for every arch folder. I didn't want to include it in those because I think that would be kind of messy. What if I put a maj_flt variable in memory.c for the total of all the processes and had it increment whenever get_user_pages does so for a specific task's maj_flt variable? Or I could give runqueue a variable for the number of page swaps and have wakeup_kswapd increment that using this_rq. Then I could either average it using something like I suggested in my last email or reset to zero it every so often. I would have thought there would be better ways of getting at the number of page fault's or page swaps already implemented. I think each page has a fault count to it since both task_struct and the page structure have it. The problem is that there's so many different places that can increment the fault count that I'd have to loop either through all pages or all tasks and although I'm stull very new at this, I at least know that loops in the schedule() = bad. ---------------------------------------------------------------- This message was sent using IMP, the Internet Messaging Program. -- Kernelnewbies: Help each other learn about the Linux kernel. Archive: http://mail.nl.linux.org/kernelnewbies/ FAQ: http://kernelnewbies.org/faq/