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@kvack.org. For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>