On Tue, Nov 13, 2018 at 12:17:50PM +0800, Wei Yang wrote: > Commit fa5e084e43eb ("vmscan: do not unconditionally treat zones that > fail zone_reclaim() as full") changed the return value of node_reclaim(). > The original return value 0 means NODE_RECLAIM_SOME after this commit. > > While the return value of node_reclaim() when CONFIG_NUMA is n is not > changed. This will leads to call zone_watermark_ok() again. > > This patch fix the return value by adjusting to NODE_RECLAIM_NOSCAN. Since > it is not proper to include "mm/internal.h", just hard coded it. Since the return value is defined in mm/internal.h that means no code outside mm/ can call node_reclaim (nor should it). So let's move both of node_reclaim's declarations to mm/internal.h instead of keeping them in linux/swap.h.