Commit Graph

1250 Commits

Author SHA1 Message Date
Suren Baghdasaryan 4a4e1590f1 lmkd: Fix the text of the warning when pthread_setschedparam fails am: 508e73e105
Original change: https://android-review.googlesource.com/c/platform/system/memory/lmkd/+/2147680

Change-Id: I581e74df34e8174e5dd9b464a7b4bc0f4893711d
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-07-07 18:11:12 +00:00
Suren Baghdasaryan 508e73e105 lmkd: Fix the text of the warning when pthread_setschedparam fails
Fix the text of the warning when pthread_setschedparam fails to set
SCHED_OTHER scheduling policy for a reaper thread.

Bug: 237180716
Signed-off-by: Suren Baghdasaryan <surenb@google.com>
Change-Id: I1b04713d145f4f3c243f16f932c753f5b06d48e6
2022-07-07 08:39:49 -07:00
Suren Baghdasaryan 94998a07dc lmkd: set normal scheduling policy for reaper threads am: 353c2f174f
Original change: https://android-review.googlesource.com/c/platform/system/memory/lmkd/+/2147025

Change-Id: I7e333c8bfc132f362156d271bf1201d3a9aae8d2
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-07-07 01:20:20 +00:00
Suren Baghdasaryan 353c2f174f lmkd: set normal scheduling policy for reaper threads
Reaper threads can take considerable time to free target's
memory running at RT priority that they inherit from LMKD.
This might prevent other critical tasks from being scheduled
while reaper threads are active.
Explicitly set reaper threads to run under normal scheduling
policy but set their nice value to ANDROID_PRIORITY_HIGHEST.

Bug: 237180716
Signed-off-by: Suren Baghdasaryan <surenb@google.com>
Change-Id: Idad817e698ae1d5ac6cee5aa3281c69c7e0d257f
2022-07-06 15:21:50 -07:00
Yuming Han 800f962338 lmkd: Fixed data overflow on ARM am: 79f58c012d
Original change: https://android-review.googlesource.com/c/platform/system/memory/lmkd/+/2138097

Change-Id: I522fd95dbc7acc2774e0961ae6956fd3bd827e18
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-07-01 20:08:46 +00:00
Yuming Han 79f58c012d lmkd: Fixed data overflow on ARM
Both pgscan_kwsapd and pgscan_direct are defined as unsigned long,
the overflow issues occur on ARM kernel space. Just check whether
their values changed.

Signed-off-by: Yuming Han <yuming.han@unisoc.com>
Change-Id: I73b27855ede9ca729208775e982660bae967ab92
2022-06-29 16:06:18 +08:00
Suren Baghdasaryan 150ff325ac lmkd: Fix the size of vmstat_field_names array am: caebcddf9f am: 2c75c4987c
Original change: https://android-review.googlesource.com/c/platform/system/memory/lmkd/+/2132969

Change-Id: I693d2d097a08df644df33b951e4330ed2a846aed
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-06-23 00:58:13 +00:00
Suren Baghdasaryan 2c75c4987c lmkd: Fix the size of vmstat_field_names array am: caebcddf9f
Original change: https://android-review.googlesource.com/c/platform/system/memory/lmkd/+/2132969

Change-Id: Id034f3723232a95b220d3f15e4f2aa7668b26294
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-06-23 00:39:22 +00:00
Suren Baghdasaryan caebcddf9f lmkd: Fix the size of vmstat_field_names array
The size of the vmstat_field_names array should correspond to the number
of elements in vmstat_field enum (VS_FIELD_COUNT).

Bug: 227769256
Reported-by: Yuming Han <yuming.han@unisoc.com>
Signed-off-by: Suren Baghdasaryan <surenb@google.com>
Change-Id: Icac2810c4efca2a07cefba6e220165ef4f194867
2022-06-22 23:10:47 +00:00
Kameron Lutes e07a5bee30 lmkd: Fix potential null dereference in hook call am: e9769f7cf3 am: 12371c792c
Original change: https://android-review.googlesource.com/c/platform/system/memory/lmkd/+/2133711

Change-Id: Ib5496447d3b5667cc5f28dd3002339c5ed448350
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-06-22 22:04:33 +00:00
Kameron Lutes 4fb05dfe00 lmkd: Add hooks to LMKD am: 2cce3066da am: 60969b1fef
Original change: https://android-review.googlesource.com/c/platform/system/memory/lmkd/+/2133710

