![]() | |||||||||||||
Messages in this thread |
William Lee Irwin III wrote: >> It returns a false positive when size + 3*BYTES_PER_WORD == 2**n, e.g. >> size == 16373. Here, fls(size - 1) == 13, but fls(size - 1 + 12) == 13 >> while size - 1 + 12 == 16384, where we'd want the check to fail. On Sat, May 22, 2004 at 10:43:47AM +0200, Manfred Spraul wrote: > No, 16373 must fail: After adding 12 bytes the object size would be > 16385, which would mean an order==3 allocation. > And 16372 must succeed: 16384 is still an order==2 allocation. > The idea is that there shouldn't be an allocation order increase due to > redzoning, and afaics that doesn't happen, except between 4082 and 4095 > bytes. Yes. While you've corrected the one-offs in my post (arithmetic is boring, we have machines to do that for us now), 16372 remains in question as far as I can tell. -- wli - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/ | ||||||||||||
| Last update: 2005-03-22 13:03 [W:0.325 / U:0.040 seconds] ©2003-2008 Jasper Spaans | |||||||||||||