> It's pointless that deactive_page's pagevec operation about > unevictable page as it's nop. > This patch removes unnecessary overhead which might be a bit problem > in case that there are many unevictable page in system(ex, mprotect workload) > > Signed-off-by: Minchan Kim <minchan.kim@xxxxxxxxx> > --- > mm/swap.c | 9 +++++++++ > 1 files changed, 9 insertions(+), 0 deletions(-) > > diff --git a/mm/swap.c b/mm/swap.c > index 2e9656d..b707694 100644 > --- a/mm/swap.c > +++ b/mm/swap.c > @@ -511,6 +511,15 @@ static void drain_cpu_pagevecs(int cpu) > */ > void deactivate_page(struct page *page) > { > + > + /* > + * In workload which system has many unevictable page(ex, mprotect), > + * unevictalge page deactivation for accelerating reclaim > + * is pointless. > + */ > + if (PageUnevictable(page)) > + return; > + Reviewed-by: KOSAKI Motohiro <kosaki.motohiro@xxxxxxxxxxxxxx> btw, I think we should check PageLRU too. -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxxx For more info on Linux MM, see: http://www.linux-mm.org/ . Fight unfair telecom internet charges in Canada: sign http://stopthemeter.ca/ Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>