Change-Id: If262e1cd80111a6cec8027144f9504e4042dd77f
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-06-22 22:04:29 +00:00
Kameron Lutes 12371c792c lmkd: Fix potential null dereference in hook call am: e9769f7cf3
Original change: https://android-review.googlesource.com/c/platform/system/memory/lmkd/+/2133711

Change-Id: I01aeddc9d39f351e49b3d63b09ffb10f3ab7f8ae
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-06-22 21:45:39 +00:00
Kameron Lutes 60969b1fef lmkd: Add hooks to LMKD am: 2cce3066da
Original change: https://android-review.googlesource.com/c/platform/system/memory/lmkd/+/2133710

Change-Id: I5a99f58b135fa865635c2873bae0e9eea9733815
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-06-22 21:45:38 +00:00
Kameron Lutes e9769f7cf3 lmkd: Fix potential null dereference in hook call
If hooks are enabled in LMKD and kill_info is not supplied to
kill_one_process, there will be a null dereference on kill_info. This
changes validates ki before dereferencing.

Bug: b/210075795
Test: cq
Change-Id: Ie81ca9bdb73a71f16dc5682c8721a557b8b094fb
Merged-In: Ie81ca9bdb73a71f16dc5682c8721a557b8b094fb
2022-06-22 03:40:33 +00:00
Kameron Lutes 2cce3066da lmkd: Add hooks to LMKD
Adds several hooks to LMKD that can be overridden by the vendor. This
allows for device specific control of LMKD when necessary.

Bug: b/210075795
Test: cq

Change-Id: Ib231743183134b05148d45d681765860da6274ae
(cherry picked from commit 2c1248381a52fc520c6cd1acfaee80818eaa9ee1)
Merged-In: Ib231743183134b05148d45d681765860da6274ae
2022-06-22 03:35:23 +00:00
Yongqin Liu 09c2245060 lmkd: fix the cgroup attribute name to MemCgroupEventControl am: bf819b5593 am: 14512ee7af
Original change: https://android-review.googlesource.com/c/platform/system/memory/lmkd/+/2080181

Change-Id: I644bfe01465528f5807c3c6977e5bdebbc5528a8
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-04-29 18:25:40 +00:00
Yongqin Liu 14512ee7af lmkd: fix the cgroup attribute name to MemCgroupEventControl am: bf819b5593
Original change: https://android-review.googlesource.com/c/platform/system/memory/lmkd/+/2080181

Change-Id: I8d68056cbd082ac936ef6fe7e3215665622d12e4
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-04-29 17:59:28 +00:00
Yongqin Liu bf819b5593 lmkd: fix the cgroup attribute name to MemCgroupEventControl
which was CgroupEventControl before, but it's not the one
that definied in system/core/libprocessgroup/profiles/task_profiles.json.

And it causes lmkd crash for some setups like 4.19q + AOSP Master

Bug: 230642311

Test: boot the 4.19q + AOSP master setup with hikey960 board

Signed-off-by: Yongqin Liu <yongqin.liu@linaro.org>
Change-Id: I87b1ea2040f21c52d549db58692fc8a2b114f8e6
2022-04-29 18:50:20 +08:00
전윤재 48e232df6a lmkd: Fix a comparison operation with uninitialized variable. am: f70a8a260f am: 1c09b504c8
Original change: https://android-review.googlesource.com/c/platform/system/memory/lmkd/+/2073128

Change-Id: I205fd40567e6842081f2cedf15feb522b31f8478
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-04-27 00:41:34 +00:00
전윤재 1c09b504c8 lmkd: Fix a comparison operation with uninitialized variable. am: f70a8a260f
Original change: https://android-review.googlesource.com/c/platform/system/memory/lmkd/+/2073128

Change-Id: Ifaa6bf2008bdb73e74b67ce02cc540275b99b9de
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-04-27 00:03:53 +00:00
전윤재 f70a8a260f lmkd: Fix a comparison operation with uninitialized variable.
Prevent comparing uninitialized poll_start_tm with curr_tm in call_handler().
The bug caused by this has been fixed by the commit: d816ab.
But the main bug is not fixed yet and it may cause problem
in later if we add another operations in this if block.

