• Andrea Arcangeli's avatar
    mm: compaction: prevent kswapd compacting memory to reduce CPU usage · d527caf2
    Andrea Arcangeli authored
    This patch reverts 5a03b051 ("thp: use compaction in kswapd for GFP_ATOMIC
    order > 0") due to reports stating that kswapd CPU usage was higher and
    IRQs were being disabled more frequently.  This was reported at
    http://www.spinics.net/linux/fedora/alsa-user/msg09885.html.
    
    Without this patch applied, CPU usage by kswapd hovers around the 20% mark
    according to the tester (Arthur Marsh:
    http://www.spinics.net/linux/fedora/alsa-user/msg09899.html).  With this
    patch applied, it's around 2%.
    
    The problem is not related to THP which specifies __GFP_NO_KSWAPD but is
    triggered by high-order allocations hitting the low watermark for their
    order and waking kswapd on kernels with CONFIG_COMPACTION set.  The most
    common trigger for this is network cards configured for jumbo frames but
    it's also possible it'll be triggered by fork-heavy workloads (order-1)
    and some wireless cards which depend on order-1 allocations.
    
    The symptoms for the user will be ...
    d527caf2
compaction.c 18.4 KB