While running OAST to test 2.6's maximum client capacity, the kerneldeadlocked instead of properly OOM'ing. The obvious cause was theline if (nr_swap_pages > 0) in out_of_memory(), which fails to accountfor pinned allocations. This can't simply be removed. The followingpatches attempt to give the kernel the ability to discriminate betweenpinned and unpinned allocations in order to determine whether thischeck is appropriate. They furthermore also add reporting of wiredmemory on a global and per-zone basis.