Patch "arm64: readahead: fault retry breaks mmap file read random detection" has been added to the 4.1-stable tree
Subsystems (2)
This is a note to let you know that I've just added the patch titled
arm64: readahead: fault retry breaks mmap file read random detection
to the 4.1-stable tree which can be found at:
http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary
The filename of the patch is:
arm64-readahead-fault-retry-breaks-mmap-file-read-random-detection.patch
and it can be found in the queue-4.1 subdirectory.
If you, or anyone else, feels it should not be added to the stable tree, please let <[email protected]> know about it.
Quoted 1 line
From
569ba74a7ba69f46ce2950bf085b37fea2408385Mon Sep 17 00:00:00 2001
From: Mark Salyzyn <[email protected]>
Date: Mon, 21 Sep 2015 21:39:50 +0100
Subject: arm64: readahead: fault retry breaks mmap file read random detection
From: Mark Salyzyn <[email protected]>
commit 569ba74a7ba69f46ce2950bf085b37fea2408385 upstream.
This is the arm64 portion of commit 45cac65b0fcd ("readahead: fault retry breaks mmap file read random detection"), which was absent from the initial port and has since gone unnoticed. The original commit says:
Quoted 7 lines
.fault now can retry. The retry can break state machine of .fault. In
filemap_fault, if page is miss,ra->mmap_missis increased. In the second try, since the page is in page cache now,ra->mmap_missis decreased. And these are done in one fault, so we can't detect random mmap file access.Add a new flag to indicate .fault is tried once. In the second try, skip
ra->mmap_missdecreasing. Thefilemap_faultstate machine is ok with it.
With this change, Mark reports that:
Quoted 2 lines
Random read improves by 250%, sequential read improves by 40%, and random write by 400% to an eMMC device with dm crypto wrapped around it.
--- arch/arm64/mm/fault.c | 1 + 1 file changed, 1 insertion(+)
arch/arm64/mm/fault.c +1 -0
@@ -279,6 +279,7 @@ retry:* starvation. */ mm_flags &= ~FAULT_FLAG_ALLOW_RETRY ; + mm_flags |=FAULT_FLAG_TRIED ; goto retry; } }
Patches currently in stable-queue which might be from [email protected] are
queue-4.1/arm64-readahead-fault-retry-breaks-mmap-file-read-random-detection.patch