On Thu, May 22, 2014 at 02:25:30PM -0500, Christoph Lameter wrote: > slab_free calls __slab_free which can release slabs via > put_cpu_partial()/unfreeze_partials()/discard_slab() to the page > allocator. I'd rather have preemption enabled there. Hmm, why? IMO, calling __free_pages with preempt disabled won't hurt latency, because it proceeds really fast. BTW, we already call it for a bunch of pages from __slab_free() -> put_cpu_partial() -> unfreeze_partials() with irqs disabled, which is harder. FWIW, SLAB has the whole obj free path executed under local_irq_save/restore, and it doesn't bother enabling irqs for freeing pages. IMO, the latency improvement we can achieve by enabling preemption while calling __free_pages is rather minor, and it isn't worth complicating the code. Thanks. -- 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>