Change-Id: Id13318297a2cbf2f9784134a2ccd648cc221e8c4
Signed-off-by: Yoonjae Jeon <yj213.jeon@samsung.com>
2022-04-25 00:51:47 +00:00
Bart Van Assche 9b467fd0f9 lmkd: Add support for cgroups v2 memcg hierarchy am: 759943643f am: 39cde77892 am: 3b00650675
Original change: https://android-review.googlesource.com/c/platform/system/memory/lmkd/+/1972106

Change-Id: I4c3c64b0a93230d925d42c0e9bef5e0b05b50cd2
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-04-19 18:35:38 +00:00
Bart Van Assche 3b00650675 lmkd: Add support for cgroups v2 memcg hierarchy am: 759943643f am: 39cde77892
Original change: https://android-review.googlesource.com/c/platform/system/memory/lmkd/+/1972106

Change-Id: Ifd4a54f22d2e1e78e84cb325532883912fd1a201
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-04-19 18:07:03 +00:00
Bart Van Assche 39cde77892 lmkd: Add support for cgroups v2 memcg hierarchy am: 759943643f
Original change: https://android-review.googlesource.com/c/platform/system/memory/lmkd/+/1972106

Change-Id: I759a869723eb6f483e2ed58f7250d64e4fe5351b
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-04-19 17:50:20 +00:00
Bart Van Assche 759943643f lmkd: Add support for cgroups v2 memcg hierarchy
Use the /sys/fs/cgroup/uid_%u/pid_%u path instead of
/dev/memcg/apps/uid_%u/pid_%u" if the memcg controller is mounted in the
v2 cgroup hierarchy. Skip the code that refers to memcg attributes that
only exist in the cgroup v1 hierarchy when using the v2 memcg. Complain
if it is attempted to use the old kill strategy in combination with
memcg v2 since only the new strategy is compatible with the v2 cgroup
hiearchy.

