Page clustering is looking pretty stable except for the swap refcounting issue. I managed to blame the wild NMI issue on qlogicisp.c and I'm just sort of grinding away slowly at debugging the do_anonymous_page() antifragmentation heuristics.
cpumask_t stuff is going slow. Probably needs non-x86 support.
I'll get some more ideas eventually.
At least -for_each_task went somewhere. Now I'm pretty much doing hugetlbfs maintenance and doing seek & destroy on various kinds of braindamage.
28 May 2002 (updated 31 May 2002 at 03:19 UTC) »
The bugreporter seems to have indicated that the rmap13 bug was created by an independent patch used in combination with it. What a relief!
A number of strategies seem to have surfaced for dealing with kva exhaustion:
Making fork() not copy pte's for file-backed vma's seems to have some very difficult to trace issues. As best as I can tell things somehow end up faulting in garbage.
Poking around fault paths and such has led me to consider beautifying it somewhat by fleshing out the segment driver -like approach and some pure non-semantic beautification of rbtree manipulation code. I might also try using a different kind of tree if I feel like going in for the long haul. Not that I haven't done that before.
It looks like rmap is getting close to (or at) parity on NUMA-Q now with a rollup of the pending changes so I'm slowing that down and keeping things stable. Now I'm helping to chase highmem stability issues and have some fork() efficiency issues on at a lower priority. Highmem is evil. Very evil. It's going to take a bunch of us grinding away at it full-time to make this stuff work. The niceness of direct-mapping the kernel virtual address space turns into a kva-exhaustion horror beyond imagination as dynamic:direct ratios go up. There will be much pain.
I got a real profile instead of a description and the signs point to too many calls to add_timer(), mod_timer(), and del_timer() as opposed to cache-blowing in cascade_timers(), which surprised me but relieves me of the burden of writing the umpteenth priority queue. It also appears to be specific to ip_conntrack which I'm not sure is one of my priorities.
Following the yellow brick profile...
FOAF updates: Trust rankings are now exported, making the data available to other users and websites. An external FOAF URI has been added, allowing users to link to an additional FOAF file.
Keep up with the latest Advogato features by reading the Advogato status blog.
If you're a C programmer with some spare time, take a look at the mod_virgule project page and help us with one of the tasks on the ToDo list!