{"push_id":779633803,"size":2,"distinct_size":2,"ref":"refs/heads/cm-12.1","head":"012a2023d334e04f81f50f9a2d31a9f15ec252c0","before":"5ae1ec52522b3680428366d7e5ee40ae46734cb1","commits":[{"sha":"55e6d7ea7adf8b346f9bcd34b46915a3ffa4ea7e","author":{"email":"db18ceb40708dab5e9bcdbeb620f7eed18da08e5@codeaurora.org","name":"Vinayak Menon"},"message":"mm: vmpressure: allow in-kernel clients to subscribe for events\n\nCurrently, vmpressure is tied to memcg and its events are\navailable only to userspace clients. This patch removes\nthe dependency on CONFIG_MEMCG and adds a mechanism for\nin-kernel clients to subscribe for vmpressure events (in\nfact raw vmpressure values are delivered instead of vmpressure\nlevels, to provide clients more flexibility to take actions\non custom pressure levels which are not currently defined\nby vmpressure module).\n\nChange-Id: I38010f166546e8d7f12f5f355b5dbfd6ba04d587\nSigned-off-by: Vinayak Menon <vinmenon@codeaurora.org>","distinct":true,"url":"https://api.github.com/repos/zwliew/android_kernel_xiaomi_msm8916/commits/55e6d7ea7adf8b346f9bcd34b46915a3ffa4ea7e"},{"sha":"012a2023d334e04f81f50f9a2d31a9f15ec252c0","author":{"email":"db18ceb40708dab5e9bcdbeb620f7eed18da08e5@codeaurora.org","name":"Vinayak Menon"},"message":"lowmemorykiller: adapt to vmpressure\n\nThere were issues reported, where page cache thrashing was\nobserved because of LMK not killing tasks when required,\nresulting in sluggishness and higher app launch latency.\nLMK does not kill a task for the following reasons.\n1. The free and file pages are above the LMK thresholds\n2. LMK tries to pick task with an adj level corresponding\nto current thresholds, but fails to do so because of the\nabsence of tasks in that level.\nBut sometimes it is better to kill a lower adj task, than thrashing.\nAnd there are cases where the number of file pages are huge, though\nwe dont thrash, the reclaim process becomes time consuming, since\nLMK triggers will be delayed because of higher number of file\npages. Even in such cases, when reclaim path finds it difficult\nto reclaim pages, it is better to trigger lmk to free up some memory\nfaster.\n\nThe basic idea here is to make LMK more aggressive dynamically\nwhen such a thrashing scenario is detected.\n\nTo detect thrashing, this patch uses vmpressure events.\nThe values of vmpressure upon which an action has to be taken,\nwas derived empirically.\n\nThis patch also adds tracepoints to validate this feature,\nalmk_shrink and almk_vmpressure.\n\nTwo knobs are available for the user to tune adaptive lmk\nbehaviour.\n\n/sys/module/lowmemorykiller/parameters/adaptive_lmk - Write\n1 to enable the feature, 0 to disable. By default disabled.\n\n/sys/module/lowmemorykiller/parameters/vmpressure_file_min -\nThis parameter controls the behaviour of LMK when vmpressure\nis in the range of 90-94. Adaptive lmk triggers based on number file\npages wrt vmpressure_file_min, when vmpressure is in the range of\n90-94. Usually this is a pseudo minfree value, higher than the\nhighest configured value in minfree array.\n\nChange-Id: I1a08160c35d3e33bdfd1d2c789c288fc07d0f0d3\nSigned-off-by: Vinayak Menon <vinmenon@codeaurora.org>","distinct":true,"url":"https://api.github.com/repos/zwliew/android_kernel_xiaomi_msm8916/commits/012a2023d334e04f81f50f9a2d31a9f15ec252c0"}]}