Bug: 213617178
Test: Tested lmkd inside the Cuttlefish emulator. Triggered an
Test: out-of-memory condition as follows:
Test: i=0; while [ $i -lt 16 ]; do dd if=/dev/zero of=/dev/null bs=1G count=1 & ((i++)) done
Test: That caused the following output to appear in logcat:
Test: 02-03 18:13:02.772   241   241 I lowmemorykiller: Kill 'com.android.packageinstaller' (3031), uid 10022, oom_score_adj 975 to free 29348kB rss, 21232kB swap; reason: min watermark is breached and swap is low (135016kB < 150384kB)
Test: 02-03 18:13:02.772   241   241 I killinfo: [3031,10022,975,0,29348,3,73644,98460,8,1000,33448,40220,1503848,135016,81720,1387040,27268,29520,50348,103164,20176,57664,0,0,0,519,103,5,0,21232,30016,0,2]
Test: From the kernel log:
Test: [  302.834958] Out of memory: Killed process 3017 (ADB-JDWP Connec) total-vm:13522856kB, anon-rss:0kB, file-rss:0kB, shmem-rss:560kB, UID:10052 pgtables:1008kB oom_score_adj:975
Test: [  303.223702] Out of memory: Killed process 2859 (HeapTaskDaemon) total-vm:13534452kB, anon-rss:0kB, file-rss:0kB, shmem-rss:560kB, UID:10051 pgtables:1060kB oom_score_adj:965
Test: [  303.478833] Out of memory: Killed process 2816 (Signal Catcher) total-vm:13524108kB, anon-rss:0kB, file-rss:0kB, shmem-rss:564kB, UID:10073 pgtables:1016kB oom_score_adj:965
Test: [  304.823796] Out of memory: Killed process 2438 (ReferenceQueueD) total-vm:13529180kB, anon-rss:0kB, file-rss:0kB, shmem-rss:568kB, UID:10015 pgtables:1056kB oom_score_adj:955
Test: [  305.226728] Out of memory: Killed process 3126 (DefaultDispatch) total-vm:13532596kB, anon-rss:0kB, file-rss:0kB, shmem-rss:528kB, UID:10019 pgtables:1064kB oom_score_adj:945
Test: [  305.935615] Out of memory: Killed process 2637 (Jit thread pool) total-vm:13523084kB, anon-rss:0kB, file-rss:0kB, shmem-rss:0kB, UID:10024 pgtables:1036kB oom_score_adj:935
Test: [  307.055895] Out of memory: Killed process 2063 (HeapTaskDaemon) total-vm:13755876kB, anon-rss:0kB, file-rss:0kB, shmem-rss:11600kB, UID:10074 pgtables:1552kB oom_score_adj:0
Test: [  307.398512] Out of memory: Killed process 2298 (rs.media.module) total-vm:13560404kB, anon-rss:12924kB, file-rss:0kB, shmem-rss:720kB, UID:10076 pgtables:1156kB oom_score_adj:-700
Test: [  309.888679] Out of memory: Killed process 1745 (droid.bluetooth) total-vm:13720424kB, anon-rss:11084kB, file-rss:0kB, shmem-rss:208kB, UID:1002 pgtables:1220kB oom_score_adj:-700
Test: [  311.050133] Out of memory: Killed process 1759 (ndroid.systemui) total-vm:13852268kB, anon-rss:26468kB, file-rss:0kB, shmem-rss:6988kB, UID:10075 pgtables:1628kB oom_score_adj:-800
Test: [  313.520057] Out of memory: Killed process 2000 (m.android.phone) total-vm:13593404kB, anon-rss:14600kB, file-rss:236kB, shmem-rss:340kB, UID:1001 pgtables:1312kB oom_score_adj:-800
Test: [  314.337744] Out of memory: Killed process 1911 (rkstack.process) total-vm:13540420kB, anon-rss:8232kB, file-rss:0kB, shmem-rss:180kB, UID:1073 pgtables:1128kB oom_score_adj:-800
Test: [  314.745542] Out of memory: Killed process 1984 (com.android.se) total-vm:13525236kB, anon-rss:6944kB, file-rss:0kB, shmem-rss:188kB, UID:1068 pgtables:1012kB oom_score_adj:-800
Test: [  315.007212] Out of memory: Killed process 677 (system_server) total-vm:15049836kB, anon-rss:1856kB, file-rss:0kB, shmem-rss:240kB, UID:1000 pgtables:2084kB oom_score_adj:-900
Change-Id: I78821bcd332af7b3f642f037faa2df15a937dc26
Signed-off-by: Bart Van Assche <bvanassche@google.com>
2022-03-29 13:38:04 -07:00
Bart Van Assche cbe6b65f72 lmkd: Look up cgroup attribute paths instead of hardcoding these am: b4d26bb22b am: 08f4720373 am: def6a3f12f
Original change: https://android-review.googlesource.com/c/platform/system/memory/lmkd/+/1990496

Change-Id: Ica6100474a8ed7dce01045ad3a5362ce4e7721ab
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-03-25 22:32:33 +00:00
Bart Van Assche def6a3f12f lmkd: Look up cgroup attribute paths instead of hardcoding these am: b4d26bb22b am: 08f4720373
Original change: https://android-review.googlesource.com/c/platform/system/memory/lmkd/+/1990496

Change-Id: I4d84abb1687325d3e153fe6dc59de6dd5c5bfd3d
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-03-25 22:15:26 +00:00
Bart Van Assche 08f4720373 lmkd: Look up cgroup attribute paths instead of hardcoding these am: b4d26bb22b
Original change: https://android-review.googlesource.com/c/platform/system/memory/lmkd/+/1990496

Change-Id: Idd2fa5330216242e8e99c60811c0beb57d970752
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-03-25 21:53:03 +00:00
Bart Van Assche 51feb261e5 statslog: Make this library compatible with the cgroups v2 hierarchy am: 16ba8bc773 am: d3401c8ae9 am: aac55955a2
Original change: https://android-review.googlesource.com/c/platform/system/memory/lmkd/+/1975449

Change-Id: I32ab72a005ff992beb9b1daf3b4c07164deea799
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-03-25 17:38:23 +00:00
Bart Van Assche aac55955a2 statslog: Make this library compatible with the cgroups v2 hierarchy am: 16ba8bc773 am: d3401c8ae9
Original change: https://android-review.googlesource.com/c/platform/system/memory/lmkd/+/1975449

