linux-mm.kvack.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] mm: add parameter to disable faultaround
@ 2014-11-25  6:51 Chanho Min
  2014-11-25  7:05 ` Andrew Morton
  0 siblings, 1 reply; 5+ messages in thread
From: Chanho Min @ 2014-11-25  6:51 UTC (permalink / raw)
  To: Andrew Morton, Kirill A. Shutemov, Hugh Dickins, Michal Hocko
  Cc: linux-mm, linux-kernel, HyoJun Im, Gunho Lee, Wonhong Kwon,
	Chanho Min

The faultaround improves the file read performance, whereas pages which
can be dropped by drop_caches are reduced. On some systems, The amount of
freeable pages under memory pressure is more important than read
performance. So It prefers to be selectable.

This patch adds a new kernel cmdline parameter "nofaultaround"
for situations where users want to disable faultaround.

Signed-off-by: Chanho Min <chanho.min@lge.com>
---
 mm/memory.c |   11 ++++++++++-
 1 file changed, 10 insertions(+), 1 deletion(-)

diff --git a/mm/memory.c b/mm/memory.c
index 4879b42..c36a96f 100644
--- a/mm/memory.c
+++ b/mm/memory.c
@@ -2888,6 +2888,14 @@ static int __init fault_around_debugfs(void)
 late_initcall(fault_around_debugfs);
 #endif
 
+static bool enable_fault_around = true;
+static int __init disable_fault_around(char *s)
+{
+	enable_fault_around = false;
+	return 1;
+}
+__setup("nofaultaround", disable_fault_around);
+
 /*
  * do_fault_around() tries to map few pages around the fault address. The hope
  * is that the pages will be needed soon and this will lower the number of
@@ -2965,7 +2973,8 @@ static int do_read_fault(struct mm_struct *mm, struct vm_area_struct *vma,
 	 * if page by the offset is not ready to be mapped (cold cache or
 	 * something).
 	 */
-	if (vma->vm_ops->map_pages && !(flags & FAULT_FLAG_NONLINEAR) &&
+	if (enable_fault_around && vma->vm_ops->map_pages &&
+	    !(flags & FAULT_FLAG_NONLINEAR) &&
 	    fault_around_pages() > 1) {
 		pte = pte_offset_map_lock(mm, pmd, address, &ptl);
 		do_fault_around(vma, address, pte, pgoff, flags);
-- 
1.7.9.5

--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org.  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>

^ permalink raw reply related	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2014-11-25 11:48 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-11-25  6:51 [PATCH] mm: add parameter to disable faultaround Chanho Min
2014-11-25  7:05 ` Andrew Morton
2014-11-25 11:19   ` Chanho Min
2014-11-25 11:48     ` Kirill A. Shutemov
     [not found]   ` <547465d2.6561420a.04ed.0514SMTPIN_ADDED_BROKEN@mx.google.com>
2014-11-25 11:40     ` Andrew Morton

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).