On Wed, Aug 31, 2011 at 01:19:54PM +0200, Johannes Weiner wrote: > On Sun, Nov 13, 2011 at 01:37:42AM +0900, Minchan Kim wrote: > > Now compaction doesn't handle mlocked page as it uses __isolate_lru_page > > which doesn't consider unevicatable page. It has been used by just lumpy so > > it was pointless that it isolates unevictable page. But the situation is > > changed. Compaction could handle unevictable page and it can help getting > > big contiguos pages in fragment memory by many pinned page with mlock. > > This may result in applications unexpectedly faulting and waiting on > mlocked pages under migration. I wonder how realtime people feel > about that? I didn't consider it but it's very important point. The migrate_page can call pageout on dirty page so RT process could wait on the mlocked page during very long time. I can mitigate it with isolating mlocked page in case of !sync but still we can't guarantee the time because we can't know how many vmas point the page so that try_to_unmap could spend lots of time. We can think it's a trade off between high order allocation VS RT latency. Now I am biasing toward RT latency as considering mlock man page. Any thoughts? -- Kind regards, Minchan Kim -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxx. 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>