Change-Id: Ic144cf22d834ef77774a2c6f7287d031cf53a993
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-03-25 17:17:08 +00:00
Bart Van Assche d3401c8ae9 statslog: Make this library compatible with the cgroups v2 hierarchy am: 16ba8bc773
Original change: https://android-review.googlesource.com/c/platform/system/memory/lmkd/+/1975449

Change-Id: I7594f669aa8902b6b066a4a11689faadf08911d4
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-03-25 16:59:36 +00:00
Bart Van Assche b4d26bb22b lmkd: Look up cgroup attribute paths instead of hardcoding these
Retrieve cgroup attribute paths from task_profiles.json instead of
hardcoding these paths.

Bug: 213617178
Test: Tested lmkd in Cuttlefish.
Change-Id: I03f40ac8ccd4635f21432214e1acf997c505d1e9
Signed-off-by: Bart Van Assche <bvanassche@google.com>
2022-03-24 15:58:02 -07:00
Bart Van Assche 16ba8bc773 statslog: Make this library compatible with the cgroups v2 hierarchy
Call memcg_apps_dir() instead of hard-coding the top-level directory of
the memcg controller.

Bug: 213617178
Test: Verified lmkd operation inside Cuttlefish.
Change-Id: I659610ebdabe3b69b0b1097aa5cf248d6f3273c5
Signed-off-by: Bart Van Assche <bvanassche@google.com>
2022-03-24 15:58:00 -07:00
Bart Van Assche e93c0f63f7 liblmkd_utils: Use libprocessgroup to create cgroups am: 911f106a4a am: f0544971d4 am: 84dbabc1b2
Original change: https://android-review.googlesource.com/c/platform/system/memory/lmkd/+/2034587

Change-Id: Id2891d0b356b986ddaa846e53495a939eb6daaba
2022-03-22 20:38:55 +00:00
Bart Van Assche 84dbabc1b2 liblmkd_utils: Use libprocessgroup to create cgroups am: 911f106a4a am: f0544971d4
Original change: https://android-review.googlesource.com/c/platform/system/memory/lmkd/+/2034587

Change-Id: I02fe722830a1b5ef282262ac0a2799fbf0f483fe
2022-03-22 20:17:13 +00:00
Bart Van Assche f0544971d4 liblmkd_utils: Use libprocessgroup to create cgroups am: 911f106a4a
Original change: https://android-review.googlesource.com/c/platform/system/memory/lmkd/+/2034587

Change-Id: I682dfc8e3b463bd5203d5102ec37c2af5422e64f
2022-03-22 20:02:44 +00:00
Bart Van Assche 911f106a4a liblmkd_utils: Use libprocessgroup to create cgroups
Bug: 213617178
Test: Ran lmkd_tests inside Cuttlefish
Change-Id: Ic34b731dfe5d6b1e90d258c2b0af538a216b054a
Signed-off-by: Bart Van Assche <bvanassche@google.com>
2022-03-21 15:57:37 -07:00
Presubmit Automerger Backend e7ba6bbd71 [automerger skipped] [automerged blank] lmkd: Log psi averages in killinfo reports 2p: 0e0da56b4f am: 1bb11f2730 -s ours
am skip reason: Merged-In Ifbcf47cab291fb20dbf0b5d32f1965f4e6462b49 with SHA-1 014dd7156e is already in history

Original change: https://googleplex-android-review.googlesource.com/c/platform/system/memory/lmkd/+/16998403

Change-Id: I92056854199896a9f6a65780348851f51a36cab7
2022-02-25 00:16:53 +00:00
Presubmit Automerger Backend 1bb11f2730 [automerged blank] lmkd: Log psi averages in killinfo reports 2p: 0e0da56b4f
Blank merge reason: Change-Id Ifbcf47cab291fb20dbf0b5d32f1965f4e6462b49 with SHA-1 014dd7156e is in history

Original change: https://googleplex-android-review.googlesource.com/c/platform/system/memory/lmkd/+/16998403

Bug: 205182133
Change-Id: I117fdb2489a3614d2028cd683b0235c2ab7531f1
Merged-In: Ifbcf47cab291fb20dbf0b5d32f1965f4e6462b49
2022-02-24 04:01:06 +00:00
Suren Baghdasaryan 0e0da56b4f lmkd: Log psi averages in killinfo reports
Add psi memory, io and cpu 10sec averages into killinfo reports.

