On Fri, 2013-01-18 at 18:40 +0000, Christoph Lameter wrote: > The fetching of the tid is the only critical thing here. If the tid is > retrieved from the right cpu then the cmpxchg will fail if any changes > occured to freelist or the page variable. > > The tid can be retrieved without disabling preemption through > this_cpu_read(). Strictly speaking, this_cpu_read() _does_ disable preemption. Of course, on x86, this_cpu_read() uses __this_cpu_read() -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxx. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>