[LTP] [PATCH] syscalls/madvise06: Add madvise WILLNEED performance problem tag
Yang Xu
xuyang2018.jy@fujitsu.com
Tue Aug 3 10:26:06 CEST 2021
When running this case on 5.10-rc1 kernel, it will trigger the following failure
......
madvise06.c:74: TINFO: memory.kmem.usage_in_bytes: 1752 Kb
madvise06.c:208: TPASS: more than 102400 Kb were moved to the swap cache
madvise06.c:217: TINFO: PageFault(madvice / no mem access): 102400
madvise06.c:221: TINFO: PageFault(madvice / mem access): 105600
madvise06.c:82: TINFO: After page access
madvise06.c:84: TINFO: Swap: 307540 Kb
madvise06.c:86: TINFO: SwapCached: 100480 Kb
madvise06.c:88: TINFO: Cached: 102056 Kb
madvise06.c:74: TINFO: memory.current: 204636 Kb
madvise06.c:74: TINFO: memory.swap.current: 411476 Kb
madvise06.c:74: TINFO: memory.kmem.usage_in_bytes: 1752 Kb
madvise06.c:226: TFAIL: 3200 pages were faulted out of 2 max
It fails because of madvise WILLNEED performance problem, so add the introduced and
fixed commit.
Signed-off-by: Yang Xu <xuyang2018.jy@fujitsu.com>
---
testcases/kernel/syscalls/madvise/madvise06.c | 8 ++++++++
1 file changed, 8 insertions(+)
diff --git a/testcases/kernel/syscalls/madvise/madvise06.c b/testcases/kernel/syscalls/madvise/madvise06.c
index 63d8d5452..f2f65ff96 100644
--- a/testcases/kernel/syscalls/madvise/madvise06.c
+++ b/testcases/kernel/syscalls/madvise/madvise06.c
@@ -35,6 +35,12 @@
* faults. Two faults are allowed incase some tasklet or something
* else unexpected, but irrelevant procedure, registers a fault to
* our process.
+ *
+ * It also can reproduce the MADV_WILLNEED preformance problem.
+ * It was introduced since 5.9 kernel with the following commit
+ * e6e88712e43b ("mm: optimise madvise WILLNEED")
+ * and fixed since 5.10-rc5 kernel with the following commit
+ * 66383800df9c ("mm: fix madvise WILLNEED performance problem").
*/
#include <errno.h>
@@ -242,6 +248,8 @@ static struct tst_test test = {
.tags = (const struct tst_tag[]) {
{"linux-git", "55231e5c898c"},
{"linux-git", "8de15e920dc8"},
+ {"linux-git", "e6e88712e43b"},
+ {"linux-git", "66383800df9c"},
{}
}
};
--
2.23.0
More information about the ltp
mailing list