Messages in this thread | | | Date | Wed, 11 Jan 2012 08:34:06 -0500 | From | Rik van Riel <> | Subject | Re: [PATCH -mm 2/2] mm: kswapd carefully invoke compaction |
| |
On 01/11/2012 02:25 AM, KOSAKI Motohiro wrote: >> With CONFIG_COMPACTION enabled, kswapd does not try to free >> contiguous free pages, even when it is woken for a higher order >> request. >> >> This could be bad for eg. jumbo frame network allocations, which >> are done from interrupt context and cannot compact memory themselves. >> Higher than before allocation failure rates in the network receive >> path have been observed in kernels with compaction enabled. >> >> Teach kswapd to defragment the memory zones in a node, but only >> if required and compaction is not deferred in a zone. >> >> Signed-off-by: Rik van Riel<riel@redhat.com> > > I agree with we need asynchronous defragmentations feature. But, do we > really need to use kswapd for compaction? While kswapd take a > compaction work, it can't work to make free memory.
I believe we do need some background compaction, especially to help allocations from network interrupts.
If you believe the compaction is better done from some other thread, I guess we could do that, but truthfully, if kswapd spends a lot of time doing compaction, I made a mistake somewhere :)
-- All rights reversed
| |