-
Bug
-
Resolution: Unresolved
-
Undefined
-
None
-
False
-
-
False
-
None
-
rhel-kernel-ft
-
-
This issue was originally created at 2024-06-13T13:57:06.869Z as a Gitlab issue:
https://gitlab.com/redhat/centos-stream/tests/kernel/kernel-tests/-/issues/1942
- Snippet of test failure
https://beaker.engineering.redhat.com/recipes/16313871#task178877007
ibm-p10-01-lp15.build.eng.rdu2.redhat.com (ppc64le)
kernel-5.14.0-70.104.1.el9_0::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
:: proc_sysctl dirty_page
:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: [ 19:28:42 ] :: [ LOG ] :: Runnning eval dirty_page, with 3600 seconds timeout
:: [ 19:28:42 ] :: [ BEGIN ] :: Running 'sysctl -w vm.dirty_writeback_centisecs=0'
vm.dirty_writeback_centisecs = 0
:: [ 19:28:42 ] :: [ PASS ] :: Command 'sysctl -w vm.dirty_writeback_centisecs=0' (Expected 0, got 0)
:: [ 19:28:42 ] :: [ LOG ] :: Start test_dirty_bytes1
:: [ 19:28:42 ] :: [ BEGIN ] :: Running 'sysctl -w vm.dirty_background_bytes=500000000'
vm.dirty_background_bytes = 500000000
:: [ 19:28:42 ] :: [ PASS ] :: Command 'sysctl -w vm.dirty_background_bytes=500000000' (Expected 0, got 0)
:: [ 19:28:42 ] :: [ BEGIN ] :: Running 'sysctl -w vm.dirty_bytes=500000000'
vm.dirty_bytes = 500000000
:: [ 19:28:42 ] :: [ PASS ] :: Command 'sysctl -w vm.dirty_bytes=500000000' (Expected 0, got 0)
:: [ 19:28:42 ] :: [ PASS ] :: dirty_background_ratio (Assert: expected 0, got 0)
:: [ 19:28:42 ] :: [ PASS ] :: dirty_ratio (Assert: expected 0, got 0)
:: [ 19:28:43 ] :: [ BEGIN ] :: Running 'sync && sysctl -w vm.drop_caches=3'
vm.drop_caches = 3
:: [ 19:28:43 ] :: [ PASS ] :: Command 'sync && sysctl -w vm.drop_caches=3' (Expected 0, got 0)
:: [ 19:28:43 ] :: [ BEGIN ] :: Running 'dd if=/dev/zero of=./testfile bs=1M count=200'
200+0 records in
200+0 records out
209715200 bytes (210 MB, 200 MiB) copied, 0.0162158 s, 12.9 GB/s
:: [ 19:28:43 ] :: [ PASS ] :: Command 'dd if=/dev/zero of=./testfile bs=1M count=200' (Expected 0, got 0)
:: [ 19:28:53 ] :: [ FAIL ] :: 200M should not trigger flush since dirty_bytes are set to 500M (Assert: "155584" should be >= "163840")
- Test logs on DataWarehouse
https://datawarehouse.cki-project.org/kcidb/tests/12837938
- DataWarehouse issue
If the problem is already tracked on DataWarehouse, please include a link to the DataWarehouse issue, e.g. https://datawarehouse.cki-project.org/issue/12345.
- Additional details
Code in question :
rlAssertGreaterOrEqual "200M should not trigger flush since dirty_bytes are set to 500M" "$(awk '/Dirty/
Unknown macro: {print $2}' /proc/meminfo)" "$((204800/10*8))"
Appears a 20% excess is allowed to be flushed, in this particular case a 24% of dirtied pages were flushed (assuming nothing else dirtied pages on a relevant number)
it is not clear to me why this 20% is allowed, is it related to some _ratio parameters ?
- links to