Paul, I finally got around to testing your changeset on sparc64, it breaks things:
commit d9024df02ffe74d723d97d552f86de3b34beb8cc Author: Paul Mackerras <[EMAIL PROTECTED]> Date: Sat Apr 12 15:20:59 2008 +1000 [LMB] Restructure allocation loops to avoid unsigned underflow ... Specifically, you removed the aligning of the size argument given to lmb_add_region() in the lmb allocators, and that is critical when allocating many small chunks, we run out of LMB slots otherwise and allocations start failing. I added the alignment there as a bug fix earlier: commit eea89e13a9c61d3928223d2f9bf2295e22e0efb6 Author: David S. Miller <[EMAIL PROTECTED]> Date: Wed Feb 13 16:57:09 2008 -0800 [LMB]: Fix bug in __lmb_alloc_base(). We need to check lmb_add_region() for errors, it can run out of regions etc. Also, the size needs to be padded to the given alignment or else the lmb.reserved regions don't get expanded and instead we get tons of holes and eventually run out of regions prematurely. Signed-off-by: David S. Miller <[EMAIL PROTECTED]> Please be more careful in the future :-( I find it quite ironic that you spent so much time and effort fixing an absolutely totally theoretical bug that nobody was triggering, and in the process reintroduced a real one that triggers immediately on real systems, and that had even been explicitly fixed previously. _______________________________________________ Linuxppc-dev mailing list Linuxppc-dev@ozlabs.org https://ozlabs.org/mailman/listinfo/linuxppc-dev