Bug: 205182133
Signed-off-by: Suren Baghdasaryan <surenb@google.com>
Signed-off-by: Martin Liu <liumartin@google.com>
Change-Id: Ifbcf47cab291fb20dbf0b5d32f1965f4e6462b49
Merged-In: Ifbcf47cab291fb20dbf0b5d32f1965f4e6462b49
2022-02-24 12:00:44 +08:00
Bart Van Assche b893101ac1 lmkd: Fix a potential buffer overflow am: 5ebc4e8f51 am: 75a98b56ab am: bcc461658b
Original change: https://android-review.googlesource.com/c/platform/system/memory/lmkd/+/1972105

Change-Id: I986dbc2faa98ffa2dd3a849b25fcfd6c955ea56b
2022-02-23 19:45:15 +00:00
Bart Van Assche a02c2dc079 lmkd: Use std::array<> and remove the ARRAY_SIZE() definition am: 545067957c am: f9489027a1 am: 350a02e15d
Original change: https://android-review.googlesource.com/c/platform/system/memory/lmkd/+/1972104

Change-Id: Ibff73f0b29a47624a374d46b92e98124a3d49f19
2022-02-23 19:45:13 +00:00
Bart Van Assche 65b793bb9a lmkd: Use std::min() and std::max() instead of defining min() and max() macros am: 80a3dba57a am: c53ab08bf5 am: 20f9f7e0b7
Original change: https://android-review.googlesource.com/c/platform/system/memory/lmkd/+/1972103

Change-Id: I2de7ccd6d194fa959140a29f4b9963707aa37555
2022-02-23 19:45:12 +00:00
Bart Van Assche bcc461658b lmkd: Fix a potential buffer overflow am: 5ebc4e8f51 am: 75a98b56ab
Original change: https://android-review.googlesource.com/c/platform/system/memory/lmkd/+/1972105

Change-Id: I4778df4e1f58a665beb519f16287e4b84a0849e2
2022-02-23 19:21:31 +00:00
Bart Van Assche 350a02e15d lmkd: Use std::array<> and remove the ARRAY_SIZE() definition am: 545067957c am: f9489027a1
Original change: https://android-review.googlesource.com/c/platform/system/memory/lmkd/+/1972104

Change-Id: If6a3e2e00794ec8df993a6bead87d564a2eea047
2022-02-23 19:21:30 +00:00
Bart Van Assche 20f9f7e0b7 lmkd: Use std::min() and std::max() instead of defining min() and max() macros am: 80a3dba57a am: c53ab08bf5
Original change: https://android-review.googlesource.com/c/platform/system/memory/lmkd/+/1972103

Change-Id: I56abe6f693c848eeae3acc3a39f723746f92b30a
2022-02-23 19:21:29 +00:00
Bart Van Assche 75a98b56ab lmkd: Fix a potential buffer overflow am: 5ebc4e8f51
Original change: https://android-review.googlesource.com/c/platform/system/memory/lmkd/+/1972105

Change-Id: I4dca955fd118a16fc3bd1a37beeb8fe317bcbcc2
2022-02-23 18:55:06 +00:00
Bart Van Assche f9489027a1 lmkd: Use std::array<> and remove the ARRAY_SIZE() definition am: 545067957c
Original change: https://android-review.googlesource.com/c/platform/system/memory/lmkd/+/1972104

Change-Id: Icb6ad2718ff8170bc457268688b9ae94e53a4c1f
2022-02-23 18:55:05 +00:00
Bart Van Assche c53ab08bf5 lmkd: Use std::min() and std::max() instead of defining min() and max() macros am: 80a3dba57a
Original change: https://android-review.googlesource.com/c/platform/system/memory/lmkd/+/1972103

Change-Id: Ifd1a8218fd0d6fbb4bbca9b0cc65b39c8b0e7226
2022-02-23 18:55:04 +00:00
Bart Van Assche 5ebc4e8f51 lmkd: Fix a potential buffer overflow
Prevent that the statement that writes '\0' past the read data can write
past the end of the buffer.

Bug: 213617178
Test: Compile-tested only.
Change-Id: I6922c343a6bcb52dce0b5cf54f09b2850e9dfde2
Signed-off-by: Bart Van Assche <bvanassche@google.com>
2022-02-23 17:05:11 +00:00