summaryrefslogtreecommitdiff
path: root/libmemtrack
AgeCommit message (Collapse)Author
2021-02-12[LSC] Add LOCAL_LICENSE_KINDS to hardware/qcom/sdm845/displayBob Badour
Added SPDX-license-identifier-Apache-2.0 to: libhistogram/Android.mk libmemtrack/Android.mk Added SPDX-license-identifier-Apache-2.0 SPDX-license-identifier-BSD legacy_not_a_contribution to: Android.bp gralloc/Android.mk libqservice/Android.bp sdm/libs/hwc2/Android.mk Added SPDX-license-identifier-Apache-2.0 legacy_not_a_contribution to: gpu_tonemapper/Android.mk liblight/Android.mk Added SPDX-license-identifier-BSD to: hdmi_cec/Android.mk libdebug/Android.mk libdisplayconfig/Android.mk libdrmutils/Android.mk libqdutils/Android.bp sdm/libs/core/Android.mk sdm/libs/utils/Android.mk Bug: 68860345 Bug: 151177513 Bug: 151953481 Test: m all Exempt-From-Owner-Approval: janitorial work Change-Id: I8ccb4cb621fcd75c1736613789397e4187a892ce
2018-04-27Merge remote-tracking branch ↵Daniel Mentz
'goog/qcom/release/LA.UM.7.3.9.08.00.00.385.267' into pi-dev Conflicts: liblight/Android.mk liblight/lights.c libqdutils/Android.mk Bug: 78481303 Change-Id: I57ee54903a8ee5d7befd5c2dfbd93cfc16eebb0d
2018-03-28display: VNDK header fixesNaseer Ahmed
Change-Id: Id7604ac803e49940aa2b49e106b414b4be1a25ad
2018-03-27Make memtrack.$TARGET_DEVICE build with the VNDK.Steven Moreland
When the vndk is enabled (BOARD_VNDK_VERSION=current), vendor libraries must only link against vendor variants in the build system. This also means that they receive restricted sets of headers and that automatic global headers are restricted. Test: build memtrack.$TARGET_DEVICE with BOARD_VNDK_VERSION=current Bug: 69574580 Change-Id: Id7e624b0daf4e38303b2b38df2dbd2977418b5a4
2017-05-29display: Use LOCAL_VENDOR_MODULENaseer Ahmed
Avoids hardcoding paths in vendor Change-Id: I6411c27cebfd8bc1d65bc84942b4c2621f64e420 CRs-Fixed: 2048581
2017-04-28libmemtrack: Fix fd leak in kgsl functionArchana Sriram
Added code to close fd for error cases in kgsl function to prevent possible leak in fd. CRs-Fixed: 2039493 Change-Id: I353423de286bf42c22b4726b519690d70303574f
2017-03-29display: Move all opensource modules to vendor partitionNaseer Ahmed
Change-Id: I050988d96eccc1c3217a8f2030b333cd8d04c4d4 CRs-Fixed: 2010492
2017-03-01Revert "display: Move all opensource modules to vendor partition"Naseer Ahmed
This reverts commit 4c790408b144b8ddf117a8d94661c81c86304cfc. Change-Id: I32c48e300e8c641b196210c4412b635e1c1941f0 CRs-Fixed: 2013665
2017-02-28display: Move all opensource modules to vendor partitionNaseer Ahmed
CRs-Fixed: 2010492 Change-Id: I80bb14624e9a47189777bd4c8f8847ca946df74c
2017-02-07libmemtrack: Update the flags field for sparse memory typeArchana Sriram
A new entry is added in the kgsl driver to the flags field of a memory entry which sets 'P' if the memory is of type sparse physical allocation, through this changeID: Ifaa687b036eeab22ab4cf0238abdfbe7b2311ed3 By Carter Cooper <ccooper@codeaurora.org> Hence, update the parsing of memory entry's flags field's value accordingly. CRs-Fixed: 2001688 Change-Id: I15ab1cac5d31c96f6602929a2919eb867d2108fd
2017-01-18libmemtrack: Fix integer overflow in kgsl functionArchana Sriram
In the kgsl function which gets memory info for a pid, there could be possibility of integer overflow in operations with size, mapsize, accounted_size, and unaccounted_size due to which result might be smaller than these values. External inputs size and mapsize are verified, and overflow check has been added. CRs-Fixed: 1103020 Change-Id: Ic450e990598777591739635facc08fb7a2e477f9 Signed-off-by: Archana Sriram <apsrir@codeaurora.org>
2016-12-12libmemtrack: Revert back the AOSP copyright years to 2013Hareesh Gundu
AOSP copyright years are incorrectly updated to 2013, 2016. Revert back AOSP copyright years to 2013 to as per requirement. Change-Id: I2235f415ce7c40d03f3060d4ac2bbb8690cce6d0 Signed-off-by: Hareesh Gundu <hareeshg@codeaurora.org>
2016-11-23libmemtrack: fix ion memory trackingSanthosh Punugu
Use 2 new columns from the kgsl debugfs mem file: egl_surface_count: # of buffer attachments with usage=egl_surface egl_image_count: # of buffer attachments with usage=egl_image If an ion buffer is mapped with usage=egl_surface, the entire size will be counted towards the egl_surface. The assumption is that the buffer will be freed if the producer process is killed. To handle buffers such as the wallpaper and texture atlas which have no producer and are potentially mapped multiple times, assign each process where usage=egl_image a size of "size / egl_image_count". This ensures that the total memory usage is correct, while still assigning some memory to each process which maps the buffer. The above replaces the attempts to avoid double counting buffers using the "is_surfaceflinger" check. CRs-Fixed: 1087134 Change-Id: I4e001f4a613520585be8799d7269aafe6140d7a6 Signed-off-by: Santhosh Punugu <spunug@codeaurora.org>
2016-06-21libmemtrack: Update the parsing of flags fieldHarshdeep Dhatt
An extra flag is added to the flags field of a memory entry which sets 's' if the memory is secure. Hence, update the parsing of a memory entry's fields value. Change-Id: If4a1ce2a518dd427c5680e6408ce7276457c66ca
2016-05-19libmemtrack: Update parsing of kgsl mem fileHarshdeep Dhatt
The mem file now has additional field, the mapsize. This represents the size in bytes mapped to userspace. Use this value and total size of an object to derive the unaccounted size. CRs-Fixed: 982589 Change-Id: I9400e7ddacf185ebf93d0dd09e33a61685bea4dd
2016-02-02libmemtrack: Update the parsing of flags fieldHarshdeep Dhatt
The length of flags field in kgsl debugfs mem file has changed from 7 to 8. Hence, change the parsing in libmemtrack accordingly. CRs-Fixed: 952970 Change-Id: I49d7df74fa24bc900110bf32019a552a09d8ce9d
2015-11-03display: Enable clang for all display modulesNaseer Ahmed
Change-Id: I71e3fa3f7d44253b8e01d1eafe086b1898d65a8e
2015-01-16libmemtrack: Fix the kgsl memory flag to determine usermapped buffersasmathur
The flag is the last character in 'flags' field array. It was wrongly indexed at flags[6] causing all entries to be marked as unaccounted. The correct check should be for flags[5] to be equal to 'Y'. Change-Id: I9f9af884b697363186d6315e5fb7c5673c22a495
2014-11-25libmemtrack: Properly account for memory usageRama Vaddula
Do not count the memory usage for egl_surfaces since its used as egl_image in surface flinger. Change-Id: If0049fb04ead93c632e3c4ad15185a19f17e0810
2014-09-25display: Fix warningsNaseer Ahmed
Treat warnings as errors again Change-Id: Ibd7f484d31ad420b85e82fd5183d70bf7dce4bfa
2014-09-09libmemtrack: avoid counting surfaceflinger buffers twiceFred Fettinger
The system wide Graphics memory usage is inaccurate because some ION buffers which are shared between processes are counted twice, once for the buffer's consumer (surfaceflinger), and again for the producer. These ION buffers appear in surfaceflinger's kgsl memory dump with usage=egl_image, and in the producer's dump with usage=egl_surface. Improve the accuracy of Graphics memory tracking by ignoring all ION buffers with usage=egl_image in the surfaceflinger process, under the assumption that the buffers will be accounted for when examining the producer's process. Change-Id: I764c610f226d41e2897d6e0c2247793b0e321ed0 Signed-off-by: Fred Fettinger <fred.fettinger@motorola.com>
2014-06-20libmemtrack: Use correct format specifierArun Kumar K.R
Remove warnings by using the correct format specifier Change-Id: I93a1f0a38355d4b501376ed7da2fed41893ac371
2014-05-29Merge "display: Change LOCAL_MODULE_PATH to LOCAL_MODULE_RELATIVE_PATH"Linux Build Service Account
2014-05-14display: Change LOCAL_MODULE_PATH to LOCAL_MODULE_RELATIVE_PATHAjay Dudani
To comply with multi-arch build system changes for 64-bit support, LOCAL_MODULE_RELATIVE_PATH needs to be used. Drop explicit use of LOCAL_MODULE_PATH as its not needed, and causes build system to overwrite one of multi-arch library variants with the other arch variant. Change-Id: I882de72ad2003f1e2bcc93fb63bad7377a84d31d
2014-05-14libmemtrack: Use kgsl memory flag to determine usermapped buffersHarsh Vardhan Dwivedi
Instead of using useraddr from kgsl memory allocations to be matched against proc/<pid>/smaps file to be used to determine usermapping of a buffer, use the newly added flag which directly indicates whether a given gpubuffer entry is usermapped or not. The flag is the last character in the "flags" field. CRs-fixed: 634962 Change-Id: I1f82f7a2ff207eb780f1938a3b1347451b1e3d77
2014-01-31display: remove compile time warningsArun Kumar K.R
- remove unused variable in libexternal. - make use of all variables in memtrack. Change-Id: I67b34428f4a976327e4e9dcd6fd7dfb9063b969c
2014-01-27libmemtrack: Fix compilation warning errorColin Cross
Also fix a compile warning by replacing enum with int in the getMemory function. Change-Id: Ic4bbba425486bb7f456e928968afa5f2b04ca7ea
2013-12-17fix fd leak in memtrack.msm8960Colin Cross
Close smaps_fd when exiting function. Bug: 11007903 Change-Id: I4a9fcd1e84aae195d229e5dd11f99ccb9f6f5006
2013-11-13libmemtrack: Refine the feature defineArun Kumar K.R
Use appropriate name for the feature define. Change-Id: If6b6f63a24c84f916f26043ad776084f3723137d
2013-11-12libmemtrack: Add correct target informationArun Kumar K.R
- Add correct target information to make file - Remove incorrect target names in the src files - replace sprintf(banned api) with snprintf Change-Id: I846ff3d5dcc5acc843c2c83506deafadd30b4942
2013-11-12Initial msm8x64 memory tracker HALColin Cross
Reads memory info from kgsl to track unaccounted for GL and ION memory. Right now it has to parse every allocation and then cross-reference it against /proc/pid/smaps. It would be faster to modify the kgsl driver to keep counters that could just be read directly. Bug: 10294768 Change-Id: Icb17558f03ce53bc594fbee097e51fe82e15dc31