Hi folks,
as I understand, a reason to have page coloring is extra broken MIPS
hardware which has cache aliasing issues unless a large page size
is used. picking the same color avoids aliasing.
now, looking at uvm_pagealloc_pgfl:
do {
/* trying to find pages in color.. */
/* goto success */
color = (color + 1) & uvmexp.colormask;
} while (color != trycolor);
which means that if we fail to find a page in the requested color, we'll
try another color. I think this might end up inducing cache aliasing
issues, and we should instead fail for this case.
thoughts?