Messages in this thread | | | Date | Mon, 26 Mar 2012 14:56:09 +0100 | From | Mel Gorman <> | Subject | Re: [PATCH] Re: kswapd stuck using 100% CPU |
| |
On Mon, Mar 26, 2012 at 01:40:41PM +0300, Pekka Enberg wrote: > On Mon, Mar 26, 2012 at 12:32 PM, Mel Gorman <mel@csn.ul.ie> wrote: > > On Sat, Mar 24, 2012 at 10:26:21AM -0400, Rik van Riel wrote: > >> > >> Only test compaction_suitable if the kernel is built with CONFIG_COMPACTION, > >> otherwise the stub compaction_suitable function will always return > >> COMPACT_SKIPPED and send kswapd into an infinite loop. > >> > >> Signed-off-by: Rik van Riel <riel@redhat.com> > >> Reported-by: Anton Blanchard <anton@samba.org> > > > > Acked-by: Mel Gorman <mel@csn.ul.ie> > > The API looks fragile and this patch isn't exactly making it any > better. Why don't we make compaction_suitable() return something other > than COMPACT_SKIPPED for !CONFIG_COMPACTION case? >
Returning COMPACT_PARTIAL or COMPACT_CONTINUE would confuse the check in should_continue_reclaim. A fourth return type could be added but an obvious name does not spring to mind that would end up being similar to just adding a CONFIG_COMPACTION check.
-- Mel Gorman SUSE Labs
| |