min_filelist_kbytes is not working on kernel 3.14 x86_64 boards |
||||||
Issue descriptionWhen I am checking autotest platform_LowMemoryTest failures on 3.14 x86_64 boards, I found that the file page count is very low when the system OOM. It suggests that min_filelist_kbytes is not working. When almost all file pages are dropped, the system is very sluggish. There are only 512 KB file pages in DMA32 zone when OOM. 2018-10-11T01:39:55.307924+00:00 NOTICE kernel: [11557.574515] DMA32 free:89228kB min:89388kB low:111732kB high:134080kB active_anon:149784kB inactive_anon:155936kB active_file:184kB inactive_file:328kB unevictable:0kB isolated(anon):0kB isolated(file):0kB present:2013428kB managed:1965496kB mlocked:0kB dirty:0kB writeback:0kB mapped:1328kB shmem:61584kB slab_reclaimable:16832kB slab_unreclaimable:27744kB kernel_stack:2448kB pagetables:14844kB unstable:0kB bounce:0kB free_cma:0kB writeback_tmp:0kB pages_scanned:469326 all_unreclaimable? yes The autotest kernel log: https://storage.cloud.google.com/chromeos-autotest-results/247293942-chromeos-test/chromeos4-row3-rack7-host20/platform_LowMemoryTest/sysinfo/messages The root cause: MEMCG is enabled on 3.14 x86_64 boards: https://cs.corp.google.com/chromeos_public/src/third_party/kernel/v3.14/chromeos/config/x86_64/chromeos-intel-pineview.flavour.config?rcl=1d5df63f14b586828a01173c04e0927e468b3d13&l=14 and file_is_low always return false when MEMCG is enabled: https://cs.corp.google.com/chromeos_public/src/third_party/kernel/v3.14/mm/vmscan.c?rcl=1d5df63f14b586828a01173c04e0927e468b3d13&l=1870
,
Oct 11
,
Oct 11
Hi, Bernie, CONFIG_MEMCG is enabled on kernel 3.14 x86_64 boards by: https://crrev.com/c/363972 , but the commit message didn't mention MEMCG. And I think MEMCG is not used on kernel 3.14 boards. Is it OK to disable MEMCG on 3.14 x86_64 boards?
,
Oct 11
Good find! I know Android uses memcg, so maybe it was assumed that it was a requirement for ARC++ ? I'm guessing it's not actually required though since we don't have it turned on in 3.18 or 4.4 etc (yet)
,
Oct 12
The following revision refers to this bug: https://chromium.googlesource.com/chromiumos/third_party/kernel/+/4c29f5871148d59c8630364423d6ad066915b1d7 commit 4c29f5871148d59c8630364423d6ad066915b1d7 Author: Kuo-Hsin Yang <vovoy@chromium.org> Date: Fri Oct 12 11:47:16 2018 CHROMIUM: config: turn off unused configs on x86_64 boards CONFIG_MEMCG and CONFIG_MM_OWNER are only enabled on kernel 3.14 x86_64 boards and are not actually used. BUG= chromium:894349 TEST=build and boot Change-Id: I9637bc4b0fed3bafebc3c4a9e8450ee113b4caf6 Signed-off-by: Kuo-Hsin Yang <vovoy@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/1278430 Commit-Ready: Vovo Yang <vovoy@chromium.org> Tested-by: Vovo Yang <vovoy@chromium.org> Reviewed-by: Sonny Rao <sonnyrao@chromium.org> [modify] https://crrev.com/4c29f5871148d59c8630364423d6ad066915b1d7/chromeos/config/x86_64/chromeos-intel-pineview.flavour.config
,
Oct 17
,
Dec 13
The following revision refers to this bug: https://chromium.googlesource.com/chromiumos/third_party/kernel/+/94dec01ea7cf20bf3e1bfaeff82c72953803d834 commit 94dec01ea7cf20bf3e1bfaeff82c72953803d834 Author: Kuo-Hsin Yang <vovoy@chromium.org> Date: Thu Dec 13 11:12:19 2018 CHROMIUM: mm: checking min_filelist_kbytes in global reclaim There are 2 types of memory reclaim: 1. global reclaim is triggered when system free memory is under global memory watermark. 2. memcg reclaim is triggered when memory usage of a memcg exceeded its limit. Reserving file pages in global reclaim is sufficient to avoid system-wide file page thrashing. Reserving file pages in memcg reclaim requires min_filelist_kbytes settings for each memcg, it can be done when needed. BUG= chromium:894349 TEST=checking meminfo file page size in low memory condition Change-Id: Id78a45e117ac4b54c12f8b722d4cc7d357594345 Signed-off-by: Kuo-Hsin Yang <vovoy@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/1372671 Commit-Ready: ChromeOS CL Exonerator Bot <chromiumos-cl-exonerator@appspot.gserviceaccount.com> Tested-by: Sonny Rao <sonnyrao@chromium.org> Reviewed-by: Vovo Yang <vovoy@chromium.org> [modify] https://crrev.com/94dec01ea7cf20bf3e1bfaeff82c72953803d834/mm/vmscan.c |
||||||
►
Sign in to add a comment |
||||||
Comment 1 by vovoy@chromium.org
, Oct 11